summaryrefslogtreecommitdiff
path: root/datapath-windows/ovsext
diff options
context:
space:
mode:
authorYi-Hung Wei <yihung.wei@gmail.com>2019-08-28 15:14:24 -0700
committerJustin Pettit <jpettit@ovn.org>2019-09-26 13:50:17 -0700
commit1f1613183733781084f001ce0116bd4d6eee3d32 (patch)
tree7c27f96969efc00434571bb727230dea5020c6b1 /datapath-windows/ovsext
parent934f54a1bcb6823e38db8c7dc6dda5af2fb38b0c (diff)
downloadopenvswitch-1f1613183733781084f001ce0116bd4d6eee3d32.tar.gz
ct-dpif, dpif-netlink: Add conntrack timeout policy support
This patch first defines the dpif interface for a datapath to support adding, deleting, getting and dumping conntrack timeout policy. The timeout policy is identified by a 4 bytes unsigned integer in datapath, and it currently support timeout for TCP, UDP, and ICMP protocols. Moreover, this patch provides the implementation for Linux kernel datapath in dpif-netlink. In Linux kernel, the timeout policy is maintained per L3/L4 protocol, and it is identified by 32 bytes null terminated string. On the other hand, in vswitchd, the timeout policy is a generic one that consists of all the supported L4 protocols. Therefore, one of the main task in dpif-netlink is to break down the generic timeout policy into 6 sub policies (ipv4 tcp, udp, icmp, and ipv6 tcp, udp, icmp), and push down the configuration using the netlink API in netlink-conntrack.c. This patch also adds missing symbols in the windows datapath so that the build on windows can pass. Appveyor CI: * https://ci.appveyor.com/project/YiHungWei/ovs/builds/26387754 Signed-off-by: Yi-Hung Wei <yihung.wei@gmail.com> Acked-by: Alin Gabriel Serdean <aserdean@ovn.org> Signed-off-by: Justin Pettit <jpettit@ovn.org>
Diffstat (limited to 'datapath-windows/ovsext')
-rw-r--r--datapath-windows/ovsext/Netlink/NetlinkProto.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/datapath-windows/ovsext/Netlink/NetlinkProto.h b/datapath-windows/ovsext/Netlink/NetlinkProto.h
index 59b56565c..b32f6f7fb 100644
--- a/datapath-windows/ovsext/Netlink/NetlinkProto.h
+++ b/datapath-windows/ovsext/Netlink/NetlinkProto.h
@@ -50,13 +50,17 @@
#define NLM_F_ACK 0x004
#define NLM_F_ECHO 0x008
+/* GET request flag.*/
#define NLM_F_ROOT 0x100
#define NLM_F_MATCH 0x200
-#define NLM_F_EXCL 0x200
#define NLM_F_ATOMIC 0x400
-#define NLM_F_CREATE 0x400
#define NLM_F_DUMP (NLM_F_ROOT | NLM_F_MATCH)
+/* NEW request flags. */
+#define NLM_F_REPLACE 0x100
+#define NLM_F_EXCL 0x200
+#define NLM_F_CREATE 0x400
+
/* nlmsg_type values. */
#define NLMSG_NOOP 1
#define NLMSG_ERROR 2