X-Git-Url: http://git.ozlabs.org/?a=blobdiff_plain;f=pppd%2Fauth.c;h=4ca883ca8b7081d4a1437466bf1f5d2e3a249d24;hb=df7501b15fe4ed7f6674acde69dd8f51c5e16b82;hp=83b0e0683be9e8f96116c3b9de46e4de73c78e40;hpb=aff0ed820736610ce24be24ce246aeeb90ff5cd1;p=ppp.git diff --git a/pppd/auth.c b/pppd/auth.c index 83b0e06..4ca883c 100644 --- a/pppd/auth.c +++ b/pppd/auth.c @@ -32,7 +32,7 @@ * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. */ -#define RCSID "$Id: auth.c,v 1.60 1999/12/23 01:25:13 paulus Exp $" +#define RCSID "$Id: auth.c,v 1.65 2000/04/15 01:27:10 masputra Exp $" #include #include @@ -229,14 +229,14 @@ option_t auth_options[] = { "Use system password database for PAP", 1 }, { "papcrypt", o_bool, &cryptpap, "PAP passwords are encrypted", 1 }, - { "+ua", o_special, setupapfile, + { "+ua", o_special, (void *)setupapfile, "Get PAP user and password from file" }, { "password", o_string, passwd, "Password for authenticating us to the peer", OPT_STATIC, NULL, MAXSECRETLEN }, - { "privgroup", o_special, privgroup, + { "privgroup", o_special, (void *)privgroup, "Allow group members to use privileged options", OPT_PRIV }, - { "allow-ip", o_special, set_noauth_addr, + { "allow-ip", o_special, (void *)set_noauth_addr, "Set IP address(es) which can be used without authentication", OPT_PRIV }, { NULL } @@ -509,6 +509,17 @@ start_networks() struct protent *protp; new_phase(PHASE_NETWORK); + +#ifdef HAVE_MULTILINK + if (multilink) { + if (mp_join_bundle()) { + if (updetach && !nodetach) + detach(); + return; + } + } +#endif /* HAVE_MULTILINK */ + #if 0 if (!demand) set_filters(&pass_filter, &active_filter); @@ -570,7 +581,7 @@ auth_peer_success(unit, protocol, name, namelen) namelen = sizeof(peer_authname) - 1; BCOPY(name, peer_authname, namelen); peer_authname[namelen] = 0; - script_setenv("PEERNAME", peer_authname); + script_setenv("PEERNAME", peer_authname, 0); /* * If there is no more authentication still to be done, @@ -1570,7 +1581,7 @@ auth_ip_addr(unit, addr) } if (auth_required) return 0; /* no addresses authorized */ - return allow_any_ip || !have_route_to(addr); + return allow_any_ip || privileged || !have_route_to(addr); } static int