git: 8e4db537c34f - main - pfctl: Use uid_from_user(3) and gid_from_group(3)
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 03 Jul 2025 12:01:12 UTC
The branch main has been updated by kp:
URL: https://cgit.FreeBSD.org/src/commit/?id=8e4db537c34fcdea2a14afc84f6bd5ccaa086ddb
commit 8e4db537c34fcdea2a14afc84f6bd5ccaa086ddb
Author: Kristof Provost <kp@FreeBSD.org>
AuthorDate: 2025-06-30 08:09:22 +0000
Commit: Kristof Provost <kp@FreeBSD.org>
CommitDate: 2025-07-03 07:16:15 +0000
pfctl: Use uid_from_user(3) and gid_from_group(3)
in utilities that do repeated lookups. OK tb@
Obtained from: OpenBSD, millert <millert@openbsd.org>, a0f924b8c9
Sponsored by: Rubicon Communications, LLC ("Netgate")
---
sbin/pfctl/parse.y | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/sbin/pfctl/parse.y b/sbin/pfctl/parse.y
index f05e5608ba9d..c939b5ae7cce 100644
--- a/sbin/pfctl/parse.y
+++ b/sbin/pfctl/parse.y
@@ -3926,14 +3926,14 @@ uid : STRING {
if (!strcmp($1, "unknown"))
$$ = UID_MAX;
else {
- struct passwd *pw;
+ uid_t uid;
- if ((pw = getpwnam($1)) == NULL) {
+ if (uid_from_user($1, &uid) == -1) {
yyerror("unknown user %s", $1);
free($1);
YYERROR;
}
- $$ = pw->pw_uid;
+ $$ = uid;
}
free($1);
}
@@ -4004,14 +4004,14 @@ gid : STRING {
if (!strcmp($1, "unknown"))
$$ = GID_MAX;
else {
- struct group *grp;
+ gid_t gid;
- if ((grp = getgrnam($1)) == NULL) {
+ if (gid_from_group($1, &gid) == -1) {
yyerror("unknown group %s", $1);
free($1);
YYERROR;
}
- $$ = grp->gr_gid;
+ $$ = gid;
}
free($1);
}