qa: add cmp ATTR_ZONE regression test cases

As reported by Ken-ichirou MATSUZAWA:

"conntrack -L --zone 0" doesn't list any output.

nfct_cmp(mask_obj, ct, NFCT_CMP_MASK)

considers ct to not match since the zone attribute
in ct is not set for the default (0) zone.

libnetfilter_conntrack should be more permissive and return
that these are equal iff 'mask_obj' has ATTR_ZONE with a 0 value,
and ct object has ATTR_ZONE not set.

These 3 checks currently fail, even though they really should not:

assert(test_cmp_attr32(ATTR_ZONE, true, false, 0, 0, NFCT_CMP_STRICT) == 1);
assert(test_cmp_attr32(ATTR_ZONE, false, true, 0, 0, NFCT_CMP_STRICT) == 1);
assert(test_cmp_attr32(ATTR_ZONE, true, false, 0, 0, NFCT_CMP_MASK) == 1);

Altough in all 3 cases the zone is only set in one conntrack, the value
is zero, so it should be equal to a conntrack object without the zone
bit set.

Signed-off-by: Florian Westphal <fw@strlen.de>
conntrack: remove duplicate code

nfct_filter_dump_set_attr() will set the bit.

Signed-off-by: Ken-ichirou MATSUZAWA <chamas@h4.dion.ne.jp>
Signed-off-by: Florian Westphal <fw@strlen.de>
Merge remote-tracking branch 'netfilter/master'
qa: change cmp ATTR_ZONE size
conntrack: zero value handling of mark and zone

This patch enables comparison of 0 value with mark and zone since both CTA_MARK
and CTA_ZONE are not set in case of its value is 0. This patch has just passed
qa test which Florian wrote, I guess there is more sophiscated way that settle
cmp_mark() and cmp_zone().

Signed-off-by: Ken-ichirou MATSUZAWA <chamas@h4.dion.ne.jp>
temporary