summaryrefslogtreecommitdiffstats
path: root/usr.sbin/ppp/chap.c
diff options
context:
space:
mode:
authoramurai <amurai@FreeBSD.org>1995-02-26 12:18:08 +0000
committeramurai <amurai@FreeBSD.org>1995-02-26 12:18:08 +0000
commiteeb422fed8735188e4e141578d0383ae57ba8343 (patch)
treed05da3a88d3d54962fad8582d501f1b7ad9500b9 /usr.sbin/ppp/chap.c
parent7c16fe40ea66e6edc77ed310b654360adf11b9f9 (diff)
downloadFreeBSD-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/chap.c')
-rw-r--r--usr.sbin/ppp/chap.c21
1 files changed, 13 insertions, 8 deletions
diff --git a/usr.sbin/ppp/chap.c b/usr.sbin/ppp/chap.c
index 2b86b40..18ded48 100644
--- a/usr.sbin/ppp/chap.c
+++ b/usr.sbin/ppp/chap.c
@@ -16,11 +16,10 @@
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
* WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- *
+ *
* $Id:$
- *
+ *
* TODO:
- * o Imprement retransmission timer.
*/
#include "fsm.h"
#include "chap.h"
@@ -29,13 +28,16 @@
#include "hdlc.h"
#include "phase.h"
#include "vars.h"
-
-static int chapid;
+#include "auth.h"
static char *chapcodes[] = {
"???", "CHALLENGE", "RESPONCE", "SUCCESS", "FAILURE"
};
+struct authinfo AuthChapInfo = {
+ SendChapChallenge,
+};
+
extern char *AuthGetSecret();
void
@@ -68,13 +70,13 @@ static char challenge_data[80];
static int challenge_len;
void
-SendChapChallenge()
+SendChapChallenge(chapid)
+int chapid;
{
int keylen, len, i;
char *cp;
srandom(time(NULL));
- ++chapid;
cp = challenge_data;
*cp++ = challenge_len = random() % 32 + 16;
@@ -91,6 +93,7 @@ void
DumpDigest(mes, cp, len)
char *mes;
char *cp;
+int len;
{
int i;
@@ -244,8 +247,10 @@ ChapInput(struct mbuf *bp)
bp->cnt -= sizeof(struct fsmheader);
switch (chp->code) {
- case CHAP_CHALLENGE:
case CHAP_RESPONSE:
+ StopAuthTimer(&AuthChapInfo);
+ /* Fall into.. */
+ case CHAP_CHALLENGE:
RecvChapTalk(chp, bp);
break;
case CHAP_SUCCESS:
OpenPOWER on IntegriCloud