Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 15 Feb 2019 09:02:51 +0000
From:      bugzilla-noreply@freebsd.org
To:        bugs@FreeBSD.org
Subject:   [Bug 235754] pfctl: Lower limit for -T replace than -T add
Message-ID:  <bug-235754-227@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D235754

            Bug ID: 235754
           Summary: pfctl: Lower limit for -T replace than -T add
           Product: Base System
           Version: 12.0-RELEASE
          Hardware: amd64
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: bin
          Assignee: bugs@FreeBSD.org
          Reporter: solarcatcher@gmx.de

I use a cron job to update a table of badhosts, following the approach shown
here https://www.geoghegan.ca/pfbadhost.html.

On FreeBSD 11 the nightly replace works fine.
On FreeBSD 12.0-RELEASE-p3 (and on the latest HardenedBSD 12-STABLE) update=
 of
the pf table fails with the following message "pfctl: Invalid argument."

On further inspection, pfctl does not anymore allow to replace a table with
more than 32768 (2^15) IP addresses. Flushing and adding works fine, just
replacing leads to the error.

How to reproduce
Download list of 32769 badhosts to /tmp/pf-badhost.txt:
https://gist.github.com/utrenkner/617534545407587a8919dc6b47676f6e

Add this line to pf.conf:
table <pfbadhost> persist file "/tmp/pf-badhost.txt"

Load new rules:
pfctl -f /etc/pf.conf

Verify that table <pfbadhost> has 32769 entries:
pfctl -t pfbadhost -T show | wc -l

Now, try to replace table:
pfctl -t pfbadhost -T replace -f /tmp/pf-badhost.txt

This will fail. Remove one IP address from /tmp/pf-badhost.txt and try
replacing table again:
pfctl -t pfbadhost -T replace -f /tmp/pf-badhost.txt

Result: "1 addresses deleted."

I can -T flush and -T add, but it seems a bug to me that -T replace does not
work with the same number of IP addresses.

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-235754-227>