<html>
    <head>
      <base href="https://bugzilla.netfilter.org/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - nft list set omits timeout values for intervals formatted as hyphenated ranges"
   href="https://bugzilla.netfilter.org/show_bug.cgi?id=1454">1454</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>nft list set omits timeout values for intervals formatted as hyphenated ranges
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>nftables
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>unspecified
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>x86_64
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Gentoo
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P5
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>nft
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>pablo@netfilter.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>kfm@plushkava.net
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Sometimes, the list set command expresses intervals as ranges rather than in
CIDR notation. I do not understand what the criteria is for doing so, exactly.
When it happens, the attached timeout values are not reported.

Here are some demonstrations, which were carried out with nftables (commit
ca2e6e0), libnftnl (commit a4db940) and Linux 5.7.16.

# nft create table t
# nft 'add set t s { type ipv4_addr; flags interval; timeout 60s; }'
# nft add element t s { 224.0.0.0/3 }
# nft list set t s | grep -o 'elements.*'
elements = { 224.0.0.0-255.255.255.255 }

Here, the list command has not shown the timeout for the element, even though
one is attached.

# nft flush set t s
# nft add element t s { 224.0.0.0/4, 240.0.0.0/4 }
# nft list set t s | grep -o 'elements.*'
elements = { 224.0.0.0/4 expires 55s152ms, 240.0.0.0-255.255.255.255 }

Here, the list command shows two elements, with the timeout missing for one of
them.

# nft delete set t s
# nft 'add set t s { type ipv4_addr; flags interval; auto-merge; timeout 60s;
}'
# nft add element t s { 224.0.0.0/4, 240.0.0.0/4 }
# nft list set t s | grep -o 'elements.*'
elements = { 224.0.0.0-255.255.255.255 }

Here, the given elements have been correctly merged but, again, the timeout is
missing.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are watching all bug changes.</li>
      </ul>
    </body>
</html>