Page MenuHomeFreeBSD

D40376.id122707.diff
No OneTemporary

D40376.id122707.diff

diff --git a/lib/nss_tacplus/nss_tacplus.8 b/lib/nss_tacplus/nss_tacplus.8
--- a/lib/nss_tacplus/nss_tacplus.8
+++ b/lib/nss_tacplus/nss_tacplus.8
@@ -3,7 +3,7 @@
.\"
.\" SPDX-License-Identifier: BSD-2-Clause
.\"
-.Dd May 17, 2023
+.Dd June 1, 2023
.Dt NSS_TACPLUS 8
.Os
.Sh NAME
@@ -57,6 +57,9 @@
Must be between 0 and
.Dv GID_MAX .
Defaults to 65534.
+.It Va CLASS
+Login class.
+Left blank if not provided.
.It Va GECOS
Display name.
If not provided, the user name is used instead.
diff --git a/lib/nss_tacplus/nss_tacplus.c b/lib/nss_tacplus/nss_tacplus.c
--- a/lib/nss_tacplus/nss_tacplus.c
+++ b/lib/nss_tacplus/nss_tacplus.c
@@ -24,6 +24,7 @@
#define DEF_UID 65534
#define DEF_GID 65534
+#define DEF_CLASS ""
#define DEF_DIR "/"
#define DEF_SHELL "/bin/sh"
@@ -192,6 +193,13 @@
return (NS_RETURN);
}
pwd->pw_gid = num;
+ } else if (strcasecmp(av, "class") == 0) {
+ pwd->pw_class = tacplus_copystr(value, &buffer,
+ &bufsize);
+ if (pwd->pw_class == NULL) {
+ free(av);
+ return (NS_RETURN);
+ }
} else if (strcasecmp(av, "gecos") == 0) {
pwd->pw_gecos = tacplus_copystr(value, &buffer,
&bufsize);
@@ -217,6 +225,10 @@
free(av);
}
+ /* default class if none was provided */
+ if (pwd->pw_class == NULL)
+ pwd->pw_class = tacplus_copystr(DEF_CLASS, &buffer, &bufsize);
+
/* gecos equal to name if none was provided */
if (pwd->pw_gecos == NULL)
pwd->pw_gecos = pwd->pw_name;

File Metadata

Mime Type
text/plain
Expires
Sat, Apr 4, 11:58 PM (18 h, 13 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
30853645
Default Alt Text
D40376.id122707.diff (1 KB)

Event Timeline