Re: BUG: nft cannot "list ruleset" with interval maps

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 02/08/17 17:28, Pablo Neira Ayuso wrote:
On Wed, Feb 08, 2017 at 05:00:18PM +0000, Robert White wrote:
(please forgive stupid email word wrap)

# nft table ip nat
# nft map nat dnat_example { type inet_service: ipv4_addr\; flags interval
\; }
# nft element nat dnat_example { 3476-3480 : 192.168.14.12 }
# nft list ruleset
table ip nat {
	map dnat_example {
		type inet_service : ipv4_addr
		flags interval
nft: mini-gmp.c:4311: mpz_export: Assertion `size > 0 || u->_mp_size == 0'
failed.
		elements = { 3476-Aborted

So the entry seems to have gotten in alright but it can't come back out
normally. I can tell because a "export json" works

# nft export json
{"nftables":[{"table":{"name":"nat","family":"ip","flags":0,"use":1}},{"set":{"name":"dnat_example","table":"nat","flags":12,"family":"ip","key_type":13,"key_len":2,"data_type":7,"data_len":4,"set_elem":[{"flags":1,"key":{"reg":{"type":"value","len":2,"data0":"0x0000990d"}}},{"key":{"reg":{"type":"value","len":2,"data0":"0x0000940d"}},"data":{"reg":{"type":"value","len":4,"data0":"0x0c0ea8c0"}}},{"flags":1,"key":{"reg":{"type":"value","len":2,"data0":"0x00000000"}}}]}}]}


NOTE: interval sets work fine:

# nft list ruleset
table ip nat {
	set portrange {
		type inet_service
		flags interval
		elements = { 3776-3780}
	}
}

What nft version are you using? This works fine with nft git
snapshots. Please, give it a try and confirm.

Thanks.


The current git head does _not_ throw the ASSERT like the 0.7 release built by the gentoo installer.

Tested successfully with and without --with-mini-gmp for whatever that's worth. (tried option both ways because of ASSERT text mentioning "mini-gmp".)

I also verified that the error _does_ occur with the nftables-0.7.tar.bz2 file available for download at netfilter.org but _only_ when built after configure --with-mini-gmp. Excluding that option removes the error.


So I guess it's good for the next release but verified repeatable with the current release.


--
To unsubscribe from this list: send the line "unsubscribe netfilter" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Netfilter Development]     [Linux Kernel Networking Development]     [Netem]     [Berkeley Packet Filter]     [Linux Kernel Development]     [Advanced Routing & Traffice Control]     [Bugtraq]

  Powered by Linux