diff options
author | hosokawa <hosokawa@FreeBSD.org> | 2002-04-04 08:43:00 +0000 |
---|---|---|
committer | hosokawa <hosokawa@FreeBSD.org> | 2002-04-04 08:43:00 +0000 |
commit | cce077344bcc866ffb03becd934b09729f56f21e (patch) | |
tree | a7c7b3bb782616a1d7d7b4f81e65734c3e1b5556 /usr.sbin/ppp | |
parent | 2abc929acf45e4b1368a06f92fdc395f3fd1fe17 (diff) | |
download | FreeBSD-src-cce077344bcc866ffb03becd934b09729f56f21e.zip FreeBSD-src-cce077344bcc866ffb03becd934b09729f56f21e.tar.gz |
Get tun P2P address from the local pool if RADIUS server returned
255.255.255.254 as client ipaddr.
Reviewed-By: freebsd-net mailing list
Diffstat (limited to 'usr.sbin/ppp')
-rw-r--r-- | usr.sbin/ppp/auth.c | 3 | ||||
-rw-r--r-- | usr.sbin/ppp/radius.h | 3 |
2 files changed, 5 insertions, 1 deletions
diff --git a/usr.sbin/ppp/auth.c b/usr.sbin/ppp/auth.c index 9085c08..1368cc3 100644 --- a/usr.sbin/ppp/auth.c +++ b/usr.sbin/ppp/auth.c @@ -170,7 +170,8 @@ auth_Select(struct bundle *bundle, const char *name) } #ifndef NORADIUS - if (bundle->radius.valid && bundle->radius.ip.s_addr != INADDR_NONE) { + if (bundle->radius.valid && bundle->radius.ip.s_addr != INADDR_NONE && + bundle->radius.ip.s_addr != RADIUS_INADDR_POOL) { /* We've got a radius IP - it overrides everything */ if (!ipcp_UseHisIPaddr(bundle, bundle->radius.ip)) return 0; diff --git a/usr.sbin/ppp/radius.h b/usr.sbin/ppp/radius.h index ca54615..152df3f 100644 --- a/usr.sbin/ppp/radius.h +++ b/usr.sbin/ppp/radius.h @@ -76,3 +76,6 @@ extern void radius_Account(struct radius *, struct radacct *, #define RAD_START 1 #define RAD_STOP 2 #endif + +/* Get address from NAS pool */ +#define RADIUS_INADDR_POOL htonl(0xfffffffe) /* 255.255.255.254 */ |