From nobody Sun Jul 5 14:15:56 2026 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 4gtTzx1jL8z6kLSb for ; Sun, 05 Jul 2026 14:15:57 +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 "YR1" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4gtTzw6YG9z3CNR for ; Sun, 05 Jul 2026 14:15:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1783260957; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UOjGlxog+MNNYqx+CDQjnlOSOCrdtoijNT/EFEo9vl0=; b=cS+oCCD7e5lOapojPyujH+OKUcuNHcp6H2YAEYj9mptSAuRuYGSJDlxz9K/qAKsBi1nY7n Jc5PU1BGibv9gJdljiPs5nMOkULc3/ue5IVIAhRnYTM1ObjxSGoyVFtQBjRI8x1ufFk27U JocGokbJCkuYsv93rDbRVVXGAn33XwN8wOHdP6X9WUQpZfgLW0xg/+4aadMDTIm9MkaJBc eRKC0H7/b2/ytkyg4/emO5leiogAOFFkeSIznzP4+OXhvvryiVkj85xuDcTNry6Mv2fk+1 bondf+ovU788gZt97zYY3jF2IiKvlx5wuvoYSyQPt15vvOnLa0nELJ1pAes+1Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1783260957; a=rsa-sha256; cv=none; b=Glqh8ylJO4Wk3zrQNycThPbnQGh7V/oDMJ1qP56cAO5ypUJ5ZJ6Iw+SG8bfdH5b1wwjUEQ knCVof9Q7rxucEVwkJ4k9DNveuf32EZeqDEjyqsH6Jq80xwAYg0Wg5OIw+Ji3sUwNE9fe4 unpWP9Va0IZUmmAgQPLZ5ThocIX5OPrPoLLjcp13kh3+B++0X/bysoIdf0bB5ccuHDO45+ WQhHCa4uCBHR17l2cppI3s+fNirU4pg0YTw1P1daoKk28Aw6unSS0vqy1+aW0YY65Hymnf P7Gl5tQY3fqMfX51m83yFPml8fIJmC1fGTRBT4T5fea9tzx4p0iS3w9RLpPT1w== 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=1783260957; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UOjGlxog+MNNYqx+CDQjnlOSOCrdtoijNT/EFEo9vl0=; b=jFRMcZLpbbvzac5iarGK5tLzjgJnVRYozm6SKST1DIc6T7EpgnVGoBIr31fJXuNUeSahCd 8n39uU9HtxvOO4d00EbCwBmLY6mbDZufC3T++86zJTa9HQOXsJPZYd0JxE+0A992lEeuyM 1VF8TclnyrabPnMvOA1DrjR3CMbrF2amWH21HXzd8rhXHrvmGwXzr1lgGzHNjHQtYPcxXC bMUJo3uniUOYHrWeJHEmwlCS0vuUpBe1/2z4P4DC9g/ymhajc8KQRfySbWvJ9ye6xMXJpk dhlvmxkn3nu55nTpSUlmvPZwvDYmNITn2NjOE1ivpq6PNOBSlyt6j+cisdWoOw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4gtTzw4m4Nz63g for ; Sun, 05 Jul 2026 14:15:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3bb76 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sun, 05 Jul 2026 14:15:56 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Cc: Ishan Agrawal From: Kristof Provost Subject: git: fa50691ecf87 - main - libsysdecode: decode PF Generic Netlink commands 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 List-Id: 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: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: fa50691ecf87c2d0ec35480222557173c11a5baa Auto-Submitted: auto-generated Date: Sun, 05 Jul 2026 14:15:56 +0000 Message-Id: <6a4a671c.3bb76.7053e1@gitrepo.freebsd.org> The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=fa50691ecf87c2d0ec35480222557173c11a5baa commit fa50691ecf87c2d0ec35480222557173c11a5baa Author: Ishan Agrawal AuthorDate: 2026-06-29 06:21:59 +0000 Commit: Kristof Provost CommitDate: 2026-07-05 14:04:06 +0000 libsysdecode: decode PF Generic Netlink commands Decode the Generic Netlink command header for messages belonging to the PF Generic Netlink family. Display the command name using the PF Generic Netlink command decoder. Signed-off-by: Ishan Agrawal Reviewed by: kp Sponsored-by: Google LLC (GSoC 2026) --- lib/libsysdecode/netlink.c | 29 +++++++++++++++++++++++++++-- 1 file changed, 27 insertions(+), 2 deletions(-) diff --git a/lib/libsysdecode/netlink.c b/lib/libsysdecode/netlink.c index a9c226e6065d..ce8ac0485009 100644 --- a/lib/libsysdecode/netlink.c +++ b/lib/libsysdecode/netlink.c @@ -29,6 +29,18 @@ static struct name_table *family_table = NULL; static size_t num_family = 0; +static void +sysdecode_netlink_pf(FILE *fp, const struct genlmsghdr *genl) +{ + uint8_t cmd = genl->cmd; + const char *cmd_name = sysdecode_pfnl_cmd(cmd); + + if (cmd_name != NULL) + fprintf(fp, "cmd=%s", cmd_name); + else + fprintf(fp, "cmd=%u", cmd); +} + bool sysdecode_netlink(FILE *fp, const void *buf, size_t len, int protocol) { @@ -160,8 +172,21 @@ sysdecode_netlink(FILE *fp, const void *buf, size_t len, int protocol) } const char *family = lookup_value(family_table, nl->nlmsg_type); - if (family != NULL && strcmp(family, "pfctl") == 0) - fprintf(fp, ",pf={}"); + + if (family != NULL && protocol == NETLINK_GENERIC) { + fprintf(fp, ",%s={", family); + + if (strcmp(family, "pfctl") == 0) { + const struct genlmsghdr *genl = + (const struct genlmsghdr *)(const void *) + ((const char *)nl + + sizeof(struct nlmsghdr)); + + sysdecode_netlink_pf(fp, genl); + } + + fprintf(fp, "}"); + } /* Handle Alignment (Netlink messages are 4-byte aligned). */ size_t aligned_len = NLMSG_ALIGN(nl->nlmsg_len);