summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorAlex Gartrell2014-09-10 01:40:20 +0200
committerSimon Horman2014-09-16 02:03:33 +0200
commit6cff339bbd5f9eda7a5e8a521f91a88d046e6d0c (patch)
tree7098d7f00a946c526aa5a7b564c586af00065584 /include
parentipvs: Add simple weighted failover scheduler (diff)
downloadkernel-qcow2-linux-6cff339bbd5f9eda7a5e8a521f91a88d046e6d0c.tar.gz
kernel-qcow2-linux-6cff339bbd5f9eda7a5e8a521f91a88d046e6d0c.tar.xz
kernel-qcow2-linux-6cff339bbd5f9eda7a5e8a521f91a88d046e6d0c.zip
ipvs: Add destination address family to netlink interface
This is necessary to support heterogeneous pools. For example, if you have an ipv6 addressed network, you'll want to be able to forward ipv4 traffic into it. This patch enforces that destination address family is the same as service family, as none of the forwarding mechanisms support anything else. For the old setsockopt mechanism, we simply set the dest address family to AF_INET as we do with the service. Signed-off-by: Alex Gartrell <agartrell@fb.com> Acked-by: Julian Anastasov <ja@ssi.bg> Signed-off-by: Simon Horman <horms@verge.net.au>
Diffstat (limited to 'include')
-rw-r--r--include/net/ip_vs.h3
-rw-r--r--include/uapi/linux/ip_vs.h3
2 files changed, 6 insertions, 0 deletions
diff --git a/include/net/ip_vs.h b/include/net/ip_vs.h
index 624a8a54806d..b7e2b624d58e 100644
--- a/include/net/ip_vs.h
+++ b/include/net/ip_vs.h
@@ -648,6 +648,9 @@ struct ip_vs_dest_user_kern {
/* thresholds for active connections */
u32 u_threshold; /* upper threshold */
u32 l_threshold; /* lower threshold */
+
+ /* Address family of addr */
+ u16 af;
};
diff --git a/include/uapi/linux/ip_vs.h b/include/uapi/linux/ip_vs.h
index fbcffe8041f7..cabe95d5b461 100644
--- a/include/uapi/linux/ip_vs.h
+++ b/include/uapi/linux/ip_vs.h
@@ -384,6 +384,9 @@ enum {
IPVS_DEST_ATTR_PERSIST_CONNS, /* persistent connections */
IPVS_DEST_ATTR_STATS, /* nested attribute for dest stats */
+
+ IPVS_DEST_ATTR_ADDR_FAMILY, /* Address family of address */
+
__IPVS_DEST_ATTR_MAX,
};