Lines Matching refs:pwd
141 substvar(const char * var, const struct passwd * pwd, int hlen, int pch, int nlen) in substvar() argument
151 if (pwd != NULL) { in substvar()
165 if (pwd != NULL) { in substvar()
178 memmove(p, pwd->pw_dir, hlen); in substvar()
185 memmove(p, pwd->pw_name, nlen); in substvar()
198 setclassenvironment(login_cap_t *lc, const struct passwd * pwd, int paths) in setclassenvironment() argument
201 int hlen = pwd ? strlen(pwd->pw_dir) : 0; in setclassenvironment()
202 int nlen = pwd ? strlen(pwd->pw_name) : 0; in setclassenvironment()
205 if (hlen && pwd->pw_dir[hlen-1] != '/') in setclassenvironment()
212 char * np = substvar(var, pwd, hlen, pch, nlen); in setclassenvironment()
238 if ((np = substvar(p, pwd, hlen, pch, nlen)) != NULL) { in setclassenvironment()
386 setlogincontext(login_cap_t *lc, const struct passwd *pwd, in setlogincontext() argument
398 setclassenvironment(lc, pwd, 1); in setlogincontext()
401 setclassenvironment(lc, pwd, 0); in setlogincontext()
426 setusercontext(login_cap_t *lc, const struct passwd *pwd, uid_t uid, unsigned int flags) in setusercontext() argument
435 if (pwd != NULL && (lc = login_getpwclass(pwd)) != NULL) in setusercontext()
443 if (pwd == NULL) in setusercontext()
456 pwd ? pwd->pw_name : "-", in setusercontext()
464 pwd ? pwd->pw_name : "-", in setusercontext()
469 pwd ? pwd->pw_name : "-", in setusercontext()
476 if (setgid(pwd->pw_gid) != 0) { in setusercontext()
477 syslog(LOG_ERR, "setgid(%lu): %m", (u_long)pwd->pw_gid); in setusercontext()
481 if (initgroups(pwd->pw_name, pwd->pw_gid) == -1) { in setusercontext()
482 syslog(LOG_ERR, "initgroups(%s,%lu): %m", pwd->pw_name, in setusercontext()
483 (u_long)pwd->pw_gid); in setusercontext()
498 pwd->pw_name, label_string); in setusercontext()
508 label_string, pwd->pw_name, strerror(error)); in setusercontext()
515 if ((flags & LOGIN_SETLOGIN) && setlogin(pwd->pw_name) != 0) { in setusercontext()
516 syslog(LOG_ERR, "setlogin(%s): %m", pwd->pw_name); in setusercontext()
534 mymask = setlogincontext(lc, pwd, mymask, flags); in setusercontext()
546 if (getuid() == uid && (lc = login_getuserclass(pwd)) != NULL) { in setusercontext()
547 mymask = setlogincontext(lc, pwd, mymask, flags); in setusercontext()