From nobody Thu Aug 08 15:41:06 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WfrqQ4GdCz5T5Pd; Thu, 08 Aug 2024 15:41:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4WfrqQ34nxz4HV0; Thu, 8 Aug 2024 15:41:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1723131666; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tUVfTXfdPYjJC1acwd0C2GOO46OcX9+/M64b2L30XiI=; b=gDmgN5Qcl48h2ptv99AuD2kQldP2M37VsyobWwcls1yHO0LuV7+6z0SL/Ebx8oEjD683K3 4TJQvbRaZSfgpWtOw6aI3kmjL50hOWZ+TCrCzqMkLqXXatnpXYE4YKGm86Sx0Y4FHqy5CL LQPFFfzHRfr9UcS4pP3l9umLQOnwZY9wEmBJF97YsllQmeEKJUY8LmQZzcQj7DrEm9NYik j6zgS8jSKd+6+/lyVK+XeYWw603Lj6rVi+H0JW82Fc+XnmopWaIEz5yKpriGlk24enqyoD vx4PPXkoBKdNxgbFOZQ00qiQYSEmj3iVrp6dS3nIRMHTaq6VBQq9fLp2nIdzGg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1723131666; a=rsa-sha256; cv=none; b=ViqyaIeCdmDdtHJGMdKLhvg7fLXLMwJKKHgAgGZJVIw9o6FFiUxwIVNloR3lNqZ1CtAyqs Y+WOYqhSBP7nvKWBToBaohZyp00fsokyrEdV4HnukFTx6VAwyVZ5G6CwZG17vtx01PVMH4 ps5tENLJKNjgBZ3ogaCA6lb1FDORd7cEiVL5m+s4OVxmA4GbS5e7NIIGO8rCuB1G5oxPCz D7oe+XDLq+FijB5Sj4WitT6kaJKY6hi6wOBW+Sy+/+lGg81r9y77Qr77nH51vQD9kp9wLO CgHasxaB567LcI9Y7Uo1xaZutguzvgLBwxBNyK7l8WC8+rzVDh0igYaZfFO3pg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1723131666; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tUVfTXfdPYjJC1acwd0C2GOO46OcX9+/M64b2L30XiI=; b=ACXi6N0buHXhhNC02HOoNg5/jTVVpuzrrtYTl7k5fEKjfCnyNykLP1mCoPXYc9k9ntrRWY ugxpkMbn25EAXU+4niGcY4ILlZO1OjNZd2Cikp+2S7ohnWWhi/dmoXqfNdVe3wt7tq9Ivm Nn/ZJdADcqpz1MgwPewqLgdshGyGAtu0GekmZcjozFc51487P/nMxYVfQUHObkdGTuZXw+ UWntIYSa8ePRN+EYdu+vgSs/egpOUpjNFpRL2/lYeqpeiKbWr4CxSEKyHmyP+EEAUCq+nf c4RB+msqclvVPBTRwdTczz7CK3ypVW+x/9QCetLOYipuVM/gtWhRdhw9MdW2Xg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4WfrqQ2hLszfkM; Thu, 8 Aug 2024 15:41:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 478Ff67N070918; Thu, 8 Aug 2024 15:41:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 478Ff6lk070915; Thu, 8 Aug 2024 15:41:06 GMT (envelope-from git) Date: Thu, 8 Aug 2024 15:41:06 GMT Message-Id: <202408081541.478Ff6lk070915@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: 36bb714e2592 - stable/14 - pfctl: Allow a semicolon (;) as a comment List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 36bb714e2592f1e424dc74f4f0a44f2e87eee84b Auto-Submitted: auto-generated The branch stable/14 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=36bb714e2592f1e424dc74f4f0a44f2e87eee84b commit 36bb714e2592f1e424dc74f4f0a44f2e87eee84b Author: Juraj Lutter AuthorDate: 2024-07-25 08:07:50 +0000 Commit: Kristof Provost CommitDate: 2024-08-08 15:39:59 +0000 pfctl: Allow a semicolon (;) as a comment To make parsing of, for example, Spamhaus' drop.txt and similar files that contains semicolons as comments, allow them also in file-based tables. Reviewed by: kp MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D46088 (cherry picked from commit a8a95277363be2c92b3c06bd9cd1a32d1c6c6ecd) --- sbin/pfctl/pfctl.8 | 4 +++- sbin/pfctl/pfctl_radix.c | 4 ++-- sbin/pfctl/tests/files/pf1020.in | 3 +++ sbin/pfctl/tests/files/pf1020.include | 4 ++++ sbin/pfctl/tests/files/pf1020.ok | 2 ++ sbin/pfctl/tests/pfctl_test_list.inc | 1 + 6 files changed, 15 insertions(+), 3 deletions(-) diff --git a/sbin/pfctl/pfctl.8 b/sbin/pfctl/pfctl.8 index 41eb2bea9f94..ac0106fb560b 100644 --- a/sbin/pfctl/pfctl.8 +++ b/sbin/pfctl/pfctl.8 @@ -24,7 +24,7 @@ .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd February 22, 2021 +.Dd July 23, 2024 .Dt PFCTL 8 .Os .Sh NAME @@ -526,6 +526,8 @@ line and/or in an unformatted text file, using the flag. Comments starting with a .Sq # +or +.Sq \; are allowed in the text file. With these commands, the .Fl v diff --git a/sbin/pfctl/pfctl_radix.c b/sbin/pfctl/pfctl_radix.c index d33f091d8b69..1e93a8972d9e 100644 --- a/sbin/pfctl/pfctl_radix.c +++ b/sbin/pfctl/pfctl_radix.c @@ -535,8 +535,8 @@ pfr_next_token(char buf[BUF_SIZE], FILE *fp) /* skip spaces */ while (isspace(next_ch) && !feof(fp)) next_ch = fgetc(fp); - /* remove from '#' until end of line */ - if (next_ch == '#') + /* remove from '#' or ';' until end of line */ + if (next_ch == '#' || next_ch == ';') while (!feof(fp)) { next_ch = fgetc(fp); if (next_ch == '\n') diff --git a/sbin/pfctl/tests/files/pf1020.in b/sbin/pfctl/tests/files/pf1020.in new file mode 100644 index 000000000000..7f98df69bd04 --- /dev/null +++ b/sbin/pfctl/tests/files/pf1020.in @@ -0,0 +1,3 @@ +table file "./pf1020.include" + +block from diff --git a/sbin/pfctl/tests/files/pf1020.include b/sbin/pfctl/tests/files/pf1020.include new file mode 100644 index 000000000000..3fca07f64bfa --- /dev/null +++ b/sbin/pfctl/tests/files/pf1020.include @@ -0,0 +1,4 @@ +; comment1 +# comment2 +1.0.0.1/32 ; comment1 +2.0.0.2/32 # comment2 diff --git a/sbin/pfctl/tests/files/pf1020.ok b/sbin/pfctl/tests/files/pf1020.ok new file mode 100644 index 000000000000..16073b3d6987 --- /dev/null +++ b/sbin/pfctl/tests/files/pf1020.ok @@ -0,0 +1,2 @@ +table file "./pf1020.include" +block drop from to any diff --git a/sbin/pfctl/tests/pfctl_test_list.inc b/sbin/pfctl/tests/pfctl_test_list.inc index 4a63c0ba48b7..5d5aa0172530 100644 --- a/sbin/pfctl/tests/pfctl_test_list.inc +++ b/sbin/pfctl/tests/pfctl_test_list.inc @@ -127,3 +127,4 @@ PFCTL_TEST(1015, "Ethernet rule with several labels") PFCTL_TEST(1016, "Ethernet rule with ridentifier and one label") PFCTL_TEST(1017, "Ethernet rule with ridentifier and several labels") PFCTL_TEST(1018, "Test dynamic address mask") +PFCTL_TEST(1020, "Test hashmark and semicolon comment")