cleanup clash between timeout and session_timout
This commit is contained in:
parent
a1772fdad1
commit
cb031e775d
5 changed files with 48 additions and 89 deletions
35
radius.c
35
radius.c
|
|
@ -1,6 +1,6 @@
|
|||
// L2TPNS Radius Stuff
|
||||
|
||||
char const *cvs_id_radius = "$Id: radius.c,v 1.53 2006/08/02 12:54:45 bodea Exp $";
|
||||
char const *cvs_id_radius = "$Id: radius.c,v 1.54 2006/08/02 13:35:39 bodea Exp $";
|
||||
|
||||
#include <time.h>
|
||||
#include <stdio.h>
|
||||
|
|
@ -655,19 +655,6 @@ void processrad(uint8_t *buf, int len, char socket_index)
|
|||
LOG(3, s, session[s].tunnel, " Radius reply contains primary DNS address %s\n",
|
||||
fmtaddr(htonl(session[s].dns1), 0));
|
||||
}
|
||||
else if (*p == 27)
|
||||
{
|
||||
// Session timeout
|
||||
if (p[1] < 6) {
|
||||
LOG(2, s, session[s].tunnel, "Error: Received Session timeout with length %d < 6\n", p[1]);
|
||||
continue;
|
||||
}
|
||||
|
||||
session[s].timeout = ntohl(*(uint32_t *) (p + 2));
|
||||
LOG(3, s, session[s].tunnel, " Radius reply contains Session timeout %d\n", session[s].timeout);
|
||||
if (!session[s].timeout)
|
||||
sessionshutdown(s, "Session timeout is zero", CDN_ADMIN_DISC, TERM_SESSION_TIMEOUT);
|
||||
}
|
||||
else if (*p == 136)
|
||||
{
|
||||
// DNS address
|
||||
|
|
@ -764,24 +751,16 @@ void processrad(uint8_t *buf, int len, char socket_index)
|
|||
else if (*p == 27)
|
||||
{
|
||||
// Session-Timeout
|
||||
uint32_t to = ntohl(*(uint32_t *)(p + 2));
|
||||
|
||||
LOG(3, s, session[s].tunnel, " Radius reply contains Session-Timeout = %u\n", to);
|
||||
if (to > 0)
|
||||
{
|
||||
session[s].session_timeout = to;
|
||||
}
|
||||
if (p[1] < 6) continue;
|
||||
session[s].session_timeout = ntohl(*(uint32_t *)(p + 2));
|
||||
LOG(3, s, session[s].tunnel, " Radius reply contains Session-Timeout = %u\n", session[s].session_timeout);
|
||||
}
|
||||
else if (*p == 28)
|
||||
{
|
||||
// Idle-Timeout
|
||||
uint32_t to = ntohl(*(uint32_t *)(p + 2));
|
||||
|
||||
LOG(3, s, session[s].tunnel, " Radius reply contains Idle-Timeout = %u\n", to);
|
||||
if (to > 0)
|
||||
{
|
||||
session[s].idle_timeout = to;
|
||||
}
|
||||
if (p[1] < 6) continue;
|
||||
session[s].idle_timeout = ntohl(*(uint32_t *)(p + 2));
|
||||
LOG(3, s, session[s].tunnel, " Radius reply contains Idle-Timeout = %u\n", session[s].idle_timeout);
|
||||
}
|
||||
else if (*p == 26 && p[1] >= 7)
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue