From nobody Tue Oct 13 15:09:05 2026 X-Original-To: dev-commits-src-main@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 4j3yR623Vkz6vT6M for ; Tue, 13 Oct 2026 15:09: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 "YR2" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4j3yR61Psgz4HLS for ; Tue, 13 Oct 2026 15:09:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1791904146; 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=cASBLkhmidRg/chf5JFsbQJ6xgVcspR+8Xu3Pm0EDNE=; b=sZr/lEdJCI90wWMdH4PpMofHLDuAARhy3TrZQlJTCLaSvS2ZUcKKl6jeBHRskgbT+2+H7x zTud2k01JK/t68/GBHvLbuJ2oqEhKfBkDGCI0pKvRocB/vuXrzP3hNtexHtiimWy/uBwK6 T0psStjmk4IHCzWls6qJFd7hNfmMxO/pHbn5X3T1jqL/mkcbWhX7LlnydXGqzu2M7/+yB9 Fz6gNzB1yHssoJdQYDkcGJqdm9Mej76qmSO9+5BckYZ1XNz1U8MHNDAr52/kRPRNsUUT6I RwDVFYy9+KsO5eSReEH5AFmaZD6h9DxwXL2labOmsmMwJVUoeAr/zniJi0gt0A== ARC-Seal: i=1; a=rsa-sha256; d=freebsd.org; s=dkim; cv=none; t=1791904146; b=l2xpdJ1XZP0xI+hQSez4iRKULrfJcL2o8c+M6THmQsUvkZ8Ih/KZFjjREkH1L5vaBMONLD eOSIPkme4EzqQaYo9lBmtlJTtIx1XWX6NRpmk0rOydS3S65FCX4BLOJf0Jjq0sZ1xeJQyP 1A6e4lW243936BIB3w5BHfgpa+olsDWIkK/b+CZlGpcTO/22LzxkySBHGbhLi5aAHIh7b5 aCIqFlKiYxvAbyCmP7FsQhWyAlJcOdDP+nJyw4Sk7D+kFkJf0JnFYDSuYdup1gVrNLSK4i XRtAEXRUdOWarZDxSlQUOqX2dq+HO3GD95dIAJVBS3IPyZpZJ7yTwb7bcKWCkQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1791904146; 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=cASBLkhmidRg/chf5JFsbQJ6xgVcspR+8Xu3Pm0EDNE=; b=uGcIuDD5wYhA8rqb/VCLKwyuAyYBUF4C3JZiFAEMICgyGqkPmriwiJ7FVerVTroVoBCMra fkBbYfosgp0xti9P1yfbciOX8lO3GmcapTyxSGO4jHbSlvSxRgGpidVHsN+py3KU1455f5 ayLAwzIpQ+27V1jRIc39yw+40EdJ8rUiWWfa02mOeSIHS8HyL4x/2LIyc4VQPmqk3tkl5C tgb/qEdceMPhYnOse7LkKM4+y0U2fMW/R/2HccfIuvprIPfo+g6UDEL6elIN3FKUS2lZ6m 2xxDq4K8hi4rQWok1vjzepN4tiHFfokiT8Wp18IXglRWcgct343HTP5o6hv1fg== 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 4j3yR60DYSzK33 for ; Tue, 13 Oct 2026 15:09:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 1c5bb by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 13 Oct 2026 15:09:05 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: R. Christian McDonald Subject: git: 74d2a0b79ffd - main - pf: Parse the GETSTATES state id as 64 bits List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org List-Id: Commit messages for the main branch of the 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/main X-Git-Reftype: branch X-Git-Commit: 74d2a0b79ffd8d43da61eaca36b39935594d8772 Auto-Submitted: auto-generated Date: Tue, 13 Oct 2026 15:09:05 +0000 Message-Id: <6ace4991.1c5bb.4d8aeb33@gitrepo.freebsd.org> The branch main has been updated by rcm: URL: https://cgit.FreeBSD.org/src/commit/?id=74d2a0b79ffd8d43da61eaca36b39935594d8772 commit 74d2a0b79ffd8d43da61eaca36b39935594d8772 Author: R. Christian McDonald AuthorDate: 2026-10-13 14:53:10 +0000 Commit: R. Christian McDonald CommitDate: 2026-10-13 15:00:27 +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 --- 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 3ddd2308a318..d35545bbfe32 100644 --- a/sys/netpfil/pf/pf_nl.c +++ b/sys/netpfil/pf/pf_nl.c @@ -59,7 +59,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; @@ -72,7 +72,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 c3c8da3571d3..d7adad2e8bd6 100644 --- a/sys/netpfil/pf/pf_nl.h +++ b/sys/netpfil/pf/pf_nl.h @@ -118,7 +118,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 */