diff options
-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 */ |