Properly initialise with content of pw.conf(5) that was mistakenly ignored.
Also, respect "defaultgroup" if specified there. PR: 217934 Reported by: Victor Sudakov <vas@mpeks.tomsk.su> Reviewed by: bapt Approved by: bapt, vsevolod (mentor) MFC after: 1 week
This commit is contained in:
parent
cb8f312598
commit
92bb425e4e
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=315912
@ -1177,7 +1177,7 @@ pw_user_add(int argc, char **argv, char *arg1)
|
|||||||
char line[_PASSWORD_LEN+1], path[MAXPATHLEN];
|
char line[_PASSWORD_LEN+1], path[MAXPATHLEN];
|
||||||
char *gecos, *homedir, *skel, *walk, *userid, *groupid, *grname;
|
char *gecos, *homedir, *skel, *walk, *userid, *groupid, *grname;
|
||||||
char *default_passwd, *name, *p;
|
char *default_passwd, *name, *p;
|
||||||
const char *cfg;
|
const char *cfg = NULL;
|
||||||
login_cap_t *lc;
|
login_cap_t *lc;
|
||||||
FILE *pfp, *fp;
|
FILE *pfp, *fp;
|
||||||
intmax_t id = -1;
|
intmax_t id = -1;
|
||||||
@ -1356,6 +1356,9 @@ pw_user_add(int argc, char **argv, char *arg1)
|
|||||||
if (GETPWNAM(name) != NULL)
|
if (GETPWNAM(name) != NULL)
|
||||||
errx(EX_DATAERR, "login name `%s' already exists", name);
|
errx(EX_DATAERR, "login name `%s' already exists", name);
|
||||||
|
|
||||||
|
if (!grname)
|
||||||
|
grname = cmdcnf->default_group;
|
||||||
|
|
||||||
pwd = &fakeuser;
|
pwd = &fakeuser;
|
||||||
pwd->pw_name = name;
|
pwd->pw_name = name;
|
||||||
pwd->pw_class = cmdcnf->default_class ? cmdcnf->default_class : "";
|
pwd->pw_class = cmdcnf->default_class ? cmdcnf->default_class : "";
|
||||||
@ -1485,7 +1488,7 @@ pw_user_mod(int argc, char **argv, char *arg1)
|
|||||||
struct group *grp;
|
struct group *grp;
|
||||||
StringList *groups = NULL;
|
StringList *groups = NULL;
|
||||||
char args[] = "C:qn:u:c:d:e:p:g:G:mM:l:k:s:w:L:h:H:NPYy:";
|
char args[] = "C:qn:u:c:d:e:p:g:G:mM:l:k:s:w:L:h:H:NPYy:";
|
||||||
const char *cfg;
|
const char *cfg = NULL;
|
||||||
char *gecos, *homedir, *grname, *name, *newname, *walk, *skel, *shell;
|
char *gecos, *homedir, *grname, *name, *newname, *walk, *skel, *shell;
|
||||||
char *passwd, *class, *nispasswd;
|
char *passwd, *class, *nispasswd;
|
||||||
login_cap_t *lc;
|
login_cap_t *lc;
|
||||||
|
Loading…
Reference in New Issue
Block a user