Force DP_GENL_A_DP_NAME and DP_GENL_A_PORTNAME to be null-terminated.
authorBen Pfaff <blp@nicira.com>
Tue, 30 Dec 2008 20:34:39 +0000 (12:34 -0800)
committerBen Pfaff <blp@nicira.com>
Tue, 30 Dec 2008 20:34:39 +0000 (12:34 -0800)
The kernel doesn't check for a null terminator on strings in Netlink
attributes unless you force it to do so.

datapath/datapath.c

index a98a98fe58705c344c9f4a5cfa2d119c471d1204..d9184b656ed4e36fa7bb5140113d163867a628fb 100644 (file)
@@ -1099,9 +1099,9 @@ static struct genl_family dp_genl_family = {
 /* Attribute policy: what each attribute may contain.  */
 static struct nla_policy dp_genl_policy[DP_GENL_A_MAX + 1] = {
        [DP_GENL_A_DP_IDX] = { .type = NLA_U32 },
-       [DP_GENL_A_DP_NAME] = { .type = NLA_STRING },
+       [DP_GENL_A_DP_NAME] = { .type = NLA_NUL_STRING },
        [DP_GENL_A_MC_GROUP] = { .type = NLA_U32 },
-       [DP_GENL_A_PORTNAME] = { .type = NLA_STRING }
+       [DP_GENL_A_PORTNAME] = { .type = NLA_NUL_STRING }
 };
 
 static int dp_genl_add(struct sk_buff *skb, struct genl_info *info)