diff options
author | amurai <amurai@FreeBSD.org> | 1995-02-26 12:18:08 +0000 |
---|---|---|
committer | amurai <amurai@FreeBSD.org> | 1995-02-26 12:18:08 +0000 |
commit | eeb422fed8735188e4e141578d0383ae57ba8343 (patch) | |
tree | d05da3a88d3d54962fad8582d501f1b7ad9500b9 /usr.sbin/ppp/pap.c | |
parent | 7c16fe40ea66e6edc77ed310b654360adf11b9f9 (diff) | |
download | FreeBSD-src-eeb422fed8735188e4e141578d0383ae57ba8343.zip FreeBSD-src-eeb422fed8735188e4e141578d0383ae57ba8343.tar.gz |
New user Process PPP based on iij-ppp0.94beta2.
o Supporting SYNC SIO device (But need a device driver)
- add "set speed sync"
o Fixing bug for Predictor-1 function.
o Add new parameter that re-sent interval for set timeout commands.
o Improving RTT (Round Trip Time) and reducing processor time.
- Previous Timer service was using polling, and now using
SIGALRM ;-)
- A 0.94beta2 will not work correctly....
-- Follows are additinal feature not including 0.94beta2
o Support Proxy ARP
- add "enable/disable proxy" commands
o Marging common routine in CHAP/PAP.
o Enhancing LCP/IPCP log information.
o Support local Authfication connection on port 300x and tty.
- You can set up pair of your "hostname -s" and
password in ppp.secret. if either ppp.secret file nor
your hostname line don't exist, It will notify a message
and working as same as previous version.(Backword compatibility)
- If you did set up them, It's allow connection but nothing to do
except help and passwd command.
- add "passwd yourpasswd" commands
o Support afilter - keep Alive filter that a packet can send/receiving
according to ifilter/ofilter but doesn't count it as preventing idle
timer expires.
- Same syntax of other filters.
o Fixing bugs reported by current user for previous one. Thanks !!
Reviewed by: Atsushi Murai (amurai@spec.co.jp)
Diffstat (limited to 'usr.sbin/ppp/pap.c')
-rw-r--r-- | usr.sbin/ppp/pap.c | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/usr.sbin/ppp/pap.c b/usr.sbin/ppp/pap.c index 3aaa25a..38ced43 100644 --- a/usr.sbin/ppp/pap.c +++ b/usr.sbin/ppp/pap.c @@ -19,9 +19,8 @@ * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. * * $Id:$ - * + * * TODO: - * o Imprement retransmission timer. */ #include "fsm.h" #include "lcp.h" @@ -30,15 +29,19 @@ #include "hdlc.h" #include "lcpproto.h" #include "phase.h" +#include "auth.h" static char *papcodes[] = { "???", "REQUEST", "ACK", "NAK" }; -static int papid; +struct authinfo AuthPapInfo = { + SendPapChallenge, +}; void -SendPapChallenge() +SendPapChallenge(papid) +int papid; { struct fsmheader lh; struct mbuf *bp; @@ -50,10 +53,10 @@ SendPapChallenge() plen = namelen + keylen + 2; #ifdef DEBUG logprintf("namelen = %d, keylen = %d\n", namelen, keylen); - LogPrintf(LOG_PHASE, "PAP: %s (%s)\n", VarAuthName, VarAuthKey); #endif + LogPrintf(LOG_PHASE, "PAP: %s (%s)\n", VarAuthName, VarAuthKey); lh.code = PAP_REQUEST; - lh.id = ++papid; + lh.id = papid; lh.length = htons(plen + sizeof(struct fsmheader)); bp = mballoc(plen + sizeof(struct fsmheader), MB_FSM); bcopy(&lh, MBUF_CTOP(bp), sizeof(struct fsmheader)); @@ -105,7 +108,9 @@ u_char *name, *key; klen = *key; *key++ = 0; key[klen] = 0; +#ifdef DEBUG logprintf("name: %s (%d), key: %s (%d)\n", name, nlen, key, klen); +#endif return(AuthValidate(SECRETFILE, name, key)); } @@ -139,6 +144,7 @@ struct mbuf *bp; } break; case PAP_ACK: + StopAuthTimer(&AuthPapInfo); cp = (u_char *)(php + 1); len = *cp++; cp[len] = 0; @@ -150,6 +156,7 @@ struct mbuf *bp; } break; case PAP_NAK: + StopAuthTimer(&AuthPapInfo); cp = (u_char *)(php + 1); len = *cp++; cp[len] = 0; |