X-Git-Url: https://git.ozlabs.org/?a=blobdiff_plain;f=pppd%2Fauth.c;h=53b4ef5c288d1ba7fbe4af470f804e7406017d56;hb=e8be982dbc5c6c50dfc9f66737867570c8ed4973;hp=2d1256b68e8d6ac1d93b134c8562cdd4323e6686;hpb=4426185a13df05984b8827e786966ed1b1408e4e;p=ppp.git diff --git a/pppd/auth.c b/pppd/auth.c index 2d1256b..53b4ef5 100644 --- a/pppd/auth.c +++ b/pppd/auth.c @@ -33,7 +33,7 @@ */ #ifndef lint -static char rcsid[] = "$Id: auth.c,v 1.48 1999/03/30 06:02:21 paulus Exp $"; +static char rcsid[] = "$Id: auth.c,v 1.51 1999/04/12 06:24:44 paulus Exp $"; #endif #include @@ -623,7 +623,7 @@ check_idle(arg) itime = MIN(idle.xmit_idle, idle.recv_idle); if (itime >= idle_time_limit) { /* link is idle: shut it down. */ - info("Terminating connection due to lack of activity."); + notice("Terminating connection due to lack of activity."); lcp_close(0, "Link inactive"); } else { TIMEOUT(check_idle, NULL, idle_time_limit - itime); @@ -891,6 +891,7 @@ static int PAM_conv (int num_msg, const struct pam_message **msg, *resp = reply; return PAM_SUCCESS; } + static struct pam_conv PAM_conversation = { &PAM_conv, NULL @@ -921,7 +922,8 @@ plogin(user, passwd, msg, msglen) pam_error = pam_start ("ppp", user, &PAM_conversation, &pamh); if (pam_error != PAM_SUCCESS) { - *msg = (char *) pam_strerror (pamh, pam_error); + *msg = (char *) pam_strerror (pamh, pam_error); + reopen_log(); return UPAP_AUTHNAK; } /* @@ -944,9 +946,11 @@ plogin(user, passwd, msg, msglen) } *msg = (char *) pam_strerror (pamh, pam_error); + /* * Clean up the mess */ + reopen_log(); /* apparently the PAM stuff does closelog() */ PAM_username = NULL; PAM_password = NULL; if (pam_error != PAM_SUCCESS) @@ -1012,7 +1016,7 @@ plogin(user, passwd, msg, msglen) (void)lseek(fd, (off_t)(pw->pw_uid * sizeof(ll)), SEEK_SET); memset((void *)&ll, 0, sizeof(ll)); (void)time(&ll.ll_time); - (void)strlcpy(ll.ll_line, tty, sizeof(ll.ll_line)); + (void)strncpy(ll.ll_line, tty, sizeof(ll.ll_line)); (void)write(fd, (char *)&ll, sizeof(ll)); (void)close(fd); } @@ -1039,6 +1043,8 @@ plogout() pam_end (pamh, pam_error); pamh = NULL; } + /* Apparently the pam stuff does closelog(). */ + reopen_log(); #else /* ! USE_PAM */ char *tty;