[SR-Users] userblacklist use avp for check_blacklist

Daniel-Constantin Mierla miconda at gmail.com
Mon Jun 27 11:57:54 CEST 2016


The spec is null, so the crash is obvious. I have to look at the code to
see why it expect to be a spec there, while it can be a static string.

Cheers,
Daniel


On 27/06/16 10:57, Jan Hazenberg wrote:
> Daniel,
>
> Here the requested gdb output:
>
> (gdb) frame 1
> #1  0x00007f22fd252ece in check_user_blacklist_fixup
> (param=0x7f23061cdd88, param_no=1) at userblacklist.c:213
> 213                                     if(str2int(&s, (unsigned
> int*)&model->spec->pvp.pvn.u.isname.name.n) != 0) {
> (gdb) info locals
> model = 0x7f23061c9400
> s = {s = 0x7f23061ce0b8 "blacklist", len = 9}
> __FUNCTION__ = "check_user_blacklist_fixup"
> (gdb) p *model
> $1 = {text = {s = 0x7f23061ce0b8 "blacklist", len = 9}, spec = 0x0,
> next = 0x0}
> (gdb) p *model->spec
> Cannot access memory at address 0x0
> (gdb)
>
>
> Jan
>
> Daniel-Constantin Mierla schreef op 2016-06-23 19:46:
>> Can you get the output of following commands in gdb:
>>
>> frame 1
>>
>> info locals
>>
>> p *model
>>
>> p *model->spec
>>
>> Cheers,
>> Daniel
>>
>>
>> On 23/06/16 14:45, Jan Hazenberg wrote:
>>> Daniel,
>>>
>>> Here the output of the bt command. This was generated with kamailio
>>> 4.4.1
>>>
>>> Core was generated by `/usr/local/sbin/kamailio -P
>>> /var/run/kamailio.pid -m 768 -M 16 -u kamailio -g k'.
>>> Program terminated with signal 11, Segmentation fault.
>>> #0  0x00007f22fd2526fb in str2int (_s=0x7ffc529b73c0, _r=0x30) at
>>> ../../parser/../parser/../ut.h:643
>>> 643             *_r = 0;
>>> Missing separate debuginfos, use: debuginfo-install
>>> glibc-2.12-1.166.el6_7.7.x86_64 keyutils-libs-1.4-5.el6.x86_64
>>> krb5-libs-1.10.3-42z1.el6_7.x86_64 libcom_err-1.41.12-22.el6.x86_64
>>> libselinux-2.0.94-5.8.el6.x86_64 libxml2-2.7.6-20.el6_7.1.x86_64
>>> mysql-libs-5.1.73-5.el6_6.x86_64
>>> nss-softokn-freebl-3.14.3-23.el6_7.x86_64
>>> openssl-1.0.1e-42.el6_7.4.x86_64 pcre-7.8-7.el6.x86_64
>>> zlib-1.2.3-29.el6.x86_64
>>> (gdb) bt
>>> #0  0x00007f22fd2526fb in str2int (_s=0x7ffc529b73c0, _r=0x30) at
>>> ../../parser/../parser/../ut.h:643
>>> #1  0x00007f22fd252ece in check_user_blacklist_fixup
>>> (param=0x7f23061cdd88, param_no=1) at userblacklist.c:213
>>> #2  0x0000000000531e49 in fix_actions (a=0x7f23061cdd28) at route.c:919
>>> #3  0x00000000005613b7 in fix_rval (rv=0x7f23061cfa68) at rvalue.c:2876
>>> #4  0x000000000057323e in fix_rval_expr (p=0x7f23061cfa60) at
>>> rvalue.c:3797
>>> #5  0x0000000000573253 in fix_rval_expr (p=0x7f23061cf350) at
>>> rvalue.c:3808
>>> #6  0x000000000052da79 in fix_actions (a=0x7f23061ce7f0) at route.c:706
>>> #7  0x000000000053da17 in fix_rl (rt=0xac8640) at route.c:2088
>>> #8  0x000000000053da4d in fix_rls () at route.c:2104
>>> #9  0x00000000004b83ea in main (argc=11, argv=0x7ffc529b8158) at
>>> main.c:2605
>>> (gdb)
>>>
>>>
>>> Thanks,
>>>
>>> Jan
>>>
>>> Daniel-Constantin Mierla schreef op 2016-06-23 12:53:
>>>> Hello,
>>>>
>>>> send the all the output of 'bt' command inside gdb. It will give the
>>>> full execution stack, likely the problem is not in frame 0, but in a
>>>> previous one.
>>>>
>>>> Cheers,
>>>> Daniel
>>>>
>>>>
>>>> On 23/06/16 12:47, Jan Hazenberg wrote:
>>>>> I just tried to use the check_user_blacklist function but then
>>>>> kamailio crashed when i start it. I'm using the following code:
>>>>>
>>>>>
>>>>>         if (!check_user_blacklist("blacklist", "$avp(from_domain)",
>>>>> "$(avp(ruri_number){s.substr,1,0})")) {
>>>>>                 xlog("L_ALERT", "ALERT: $rU is blacklisted, rejecting
>>>>> call - IP=$si PORT=$sp R=$ru ID=$ci FU=$fu M=$rm UA=$ua\n");
>>>>>                 sl_send_reply("403", "Forbidden");
>>>>>                 exit;
>>>>>         }
>>>>>
>>>>> This is the GDB output:
>>>>>
>>>>> Core was generated by `/usr/local/sbin/kamailio -P
>>>>> /var/run/kamailio.pid -m 768 -M 16 -u kamailio -g k'.
>>>>> Program terminated with signal 11, Segmentation fault.
>>>>> #0  0x00007fdf4b2be6fb in str2int (_s=0x7fff312b7bd0, _r=0x30) at
>>>>> ../../parser/../parser/../ut.h:643
>>>>> 643             *_r = 0;
>>>>>
>>>>>
>>>>> I have kamailio 4.4.0 installed, just tested with 4.4.1 and the
>>>>> result
>>>>> is the same.
>>>>>
>>>>> Thanks,
>>>>>
>>>>> Jan
>>>>>
>>>>> Jan Hazenberg schreef op 2016-06-23 09:47:
>>>>>> Hello,
>>>>>>
>>>>>> I'm trying to use the userblacklist module to implement a global
>>>>>> blacklist. I have a few questions about the module.
>>>>>>
>>>>>> Is it possible to use a avp for the check_blacklist function? If i'm
>>>>>> correct it will only parse the request URI, but i'm rewriting the
>>>>>> URI
>>>>>> in a branch route to allow different formats to different
>>>>>> destinations. Or is this only possible with the check_user_blacklist
>>>>>> function?
>>>>>>
>>>>>> I also have a issue with numbers in E164 format with a leading +. I
>>>>>> tried to escape this with a \ in the database but it will not
>>>>>> load the
>>>>>> entry's when i use the + in front of the number. Is the +
>>>>>> supported by
>>>>>> this module or should i strip it before the function and add it
>>>>>> again
>>>>>> afterwards?
>>>>>>
>>>>>> Thanks,
>>>>>>
>>>>>> Jan
>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing
>>>>>> list
>>>>>> sr-users at lists.sip-router.org
>>>>>> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>>>>>
>>>>> _______________________________________________
>>>>> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing
>>>>> list
>>>>> sr-users at lists.sip-router.org
>>>>> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>>>
>>> _______________________________________________
>>> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
>>> sr-users at lists.sip-router.org
>>> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>
> _______________________________________________
> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
> sr-users at lists.sip-router.org
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users

-- 
Daniel-Constantin Mierla
http://www.asipto.com - http://www.kamailio.org
http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda




More information about the sr-users mailing list