[Kamailio-Users] sanity_check question
Dubravko Caric
dubravko_caric at yahoo.com
Tue Jul 21 11:34:38 CEST 2009
Hi Daniel,
it works now.
Thanks
/dubravko
----- Original Message ----
From: Daniel-Constantin Mierla <miconda at gmail.com>
To: Klaus Darilion <klaus.mailinglists at pernau.at>
Cc: Dubravko Caric <dubravko_caric at yahoo.com>; kamailio users <users at lists.kamailio.org>
Sent: Monday, July 20, 2009 6:29:25 PM
Subject: Re: [Kamailio-Users] sanity_check question
On 20.07.2009 17:12 Uhr, Klaus Darilion wrote:
> that's strange:
>
> santity module defines the return values:
>
> #define SANITY_CHECK_PASSED 1 -> good message
> #define SANITY_CHECK_FAILED 0 -> bad message
> #define SANITY_CHECK_ERROR -1 -> error during check (eg. out of mem)
>
> Further, openser module function return values result in:
> http://www.asipto.com/pub/openser-devel-guide/#c16return_values
>
> if <0 - evaluation of the return code is FALSE
> if 0 - the interpreter stop executing the configuration file
> if >0 - evaluation of the return code is TRUE
>
>
> So, if there is a bad message, script execution should be stopped.
that warning message:
Jul 20 13:34:06 [8226] WARNING:sanity:check_ruri_scheme: failed to parse request uri
is printed but no error returned. A field in the uri structure is checked later. The problem was with return code from internal parse uri function, which in K is 0 for success but was checking for 1. The error field in structure was not set because parsing went actually ok. It was something harmless, just warn printed out.
Cheers,
Daniel
>
> Strange
>
> klaus
>
>
> Dubravko Caric schrieb:
>> Hi all,
>>
>> I have a question regarding sanity module (kamailio 1.5.1). Module documentation says "The function returns true if one of the checks failed", but as you can see in case 1 (request is valid) and case 2 (request is not valid because bad request uri) requests always enter function block.
>>
>> Does anybody else have the same problem? Any help would be appreciated...
>> Thanks a lot
>>
>> /dubravko
>>
>>
>> *Case 1:*
>> if (is_method("REGISTER")) {
>> xlog("L_INFO", "ENTER REGISTER\n"); if (sanity_check("128","6")) {
>> xlog("L_NOTICE", "SANITY $si:$sp TIME $Tf USER $fu METHOD $rm\n");
>> exit;
>> }
>> }
>>
>> ENTER REGISTER
>> Jul 20 13:30:13 [8180] DBG:core:parse_headers: flags=2000
>> Jul 20 13:30:13 [8180] DBG:core:get_hdr_field: cseq <CSeq>: <1> <REGISTER>
>> Jul 20 13:30:13 [8180] DBG:core:get_hdr_field: content_length=0
>> Jul 20 13:30:13 [8180] DBG:core:parse_headers: flags=ffffffffffffffff
>> Jul 20 13:30:13 [8180] DBG:core:get_hdr_field: found end of header
>> Jul 20 13:30:13 [8180] DBG:sanity:sanity_check: all sanity checks passed
>> SANITY xxx.xxx.xxx.xxx:22355 TIME Mon Jul 20 13:30:13 2009 USER sip:bob at exmaple.com METHOD REGISTER
>> Jul 20 13:30:13 [8180] DBG:core:destroy_avp_list: destroying list (nil)
>> Jul 20 13:30:13 [8180] DBG:core:receive_msg: cleaning up
>>
>> *Case 2:*
>> ...
>> if (sanity_check("130","6")) {
>> ...
>>
>> ENTER REGISTER
>> Jul 20 13:34:06 [8226] WARNING:sanity:check_ruri_scheme: failed to parse request uri
>> Jul 20 13:34:06 [8226] DBG:core:parse_headers: flags=2000
>> Jul 20 13:34:06 [8226] DBG:core:get_hdr_field: cseq <CSeq>: <1> <REGISTER>
>> Jul 20 13:34:06 [8226] DBG:core:get_hdr_field: content_length=0
>> Jul 20 13:34:06 [8226] DBG:core:parse_headers: flags=ffffffffffffffff
>> Jul 20 13:34:06 [8226] DBG:core:get_hdr_field: found end of header
>> Jul 20 13:34:06 [8226] SANITY xxx.xxx.xxx.xxx:22359 TIME Mon Jul 20 13:34:06 2009 USER sip:bob at exmaple.com METHOD REGISTER
>> Jul 20 13:34:06 [8226] DBG:core:destroy_avp_list: destroying list (nil)
>> Jul 20 13:34:06 [8226] DBG:core:receive_msg: cleaning up
>>
>>
>>
>> _______________________________________________
>> Kamailio (OpenSER) - Users mailing list
>> Users at lists.kamailio.org
>> http://lists.kamailio.org/cgi-bin/mailman/listinfo/users
>> http://lists.openser-project.org/cgi-bin/mailman/listinfo/users
>
> _______________________________________________
> Kamailio (OpenSER) - Users mailing list
> Users at lists.kamailio.org
> http://lists.kamailio.org/cgi-bin/mailman/listinfo/users
> http://lists.openser-project.org/cgi-bin/mailman/listinfo/users
>
-- Daniel-Constantin Mierla
http://www.asipto.com/index.php/sip-router-bootcamp/
More information about the sr-users
mailing list