mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-22 15:02:32 +00:00
130 lines
3.1 KiB
Diff
130 lines
3.1 KiB
Diff
|
diff -urN -x'*.swp' ppp.old/pppd/auth.c ppp.dev/pppd/auth.c
|
||
|
--- ppp.old/pppd/auth.c 2004-11-12 11:30:51.000000000 +0100
|
||
|
+++ ppp.dev/pppd/auth.c 2005-07-13 14:54:23.000000000 +0200
|
||
|
@@ -532,6 +532,12 @@
|
||
|
link_required(unit)
|
||
|
int unit;
|
||
|
{
|
||
|
+}
|
||
|
+
|
||
|
+void
|
||
|
+start_link(unit)
|
||
|
+ int unit;
|
||
|
+{
|
||
|
new_phase(PHASE_SERIALCONN);
|
||
|
|
||
|
devfd = the_channel->connect();
|
||
|
@@ -984,10 +990,12 @@
|
||
|
int unit, protocol, prot_flavor;
|
||
|
{
|
||
|
int bit;
|
||
|
+ const char *prot = "";
|
||
|
|
||
|
switch (protocol) {
|
||
|
case PPP_CHAP:
|
||
|
bit = CHAP_WITHPEER;
|
||
|
+ prot = "CHAP";
|
||
|
switch (prot_flavor) {
|
||
|
case CHAP_MD5:
|
||
|
bit |= CHAP_MD5_WITHPEER;
|
||
|
@@ -1006,15 +1014,19 @@
|
||
|
if (passwd_from_file)
|
||
|
BZERO(passwd, MAXSECRETLEN);
|
||
|
bit = PAP_WITHPEER;
|
||
|
+ prot = "PAP";
|
||
|
break;
|
||
|
case PPP_EAP:
|
||
|
bit = EAP_WITHPEER;
|
||
|
+ prot = "EAP";
|
||
|
break;
|
||
|
default:
|
||
|
warn("auth_withpeer_success: unknown protocol %x", protocol);
|
||
|
bit = 0;
|
||
|
}
|
||
|
|
||
|
+ notice("%s authentication succeeded", prot);
|
||
|
+
|
||
|
/* Save the authentication method for later. */
|
||
|
auth_done[unit] |= bit;
|
||
|
|
||
|
@@ -1648,6 +1660,7 @@
|
||
|
static void
|
||
|
plogout()
|
||
|
{
|
||
|
+ char *tty;
|
||
|
#ifdef USE_PAM
|
||
|
int pam_error;
|
||
|
|
||
|
@@ -1658,14 +1671,12 @@
|
||
|
}
|
||
|
/* Apparently the pam stuff does closelog(). */
|
||
|
reopen_log();
|
||
|
-#else /* ! USE_PAM */
|
||
|
- char *tty;
|
||
|
+#endif /* USE_PAM */
|
||
|
|
||
|
tty = devnam;
|
||
|
if (strncmp(tty, "/dev/", 5) == 0)
|
||
|
tty += 5;
|
||
|
logwtmp(tty, "", ""); /* Wipe out utmp logout entry */
|
||
|
-#endif /* ! USE_PAM */
|
||
|
logged_in = 0;
|
||
|
}
|
||
|
|
||
|
diff -urN -x'*.swp' ppp.old/pppd/main.c ppp.dev/pppd/main.c
|
||
|
--- ppp.old/pppd/main.c 2005-07-13 11:34:28.000000000 +0200
|
||
|
+++ ppp.dev/pppd/main.c 2005-07-13 14:49:06.000000000 +0200
|
||
|
@@ -537,6 +537,7 @@
|
||
|
script_unsetenv("BYTES_RCVD");
|
||
|
|
||
|
lcp_open(0); /* Start protocol */
|
||
|
+ start_link(0);
|
||
|
while (phase != PHASE_DEAD) {
|
||
|
handle_events();
|
||
|
get_input();
|
||
|
diff -urN -x'*.swp' ppp.old/pppd/pppd.h ppp.dev/pppd/pppd.h
|
||
|
--- ppp.old/pppd/pppd.h 2005-07-13 11:34:28.000000000 +0200
|
||
|
+++ ppp.dev/pppd/pppd.h 2005-07-13 14:48:56.000000000 +0200
|
||
|
@@ -526,6 +526,7 @@
|
||
|
|
||
|
/* Procedures exported from auth.c */
|
||
|
void link_required __P((int)); /* we are starting to use the link */
|
||
|
+void start_link __P((int)); /* bring the link up now */
|
||
|
void link_terminated __P((int)); /* we are finished with the link */
|
||
|
void link_down __P((int)); /* the LCP layer has left the Opened state */
|
||
|
void upper_layers_down __P((int));/* take all NCPs down */
|
||
|
diff -urN -x'*.swp' ppp.old/pppd/tty.c ppp.dev/pppd/tty.c
|
||
|
--- ppp.old/pppd/tty.c 2004-11-13 13:07:29.000000000 +0100
|
||
|
+++ ppp.dev/pppd/tty.c 2005-07-13 14:46:57.000000000 +0200
|
||
|
@@ -755,14 +755,6 @@
|
||
|
close(pty_master);
|
||
|
pty_master = -1;
|
||
|
}
|
||
|
- if (pty_slave >= 0) {
|
||
|
- close(pty_slave);
|
||
|
- pty_slave = -1;
|
||
|
- }
|
||
|
- if (real_ttyfd >= 0) {
|
||
|
- close(real_ttyfd);
|
||
|
- real_ttyfd = -1;
|
||
|
- }
|
||
|
ttyfd = -1;
|
||
|
if (got_sigterm)
|
||
|
asked_to_quit = 1;
|
||
|
@@ -781,6 +773,7 @@
|
||
|
} else {
|
||
|
info("Serial link disconnected.");
|
||
|
}
|
||
|
+ stop_charshunt(NULL, 0);
|
||
|
}
|
||
|
|
||
|
void tty_close_fds()
|
||
|
@@ -944,7 +937,6 @@
|
||
|
exit(0);
|
||
|
}
|
||
|
charshunt_pid = cpid;
|
||
|
- add_notifier(&sigreceived, stop_charshunt, 0);
|
||
|
record_child(cpid, "pppd (charshunt)", charshunt_done, NULL);
|
||
|
return 1;
|
||
|
}
|