diff options
author | Sairam Venugopal <vsairam@vmware.com> | 2016-07-11 14:59:49 -0700 |
---|---|---|
committer | Gurucharan Shetty <guru@ovn.org> | 2016-07-13 15:04:52 -0700 |
commit | e70f55edbc47e99432da7c868594d7f9d9589eca (patch) | |
tree | 8100196ba5ffe31aeaa504d1f58a20a9ef841e99 /datapath-windows/include | |
parent | 1e25f5caef5c1b6378bfee3f6ed0d1cb04e61e0c (diff) | |
download | openvswitch-e70f55edbc47e99432da7c868594d7f9d9589eca.tar.gz |
Windows: Add support for handling protocol (netlink family)
Windows datapath currently has no notion of netlink family.
It assumes all netlink messages to belong to NETLINK_GENERIC family.
This patch adds support for handling other protocols if the userspace sends it down to kernel.
This patch introduces a new NETLINK_CMD - OVS_CTRL_CMD_SOCK_PROP to manage
all properties associated with a socket. The properties are passed down as
netlink message attributes. This makes it easier to introduce other
properties in the future.
Signed-off-by: Sairam Venugopal <vsairam@vmware.com>
Acked-by: Nithin Raju <nithin@vmware.com>
Signed-off-by: Gurucharan Shetty <guru@ovn.org>
Diffstat (limited to 'datapath-windows/include')
-rw-r--r-- | datapath-windows/include/OvsDpInterfaceExt.h | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/datapath-windows/include/OvsDpInterfaceExt.h b/datapath-windows/include/OvsDpInterfaceExt.h index 8850535ad..db91c3e1e 100644 --- a/datapath-windows/include/OvsDpInterfaceExt.h +++ b/datapath-windows/include/OvsDpInterfaceExt.h @@ -92,9 +92,12 @@ enum ovs_win_control_cmd { OVS_CTRL_CMD_MC_SUBSCRIBE_REQ, OVS_CTRL_CMD_PACKET_SUBSCRIBE_REQ, - /* This command is logically belong to the Vport family */ + /* This command logically belongs to the Vport family */ OVS_CTRL_CMD_EVENT_NOTIFY, - OVS_CTRL_CMD_READ_NOTIFY + OVS_CTRL_CMD_READ_NOTIFY, + + /* Used for Socket property */ + OVS_CTRL_CMD_SOCK_PROP }; /* NL Attributes for joining/unjoining an MC group */ @@ -163,4 +166,14 @@ enum ovs_win_netdev_attr { typedef struct ovs_dp_stats OVS_DP_STATS; typedef enum ovs_vport_type OVS_VPORT_TYPE; +/* NL Attributes for setting socket attributes */ +enum ovs_nl_sock_attr { + /* (UINT32) Netlink Protocol set in Userspace and read in Kernel */ + OVS_NL_ATTR_SOCK_PROTO, + /* (UINT32) Instance PID set in Kernel and read in Userspace */ + OVS_NL_ATTR_SOCK_PID, + __OVS_NL_ATTR_SOCK_MAX +}; +#define OVS_WIN_SOCK_ATTR_MAX (__OVS_NL_ATTR_SOCK_MAX - 1) + #endif /* __OVS_DP_INTERFACE_EXT_H_ */ |