summaryrefslogtreecommitdiff
path: root/datapath-windows/ovsext/Netlink
diff options
context:
space:
mode:
authorAnkur Sharma <ankursharma@vmware.com>2014-09-15 18:17:36 -0700
committerBen Pfaff <blp@nicira.com>2014-09-16 21:36:44 -0700
commit8722e8f3b9d7534467be27e268f8b9d54d3fc80b (patch)
tree0d7be2dd47cdc5d639ebcb88fe59402122edb14d /datapath-windows/ovsext/Netlink
parent5ab37d7a6c9bf87e21a284b8f7cefb78869dd4f7 (diff)
downloadopenvswitch-8722e8f3b9d7534467be27e268f8b9d54d3fc80b.tar.gz
datapath-windows: Add support for getting 64 and 16 bit attributes.
Signed-off-by: Ankur Sharma <ankursharma@vmware.com> Acked-by: Nithin Raju <nithin@vmware.com> Signed-off-by: Ben Pfaff <blp@nicira.com>
Diffstat (limited to 'datapath-windows/ovsext/Netlink')
-rw-r--r--datapath-windows/ovsext/Netlink/Netlink.c24
-rw-r--r--datapath-windows/ovsext/Netlink/Netlink.h2
2 files changed, 26 insertions, 0 deletions
diff --git a/datapath-windows/ovsext/Netlink/Netlink.c b/datapath-windows/ovsext/Netlink/Netlink.c
index 0d3539ced..cfbc73a3b 100644
--- a/datapath-windows/ovsext/Netlink/Netlink.c
+++ b/datapath-windows/ovsext/Netlink/Netlink.c
@@ -761,6 +761,18 @@ NlAttrGetU8(const PNL_ATTR nla)
/*
* ---------------------------------------------------------------------------
+ * Returns the 16-bit host byte order value in 'nla''s payload.
+ * Asserts that 'nla''s payload is at least 2 bytes long.
+ * ---------------------------------------------------------------------------
+ */
+UINT16
+NlAttrGetU16(const PNL_ATTR nla)
+{
+ return NL_ATTR_GET_AS(nla, UINT16);
+}
+
+/*
+ * ---------------------------------------------------------------------------
* Returns the 32-bit host byte order value in 'nla''s payload.
* Asserts that 'nla''s payload is at least 4 bytes long.
* ---------------------------------------------------------------------------
@@ -773,6 +785,18 @@ NlAttrGetU32(const PNL_ATTR nla)
/*
* ---------------------------------------------------------------------------
+ * Returns the 64-bit host byte order value in 'nla''s payload.
+ * Asserts that 'nla''s payload is at least 8 bytes long.
+ * ---------------------------------------------------------------------------
+ */
+UINT64
+NlAttrGetU64(const PNL_ATTR nla)
+{
+ return NL_ATTR_GET_AS(nla, UINT64);
+}
+
+/*
+ * ---------------------------------------------------------------------------
* Validate the netlink attribute against the policy
* ---------------------------------------------------------------------------
*/
diff --git a/datapath-windows/ovsext/Netlink/Netlink.h b/datapath-windows/ovsext/Netlink/Netlink.h
index 0551b739b..a9f62bc29 100644
--- a/datapath-windows/ovsext/Netlink/Netlink.h
+++ b/datapath-windows/ovsext/Netlink/Netlink.h
@@ -91,7 +91,9 @@ const PVOID NlAttrGetUnspec(const PNL_ATTR nla, UINT32 size);
BE64 NlAttrGetBe64(const PNL_ATTR nla);
BE32 NlAttrGetBe32(const PNL_ATTR nla);
UINT8 NlAttrGetU8(const PNL_ATTR nla);
+UINT16 NlAttrGetU16(const PNL_ATTR nla);
UINT32 NlAttrGetU32(const PNL_ATTR nla);
+UINT64 NlAttrGetU64(const PNL_ATTR nla);
const PNL_ATTR NlAttrFind__(const PNL_ATTR attrs,
UINT32 size, UINT16 type);
const PNL_ATTR NlAttrFindNested(const PNL_ATTR nla,