From: Robert White <rwhite@pobox.com>
To: Pablo Neira Ayuso <pablo@netfilter.org>
Cc: netfilter@vger.kernel.org
Subject: (whoops) Re: BUG: nft cannot "list ruleset" with interval maps
Date: Thu, 9 Feb 2017 00:24:24 +0000 [thread overview]
Message-ID: <0b1028f0-e474-4938-6d3f-ae7f7ec0049a@pobox.com> (raw)
In-Reply-To: <20170208172815.GA28759@salvia>
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.
>
Missed something.
With 0.7 and without --with-mini-gmp there's a "floating point
exception" instead of the assert, so there was still some shenanigans
happening behind the scenes.
Probably good to push a new release soon. 8-)
--Rob.
next prev parent reply other threads:[~2017-02-09 0:24 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-02-08 17:00 BUG: nft cannot "list ruleset" with interval maps Robert White
2017-02-08 17:28 ` Pablo Neira Ayuso
2017-02-08 23:51 ` Robert White
2017-02-09 0:11 ` Robert White
2017-02-09 0:24 ` Robert White [this message]
2017-02-09 10:46 ` (whoops) " Pablo Neira Ayuso
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=0b1028f0-e474-4938-6d3f-ae7f7ec0049a@pobox.com \
--to=rwhite@pobox.com \
--cc=netfilter@vger.kernel.org \
--cc=pablo@netfilter.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox