[OpenSIPS-Devel] Misplaced radius error problem

Michael Schloh von Bennewitz develop2009 at schloh.com
Wed Feb 10 16:47:14 CET 2010


Hello Bogdan,

On Tues, Feb 10, 2010, Bogdan-Andrei Iancu wrote:
>Michael Schloh von Bennewitz wrote:
>> On Tues, Dec 22, 2009, Michael Schloh von Bennewitz wrote:
>>> Index: modules/aaa_radius/rad.c
>>> diff -Nau modules/aaa_radius/rad.c.orig modules/aaa_radius/rad.c
>>> --- modules/aaa_radius/rad.c.orig	2009-12-10 19:57:33.000000000 +0100
>>> +++ modules/aaa_radius/rad.c	2009-12-22 13:28:05.852461686 +0100
>>> @@ -273,9 +273,14 @@
>>> 				return -1;
>>> 			}
>>> 		}
>>> -
>>> -		LM_ERR("rc_auth function failed\n");
>>> -		return -1;
>>> +		else if (result == TIMEOUT_RC || result == REJECT_RC) {
>>> +			LM_DBG("rc_auth function succeeded with result %d\n", result);
>>> +			return result;
>>> +		}
>>> +		else /* if (result == ERROR_RC || result == BADRESP_RC) */ {
>>> +			LM_ERR("rc_auth function failed with result %d\n", result);
>>> +			return -1;
>>> +		}
>>> 	}
>>>
>>> 	if (request->type == AAA_ACCT) {
>>>
>>> [...]
>>>
>I was following your arguments and I agree on REJECT_RC case, but
>why TIMEOUT_RC is not an error ? I guess is about the timeout on
>client side, waiting for a reply from radius server, right ?
>
I tested this two months ago, so I can only remember that REJECT_RC
was causing problems. Probably I didn't see any TIMEOUT_RC values,
so maybe I didn't test those.

It might be best to just take care of the false negatives in the
OpenSIPS log being produced by the REJECT_RC, while returning '-1'
for all *_RC negative values and TIMEOUT_RC as a special case.

Regards,
Michael

-- 
Michael Schloh von Bennewitz
http://michael.schloh.com/



More information about the Devel mailing list