Commit 00408876 authored by Florian Westphal's avatar Florian Westphal Committed by Jozsef Kadlecsik

netfilter: ipset: kernel: uapi: fix MARKMASK attr ABI breakage

commit 2dfb973c0dcc6d2211 (add markmask for hash:ip,mark data type)
inserted IPSET_ATTR_MARKMASK in-between other enum values, i.e.
changing values of all further attributes.  This causes 'ipset list'
segfault on existing kernels since ipset no longer finds
IPSET_ATTR_MEMSIZE (it has a different value on kernel side).

Jozsef points out it should be moved below IPSET_ATTR_MARK which
works since there is some extra reserved space after that value.
Signed-off-by: default avatarFlorian Westphal <fw@strlen.de>
Signed-off-by: default avatarJozsef Kadlecsik <kadlec@blackhole.kfki.hu>
parent af284ece
...@@ -83,13 +83,13 @@ enum { ...@@ -83,13 +83,13 @@ enum {
IPSET_ATTR_CADT_FLAGS, /* 8 */ IPSET_ATTR_CADT_FLAGS, /* 8 */
IPSET_ATTR_CADT_LINENO = IPSET_ATTR_LINENO, /* 9 */ IPSET_ATTR_CADT_LINENO = IPSET_ATTR_LINENO, /* 9 */
IPSET_ATTR_MARK, /* 10 */ IPSET_ATTR_MARK, /* 10 */
IPSET_ATTR_MARKMASK, /* 11 */
/* Reserve empty slots */ /* Reserve empty slots */
IPSET_ATTR_CADT_MAX = 16, IPSET_ATTR_CADT_MAX = 16,
/* Create-only specific attributes */ /* Create-only specific attributes */
IPSET_ATTR_GC, IPSET_ATTR_GC,
IPSET_ATTR_HASHSIZE, IPSET_ATTR_HASHSIZE,
IPSET_ATTR_MAXELEM, IPSET_ATTR_MAXELEM,
IPSET_ATTR_MARKMASK,
IPSET_ATTR_NETMASK, IPSET_ATTR_NETMASK,
IPSET_ATTR_PROBES, IPSET_ATTR_PROBES,
IPSET_ATTR_RESIZE, IPSET_ATTR_RESIZE,
...@@ -139,7 +139,6 @@ enum ipset_errno { ...@@ -139,7 +139,6 @@ enum ipset_errno {
IPSET_ERR_EXIST, IPSET_ERR_EXIST,
IPSET_ERR_INVALID_CIDR, IPSET_ERR_INVALID_CIDR,
IPSET_ERR_INVALID_NETMASK, IPSET_ERR_INVALID_NETMASK,
IPSET_ERR_INVALID_MARKMASK,
IPSET_ERR_INVALID_FAMILY, IPSET_ERR_INVALID_FAMILY,
IPSET_ERR_TIMEOUT, IPSET_ERR_TIMEOUT,
IPSET_ERR_REFERENCED, IPSET_ERR_REFERENCED,
...@@ -147,6 +146,7 @@ enum ipset_errno { ...@@ -147,6 +146,7 @@ enum ipset_errno {
IPSET_ERR_IPADDR_IPV6, IPSET_ERR_IPADDR_IPV6,
IPSET_ERR_COUNTER, IPSET_ERR_COUNTER,
IPSET_ERR_COMMENT, IPSET_ERR_COMMENT,
IPSET_ERR_INVALID_MARKMASK,
/* Type specific error codes */ /* Type specific error codes */
IPSET_ERR_TYPE_SPECIFIC = 4352, IPSET_ERR_TYPE_SPECIFIC = 4352,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment