From nobody Wed Nov 29 14:23:06 2023 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 4SgM4B4tSBz52mbK; Wed, 29 Nov 2023 14:23: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4SgM4B4M4mz4VGM; Wed, 29 Nov 2023 14:23:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1701267786; 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=0gwmiKuwbVu1mYASsnCLezDomfIcnX4kkadcvZY5vgw=; b=QC6M7CEHQ0hGy2cZ/8XMoz7Iv0A0ny/nje60k3Esrutyt4RlC+s1XS9o4K0IYyJpwph72E pLoy0cFPgdK+cDxI4yxl5/dBtbWHDztDdJ+OSuQ50LxF7tpmGv8LNB7onv77XDHwuTv85s hchMjQCo5Ht4W6FFHV670yJUntT7PTwHdnTOPl7teLFjo3VUT19y50Tl11m03ABTy1e0Z5 Lh3/9ufZYrhe5ju0J0Dj2C/nOLSq/WmlC9xnS6/9tlZ+fmiqVb8uNYT2PyoDHw2aJRqcnT XE1niGp7/UwWl0aSL/F30WFcpF8PiL/E0jN7GvNt1bgDKSkx56gyC4yiMOIKKg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1701267786; 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=0gwmiKuwbVu1mYASsnCLezDomfIcnX4kkadcvZY5vgw=; b=c38GVQH3q8gDOYRZ5W8ODwhJd/DDwBbKXAMBkRm+XL0Fdd8j3zeh2lF1Mvzf/NuMJhGwPv FdgQcxQ1HPrbu7DecU7yep0Zkb1HZkLJbuHSUBkuhYsL0y+SyqsQ8gIqGvAxbmgGkUMi9s h6X5gucEg06W1nLVDyU0tBfZmnd79PvmmBPuQVQfNbK3Ngqa3nBH9GM0r97vTLKiYzDjG2 A089S9aJwHFzA8rphyCeqi5Gbd9NaezKPM4I683d2gGonrd3eaiDXir4ENNn1vJwXFr57I K/sOSeRRE+XKyflqW8zanN+VQG4fC75IPGp8EKZb9Ei3GIwDMNbYTGS980iebg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1701267786; a=rsa-sha256; cv=none; b=hbFcT8rbcqtl59w4KKc4dHDGq0mR0vJymA9EU+ItyJMW0lwa3C3ccl0R2asG8DDo6Mof+W 16dXHFo8O7WtccM9yl14ijTHHOebDksC/GG2RDz024+zwpmI0a46aPKiRLef6+Enkw05Oq CDVQu52A/YaTj+boqp8abfWYcNw57v9TSezZBELN6dZeFD9tKa/hSbWxHfqTnMfPosHR8J St74H5ikaMchevDUmd8U3kGVSouub0OJ7cqR78aoZqtKWvncnIMd6S3bV8Sfv2cMcK/Knd AvUjRYuOF8dwjaPXmlMiofR45v1BOZ6EBc2gjm7fy1jrLSNLiTNJeduw1VfNCQ== 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 4SgM4B3Qbnz17yS; Wed, 29 Nov 2023 14:23:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3ATEN6Xv025841; Wed, 29 Nov 2023 14:23:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3ATEN6lZ025833; Wed, 29 Nov 2023 14:23:06 GMT (envelope-from git) Date: Wed, 29 Nov 2023 14:23:06 GMT Message-Id: <202311291423.3ATEN6lZ025833@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Eugene Grosbein Subject: git: 7342935fb3d6 - stable/12 - ng_ipfw: allow use of 32 bits wide cookies List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: eugen X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: 7342935fb3d6ce2b7bc65ee9baefc89eaf5d65b3 Auto-Submitted: auto-generated The branch stable/12 has been updated by eugen: URL: https://cgit.FreeBSD.org/src/commit/?id=7342935fb3d6ce2b7bc65ee9baefc89eaf5d65b3 commit 7342935fb3d6ce2b7bc65ee9baefc89eaf5d65b3 Author: Eugene Grosbein AuthorDate: 2023-11-14 09:36:08 +0000 Commit: Eugene Grosbein CommitDate: 2023-11-29 14:22:38 +0000 ng_ipfw: allow use of 32 bits wide cookies There is no reason in truncating 32 bits cookie value to 16 bits. Reviewed by: glebius (cherry picked from commit 20e1f207cc789a28783344614d6d1d1c639c5797) --- sys/netgraph/ng_ipfw.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/sys/netgraph/ng_ipfw.c b/sys/netgraph/ng_ipfw.c index 63de133b9495..23c199fe2ccb 100644 --- a/sys/netgraph/ng_ipfw.c +++ b/sys/netgraph/ng_ipfw.c @@ -71,7 +71,7 @@ static ng_findhook_t ng_ipfw_findhook; static ng_rcvdata_t ng_ipfw_rcvdata; static ng_disconnect_t ng_ipfw_disconnect; -static hook_p ng_ipfw_findhook1(node_p, u_int16_t ); +static hook_p ng_ipfw_findhook1(node_p, uint32_t ); static int ng_ipfw_input(struct mbuf **, int, struct ip_fw_args *, int); @@ -97,7 +97,7 @@ MODULE_DEPEND(ng_ipfw, ipfw, 3, 3, 3); /* Information we store for each hook */ struct ng_ipfw_hook_priv { hook_p hook; - u_int16_t rulenum; + uint32_t cookie; }; typedef struct ng_ipfw_hook_priv *hpriv_p; @@ -155,7 +155,7 @@ static int ng_ipfw_newhook(node_p node, hook_p hook, const char *name) { hpriv_p hpriv; - u_int16_t rulenum; + uint32_t cookie; const char *cp; char *endptr; @@ -169,7 +169,7 @@ ng_ipfw_newhook(node_p node, hook_p hook, const char *name) return (EINVAL); /* Convert it to integer */ - rulenum = (u_int16_t)strtol(name, &endptr, 10); + cookie = (uint32_t)strtoul(name, &endptr, 10); if (*endptr != '\0') return (EINVAL); @@ -179,7 +179,7 @@ ng_ipfw_newhook(node_p node, hook_p hook, const char *name) return (ENOMEM); hpriv->hook = hook; - hpriv->rulenum = rulenum; + hpriv->cookie = cookie; NG_HOOK_SET_PRIVATE(hook, hpriv); @@ -201,10 +201,10 @@ ng_ipfw_connect(hook_p hook) static hook_p ng_ipfw_findhook(node_p node, const char *name) { - u_int16_t n; /* numeric representation of hook */ + uint32_t n; /* numeric representation of hook */ char *endptr; - n = (u_int16_t)strtol(name, &endptr, 10); + n = (uint32_t)strtoul(name, &endptr, 10); if (*endptr != '\0') return NULL; return ng_ipfw_findhook1(node, n); @@ -212,14 +212,14 @@ ng_ipfw_findhook(node_p node, const char *name) /* Look up hook by rule number */ static hook_p -ng_ipfw_findhook1(node_p node, u_int16_t rulenum) +ng_ipfw_findhook1(node_p node, uint32_t cookie) { hook_p hook; hpriv_p hpriv; LIST_FOREACH(hook, &node->nd_hooks, hk_hooks) { hpriv = NG_HOOK_PRIVATE(hook); - if (NG_HOOK_IS_VALID(hook) && (hpriv->rulenum == rulenum)) + if (NG_HOOK_IS_VALID(hook) && (hpriv->cookie == cookie)) return (hook); }