Lines Matching +full:- +full:- +full:no +full:- +full:tty
1 /* login.c - Start a session on the system.
5 * No support for PAM/securetty/selinux/login script/issue/utmp
14 usage: login [-p] [-h host] [-f USERNAME] [USERNAME]
18 -p Preserve environment
19 -h The name of the remote host for this login
20 -f login as USERNAME without authentication
40 int count, tty = tty_fd(); in login_main() local
44 // we read user/password from stdin, but tty can be stderr? in login_main()
45 if (tty == -1) error_exit("no tty"); in login_main()
57 if (gethostname(toybuf, sizeof(toybuf)-1)) *toybuf = 0; in login_main()
61 if(!fgets(toybuf, sizeof(toybuf)-1, stdin)) xexit(); in login_main()
74 // Pre-authenticated or passwordless in login_main()
75 if (TT.f || !*pwd->pw_passwd) break; in login_main()
78 if (*(pass = pwd->pw_passwd) == 'x') { in login_main()
82 pass = spwd->sp_pwdp; in login_main()
88 } else if (TT.f) error_exit("bad -f '%s'", TT.f); in login_main()
94 // password go bye-bye now. in login_main()
100 ttyname(tty), TT.h ? "from " : "", TT.h ? : ""); in login_main()
114 if (pwd->pw_uid && !access("/etc/nologin", R_OK)) { in login_main()
123 if (fchown(tty, pwd->pw_uid, pwd->pw_gid) || fchmod(tty, 0600)) in login_main()
124 printf("can't claim tty"); in login_main()
131 syslog(LOG_INFO, "%s logged in on %s %s %s", pwd->pw_name, in login_main()
132 ttyname(tty), TT.h ? "from" : "", TT.h ? : ""); in login_main()
135 execl(pwd->pw_shell, xmprintf("-%s", pwd->pw_shell), (char *)0); in login_main()
136 perror_exit("exec shell '%s'", pwd->pw_shell); in login_main()