aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/ip_vs.h
diff options
context:
space:
mode:
authorJulian Anastasov <ja@ssi.bg>2010-09-17 14:18:16 +0200
committerPatrick McHardy <kaber@trash.net>2010-09-17 14:18:16 +0200
commit3575792e005dc9994f15ae72c1c6f401d134177d (patch)
tree2383227df0b4ab3418ecb2167535063b7f829f4d /include/linux/ip_vs.h
parentnetfilter: nf_conntrack: fix the hash random initializing race (diff)
downloadlinux-dev-3575792e005dc9994f15ae72c1c6f401d134177d.tar.xz
linux-dev-3575792e005dc9994f15ae72c1c6f401d134177d.zip
ipvs: extend connection flags to 32 bits
- the sync protocol supports 16 bits only, so bits 0..15 should be used only for flags that should go to backup server, bits 16 and above should be allocated for flags not sent to backup. - use IP_VS_CONN_F_DEST_MASK as mask of connection flags in destination that can be changed by user space - allow IP_VS_CONN_F_ONE_PACKET to be set in destination Signed-off-by: Julian Anastasov <ja@ssi.bg> Signed-off-by: Patrick McHardy <kaber@trash.net>
Diffstat (limited to 'include/linux/ip_vs.h')
-rw-r--r--include/linux/ip_vs.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/include/linux/ip_vs.h b/include/linux/ip_vs.h
index 9708de265bb1..003d75f6ffe1 100644
--- a/include/linux/ip_vs.h
+++ b/include/linux/ip_vs.h
@@ -70,6 +70,7 @@
/*
* IPVS Connection Flags
+ * Only flags 0..15 are sent to backup server
*/
#define IP_VS_CONN_F_FWD_MASK 0x0007 /* mask for the fwd methods */
#define IP_VS_CONN_F_MASQ 0x0000 /* masquerading/NAT */
@@ -88,6 +89,13 @@
#define IP_VS_CONN_F_TEMPLATE 0x1000 /* template, not connection */
#define IP_VS_CONN_F_ONE_PACKET 0x2000 /* forward only one packet */
+/* Flags that are not sent to backup server start from bit 16 */
+
+/* Connection flags from destination that can be changed by user space */
+#define IP_VS_CONN_F_DEST_MASK (IP_VS_CONN_F_FWD_MASK | \
+ IP_VS_CONN_F_ONE_PACKET | \
+ 0)
+
#define IP_VS_SCHEDNAME_MAXLEN 16
#define IP_VS_IFNAME_MAXLEN 16