X-Git-Url: http://git.sameswireless.fr/l2tpns.git/blobdiff_plain/97ad99cc23c5f0007de461afb200fd83c3d20481..466ffcdaac51211102276e824d02ed9bc77dd82d:/radius.c?ds=sidebyside diff --git a/radius.c b/radius.c index 567cd72..5ac64b4 100644 --- a/radius.c +++ b/radius.c @@ -1,6 +1,6 @@ // L2TPNS Radius Stuff -char const *cvs_id_radius = "$Id: radius.c,v 1.23 2005/01/25 04:19:06 bodea Exp $"; +char const *cvs_id_radius = "$Id: radius.c,v 1.24 2005/02/14 06:58:39 bodea Exp $"; #include #include @@ -470,6 +470,9 @@ void processrad(uint8_t *buf, int len, char socket_index) session[s].ip_pool_index = -1; LOG(3, s, session[s].tunnel, " Radius reply contains IP address %s\n", fmtaddr(htonl(session[s].ip), 0)); + + if (session[s].ip == 0xFFFFFFFE) + session[s].ip = 0; // assign from pool } else if (*p == 135) { @@ -649,8 +652,8 @@ void processrad(uint8_t *buf, int len, char socket_index) } else if (r_code == AccessReject) { - LOG(2, s, session[s].tunnel, " Authentication denied for %s\n", session[s].user); - sessionshutdown(s, "Authentication denied"); + LOG(2, s, session[s].tunnel, " Authentication rejected for %s\n", session[s].user); + sessionkill(s, "Authentication rejected"); break; }