Lines Matching refs:pwd

146 otp_verify(struct passwd *pwd, const char *password)
160 krb5_verify(struct passwd *pwd, const char *password)
165 ret = krb5_parse_name(context, pwd->pw_name, &princ);
251 krb5_start_session (const struct passwd *pwd)
258 (unsigned)pwd->pw_uid);
282 krb5_get_afs_tokens (const struct passwd *pwd)
294 pw_dir = pwd->pw_dir;
303 cell, NULL, pwd->pw_uid, pwd->pw_dir);
305 pwd->pw_uid, pwd->pw_dir);
315 krb4_verify(struct passwd *pwd, const char *password)
327 TKT_ROOT, (unsigned)pwd->pw_uid, (unsigned)getpid());
331 ret = krb_verify_user (pwd->pw_name, "", lrealm, (char *)password,
336 if (chown (ticket_file, pwd->pw_uid, pwd->pw_gid) < 0) {
346 krb4_get_afs_tokens (const struct passwd *pwd)
354 pw_dir = pwd->pw_dir;
362 krb_afslog_uid_home (cell, NULL, pwd->pw_uid, pwd->pw_dir);
364 krb_afslog_uid_home (NULL, NULL, pwd->pw_uid, pwd->pw_dir);
440 * Actually log in the user. `pwd' contains all the relevant
446 do_login(const struct passwd *pwd, char *tty, char *ttyn)
451 int rootlogin = (pwd->pw_uid == 0);
461 sp = getspnam(pwd->pw_name);
464 update_utmp(pwd->pw_name, remote_host ? remote_host : "",
471 tty_gid = pwd->pw_gid;
473 if (chown (ttyn, pwd->pw_uid, tty_gid) < 0) {
486 if(setlogin(pwd->pw_name)){
487 warn("setlogin(%s)", pwd->pw_name);
497 read_limits_conf(file, pwd);
501 if (setpcred (pwd->pw_name, NULL) == -1)
502 warn("setpcred(%s)", pwd->pw_name);
505 if(initgroups(pwd->pw_name, pwd->pw_gid)){
506 warn("initgroups(%s, %u)", pwd->pw_name, (unsigned)pwd->pw_gid);
511 if(do_osfc2_magic(pwd->pw_uid))
513 if(setgid(pwd->pw_gid)){
514 warn("setgid(%u)", (unsigned)pwd->pw_gid);
518 if(setuid(pwd->pw_uid) || (pwd->pw_uid != 0 && setuid(0) == 0)) {
519 warn("setuid(%u)", (unsigned)pwd->pw_uid);
533 check_shadow(pwd, sp);
541 udb = getudbnam(pwd->pw_name);
577 struct user_cap *ucap = sgi_getcapabilitybyname(pwd->pw_name);
591 home_dir = pwd->pw_dir;
593 fprintf(stderr, "No home directory \"%s\"!\n", pwd->pw_dir);
601 krb5_start_session (pwd);
616 krb5_get_afs_tokens (pwd);
623 krb4_get_afs_tokens (pwd);
659 add_env("USER", pwd->pw_name);
660 add_env("LOGNAME", pwd->pw_name);
661 add_env("SHELL", pwd->pw_shell);
662 exec_shell(pwd->pw_shell, rootlogin);
666 check_password(struct passwd *pwd, const char *password)
668 if(pwd->pw_passwd == NULL)
670 if(pwd->pw_passwd[0] == '\0'){
677 if(strcmp(pwd->pw_passwd, crypt(password, pwd->pw_passwd)) == 0)
680 if(krb5_verify(pwd, password) == 0) {
686 if (krb4_verify (pwd, password) == 0) {
692 if (otp_verify (pwd, password) == 0) {
794 struct passwd *pwd;
815 pwd = k_getpwnam(username);
817 if (pwd != NULL && (pwd->pw_passwd[0] == '\0')) {
845 if(pwd == NULL){
851 if(f_flag == 0 && check_password(pwd, password)){
866 if (login_access (pwd, remote_host ? remote_host : tty) == 0) {
870 pwd->pw_name, remote_host);
873 pwd->pw_name, tty);
878 pwd->pw_name, remote_host, (int) getppid());
881 pwd->pw_name, tty, (int) getppid());
884 do_login(pwd, tty, ttyn);