From nobody Wed Oct 28 20:35:56 2026 X-Original-To: dev-commits-src-branches@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 4jFJzL0Jbhz6x6NT for ; Wed, 28 Oct 2026 20:35:58 +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) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 4jFJzK4G9xz4RLx for ; Wed, 28 Oct 2026 20:35:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1793219757; 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=XreOTVtE6GcqfWNGEO6nTfJdL8Rs5haieMIOoB4GgF4=; b=eYRKCgJl8MpHdmTgBPVoZgSzWTVLqq0cpSiVukfRZNGIMukntTB5nZKvtUbaohK7+KsDrT Dy9Uv2RMMaue+p+5fRFST7f8W+vPKoX+JBOZzFiOpFGjyHdWHQ+RJBAVH6iO4KFvob5Yym PgqXhCE7aGLeut3DiqvLZEjUJF6uL6UN2MZ+DNDC05L/GoNvFUM1+9hK4LO/nUvioE8FuD 5KNbjOzAdd9Gcko6Edtd/GpLTc72PFU9lbuNRzgeVsm+P1rb3pmFaTDqDrw6NmoOmcLy6P F0WdWnPP9NDhxN6Clx2NGN0c/rZTJlwFwqKgf2H8jkxs/VGJMvpEQot4XOJTNw== ARC-Seal: i=1; a=rsa-sha256; d=freebsd.org; s=dkim; cv=none; t=1793219757; b=Evv9lVzima5dCJhFgKa+gIgiHyrAbblecSMGnMdmUtPQlTCERR9M4R12DWEiF1qefMlDSR cYuQUKgEmrcyoibCsJQJ8UdLnqv3uQv/vfYyHf8HYDmPu1w00+GgDdp+38cyVtf7Ah4ysD ia0kLclWQTa5gwDa1xoKFS0Pz4+Q9nCrXHy1B1/0j4s7smxYf5FAhv/I8S4/9DSVC5oun3 lFhGSDL1ME1892T1WWBtZXYVX9JT8Q30wOd8v+wqvaSR6VQXeslZMliRoP0fBmfLF93WpG +kNdaL1zLcsrBpulRG7wNl574seWoAC9RpCdQeZCrtQJcILA/iRhRlN7Oy6iZw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1793219757; 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=XreOTVtE6GcqfWNGEO6nTfJdL8Rs5haieMIOoB4GgF4=; b=HTxRBcRFOux5s/mC66Vi1ut/YH2X91K44leZ2MQbNe2MqsO0XA3asxUeYZ9yPvjR2Ot4Bs KthPTXftrdGDmjy/5kcW8xdVFQakJvb75+FRXjVt1LKMm6U8LaA318muCQK0I94m5EN67V WRc2lK29yMRSBrM0V0nrINbv5KaRwypMqRn467TgbDYg5nkzN+b4NDgC5mbuPVncaChmcR K4oP38bbTS0dhvrly9XtVr8F2+M2TfLbawKxnTd+zhWEaHN/TFny4N3XJK8dtPe0VwWZ/f 7MNtxvFHUV4iLbS5hFsSxQVLSV59JFMV8iflhCFp3pFMeaSSVjkVA0xuZkHFOA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4jFJzJ0llxz1MkB for ; Wed, 28 Oct 2026 20:35:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 1d040 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 28 Oct 2026 20:35:56 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: R. Christian McDonald Subject: git: 54b034b928c0 - stable/15 - pf: Parse the GETSTATES state id as 64 bits List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org List-Id: Commits to the stable branches of the FreeBSD src repository List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rcm X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 54b034b928c0e997dea20778fe39293118826b7a Auto-Submitted: auto-generated Date: Wed, 28 Oct 2026 20:35:56 +0000 Message-Id: <6ae25cac.1d040.7ba3da7d@gitrepo.freebsd.org> The branch stable/15 has been updated by rcm: URL: https://cgit.FreeBSD.org/src/commit/?id=54b034b928c0e997dea20778fe39293118826b7a commit 54b034b928c0e997dea20778fe39293118826b7a Author: R. Christian McDonald AuthorDate: 2026-10-13 14:53:10 +0000 Commit: R. Christian McDonald CommitDate: 2026-10-28 20:34:14 +0000 pf: Parse the GETSTATES state id as 64 bits The GETSTATES dump sends PF_ST_ID as a u64, but the request parser reads it as a u32 and rejects an id taken from the dump with EINVAL. Nothing in base sends PF_ST_ID. Parse and document it as a u64. Reviewed by: kp Fixes: 2cef62886dc7 ("pf: convert state retrieval to netlink") MFC after: 1 week Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D60543 (cherry picked from commit 74d2a0b79ffd8d43da61eaca36b39935594d8772) --- sys/netpfil/pf/pf_nl.c | 4 ++-- sys/netpfil/pf/pf_nl.h | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/netpfil/pf/pf_nl.c b/sys/netpfil/pf/pf_nl.c index 4c33fbd7bc37..cbfeb628f765 100644 --- a/sys/netpfil/pf/pf_nl.c +++ b/sys/netpfil/pf/pf_nl.c @@ -56,7 +56,7 @@ static bool nlattr_add_pf_threshold(struct nl_writer *, int, struct nl_parsed_state { uint8_t version; - uint32_t id; + uint64_t id; uint32_t creatorid; char ifname[IFNAMSIZ]; uint16_t proto; @@ -68,7 +68,7 @@ struct nl_parsed_state { #define _IN(_field) offsetof(struct genlmsghdr, _field) #define _OUT(_field) offsetof(struct nl_parsed_state, _field) static const struct nlattr_parser nla_p_state[] = { - { .type = PF_ST_ID, .off = _OUT(id), .cb = nlattr_get_uint32 }, + { .type = PF_ST_ID, .off = _OUT(id), .cb = nlattr_get_uint64 }, { .type = PF_ST_CREATORID, .off = _OUT(creatorid), .cb = nlattr_get_uint32 }, { .type = PF_ST_IFNAME, .arg = (const void *)IFNAMSIZ, .off = _OUT(ifname), .cb = nlattr_get_chara }, { .type = PF_ST_AF, .off = _OUT(af), .cb = nlattr_get_uint8 }, diff --git a/sys/netpfil/pf/pf_nl.h b/sys/netpfil/pf/pf_nl.h index b60d3d4797c6..e06731726998 100644 --- a/sys/netpfil/pf/pf_nl.h +++ b/sys/netpfil/pf/pf_nl.h @@ -100,7 +100,7 @@ enum pfstate_peer_type_t { enum pfstate_type_t { PF_ST_UNSPEC, - PF_ST_ID = 1, /* u32, state id */ + PF_ST_ID = 1, /* u64, state id */ PF_ST_CREATORID = 2, /* u32, */ PF_ST_IFNAME = 3, /* string */ PF_ST_ORIG_IFNAME = 4, /* string */