Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Leap:15.2
shadow
useradd-script.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File useradd-script.patch of Package shadow
Index: etc/login.defs =================================================================== --- etc/login.defs.orig +++ etc/login.defs @@ -212,6 +212,13 @@ CHFN_RESTRICT rwh DEFAULT_HOME yes # +# If defined, this command is run when adding a user. +# It should rebuild any NIS database etc. to add the +# new created account. +# +USERADD_CMD /usr/sbin/useradd.local + +# # If defined, this command is run when removing a user. # It should remove any at/cron/print jobs etc. owned by # the user to be removed (passed as the first argument). Index: lib/getdef.c =================================================================== --- lib/getdef.c.orig +++ lib/getdef.c @@ -125,6 +125,7 @@ static struct itemdef def_table[] = { {"UID_MAX", NULL}, {"UID_MIN", NULL}, {"UMASK", NULL}, + {"USERADD_CMD", NULL}, {"USERDEL_CMD", NULL}, {"USERDEL_PRECMD", NULL}, {"USERDEL_POSTCMD", NULL}, Index: src/useradd.c =================================================================== --- src/useradd.c.orig +++ src/useradd.c @@ -2115,6 +2115,30 @@ static void create_mail (void) } /* + * call_script - call a script to do some work + * + * call_script calls a script for additional changes to the + * account. + */ + +static void call_script (const char *user) +{ + const char *cmd; + const char *argv[3]; + int status; + + cmd = getdef_str ("USERADD_CMD"); + if (NULL == cmd) { + return; + } + argv[0] = cmd; + argv[1] = user; + argv[2] = (char *)0; + (void) run_command (cmd, argv, NULL, &status); +} + + +/* * main - useradd command */ int main (int argc, char **argv) @@ -2390,6 +2414,7 @@ int main (int argc, char **argv) nscd_flush_cache ("passwd"); nscd_flush_cache ("group"); + call_script (user_name); + return E_SUCCESS; } -
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor