- /*
- * If valid so far and root is logging in, see if root logins on
- * this terminal are permitted.
- */
- if (pwd->pw_uid == 0 && !rootterm(tty)) {
- if (hostname)
- syslog(LOG_NOTICE, "ROOT LOGIN REFUSED FROM %s",
- hostname);
- else
- syslog(LOG_NOTICE, "ROOT LOGIN REFUSED ON %s", tty);
- (void)printf("Login incorrect\n");
- sleepexit(1);
- }
-
- if (quota(Q_SETUID, pwd->pw_uid, 0, 0) < 0 && errno != EINVAL) {
- switch(errno) {
- case EUSERS:
- (void)fprintf(stderr,
- "Too many users logged on already.\nTry again later.\n");
- break;
- case EPROCLIM:
- (void)fprintf(stderr,
- "You have too many processes running.\n");
- break;
- default:
- perror("quota (Q_SETUID)");
- }
- sleepexit(0);
- }
-