summaryrefslogtreecommitdiff
path: root/datapath-windows/ovsext/Netlink
diff options
context:
space:
mode:
authorAnkur Sharma <ankursharma@vmware.com>2014-09-26 17:32:40 -0700
committerBen Pfaff <blp@nicira.com>2014-09-29 09:03:42 -0700
commit91b95f8b930f34d344a60396e59f7e96e04c2888 (patch)
tree98a59bf6d19a5302c5267303b57cf60ea54b58b3 /datapath-windows/ovsext/Netlink
parentdac95740efd7c0b434714773424362c244120f93 (diff)
downloadopenvswitch-91b95f8b930f34d344a60396e59f7e96e04c2888.tar.gz
datapath-windows/Netlink: Allow support for NESTED Attributes in NlAttrValidate
Signed-off-by: Ankur Sharma <ankursharma@vmware.com> Acked-by: Alin Gabriel Serdean <aserdean@cloudbasesolutions.com> Acked-by: Eitan Eliahu <eliahue@vmware.com> Acked-by: Nithin Raju <nithin@vmware.com> Acked-by: Samuel Ghinet <sghinet@cloudbasesolutions.com> Tested-by: Ankur Sharma <ankursharma@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.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/datapath-windows/ovsext/Netlink/Netlink.c b/datapath-windows/ovsext/Netlink/Netlink.c
index b1be5fd6a..ce9562351 100644
--- a/datapath-windows/ovsext/Netlink/Netlink.c
+++ b/datapath-windows/ovsext/Netlink/Netlink.c
@@ -875,12 +875,13 @@ NlAttrValidate(const PNL_ATTR nla, const PNL_POLICY policy)
UINT32 minLen;
UINT32 maxLen;
UINT32 len;
- BOOLEAN ret = TRUE;
+ BOOLEAN ret = FALSE;
if ((policy->type == NL_A_NO_ATTR) ||
- (policy->type == NL_A_VAR_LEN)) {
+ (policy->type == NL_A_VAR_LEN) ||
+ (policy->type == NL_A_NESTED)) {
/* Do not validate anything for attributes of type var length */
- ret = FALSE;
+ ret = TRUE;
goto done;
}
@@ -899,7 +900,6 @@ NlAttrValidate(const PNL_ATTR nla, const PNL_POLICY policy)
if (len < minLen || len > maxLen) {
OVS_LOG_WARN("Attribute: %p, len: %d, not in valid range, "
"min: %d, max: %d", nla, len, minLen, maxLen);
- ret = FALSE;
goto done;
}
@@ -907,17 +907,17 @@ NlAttrValidate(const PNL_ATTR nla, const PNL_POLICY policy)
if (policy->type == NL_A_STRING) {
if (((PCHAR) nla)[nla->nlaLen - 1]) {
OVS_LOG_WARN("Attributes %p lacks null at the end", nla);
- ret = FALSE;
goto done;
}
if (memchr(nla + 1, '\0', len - 1) != NULL) {
OVS_LOG_WARN("Attributes %p has bad length", nla);
- ret = FALSE;
goto done;
}
}
+ ret = TRUE;
+
done:
return ret;
}