opensips 1.5.0 crashes when using is_user_in()

classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

opensips 1.5.0 crashes when using is_user_in()

olex-2
Hello, All!

When using function is_user_in() from module group.so there is a crash of
opensips.
The same opensips.cfg was tested on 1.4.3 and 1.4.4 without any crashes or
problems.

/var/log/messages
------------------
Feb  5 16:05:13 voip /usr/sbin/opensips[11992]: INFO:core:handle_sigs:
child process 1203
9 exited by a signal 11
Feb  5 16:05:13 voip /usr/sbin/opensips[11992]: INFO:core:handle_sigs:
core was generated
Feb  5 16:05:13 voip /usr/sbin/opensips[11992]: INFO:core:handle_sigs:
terminating due to
 SIGCHLD
Feb  5 16:05:13 voip /usr/sbin/opensips[12037]: INFO:core:sig_usr: signal
15 received

opensips.cfg(only some strings)
---------------------------------
if (is_user_in("From", "disabled")) {
    xlog("L_INFO", "User is in group 'disabled' F=$fu D=$fd\n");
    rewriteuser("403");
}


GDB trace
-----------
#0  0x00007f46a3f42b0a in get_username_domain () from
/usr/lib/opensips/modules/group.so
#1  0x00007f46a3f4364f in is_user_in () from
/usr/lib/opensips/modules/group.so
#2  0x00007f46a7e8f64c in do_action () from /usr/sbin/opensips
#3  0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
#4  0x00007f46a7ed0f8e in eval_expr () from /usr/sbin/opensips
#5  0x00007f46a7ed0dac in eval_expr () from /usr/sbin/opensips
#6  0x00007f46a7e8e37e in do_action () from /usr/sbin/opensips
#7  0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
#8  0x00007f46a7e916e5 in do_action () from /usr/sbin/opensips
#9  0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
#10 0x00007f46a7e916e5 in do_action () from /usr/sbin/opensips
#11 0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
#12 0x00007f46a7e92046 in run_top_route () from /usr/sbin/opensips
#13 0x00007f46a7ec6d24 in receive_msg () from /usr/sbin/opensips
#14 0x00007f46a7efd23b in udp_rcv_loop () from /usr/sbin/opensips
#15 0x00007f46a7ea485c in main () from /usr/sbin/opensips



_______________________________________________
Users mailing list
[hidden email]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Reply | Threaded
Open this post in threaded view
|

Re: opensips 1.5.0 crashes when using is_user_in()

olex-2
Hi, Sergia!

> Hello Olex.
>
> Could you execute a list at frame 0?
>
Unfortunately it does not give more info:
#0  0x00007f46a3f42b0a in get_username_domain () from
/usr/lib/opensips/modules/group.so
No symbol table info available.
#1  0x00007f46a3f4364f in is_user_in () from
/usr/lib/opensips/modules/group.so
No symbol table info available.
#2  0x00007f46a7e8f64c in do_action () from /usr/sbin/opensips
No symbol table info available.
#3  0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
No symbol table info available.

Which commands should I use to compile opensips with debugging symbols?

> Did you download opensips from SVN? What OS are you running on?
>
opensips 1.5.0 r5249
os Gentoo linux x86_64
$ uname -a
Linux voip 2.6.25-hardened-r7-20080922 #1 SMP Tue Sep 23 00:30:01 EEST
2008 x86_64 Intel(R) Xeon(R) CPU X3220 @ 2.40GHz GenuineIntel GNU/Linux

> Regards.
>
> Sergio.
>
>
> On Thu, Feb 5, 2009 at 10:12 AM, <[hidden email]> wrote:
>
>> Hello, All!
>>
>> When using function is_user_in() from module group.so there is a crash
>> of
>> opensips.
>> The same opensips.cfg was tested on 1.4.3 and 1.4.4 without any crashes
>> or
>> problems.
>>
>> /var/log/messages
>> ------------------
>> Feb  5 16:05:13 voip /usr/sbin/opensips[11992]: INFO:core:handle_sigs:
>> child process 1203
>> 9 exited by a signal 11
>> Feb  5 16:05:13 voip /usr/sbin/opensips[11992]: INFO:core:handle_sigs:
>> core was generated
>> Feb  5 16:05:13 voip /usr/sbin/opensips[11992]: INFO:core:handle_sigs:
>> terminating due to
>>  SIGCHLD
>> Feb  5 16:05:13 voip /usr/sbin/opensips[12037]: INFO:core:sig_usr:
>> signal
>> 15 received
>>
>> opensips.cfg(only some strings)
>> ---------------------------------
>> if (is_user_in("From", "disabled")) {
>>    xlog("L_INFO", "User is in group 'disabled' F=$fu D=$fd\n");
>>    rewriteuser("403");
>> }
>>
>>
>> GDB trace
>> -----------
>> #0  0x00007f46a3f42b0a in get_username_domain () from
>> /usr/lib/opensips/modules/group.so
>> #1  0x00007f46a3f4364f in is_user_in () from
>> /usr/lib/opensips/modules/group.so
>> #2  0x00007f46a7e8f64c in do_action () from /usr/sbin/opensips
>> #3  0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
>> #4  0x00007f46a7ed0f8e in eval_expr () from /usr/sbin/opensips
>> #5  0x00007f46a7ed0dac in eval_expr () from /usr/sbin/opensips
>> #6  0x00007f46a7e8e37e in do_action () from /usr/sbin/opensips
>> #7  0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
>> #8  0x00007f46a7e916e5 in do_action () from /usr/sbin/opensips
>> #9  0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
>> #10 0x00007f46a7e916e5 in do_action () from /usr/sbin/opensips
>> #11 0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
>> #12 0x00007f46a7e92046 in run_top_route () from /usr/sbin/opensips
>> #13 0x00007f46a7ec6d24 in receive_msg () from /usr/sbin/opensips
>> #14 0x00007f46a7efd23b in udp_rcv_loop () from /usr/sbin/opensips
>> #15 0x00007f46a7ea485c in main () from /usr/sbin/opensips
>>
>>
>>
>> _______________________________________________
>> Users mailing list
>> [hidden email]
>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>
>
>
>
> --
> Sergio Gutiérrez
>



_______________________________________________
Users mailing list
[hidden email]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Reply | Threaded
Open this post in threaded view
|

Re: opensips 1.5.0 crashes when using is_user_in()

olex-2
The problem was that opensips binary was stripped after compilation.
Here is full backtrace.

#0  get_username_domain (msg=0x7fe9e6356468, gcp=0x0,
username=0x7fffee0cc070,
    domain=0x7fffee0cc0b0) at group.c:59
        puri = {user = {s = 0x6d00000001 <Address 0x6d00000001 out of bounds>,
    len = 4}, passwd = {s = 0x0, len = 7200}, host = {s = 0x7fe9e6417690
"EET",
    len = -436117617}, port = {s = 0xffffffff <Address 0xffffffff out of
bounds>,
    len = -432850920}, params = {s = 0x7fe9e6358168 "", len = -432851312},
headers = {
    s = 0x7fe9e6356468 "\004", len = -301148160}, port_no = 1, proto = 0,
  type = ERROR_URI_T, transport = {s = 0x7fe9e5716560 "H\201��", len =
24}, ttl = {
    s = 0x7fffee0cbf80 "", len = -301154624}, user_param = {s = 0x0, len =
-445555808},
  maddr = {s = 0x7fffee0cbeb0 "��\f��\177", len = -502729501}, method = {
    s = 0x7fe9e59959a0 "", len = -431565200}, lr = {s = 0x0, len = -1}, r2
= {
    s = 0x7300000000000000 <Address 0x7300000000000000 out of bounds>,
    len = -301152992}, transport_val = {s = 0x7fe9e56df3ad
"\205�\017\204\205\001",
    len = 16}, ttl_val = {s = 0xee0cc570 <Address 0xee0cc570 out of
bounds>, len = -1},
  user_param_val = {s = 0x0, len = 0}, maddr_val = {s = 0x0, len = 0},
method_val = {
    s = 0x500000011 <Address 0x500000011 out of bounds>, len =
-432850920}, lr_val = {
    s = 0x7fe9e6358168 "", len = 0}, r2_val = {s = 0x7fe9e6356468 "\004",
    len = -432850920}}
        turi = (struct sip_uri *) 0x0
        h = (struct hdr_field *) 0x0
        c = (struct auth_body *) 0x0
        value = {rs = {s = 0x2010 "", len = -301154656}, ri = 29, flags = 51}
        __FUNCTION__ = "get_username_domain"
#1  0x00007fe9e208d278 in is_user_in (_msg=0x7fe9e6356468, _hf=0x0,
    _grp=0x7fe9e6333690 "\001") at group.c:153
        my_ps = (db_ps_t) 0x0
        keys = {0x7fe9e2291070, 0x7fe9e2291090, 0x7fe9e2291080}
        vals = {{type = DB_DOUBLE, nul = 0, free = 33188, val = {int_val = 0,
      double_val = 0, time_val = 0, string_val = 0x0, str_val = {s = 0x0,
        len = -445245638}, blob_val = {s = 0x0, len = -445245638},
bitmap_val = 0}}, {
    type = 3849721658, nul = 32745, free = -432708504, val = {int_val =
-432708504,
      double_val = 6.9486660384542317e-310, time_val = 140642566366312,
---Type <return> to continue, or q <return> to quit---
      string_val = 0x7fe9e6356468 "\004", str_val = {s = 0x7fe9e6356468
"\004",
        len = -470301741}, blob_val = {s = 0x7fe9e6356468 "\004", len =
-470301741},
      bitmap_val = 3862258792}}, {type = 16, nul = 48, free = -301152512,
val = {
      int_val = -301152704, double_val = 6.9533409289144845e-310,
      time_val = 140737187202624, string_val = 0x7fffee0cc640 "", str_val = {
        s = 0x7fffee0cc640 "", len = -445755489}, blob_val = {s =
0x7fffee0cc640 "",
        len = -445755489}, bitmap_val = 3993814592}}}
        col = {0x7fe9e2291090}
        res = (db_res_t *) 0x0
        hf_s = {s = 0x7fe9e6333818 "Session-Expires: 1800\r\n", len = 4}
        grp_s = {s = 0x7fe9e63338a8 "zero_balance", len = 12}
        __FUNCTION__ = "is_user_in"
        hfPtr = (group_check_p) 0x0
#2  0x00007fe9e5fe2f17 in do_action (a=0x7fe9e6333938, msg=0x7fe9e6356468)
    at action.c:961
        val_s = {s = 0x7fffee0cc438 "", len = 32}
        expires = -432708504
        aux = {s = 0x7fffee0cc520 "", len = -445691043}
        ret = -5
        v = 1
        to = (union sockaddr_union *) 0xfffffffb
        p = (struct proxy_l *) 0x7fffee0cd800
        tmp = 0x1 <Address 0x1 out of bounds>
        new_uri = 0x7fe9e6356468 "\004"
        end = 0x8 <Address 0x8 out of bounds>
        crt = 0xfffffffb <Address 0xfffffffb out of bounds>
        len = -301148160
        user = 0
        uri = {user = {s = 0x0, len = 0}, passwd = {s = 0x0, len = 0}, host = {s
= 0x0,
    len = 0}, port = {s = 0x0, len = -431848992}, params = {s = 0x0, len =
0},
  headers = {s = 0x0, len = -432745568}, port_no = 65191, proto = 58926,
type = 32745,
  transport = {s = 0x7fe9e5702193 "\211�\203=Tr)", len = 0}, ttl = {s =
0x0, len = 0},
---Type <return> to continue, or q <return> to quit---
  user_param = {s = 0xffffffff00000000 <Address 0xffffffff00000000 out of
bounds>,
    len = 0}, maddr = {s = 0x7fe9e6356468 "\004", len = -432851208},
method = {
    s = 0x7fe9e6356488 "��.��\177", len = -432851176}, lr = {
    s = 0x20 <Address 0x20 out of bounds>, len = 21}, r2 = {
    s = 0x7fe9e6029b91
"\205�\017\224�\017��IcT$\bI\213\004$D\2104\020A\203�\026\017\205�",
len = 0}, transport_val = {s = 0x7fe9e6427960 "PzB��\177", len = 0},
ttl_val = {
    s = 0x0, len = 0}, user_param_val = {s = 0x7fe9e634cea0 "`yB��\177",
    len = -433127769}, maddr_val = {s = 0x7fe9e5702193 "\211�\203=Tr)",
len = 0},
  method_val = {s = 0x0, len = 0}, lr_val = {s = 0x7fe9e6356468 "\004",
len = 0},
  r2_val = {s = 0x7fe9e6356468 "\004", len = -432859640}}
        next_hop = {user = {s = 0x7fe9e645e510 "\022", len = 0}, passwd = {
    s = 0x100000011 <Address 0x100000011 out of bounds>, len = 0}, host = {
    s = 0x7fe9e64280d0 "", len = 50}, port = {
    s = 0x600000000 <Address 0x600000000 out of bounds>, len = 0}, params
= {s = 0x0,
    len = -431848992}, headers = {s = 0xe646d670 <Address 0xe646d670 out
of bounds>,
    len = 0}, port_no = 65191, proto = 58926, type = 32745, transport = {
    s = 0x7fe9e634d3a0 "�\201B��\177", len = 0}, ttl = {s = 0x0, len = 88},
  user_param = {
    s = 0x7fe9e646d670 "<27>Feb  5 17:51:29 /usr/sbin/opensips[4296]:
ERROR:group:get_hf: unsupported User Field identifier\n", len = 0},
maddr = {
    s = 0x1 <Address 0x1 out of bounds>, len = -431665056}, method = {s =
0x0,
    len = -1}, lr = {s = 0x7fffee0cc4dc "�\177", len = -433127769}, r2 = {
    s = 0x7fe9e64634f0 "��D��\177", len = 0}, transport_val = {s = 0x0,
len = 0},
  ttl_val = {s = 0x1700000000 <Address 0x1700000000 out of bounds>, len =
23},
  user_param_val = {s = 0x2400000011 <Address 0x2400000011 out of bounds>,
len = 36},
  maddr_val = {s = 0x600000024 <Address 0x600000024 out of bounds>, len = 0},
  method_val = {s = 0x7fe9e6428288 "", len = 16777217}, lr_val = {
    s = 0x1 <Address 0x1 out of bounds>, len = -431848992}, r2_val = {
    s = 0x1100000000 <Address 0x1100000000 out of bounds>, len = 0}}
        u = (struct sip_uri *) 0x0
        port = 0
        cmatch = -5
---Type <return> to continue, or q <return> to quit---
        aitem = (struct action *) 0x7fe9e6356468
        adefault = (struct action *) 0x7fffee0cd800
        spec = (pv_spec_t *) 0x7fe9e6356468
        model = (pv_elem_p) 0x0
        val = {rs = {s = 0x16 <Address 0x16 out of bounds>, len = 0}, ri =
-301152992,
  flags = 32767}
        pve = (pv_elem_t *) 0x0
        name_s = {s = 0x0, len = -442934976}
        __FUNCTION__ = "do_action"
#3  0x00007fe9e5fdf3d9 in run_action_list (a=0x7fe9e6356468,
msg=0x7fe9e6356468)
    at action.c:139
        ret = -1
        t = (struct action *) 0x7fe9e6333938
        __FUNCTION__ = "run_action_list"
#4  0x00007fe9e6024342 in eval_elem (e=0x7fe9e6333a08, msg=0x7fe9e6356468,
val=0x0)
    at route.c:1182
        uri = {user = {s = 0x0, len = -445873502}, passwd = {
    s = 0xf <Address 0xf out of bounds>, len = 0}, host = {
    s = 0x7fe9e5762b20 "^0-9,+-]", len = -431565189}, port = {
    s = 0x8 <Address 0x8 out of bounds>, len = 0}, params = {
    s = 0xffffff3b000000c5 <Address 0xffffff3b000000c5 out of bounds>, len
= 0},
  headers = {s = 0x0, len = 0}, port_no = 0, proto = 0, type = ERROR_URI_T,
  transport = {s = 0x7fe900000000 <Address 0x7fe900000000 out of bounds>,
    len = -445245638}, ttl = {s = 0x7fe9e57633a3 "", len = 0}, user_param = {
    s = 0x100000000 <Address 0x100000000 out of bounds>, len =
-301150696}, maddr = {
    s = 0x0, len = -459498875}, method = {
    s = 0xc5e56e4f9f <Address 0xc5e56e4f9f out of bounds>, len = -1}, lr =
{s = 0x0,
    len = -301150320}, r2 = {s = 0x7fe9e49c9a85 "%.*s", len = -431565808},
  transport_val = {s = 0x1000 "y", len = 16}, ttl_val = {s =
0x7fffee0cce60 "\024",
    len = -301150816}, user_param_val = {
    s = 0x4948347a <Address 0x4948347a out of bounds>, len = 0}, maddr_val
= {
    s = 0x4948347a <Address 0x4948347a out of bounds>, len = 0},
method_val = {s = 0x0,
---Type <return> to continue, or q <return> to quit---
    len = -432851208}, lr_val = {s = 0x7fe9e6356468 "\004", len =
-432708504},
  r2_val = {s = 0x7fe9e6029db5 "��\001", len = -442948928}}
        ret = -5
        ival = -432708504
        lval = {rs = {s = 0x7fffee0ccd80 "p�F��\177", len = -445238369},
  ri = -431565808, flags = 32745}
        rval = {rs = {s = 0x7fe9e57633a0 "%d]", len = 0}, ri = -1, flags = -1}
        p = 0x7fe9e6356468 "\004"
        __FUNCTION__ = "eval_elem"
#5  0x00007fe9e6029db5 in eval_expr (e=0x7fe9e6333a08, msg=0x7fe9e6356468,
val=0x0)
    at route.c:1479
        rec_lev = 3
        ret = 0
        __FUNCTION__ = "eval_expr"
#6  0x00007fe9e6029e15 in eval_expr (e=0x7fe9e6333a50, msg=0x7fe9e6356468,
val=0x0)
    at route.c:1486
        rec_lev = 3
        ret = 0
        __FUNCTION__ = "eval_expr"
#7  0x00007fe9e6029e66 in eval_expr (e=0x7fe9e6333a98, msg=0x7fe9e6356468,
val=0x0)
    at route.c:1500
        rec_lev = 3
        ret = 0
        __FUNCTION__ = "eval_expr"
#8  0x00007fe9e5fe1c5b in do_action (a=0x7fe9e6333ec0, msg=0x7fe9e6356468)
    at action.c:688
        val_s = {s = 0x7fe9e6330498 "\002", len = -5}
        expires = -432882096
        aux = {s = 0x7fe9e646d660 "`\002", len = -432708504}
        ret = -5
        v = 1
        to = (union sockaddr_union *) 0x7fe9e646d67b
---Type <return> to continue, or q <return> to quit---
        p = (struct proxy_l *) 0x7fffee0cd800
        tmp = 0x1 <Address 0x1 out of bounds>
        new_uri = 0x7fe9e5762b0b "/etc/localtime"
        end = 0xf <Address 0xf out of bounds>
        crt = 0xfffffffb <Address 0xfffffffb out of bounds>
        len = -301148160
        user = 0
        uri = {user = {s = 0x7fe9e634a030 "", len = -432708504}, passwd = {
    s = 0x7fffee0cd800 "\002", len = -435798311}, host = {s = 0x0, len =
-431565104},
  port = {s = 0x0, len = -432758640}, params = {
    s = 0x330000001d <Address 0x330000001d out of bounds>, len = 17},
headers = {
    s = 0x6d00000001 <Address 0x6d00000001 out of bounds>, len = 4},
port_no = 0,
  proto = 0, type = 32745, transport = {s = 0x1c20 "", len = -431917424},
ttl = {
    s = 0xe <Address 0xe out of bounds>, len = 0}, user_param = {
    s = 0x3 <Address 0x3 out of bounds>, len = -432708504}, maddr = {
    s = 0x7fe9e632bd30 "��2��\177", len = -432708504}, method = {
    s = 0x7fffee0cd800 "\002", len = -301148160}, lr = {s = 0x7fe9e5716560
"H\201��",
    len = 32}, r2 = {s = 0x7fffee0cd070 "hd5��\177", len = 0},
transport_val = {
    s = 0x3ae646d670 <Address 0x3ae646d670 out of bounds>, len = -432757997},
  ttl_val = {s = 0x0, len = -432873752}, user_param_val = {s =
0x7fe9e6356468 "\004",
    len = -432708504}, maddr_val = {s = 0x7fe9e6029db5 "��\001", len = 16},
  method_val = {s = 0x7fffee0cd510 "\024", len = 0}, lr_val = {
    s = 0x29 <Address 0x29 out of bounds>, len = 0}, r2_val = {s = 0x0,
    len = -432864104}}
        next_hop = {user = {
    s = 0x7fe9e646d670 "<27>Feb  5 17:51:29 /usr/sbin/opensips[4296]:
ERROR:group:get_hf: unsupported User Field identifier\n", len =
-445875032}, passwd = {
    s = 0x7fffee0ccda0 "@Y\231��\177", len = -432705496}, host = {
    s = 0x7fe9e5995940 "", len = -442934976}, port = {
    s = 0xf4 <Address 0xf4 out of bounds>, len = -431565200}, params = {s
= 0x0,
    len = 1}, headers = {s = 0x7fe9e49c9a85 "%.*s", len = -445871724},
port_no = 8208,
  proto = 0, type = ERROR_URI_T, transport = {s = 0x7fffee0cce70 "p�F��\177",
---Type <return> to continue, or q <return> to quit---
    len = -431565808}, ttl = {s = 0x7fe9e5995940 "", len = -431565808},
user_param = {
    s = 0x0, len = 0}, maddr = {s = 0x7fe9e5995940 "", len = -442934976},
method = {
    s = 0x7fe9e646d410 "�Y\231��\177", len = -1}, lr = {s = 0x0, len =
-301150320},
  r2 = {s = 0x7fe9e56c67e8 "\203=\001,-", len = -301150592}, transport_val
= {
    s = 0x7fe9e571618f "\220H\213\234$�", len = 20}, ttl_val = {
    s = 0x498b0b01 <Address 0x498b0b01 out of bounds>, len = -431565200},
  user_param_val = {s = 0xf4 <Address 0xf4 out of bounds>, len = -431565200},
  maddr_val = {s = 0x0, len = -445555808}, method_val = {
    s = 0x7fffee0cce80 "p�F��\177", len = 0}, lr_val = {s = 0x7fe9e62f0319
"",
    len = -301149208}, r2_val = {s = 0x7fe9e600d48e "f\220�:\005", len =
-432706168}}
        u = (struct sip_uri *) 0x0
        port = 0
        cmatch = -5
        aitem = (struct action *) 0x7fe9e632be50
        adefault = (struct action *) 0x7fffee0cd800
        spec = (pv_spec_t *) 0x7fe9e632be50
        model = (pv_elem_p) 0x0
        val = {rs = {s = 0x7fe9e646f670 "", len = 8208}, ri = 8208, flags = 0}
        pve = (pv_elem_t *) 0x0
        name_s = {s = 0x0, len = -436059326}
        __FUNCTION__ = "do_action"
#9  0x00007fe9e5fdf3d9 in run_action_list (a=0x7fe9e6356468,
msg=0x7fe9e6356468)
    at action.c:139
        ret = 1
        t = (struct action *) 0x7fe9e6333ec0
        __FUNCTION__ = "run_action_list"
#10 0x00007fe9e5fe1d69 in do_action (a=0x7fe9e63343f0, msg=0x7fe9e6356468)
    at action.c:705
        val_s = {s = 0x7fffee0cd640 "�C3��\177", len = -435532848}
        expires = -432882096
        aux = {s = 0x7fe9e5762b0b "/etc/localtime", len = -431565196}
        ret = 1
---Type <return> to continue, or q <return> to quit---
        v = 1
        to = (union sockaddr_union *) 0x8
        p = (struct proxy_l *) 0x7fffee0cd800
        tmp = 0x1 <Address 0x1 out of bounds>
        new_uri = 0x0
        end = 0x0
        crt = 0x1 <Address 0x1 out of bounds>
        len = -301148160
        user = 32745
        uri = {user = {s = 0x7fe9e5995940 "", len = -431565808}, passwd = {
    s = 0xffffffff <Address 0xffffffff out of bounds>, len = 0}, host = {
    s = 0x7fffee0cd640 "�C3��\177", len = -445880344}, port = {
    s = 0x7fffee0cd530 "p�F��\177", len = -445554289}, params = {
    s = 0x14 <Address 0x14 out of bounds>, len = 1233849089}, headers = {
    s = 0x7fe9e646d670 "<27>Feb  5 17:51:29 /usr/sbin/opensips[4296]:
ERROR:group:get_hf: unsupported User Field identifier\n", len = 105},
port_no = 54896, proto = 58950,
  type = 32745, transport = {s = 0x0, len = -445555808}, ttl = {
    s = 0x7fffee0cd530 "p�F��\177", len = 0}, user_param = {s =
0x7fe9e4bf126c "�\001",
    len = 2}, maddr = {s = 0x479 "", len = -433127723}, method = {
    s = 0x7fe9e6356470 "\001", len = -432708504}, lr = {s = 0x7fffee0cd800
"\002",
    len = -301148160}, r2 = {s = 0x7fe9e5716560 "H\201��", len = 0},
transport_val = {
    s = 0x7fffee0cd680 "p�F��\177", len = 1145}, ttl_val = {s =
0x7fe9e6356468 "\004",
    len = 29}, user_param_val = {s = 0x500000011 <Address 0x500000011 out
of bounds>,
    len = 1}, maddr_val = {s = 0x2300000004 <Address 0x2300000004 out of
bounds>,
    len = 0}, method_val = {s = 0x1c20 "", len = -431917424}, lr_val = {s
= 0x0,
    len = 0}, r2_val = {s = 0x479 "", len = -301148160}}
        next_hop = {user = {s = 0xffffffff <Address 0xffffffff out of bounds>,
    len = 1}, passwd = {s = 0x7fe9e576339c "T ", len = -445245638}, host = {
    s = 0x7fe9e646d67b "17:51:29 /usr/sbin/opensips[4296]:
ERROR:group:get_hf: unsupported User Field identifier\n", len =
-442934888}, port = {s = 0x7fe9e59959a0 "",
    len = -431565088}, params = {s = 0x7fe9e5995940 "", len = 133408},
headers = {
    s = 0x7fe9e646f670 "", len = 125328}, port_no = 54880, proto = 58950,
type = 32745,
---Type <return> to continue, or q <return> to quit---
  transport = {s = 0x7fe9e56c63d4
"�����H\213D$\020H\001�H\211\004$�EH9X\020\017\205
    len = -431565200}, ttl = {s = 0x1f <Address 0x1f out of bounds>, len =
-1},
  user_param = {s = 0x7fe9e646f670 "", len = -431557008}, maddr = {s =
0x2010 "",
    len = 8208}, method = {s = 0x0, len = -431565200}, lr = {
    s = 0x7fe9e56c7ca8
"I\215G\020�����H\213|$\020I\215p�L\211\004$�}���I\211�1�L\213\004$M\205�\017\204����I\215M�H\211L$\bM\213e�I\203��H9�\017\204\026\001",
    len = -301149104}, r2 = {s = 0x500000004 <Address 0x500000004 out of
bounds>,
    len = -442934976}, transport_val = {s = 0x7fe9e5995940 "", len = 105},
ttl_val = {
    s = 0x7fe9e646d670 "<27>Feb  5 17:51:29 /usr/sbin/opensips[4296]:
ERROR:group:get_hf: unsupported User Field identifier\n", len = 0},
user_param_val = {
    s = 0x1 <Address 0x1 out of bounds>, len = -435532848}, maddr_val = {
    s = 0x7fe9e56c8994 "I\211�\203=R\n-", len = 8208}, method_val = {
    s = 0x7fffee0cd520 "p�F��\177", len = -431565808}, lr_val = {s =
0x7fe9e5995940 "",
    len = -431565808}, r2_val = {s = 0x0, len = 0}}
        u = (struct sip_uri *) 0x0
        port = 0
        cmatch = 1
        aitem = (struct action *) 0x7fe9e632be50
        adefault = (struct action *) 0x7fffee0cd800
        spec = (pv_spec_t *) 0x7fe9e632be50
        model = (pv_elem_p) 0x0
        val = {rs = {s = 0x7fe9e646d410 "�Y\231��\177", len = -442934976},
  ri = -431565808, flags = 14642}
        pve = (pv_elem_t *) 0x0
        name_s = {s = 0x7fffee0cd3a0 "{�F��\177", len = -445783251}
        __FUNCTION__ = "do_action"
#11 0x00007fe9e5fdf3d9 in run_action_list (a=0x7fe9e6356468,
msg=0x7fe9e6356468)
    at action.c:139
        ret = 1
        t = (struct action *) 0x7fe9e63343f0
        __FUNCTION__ = "run_action_list"
#12 0x00007fe9e5fdf886 in run_top_route (a=0x7fe9e632be50,
msg=0x7fe9e6356468)
---Type <return> to continue, or q <return> to quit---
    at action.c:119
        bk_action_flags = 0
        bk_rec_lev = 0
        ret = 0
#13 0x00007fe9e601ca11 in receive_msg (
    buf=0x7fe9e62efea0 "INVITE sip:[hidden email]
SIP/2.0\r\nDate: Thu, 05 Feb 2009 15:51:29 GMT\r\nCSeq: 2
INVITE\r\nVia: SIP/2.0/UDP
194.44.160.178:5085;branch=z9hG4bKc68d7285-0af2-dd11-9564-001fc6030555;rport\r"...,
len=1145,
    rcv_info=0x7fffee0cd800) at receive.c:165
        msg = (struct sip_msg *) 0x7fe9e6356468
        __FUNCTION__ = "receive_msg"
#14 0x00007fe9e60571b9 in udp_rcv_loop () at udp_server.c:449
        len = 1145
        buf = "INVITE sip:[hidden email] SIP/2.0\r\nDate: Thu,
05 Feb 2009 15:51:29 GMT\r\nCSeq: 2 INVITE\r\nVia: SIP/2.0/UDP
194.44.160.178:5085;branch=z9hG4bKc68d7285-0af2-dd11-9564-001fc6030555;rport\r"...
        tmp = 0x479 ""
        from = (union sockaddr_union *) 0x7fe9e6356448
        fromlen = 16
        ri = {src_ip = {af = 2, len = 4, u = {addrl = {140641700949186, 0},
addr32 = {
        2996841666, 32745, 0, 0}, addr16 = {11458, 45728, 32745, 0, 0, 0,
0, 0},
      addr = "�,���\177\000\000\000\000\000\000\000\000\000"}}, dst_ip =
{af = 2,
    len = 4, u = {addrl = {983575746, 0}, addr32 = {983575746, 0, 0, 0},
addr16 = {
        11458, 15008, 0, 0, 0, 0, 0, 0}, addr = "�,�:", '\0' <repeats 11
times>}},
  src_port = 5085, dst_port = 5060, proto = 1, proto_reserved1 = 0,
  proto_reserved2 = 0, src_su = {s = {sa_family = 2,
      sa_data = "\023��,��\000\000\000\000\000\000\000"}, sin =
{sin_family = 2,
      sin_port = 56595, sin_addr = {s_addr = 2996841666},
      sin_zero = "\000\000\000\000\000\000\000"}}, bind_address =
0x7fe9e6319af0}
        __FUNCTION__ = "udp_rcv_loop"
#15 0x00007fe9e5ff5007 in main_loop () at main.c:774
        chd_rank = 6
---Type <return> to continue, or q <return> to quit---
        i = 5
        pid = 0
        si = (struct socket_info *) 0x7fe9e6319af0
        __FUNCTION__ = "main_loop"
#16 0x00007fe9e5ff7d55 in main (argc=4, argv=0x0) at main.c:1313
        cfg_log_stderr = 0
        cfg_stream = (FILE *) 0x7fe9e64110f0
        c = 0
        r = 0
        tmp = 0x7fffee0cde67 ""
        tmp_len = 0
        port = 0
        proto = 0
        options = 0x7fe9e64110f0 "\230$�
        ret = -1
        seed = 504339942
        rfd = 4
        __FUNCTION__ = "main"

> Hmmm, as far as I know, you should include -g in your CFLAGS, to generate
> debugging symbols.
>
> Regards.
>
> Sergio.
>
> On Thu, Feb 5, 2009 at 10:27 AM, <[hidden email]> wrote:
>
>> Hi, Sergia!
>>
>> > Hello Olex.
>> >
>> > Could you execute a list at frame 0?
>> >
>> Unfortunately it does not give more info:
>> #0  0x00007f46a3f42b0a in get_username_domain () from
>> /usr/lib/opensips/modules/group.so
>> No symbol table info available.
>> #1  0x00007f46a3f4364f in is_user_in () from
>> /usr/lib/opensips/modules/group.so
>> No symbol table info available.
>> #2  0x00007f46a7e8f64c in do_action () from /usr/sbin/opensips
>> No symbol table info available.
>> #3  0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
>> No symbol table info available.
>>
>> Which commands should I use to compile opensips with debugging symbols?
>>
>> > Did you download opensips from SVN? What OS are you running on?
>> >
>> opensips 1.5.0 r5249
>> os Gentoo linux x86_64
>> $ uname -a
>> Linux voip 2.6.25-hardened-r7-20080922 #1 SMP Tue Sep 23 00:30:01 EEST
>> 2008 x86_64 Intel(R) Xeon(R) CPU X3220 @ 2.40GHz GenuineIntel GNU/Linux
>>
>> > Regards.
>> >
>> > Sergio.
>> >
>> >
>> > On Thu, Feb 5, 2009 at 10:12 AM, <[hidden email]> wrote:
>> >
>> >> Hello, All!
>> >>
>> >> When using function is_user_in() from module group.so there is a
>> crash
>> >> of
>> >> opensips.
>> >> The same opensips.cfg was tested on 1.4.3 and 1.4.4 without any
>> crashes
>> >> or
>> >> problems.
>> >>
>> >> /var/log/messages
>> >> ------------------
>> >> Feb  5 16:05:13 voip /usr/sbin/opensips[11992]:
>> INFO:core:handle_sigs:
>> >> child process 1203
>> >> 9 exited by a signal 11
>> >> Feb  5 16:05:13 voip /usr/sbin/opensips[11992]:
>> INFO:core:handle_sigs:
>> >> core was generated
>> >> Feb  5 16:05:13 voip /usr/sbin/opensips[11992]:
>> INFO:core:handle_sigs:
>> >> terminating due to
>> >>  SIGCHLD
>> >> Feb  5 16:05:13 voip /usr/sbin/opensips[12037]: INFO:core:sig_usr:
>> >> signal
>> >> 15 received
>> >>
>> >> opensips.cfg(only some strings)
>> >> ---------------------------------
>> >> if (is_user_in("From", "disabled")) {
>> >>    xlog("L_INFO", "User is in group 'disabled' F=$fu D=$fd\n");
>> >>    rewriteuser("403");
>> >> }
>> >>
>> >>
>> >> GDB trace
>> >> -----------
>> >> #0  0x00007f46a3f42b0a in get_username_domain () from
>> >> /usr/lib/opensips/modules/group.so
>> >> #1  0x00007f46a3f4364f in is_user_in () from
>> >> /usr/lib/opensips/modules/group.so
>> >> #2  0x00007f46a7e8f64c in do_action () from /usr/sbin/opensips
>> >> #3  0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
>> >> #4  0x00007f46a7ed0f8e in eval_expr () from /usr/sbin/opensips
>> >> #5  0x00007f46a7ed0dac in eval_expr () from /usr/sbin/opensips
>> >> #6  0x00007f46a7e8e37e in do_action () from /usr/sbin/opensips
>> >> #7  0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
>> >> #8  0x00007f46a7e916e5 in do_action () from /usr/sbin/opensips
>> >> #9  0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
>> >> #10 0x00007f46a7e916e5 in do_action () from /usr/sbin/opensips
>> >> #11 0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
>> >> #12 0x00007f46a7e92046 in run_top_route () from /usr/sbin/opensips
>> >> #13 0x00007f46a7ec6d24 in receive_msg () from /usr/sbin/opensips
>> >> #14 0x00007f46a7efd23b in udp_rcv_loop () from /usr/sbin/opensips
>> >> #15 0x00007f46a7ea485c in main () from /usr/sbin/opensips
>> >>
>> >>
>> >>
>> >> _______________________________________________
>> >> Users mailing list
>> >> [hidden email]
>> >> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>> >>
>> >
>> >
>> >
>> > --
>> > Sergio Gutiérrez
>> >
>>
>>
>>
>
>
> --
> Sergio Gutiérrez
>



_______________________________________________
Users mailing list
[hidden email]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Reply | Threaded
Open this post in threaded view
|

Re: opensips 1.5.0 crashes when using is_user_in()

Sergio Gutierrez
Hello Olex.

Could you enable debug on your opensips and paste the lines before crash.

Regards.

Sergio.

On Thu, Feb 5, 2009 at 10:57 AM, <[hidden email]> wrote:
The problem was that opensips binary was stripped after compilation.
Here is full backtrace.

#0  get_username_domain (msg=0x7fe9e6356468, gcp=0x0,
username=0x7fffee0cc070,
   domain=0x7fffee0cc0b0) at group.c:59
       puri = {user = {s = 0x6d00000001 <Address 0x6d00000001 out of bounds>,
   len = 4}, passwd = {s = 0x0, len = 7200}, host = {s = 0x7fe9e6417690
"EET",
   len = -436117617}, port = {s = 0xffffffff <Address 0xffffffff out of
bounds>,
   len = -432850920}, params = {s = 0x7fe9e6358168 "", len = -432851312},
headers = {
   s = 0x7fe9e6356468 "\004", len = -301148160}, port_no = 1, proto = 0,
 type = ERROR_URI_T, transport = {s = 0x7fe9e5716560 "H\201��", len =
24}, ttl = {
   s = 0x7fffee0cbf80 "", len = -301154624}, user_param = {s = 0x0, len =
-445555808},
 maddr = {s = 0x7fffee0cbeb0 "��\f��\177", len = -502729501}, method = {
   s = 0x7fe9e59959a0 "", len = -431565200}, lr = {s = 0x0, len = -1}, r2
= {
   s = 0x7300000000000000 <Address 0x7300000000000000 out of bounds>,
   len = -301152992}, transport_val = {s = 0x7fe9e56df3ad
"\205�\017\204\205\001",
   len = 16}, ttl_val = {s = 0xee0cc570 <Address 0xee0cc570 out of
bounds>, len = -1},
 user_param_val = {s = 0x0, len = 0}, maddr_val = {s = 0x0, len = 0},
method_val = {
   s = 0x500000011 <Address 0x500000011 out of bounds>, len =
-432850920}, lr_val = {
   s = 0x7fe9e6358168 "", len = 0}, r2_val = {s = 0x7fe9e6356468 "\004",
   len = -432850920}}
       turi = (struct sip_uri *) 0x0
       h = (struct hdr_field *) 0x0
       c = (struct auth_body *) 0x0
       value = {rs = {s = 0x2010 "", len = -301154656}, ri = 29, flags = 51}
       __FUNCTION__ = "get_username_domain"
#1  0x00007fe9e208d278 in is_user_in (_msg=0x7fe9e6356468, _hf=0x0,
   _grp=0x7fe9e6333690 "\001") at group.c:153
       my_ps = (db_ps_t) 0x0
       keys = {0x7fe9e2291070, 0x7fe9e2291090, 0x7fe9e2291080}
       vals = {{type = DB_DOUBLE, nul = 0, free = 33188, val = {int_val = 0,
     double_val = 0, time_val = 0, string_val = 0x0, str_val = {s = 0x0,
       len = -445245638}, blob_val = {s = 0x0, len = -445245638},
bitmap_val = 0}}, {
   type = 3849721658, nul = 32745, free = -432708504, val = {int_val =
-432708504,
     double_val = 6.9486660384542317e-310, time_val = 140642566366312,
---Type <return> to continue, or q <return> to quit---
     string_val = 0x7fe9e6356468 "\004", str_val = {s = 0x7fe9e6356468
"\004",
       len = -470301741}, blob_val = {s = 0x7fe9e6356468 "\004", len =
-470301741},
     bitmap_val = 3862258792}}, {type = 16, nul = 48, free = -301152512,
val = {
     int_val = -301152704, double_val = 6.9533409289144845e-310,
     time_val = 140737187202624, string_val = 0x7fffee0cc640 "", str_val = {
       s = 0x7fffee0cc640 "", len = -445755489}, blob_val = {s =
0x7fffee0cc640 "",
       len = -445755489}, bitmap_val = 3993814592}}}
       col = {0x7fe9e2291090}
       res = (db_res_t *) 0x0
       hf_s = {s = 0x7fe9e6333818 "Session-Expires: 1800\r\n", len = 4}
       grp_s = {s = 0x7fe9e63338a8 "zero_balance", len = 12}
       __FUNCTION__ = "is_user_in"
       hfPtr = (group_check_p) 0x0
#2  0x00007fe9e5fe2f17 in do_action (a=0x7fe9e6333938, msg=0x7fe9e6356468)
   at action.c:961
       val_s = {s = 0x7fffee0cc438 "", len = 32}
       expires = -432708504
       aux = {s = 0x7fffee0cc520 "", len = -445691043}
       ret = -5
       v = 1
       to = (union sockaddr_union *) 0xfffffffb
       p = (struct proxy_l *) 0x7fffee0cd800
       tmp = 0x1 <Address 0x1 out of bounds>
       new_uri = 0x7fe9e6356468 "\004"
       end = 0x8 <Address 0x8 out of bounds>
       crt = 0xfffffffb <Address 0xfffffffb out of bounds>
       len = -301148160
       user = 0
       uri = {user = {s = 0x0, len = 0}, passwd = {s = 0x0, len = 0}, host = {s
= 0x0,
   len = 0}, port = {s = 0x0, len = -431848992}, params = {s = 0x0, len =
0},
 headers = {s = 0x0, len = -432745568}, port_no = 65191, proto = 58926,
type = 32745,
 transport = {s = 0x7fe9e5702193 "\211�\203=Tr)", len = 0}, ttl = {s =
0x0, len = 0},
---Type <return> to continue, or q <return> to quit---
 user_param = {s = 0xffffffff00000000 <Address 0xffffffff00000000 out of
bounds>,
   len = 0}, maddr = {s = 0x7fe9e6356468 "\004", len = -432851208},
method = {
   s = 0x7fe9e6356488 "��.��\177", len = -432851176}, lr = {
   s = 0x20 <Address 0x20 out of bounds>, len = 21}, r2 = {
   s = 0x7fe9e6029b91
"\205�\017\224�\017��IcT$\bI\213\004$D\2104\020A\203�\026\017\205�",
len = 0}, transport_val = {s = 0x7fe9e6427960 "PzB��\177", len = 0},
ttl_val = {
   s = 0x0, len = 0}, user_param_val = {s = 0x7fe9e634cea0 "`yB��\177",
   len = -433127769}, maddr_val = {s = 0x7fe9e5702193 "\211�\203=Tr)",
len = 0},
 method_val = {s = 0x0, len = 0}, lr_val = {s = 0x7fe9e6356468 "\004",
len = 0},
 r2_val = {s = 0x7fe9e6356468 "\004", len = -432859640}}
       next_hop = {user = {s = 0x7fe9e645e510 "\022", len = 0}, passwd = {
   s = 0x100000011 <Address 0x100000011 out of bounds>, len = 0}, host = {
   s = 0x7fe9e64280d0 "", len = 50}, port = {
   s = 0x600000000 <Address 0x600000000 out of bounds>, len = 0}, params
= {s = 0x0,
   len = -431848992}, headers = {s = 0xe646d670 <Address 0xe646d670 out
of bounds>,
   len = 0}, port_no = 65191, proto = 58926, type = 32745, transport = {
   s = 0x7fe9e634d3a0 "�\201B��\177", len = 0}, ttl = {s = 0x0, len = 88},
 user_param = {
   s = 0x7fe9e646d670 "<27>Feb  5 17:51:29 /usr/sbin/opensips[4296]:
ERROR:group:get_hf: unsupported User Field identifier\n", len = 0},
maddr = {
   s = 0x1 <Address 0x1 out of bounds>, len = -431665056}, method = {s =
0x0,
   len = -1}, lr = {s = 0x7fffee0cc4dc "�\177", len = -433127769}, r2 = {
   s = 0x7fe9e64634f0 "��D��\177", len = 0}, transport_val = {s = 0x0,
len = 0},
 ttl_val = {s = 0x1700000000 <Address 0x1700000000 out of bounds>, len =
23},
 user_param_val = {s = 0x2400000011 <Address 0x2400000011 out of bounds>,
len = 36},
 maddr_val = {s = 0x600000024 <Address 0x600000024 out of bounds>, len = 0},
 method_val = {s = 0x7fe9e6428288 "", len = 16777217}, lr_val = {
   s = 0x1 <Address 0x1 out of bounds>, len = -431848992}, r2_val = {
   s = 0x1100000000 <Address 0x1100000000 out of bounds>, len = 0}}
       u = (struct sip_uri *) 0x0
       port = 0
       cmatch = -5
---Type <return> to continue, or q <return> to quit---
       aitem = (struct action *) 0x7fe9e6356468
       adefault = (struct action *) 0x7fffee0cd800
       spec = (pv_spec_t *) 0x7fe9e6356468
       model = (pv_elem_p) 0x0
       val = {rs = {s = 0x16 <Address 0x16 out of bounds>, len = 0}, ri =
-301152992,
 flags = 32767}
       pve = (pv_elem_t *) 0x0
       name_s = {s = 0x0, len = -442934976}
       __FUNCTION__ = "do_action"
#3  0x00007fe9e5fdf3d9 in run_action_list (a=0x7fe9e6356468,
msg=0x7fe9e6356468)
   at action.c:139
       ret = -1
       t = (struct action *) 0x7fe9e6333938
       __FUNCTION__ = "run_action_list"
#4  0x00007fe9e6024342 in eval_elem (e=0x7fe9e6333a08, msg=0x7fe9e6356468,
val=0x0)
   at route.c:1182
       uri = {user = {s = 0x0, len = -445873502}, passwd = {
   s = 0xf <Address 0xf out of bounds>, len = 0}, host = {
   s = 0x7fe9e5762b20 "^0-9,+-]", len = -431565189}, port = {
   s = 0x8 <Address 0x8 out of bounds>, len = 0}, params = {
   s = 0xffffff3b000000c5 <Address 0xffffff3b000000c5 out of bounds>, len
= 0},
 headers = {s = 0x0, len = 0}, port_no = 0, proto = 0, type = ERROR_URI_T,
 transport = {s = 0x7fe900000000 <Address 0x7fe900000000 out of bounds>,
   len = -445245638}, ttl = {s = 0x7fe9e57633a3 "", len = 0}, user_param = {
   s = 0x100000000 <Address 0x100000000 out of bounds>, len =
-301150696}, maddr = {
   s = 0x0, len = -459498875}, method = {
   s = 0xc5e56e4f9f <Address 0xc5e56e4f9f out of bounds>, len = -1}, lr =
{s = 0x0,
   len = -301150320}, r2 = {s = 0x7fe9e49c9a85 "%.*s", len = -431565808},
 transport_val = {s = 0x1000 "y", len = 16}, ttl_val = {s =
0x7fffee0cce60 "\024",
   len = -301150816}, user_param_val = {
   s = 0x4948347a <Address 0x4948347a out of bounds>, len = 0}, maddr_val
= {
   s = 0x4948347a <Address 0x4948347a out of bounds>, len = 0},
method_val = {s = 0x0,
---Type <return> to continue, or q <return> to quit---
   len = -432851208}, lr_val = {s = 0x7fe9e6356468 "\004", len =
-432708504},
 r2_val = {s = 0x7fe9e6029db5 "��\001", len = -442948928}}
       ret = -5
       ival = -432708504
       lval = {rs = {s = 0x7fffee0ccd80 "p�F��\177", len = -445238369},
 ri = -431565808, flags = 32745}
       rval = {rs = {s = 0x7fe9e57633a0 "%d]", len = 0}, ri = -1, flags = -1}
       p = 0x7fe9e6356468 "\004"
       __FUNCTION__ = "eval_elem"
#5  0x00007fe9e6029db5 in eval_expr (e=0x7fe9e6333a08, msg=0x7fe9e6356468,
val=0x0)
   at route.c:1479
       rec_lev = 3
       ret = 0
       __FUNCTION__ = "eval_expr"
#6  0x00007fe9e6029e15 in eval_expr (e=0x7fe9e6333a50, msg=0x7fe9e6356468,
val=0x0)
   at route.c:1486
       rec_lev = 3
       ret = 0
       __FUNCTION__ = "eval_expr"
#7  0x00007fe9e6029e66 in eval_expr (e=0x7fe9e6333a98, msg=0x7fe9e6356468,
val=0x0)
   at route.c:1500
       rec_lev = 3
       ret = 0
       __FUNCTION__ = "eval_expr"
#8  0x00007fe9e5fe1c5b in do_action (a=0x7fe9e6333ec0, msg=0x7fe9e6356468)
   at action.c:688
       val_s = {s = 0x7fe9e6330498 "\002", len = -5}
       expires = -432882096
       aux = {s = 0x7fe9e646d660 "`\002", len = -432708504}
       ret = -5
       v = 1
       to = (union sockaddr_union *) 0x7fe9e646d67b
---Type <return> to continue, or q <return> to quit---
       p = (struct proxy_l *) 0x7fffee0cd800
       tmp = 0x1 <Address 0x1 out of bounds>
       new_uri = 0x7fe9e5762b0b "/etc/localtime"
       end = 0xf <Address 0xf out of bounds>
       crt = 0xfffffffb <Address 0xfffffffb out of bounds>
       len = -301148160
       user = 0
       uri = {user = {s = 0x7fe9e634a030 "", len = -432708504}, passwd = {
   s = 0x7fffee0cd800 "\002", len = -435798311}, host = {s = 0x0, len =
-431565104},
 port = {s = 0x0, len = -432758640}, params = {
   s = 0x330000001d <Address 0x330000001d out of bounds>, len = 17},
headers = {
   s = 0x6d00000001 <Address 0x6d00000001 out of bounds>, len = 4},
port_no = 0,
 proto = 0, type = 32745, transport = {s = 0x1c20 "", len = -431917424},
ttl = {
   s = 0xe <Address 0xe out of bounds>, len = 0}, user_param = {
   s = 0x3 <Address 0x3 out of bounds>, len = -432708504}, maddr = {
   s = 0x7fe9e632bd30 "��2��\177", len = -432708504}, method = {
   s = 0x7fffee0cd800 "\002", len = -301148160}, lr = {s = 0x7fe9e5716560
"H\201��",
   len = 32}, r2 = {s = 0x7fffee0cd070 "hd5��\177", len = 0},
transport_val = {
   s = 0x3ae646d670 <Address 0x3ae646d670 out of bounds>, len = -432757997},
 ttl_val = {s = 0x0, len = -432873752}, user_param_val = {s =
0x7fe9e6356468 "\004",
   len = -432708504}, maddr_val = {s = 0x7fe9e6029db5 "��\001", len = 16},
 method_val = {s = 0x7fffee0cd510 "\024", len = 0}, lr_val = {
   s = 0x29 <Address 0x29 out of bounds>, len = 0}, r2_val = {s = 0x0,
   len = -432864104}}
       next_hop = {user = {
   s = 0x7fe9e646d670 "<27>Feb  5 17:51:29 /usr/sbin/opensips[4296]:
ERROR:group:get_hf: unsupported User Field identifier\n", len =
-445875032}, passwd = {
   s = 0x7fffee0ccda0 "@Y\231��\177", len = -432705496}, host = {
   s = 0x7fe9e5995940 "", len = -442934976}, port = {
   s = 0xf4 <Address 0xf4 out of bounds>, len = -431565200}, params = {s
= 0x0,
   len = 1}, headers = {s = 0x7fe9e49c9a85 "%.*s", len = -445871724},
port_no = 8208,
 proto = 0, type = ERROR_URI_T, transport = {s = 0x7fffee0cce70 "p�F��\177",
---Type <return> to continue, or q <return> to quit---
   len = -431565808}, ttl = {s = 0x7fe9e5995940 "", len = -431565808},
user_param = {
   s = 0x0, len = 0}, maddr = {s = 0x7fe9e5995940 "", len = -442934976},
method = {
   s = 0x7fe9e646d410 "�Y\231��\177", len = -1}, lr = {s = 0x0, len =
-301150320},
 r2 = {s = 0x7fe9e56c67e8 "\203=\001,-", len = -301150592}, transport_val
= {
   s = 0x7fe9e571618f "\220H\213\234$�", len = 20}, ttl_val = {
   s = 0x498b0b01 <Address 0x498b0b01 out of bounds>, len = -431565200},
 user_param_val = {s = 0xf4 <Address 0xf4 out of bounds>, len = -431565200},
 maddr_val = {s = 0x0, len = -445555808}, method_val = {
   s = 0x7fffee0cce80 "p�F��\177", len = 0}, lr_val = {s = 0x7fe9e62f0319
"",
   len = -301149208}, r2_val = {s = 0x7fe9e600d48e "f\220�:\005", len =
-432706168}}
       u = (struct sip_uri *) 0x0
       port = 0
       cmatch = -5
       aitem = (struct action *) 0x7fe9e632be50
       adefault = (struct action *) 0x7fffee0cd800
       spec = (pv_spec_t *) 0x7fe9e632be50
       model = (pv_elem_p) 0x0
       val = {rs = {s = 0x7fe9e646f670 "", len = 8208}, ri = 8208, flags = 0}
       pve = (pv_elem_t *) 0x0
       name_s = {s = 0x0, len = -436059326}
       __FUNCTION__ = "do_action"
#9  0x00007fe9e5fdf3d9 in run_action_list (a=0x7fe9e6356468,
msg=0x7fe9e6356468)
   at action.c:139
       ret = 1
       t = (struct action *) 0x7fe9e6333ec0
       __FUNCTION__ = "run_action_list"
#10 0x00007fe9e5fe1d69 in do_action (a=0x7fe9e63343f0, msg=0x7fe9e6356468)
   at action.c:705
       val_s = {s = 0x7fffee0cd640 "�C3��\177", len = -435532848}
       expires = -432882096
       aux = {s = 0x7fe9e5762b0b "/etc/localtime", len = -431565196}
       ret = 1
---Type <return> to continue, or q <return> to quit---
       v = 1
       to = (union sockaddr_union *) 0x8
       p = (struct proxy_l *) 0x7fffee0cd800
       tmp = 0x1 <Address 0x1 out of bounds>
       new_uri = 0x0
       end = 0x0
       crt = 0x1 <Address 0x1 out of bounds>
       len = -301148160
       user = 32745
       uri = {user = {s = 0x7fe9e5995940 "", len = -431565808}, passwd = {
   s = 0xffffffff <Address 0xffffffff out of bounds>, len = 0}, host = {
   s = 0x7fffee0cd640 "�C3��\177", len = -445880344}, port = {
   s = 0x7fffee0cd530 "p�F��\177", len = -445554289}, params = {
   s = 0x14 <Address 0x14 out of bounds>, len = 1233849089}, headers = {
   s = 0x7fe9e646d670 "<27>Feb  5 17:51:29 /usr/sbin/opensips[4296]:
ERROR:group:get_hf: unsupported User Field identifier\n", len = 105},
port_no = 54896, proto = 58950,
 type = 32745, transport = {s = 0x0, len = -445555808}, ttl = {
   s = 0x7fffee0cd530 "p�F��\177", len = 0}, user_param = {s =
0x7fe9e4bf126c "�\001",
   len = 2}, maddr = {s = 0x479 "", len = -433127723}, method = {
   s = 0x7fe9e6356470 "\001", len = -432708504}, lr = {s = 0x7fffee0cd800
"\002",
   len = -301148160}, r2 = {s = 0x7fe9e5716560 "H\201��", len = 0},
transport_val = {
   s = 0x7fffee0cd680 "p�F��\177", len = 1145}, ttl_val = {s =
0x7fe9e6356468 "\004",
   len = 29}, user_param_val = {s = 0x500000011 <Address 0x500000011 out
of bounds>,
   len = 1}, maddr_val = {s = 0x2300000004 <Address 0x2300000004 out of
bounds>,
   len = 0}, method_val = {s = 0x1c20 "", len = -431917424}, lr_val = {s
= 0x0,
   len = 0}, r2_val = {s = 0x479 "", len = -301148160}}
       next_hop = {user = {s = 0xffffffff <Address 0xffffffff out of bounds>,
   len = 1}, passwd = {s = 0x7fe9e576339c "T ", len = -445245638}, host = {
   s = 0x7fe9e646d67b "17:51:29 /usr/sbin/opensips[4296]:
ERROR:group:get_hf: unsupported User Field identifier\n", len =
-442934888}, port = {s = 0x7fe9e59959a0 "",
   len = -431565088}, params = {s = 0x7fe9e5995940 "", len = 133408},
headers = {
   s = 0x7fe9e646f670 "", len = 125328}, port_no = 54880, proto = 58950,
type = 32745,
---Type <return> to continue, or q <return> to quit---
 transport = {s = 0x7fe9e56c63d4
"�����H\213D$\020H\001�H\211\004$�EH9X\020\017\205
   len = -431565200}, ttl = {s = 0x1f <Address 0x1f out of bounds>, len =
-1},
 user_param = {s = 0x7fe9e646f670 "", len = -431557008}, maddr = {s =
0x2010 "",
   len = 8208}, method = {s = 0x0, len = -431565200}, lr = {
   s = 0x7fe9e56c7ca8
"I\215G\020�����H\213|$\020I\215p�L\211\004$�}���I\211�1�L\213\004$M\205�\017\204����I\215M�H\211L$\bM\213e�I\203��H9�\017\204\026\001",
   len = -301149104}, r2 = {s = 0x500000004 <Address 0x500000004 out of
bounds>,
   len = -442934976}, transport_val = {s = 0x7fe9e5995940 "", len = 105},
ttl_val = {
   s = 0x7fe9e646d670 "<27>Feb  5 17:51:29 /usr/sbin/opensips[4296]:
ERROR:group:get_hf: unsupported User Field identifier\n", len = 0},
user_param_val = {
   s = 0x1 <Address 0x1 out of bounds>, len = -435532848}, maddr_val = {
   s = 0x7fe9e56c8994 "I\211�\203=R\n-", len = 8208}, method_val = {
   s = 0x7fffee0cd520 "p�F��\177", len = -431565808}, lr_val = {s =
0x7fe9e5995940 "",
   len = -431565808}, r2_val = {s = 0x0, len = 0}}
       u = (struct sip_uri *) 0x0
       port = 0
       cmatch = 1
       aitem = (struct action *) 0x7fe9e632be50
       adefault = (struct action *) 0x7fffee0cd800
       spec = (pv_spec_t *) 0x7fe9e632be50
       model = (pv_elem_p) 0x0
       val = {rs = {s = 0x7fe9e646d410 "�Y\231��\177", len = -442934976},
 ri = -431565808, flags = 14642}
       pve = (pv_elem_t *) 0x0
       name_s = {s = 0x7fffee0cd3a0 "{�F��\177", len = -445783251}
       __FUNCTION__ = "do_action"
#11 0x00007fe9e5fdf3d9 in run_action_list (a=0x7fe9e6356468,
msg=0x7fe9e6356468)
   at action.c:139
       ret = 1
       t = (struct action *) 0x7fe9e63343f0
       __FUNCTION__ = "run_action_list"
#12 0x00007fe9e5fdf886 in run_top_route (a=0x7fe9e632be50,
msg=0x7fe9e6356468)
---Type <return> to continue, or q <return> to quit---
   at action.c:119
       bk_action_flags = 0
       bk_rec_lev = 0
       ret = 0
#13 0x00007fe9e601ca11 in receive_msg (
   buf=0x7fe9e62efea0 "INVITE [hidden email]
SIP/2.0\r\nDate: Thu, 05 Feb 2009 15:51:29 GMT\r\nCSeq: 2
INVITE\r\nVia: SIP/2.0/UDP
194.44.160.178:5085;branch=z9hG4bKc68d7285-0af2-dd11-9564-001fc6030555;rport\r"...,
len=1145,
   rcv_info=0x7fffee0cd800) at receive.c:165
       msg = (struct sip_msg *) 0x7fe9e6356468
       __FUNCTION__ = "receive_msg"
#14 0x00007fe9e60571b9 in udp_rcv_loop () at udp_server.c:449
       len = 1145
       buf = "INVITE [hidden email] SIP/2.0\r\nDate: Thu,
05 Feb 2009 15:51:29 GMT\r\nCSeq: 2 INVITE\r\nVia: SIP/2.0/UDP
194.44.160.178:5085;branch=z9hG4bKc68d7285-0af2-dd11-9564-001fc6030555;rport\r"...
       tmp = 0x479 ""
       from = (union sockaddr_union *) 0x7fe9e6356448
       fromlen = 16
       ri = {src_ip = {af = 2, len = 4, u = {addrl = {140641700949186, 0},
addr32 = {
       2996841666, 32745, 0, 0}, addr16 = {11458, 45728, 32745, 0, 0, 0,
0, 0},
     addr = "�,���\177\000\000\000\000\000\000\000\000\000"}}, dst_ip =
{af = 2,
   len = 4, u = {addrl = {983575746, 0}, addr32 = {983575746, 0, 0, 0},
addr16 = {
       11458, 15008, 0, 0, 0, 0, 0, 0}, addr = "�,�:", '\0' <repeats 11
times>}},
 src_port = 5085, dst_port = 5060, proto = 1, proto_reserved1 = 0,
 proto_reserved2 = 0, src_su = {s = {sa_family = 2,
     sa_data = "\023��,��\000\000\000\000\000\000\000"}, sin =
{sin_family = 2,
     sin_port = 56595, sin_addr = {s_addr = 2996841666},
     sin_zero = "\000\000\000\000\000\000\000"}}, bind_address =
0x7fe9e6319af0}
       __FUNCTION__ = "udp_rcv_loop"
#15 0x00007fe9e5ff5007 in main_loop () at main.c:774
       chd_rank = 6
---Type <return> to continue, or q <return> to quit---
       i = 5
       pid = 0
       si = (struct socket_info *) 0x7fe9e6319af0
       __FUNCTION__ = "main_loop"
#16 0x00007fe9e5ff7d55 in main (argc=4, argv=0x0) at main.c:1313
       cfg_log_stderr = 0
       cfg_stream = (FILE *) 0x7fe9e64110f0
       c = 0
       r = 0
       tmp = 0x7fffee0cde67 ""
       tmp_len = 0
       port = 0
       proto = 0
       options = 0x7fe9e64110f0 "\230$�
       ret = -1
       seed = 504339942
       rfd = 4
       __FUNCTION__ = "main"

> Hmmm, as far as I know, you should include -g in your CFLAGS, to generate
> debugging symbols.
>
> Regards.
>
> Sergio.
>
> On Thu, Feb 5, 2009 at 10:27 AM, <[hidden email]> wrote:
>
>> Hi, Sergia!
>>
>> > Hello Olex.
>> >
>> > Could you execute a list at frame 0?
>> >
>> Unfortunately it does not give more info:
>> #0  0x00007f46a3f42b0a in get_username_domain () from
>> /usr/lib/opensips/modules/group.so
>> No symbol table info available.
>> #1  0x00007f46a3f4364f in is_user_in () from
>> /usr/lib/opensips/modules/group.so
>> No symbol table info available.
>> #2  0x00007f46a7e8f64c in do_action () from /usr/sbin/opensips
>> No symbol table info available.
>> #3  0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
>> No symbol table info available.
>>
>> Which commands should I use to compile opensips with debugging symbols?
>>
>> > Did you download opensips from SVN? What OS are you running on?
>> >
>> opensips 1.5.0 r5249
>> os Gentoo linux x86_64
>> $ uname -a
>> Linux voip 2.6.25-hardened-r7-20080922 #1 SMP Tue Sep 23 00:30:01 EEST
>> 2008 x86_64 Intel(R) Xeon(R) CPU X3220 @ 2.40GHz GenuineIntel GNU/Linux
>>
>> > Regards.
>> >
>> > Sergio.
>> >
>> >
>> > On Thu, Feb 5, 2009 at 10:12 AM, <[hidden email]> wrote:
>> >
>> >> Hello, All!
>> >>
>> >> When using function is_user_in() from module group.so there is a
>> crash
>> >> of
>> >> opensips.
>> >> The same opensips.cfg was tested on 1.4.3 and 1.4.4 without any
>> crashes
>> >> or
>> >> problems.
>> >>
>> >> /var/log/messages
>> >> ------------------
>> >> Feb  5 16:05:13 voip /usr/sbin/opensips[11992]:
>> INFO:core:handle_sigs:
>> >> child process 1203
>> >> 9 exited by a signal 11
>> >> Feb  5 16:05:13 voip /usr/sbin/opensips[11992]:
>> INFO:core:handle_sigs:
>> >> core was generated
>> >> Feb  5 16:05:13 voip /usr/sbin/opensips[11992]:
>> INFO:core:handle_sigs:
>> >> terminating due to
>> >>  SIGCHLD
>> >> Feb  5 16:05:13 voip /usr/sbin/opensips[12037]: INFO:core:sig_usr:
>> >> signal
>> >> 15 received
>> >>
>> >> opensips.cfg(only some strings)
>> >> ---------------------------------
>> >> if (is_user_in("From", "disabled")) {
>> >>    xlog("L_INFO", "User is in group 'disabled' F=$fu D=$fd\n");
>> >>    rewriteuser("403");
>> >> }
>> >>
>> >>
>> >> GDB trace
>> >> -----------
>> >> #0  0x00007f46a3f42b0a in get_username_domain () from
>> >> /usr/lib/opensips/modules/group.so
>> >> #1  0x00007f46a3f4364f in is_user_in () from
>> >> /usr/lib/opensips/modules/group.so
>> >> #2  0x00007f46a7e8f64c in do_action () from /usr/sbin/opensips
>> >> #3  0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
>> >> #4  0x00007f46a7ed0f8e in eval_expr () from /usr/sbin/opensips
>> >> #5  0x00007f46a7ed0dac in eval_expr () from /usr/sbin/opensips
>> >> #6  0x00007f46a7e8e37e in do_action () from /usr/sbin/opensips
>> >> #7  0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
>> >> #8  0x00007f46a7e916e5 in do_action () from /usr/sbin/opensips
>> >> #9  0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
>> >> #10 0x00007f46a7e916e5 in do_action () from /usr/sbin/opensips
>> >> #11 0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
>> >> #12 0x00007f46a7e92046 in run_top_route () from /usr/sbin/opensips
>> >> #13 0x00007f46a7ec6d24 in receive_msg () from /usr/sbin/opensips
>> >> #14 0x00007f46a7efd23b in udp_rcv_loop () from /usr/sbin/opensips
>> >> #15 0x00007f46a7ea485c in main () from /usr/sbin/opensips
>> >>
>> >>
>> >>
>> >> _______________________________________________
>> >> Users mailing list
>> >> [hidden email]
>> >> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>> >>
>> >
>> >
>> >
>> > --
>> > Sergio Gutiérrez
>> >
>>
>>
>>
>
>
> --
> Sergio Gutiérrez
>





--
Sergio Gutiérrez

_______________________________________________
Users mailing list
[hidden email]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Reply | Threaded
Open this post in threaded view
|

Re: opensips 1.5.0 crashes when using is_user_in()

olex-2



_______________________________________________
Users mailing list
[hidden email]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Reply | Threaded
Open this post in threaded view
|

Re: opensips 1.5.0 crashes when using is_user_in()

olex-2
In reply to this post by Sergio Gutierrez
Hello, Sergio!

Here is debug log attached to that mail.
_______________________________________________
Users mailing list
[hidden email]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users

os_crash.txt (75K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: opensips 1.5.0 crashes when using is_user_in()

Bogdan-Andrei Iancu
In reply to this post by olex-2
Hi,

I made a fix (to avoid crashing) - please updated from SVN and try again.

Most probably you will get some error in log, so please post them here.

Thanks and regards,
Bogdan

[hidden email] wrote:

> The problem was that opensips binary was stripped after compilation.
> Here is full backtrace.
>
> #0  get_username_domain (msg=0x7fe9e6356468, gcp=0x0,
> username=0x7fffee0cc070,
>     domain=0x7fffee0cc0b0) at group.c:59
> puri = {user = {s = 0x6d00000001 <Address 0x6d00000001 out of bounds>,
>     len = 4}, passwd = {s = 0x0, len = 7200}, host = {s = 0x7fe9e6417690
> "EET",
>     len = -436117617}, port = {s = 0xffffffff <Address 0xffffffff out of
> bounds>,
>     len = -432850920}, params = {s = 0x7fe9e6358168 "", len = -432851312},
> headers = {
>     s = 0x7fe9e6356468 "\004", len = -301148160}, port_no = 1, proto = 0,
>   type = ERROR_URI_T, transport = {s = 0x7fe9e5716560 "H\201��", len =
> 24}, ttl = {
>     s = 0x7fffee0cbf80 "", len = -301154624}, user_param = {s = 0x0, len =
> -445555808},
>   maddr = {s = 0x7fffee0cbeb0 "��\f��\177", len = -502729501}, method = {
>     s = 0x7fe9e59959a0 "", len = -431565200}, lr = {s = 0x0, len = -1}, r2
> = {
>     s = 0x7300000000000000 <Address 0x7300000000000000 out of bounds>,
>     len = -301152992}, transport_val = {s = 0x7fe9e56df3ad
> "\205�\017\204\205\001",
>     len = 16}, ttl_val = {s = 0xee0cc570 <Address 0xee0cc570 out of
> bounds>, len = -1},
>   user_param_val = {s = 0x0, len = 0}, maddr_val = {s = 0x0, len = 0},
> method_val = {
>     s = 0x500000011 <Address 0x500000011 out of bounds>, len =
> -432850920}, lr_val = {
>     s = 0x7fe9e6358168 "", len = 0}, r2_val = {s = 0x7fe9e6356468 "\004",
>     len = -432850920}}
> turi = (struct sip_uri *) 0x0
> h = (struct hdr_field *) 0x0
> c = (struct auth_body *) 0x0
> value = {rs = {s = 0x2010 "", len = -301154656}, ri = 29, flags = 51}
> __FUNCTION__ = "get_username_domain"
> #1  0x00007fe9e208d278 in is_user_in (_msg=0x7fe9e6356468, _hf=0x0,
>     _grp=0x7fe9e6333690 "\001") at group.c:153
> my_ps = (db_ps_t) 0x0
> keys = {0x7fe9e2291070, 0x7fe9e2291090, 0x7fe9e2291080}
> vals = {{type = DB_DOUBLE, nul = 0, free = 33188, val = {int_val = 0,
>       double_val = 0, time_val = 0, string_val = 0x0, str_val = {s = 0x0,
>         len = -445245638}, blob_val = {s = 0x0, len = -445245638},
> bitmap_val = 0}}, {
>     type = 3849721658, nul = 32745, free = -432708504, val = {int_val =
> -432708504,
>       double_val = 6.9486660384542317e-310, time_val = 140642566366312,
> ---Type <return> to continue, or q <return> to quit---
>       string_val = 0x7fe9e6356468 "\004", str_val = {s = 0x7fe9e6356468
> "\004",
>         len = -470301741}, blob_val = {s = 0x7fe9e6356468 "\004", len =
> -470301741},
>       bitmap_val = 3862258792}}, {type = 16, nul = 48, free = -301152512,
> val = {
>       int_val = -301152704, double_val = 6.9533409289144845e-310,
>       time_val = 140737187202624, string_val = 0x7fffee0cc640 "", str_val = {
>         s = 0x7fffee0cc640 "", len = -445755489}, blob_val = {s =
> 0x7fffee0cc640 "",
>         len = -445755489}, bitmap_val = 3993814592}}}
> col = {0x7fe9e2291090}
> res = (db_res_t *) 0x0
> hf_s = {s = 0x7fe9e6333818 "Session-Expires: 1800\r\n", len = 4}
> grp_s = {s = 0x7fe9e63338a8 "zero_balance", len = 12}
> __FUNCTION__ = "is_user_in"
> hfPtr = (group_check_p) 0x0
> #2  0x00007fe9e5fe2f17 in do_action (a=0x7fe9e6333938, msg=0x7fe9e6356468)
>     at action.c:961
> val_s = {s = 0x7fffee0cc438 "", len = 32}
> expires = -432708504
> aux = {s = 0x7fffee0cc520 "", len = -445691043}
> ret = -5
> v = 1
> to = (union sockaddr_union *) 0xfffffffb
> p = (struct proxy_l *) 0x7fffee0cd800
> tmp = 0x1 <Address 0x1 out of bounds>
> new_uri = 0x7fe9e6356468 "\004"
> end = 0x8 <Address 0x8 out of bounds>
> crt = 0xfffffffb <Address 0xfffffffb out of bounds>
> len = -301148160
> user = 0
> uri = {user = {s = 0x0, len = 0}, passwd = {s = 0x0, len = 0}, host = {s
> = 0x0,
>     len = 0}, port = {s = 0x0, len = -431848992}, params = {s = 0x0, len =
> 0},
>   headers = {s = 0x0, len = -432745568}, port_no = 65191, proto = 58926,
> type = 32745,
>   transport = {s = 0x7fe9e5702193 "\211�\203=Tr)", len = 0}, ttl = {s =
> 0x0, len = 0},
> ---Type <return> to continue, or q <return> to quit---
>   user_param = {s = 0xffffffff00000000 <Address 0xffffffff00000000 out of
> bounds>,
>     len = 0}, maddr = {s = 0x7fe9e6356468 "\004", len = -432851208},
> method = {
>     s = 0x7fe9e6356488 "��.��\177", len = -432851176}, lr = {
>     s = 0x20 <Address 0x20 out of bounds>, len = 21}, r2 = {
>     s = 0x7fe9e6029b91
> "\205�\017\224�\017��IcT$\bI\213\004$D\2104\020A\203�\026\017\205�",
> len = 0}, transport_val = {s = 0x7fe9e6427960 "PzB��\177", len = 0},
> ttl_val = {
>     s = 0x0, len = 0}, user_param_val = {s = 0x7fe9e634cea0 "`yB��\177",
>     len = -433127769}, maddr_val = {s = 0x7fe9e5702193 "\211�\203=Tr)",
> len = 0},
>   method_val = {s = 0x0, len = 0}, lr_val = {s = 0x7fe9e6356468 "\004",
> len = 0},
>   r2_val = {s = 0x7fe9e6356468 "\004", len = -432859640}}
> next_hop = {user = {s = 0x7fe9e645e510 "\022", len = 0}, passwd = {
>     s = 0x100000011 <Address 0x100000011 out of bounds>, len = 0}, host = {
>     s = 0x7fe9e64280d0 "", len = 50}, port = {
>     s = 0x600000000 <Address 0x600000000 out of bounds>, len = 0}, params
> = {s = 0x0,
>     len = -431848992}, headers = {s = 0xe646d670 <Address 0xe646d670 out
> of bounds>,
>     len = 0}, port_no = 65191, proto = 58926, type = 32745, transport = {
>     s = 0x7fe9e634d3a0 "�\201B��\177", len = 0}, ttl = {s = 0x0, len = 88},
>   user_param = {
>     s = 0x7fe9e646d670 "<27>Feb  5 17:51:29 /usr/sbin/opensips[4296]:
> ERROR:group:get_hf: unsupported User Field identifier\n", len = 0},
> maddr = {
>     s = 0x1 <Address 0x1 out of bounds>, len = -431665056}, method = {s =
> 0x0,
>     len = -1}, lr = {s = 0x7fffee0cc4dc "�\177", len = -433127769}, r2 = {
>     s = 0x7fe9e64634f0 "��D��\177", len = 0}, transport_val = {s = 0x0,
> len = 0},
>   ttl_val = {s = 0x1700000000 <Address 0x1700000000 out of bounds>, len =
> 23},
>   user_param_val = {s = 0x2400000011 <Address 0x2400000011 out of bounds>,
> len = 36},
>   maddr_val = {s = 0x600000024 <Address 0x600000024 out of bounds>, len = 0},
>   method_val = {s = 0x7fe9e6428288 "", len = 16777217}, lr_val = {
>     s = 0x1 <Address 0x1 out of bounds>, len = -431848992}, r2_val = {
>     s = 0x1100000000 <Address 0x1100000000 out of bounds>, len = 0}}
> u = (struct sip_uri *) 0x0
> port = 0
> cmatch = -5
> ---Type <return> to continue, or q <return> to quit---
> aitem = (struct action *) 0x7fe9e6356468
> adefault = (struct action *) 0x7fffee0cd800
> spec = (pv_spec_t *) 0x7fe9e6356468
> model = (pv_elem_p) 0x0
> val = {rs = {s = 0x16 <Address 0x16 out of bounds>, len = 0}, ri =
> -301152992,
>   flags = 32767}
> pve = (pv_elem_t *) 0x0
> name_s = {s = 0x0, len = -442934976}
> __FUNCTION__ = "do_action"
> #3  0x00007fe9e5fdf3d9 in run_action_list (a=0x7fe9e6356468,
> msg=0x7fe9e6356468)
>     at action.c:139
> ret = -1
> t = (struct action *) 0x7fe9e6333938
> __FUNCTION__ = "run_action_list"
> #4  0x00007fe9e6024342 in eval_elem (e=0x7fe9e6333a08, msg=0x7fe9e6356468,
> val=0x0)
>     at route.c:1182
> uri = {user = {s = 0x0, len = -445873502}, passwd = {
>     s = 0xf <Address 0xf out of bounds>, len = 0}, host = {
>     s = 0x7fe9e5762b20 "^0-9,+-]", len = -431565189}, port = {
>     s = 0x8 <Address 0x8 out of bounds>, len = 0}, params = {
>     s = 0xffffff3b000000c5 <Address 0xffffff3b000000c5 out of bounds>, len
> = 0},
>   headers = {s = 0x0, len = 0}, port_no = 0, proto = 0, type = ERROR_URI_T,
>   transport = {s = 0x7fe900000000 <Address 0x7fe900000000 out of bounds>,
>     len = -445245638}, ttl = {s = 0x7fe9e57633a3 "", len = 0}, user_param = {
>     s = 0x100000000 <Address 0x100000000 out of bounds>, len =
> -301150696}, maddr = {
>     s = 0x0, len = -459498875}, method = {
>     s = 0xc5e56e4f9f <Address 0xc5e56e4f9f out of bounds>, len = -1}, lr =
> {s = 0x0,
>     len = -301150320}, r2 = {s = 0x7fe9e49c9a85 "%.*s", len = -431565808},
>   transport_val = {s = 0x1000 "y", len = 16}, ttl_val = {s =
> 0x7fffee0cce60 "\024",
>     len = -301150816}, user_param_val = {
>     s = 0x4948347a <Address 0x4948347a out of bounds>, len = 0}, maddr_val
> = {
>     s = 0x4948347a <Address 0x4948347a out of bounds>, len = 0},
> method_val = {s = 0x0,
> ---Type <return> to continue, or q <return> to quit---
>     len = -432851208}, lr_val = {s = 0x7fe9e6356468 "\004", len =
> -432708504},
>   r2_val = {s = 0x7fe9e6029db5 "��\001", len = -442948928}}
> ret = -5
> ival = -432708504
> lval = {rs = {s = 0x7fffee0ccd80 "p�F��\177", len = -445238369},
>   ri = -431565808, flags = 32745}
> rval = {rs = {s = 0x7fe9e57633a0 "%d]", len = 0}, ri = -1, flags = -1}
> p = 0x7fe9e6356468 "\004"
> __FUNCTION__ = "eval_elem"
> #5  0x00007fe9e6029db5 in eval_expr (e=0x7fe9e6333a08, msg=0x7fe9e6356468,
> val=0x0)
>     at route.c:1479
> rec_lev = 3
> ret = 0
> __FUNCTION__ = "eval_expr"
> #6  0x00007fe9e6029e15 in eval_expr (e=0x7fe9e6333a50, msg=0x7fe9e6356468,
> val=0x0)
>     at route.c:1486
> rec_lev = 3
> ret = 0
> __FUNCTION__ = "eval_expr"
> #7  0x00007fe9e6029e66 in eval_expr (e=0x7fe9e6333a98, msg=0x7fe9e6356468,
> val=0x0)
>     at route.c:1500
> rec_lev = 3
> ret = 0
> __FUNCTION__ = "eval_expr"
> #8  0x00007fe9e5fe1c5b in do_action (a=0x7fe9e6333ec0, msg=0x7fe9e6356468)
>     at action.c:688
> val_s = {s = 0x7fe9e6330498 "\002", len = -5}
> expires = -432882096
> aux = {s = 0x7fe9e646d660 "`\002", len = -432708504}
> ret = -5
> v = 1
> to = (union sockaddr_union *) 0x7fe9e646d67b
> ---Type <return> to continue, or q <return> to quit---
> p = (struct proxy_l *) 0x7fffee0cd800
> tmp = 0x1 <Address 0x1 out of bounds>
> new_uri = 0x7fe9e5762b0b "/etc/localtime"
> end = 0xf <Address 0xf out of bounds>
> crt = 0xfffffffb <Address 0xfffffffb out of bounds>
> len = -301148160
> user = 0
> uri = {user = {s = 0x7fe9e634a030 "", len = -432708504}, passwd = {
>     s = 0x7fffee0cd800 "\002", len = -435798311}, host = {s = 0x0, len =
> -431565104},
>   port = {s = 0x0, len = -432758640}, params = {
>     s = 0x330000001d <Address 0x330000001d out of bounds>, len = 17},
> headers = {
>     s = 0x6d00000001 <Address 0x6d00000001 out of bounds>, len = 4},
> port_no = 0,
>   proto = 0, type = 32745, transport = {s = 0x1c20 "", len = -431917424},
> ttl = {
>     s = 0xe <Address 0xe out of bounds>, len = 0}, user_param = {
>     s = 0x3 <Address 0x3 out of bounds>, len = -432708504}, maddr = {
>     s = 0x7fe9e632bd30 "��2��\177", len = -432708504}, method = {
>     s = 0x7fffee0cd800 "\002", len = -301148160}, lr = {s = 0x7fe9e5716560
> "H\201��",
>     len = 32}, r2 = {s = 0x7fffee0cd070 "hd5��\177", len = 0},
> transport_val = {
>     s = 0x3ae646d670 <Address 0x3ae646d670 out of bounds>, len = -432757997},
>   ttl_val = {s = 0x0, len = -432873752}, user_param_val = {s =
> 0x7fe9e6356468 "\004",
>     len = -432708504}, maddr_val = {s = 0x7fe9e6029db5 "��\001", len = 16},
>   method_val = {s = 0x7fffee0cd510 "\024", len = 0}, lr_val = {
>     s = 0x29 <Address 0x29 out of bounds>, len = 0}, r2_val = {s = 0x0,
>     len = -432864104}}
> next_hop = {user = {
>     s = 0x7fe9e646d670 "<27>Feb  5 17:51:29 /usr/sbin/opensips[4296]:
> ERROR:group:get_hf: unsupported User Field identifier\n", len =
> -445875032}, passwd = {
>     s = 0x7fffee0ccda0 "@Y\231��\177", len = -432705496}, host = {
>     s = 0x7fe9e5995940 "", len = -442934976}, port = {
>     s = 0xf4 <Address 0xf4 out of bounds>, len = -431565200}, params = {s
> = 0x0,
>     len = 1}, headers = {s = 0x7fe9e49c9a85 "%.*s", len = -445871724},
> port_no = 8208,
>   proto = 0, type = ERROR_URI_T, transport = {s = 0x7fffee0cce70 "p�F��\177",
> ---Type <return> to continue, or q <return> to quit---
>     len = -431565808}, ttl = {s = 0x7fe9e5995940 "", len = -431565808},
> user_param = {
>     s = 0x0, len = 0}, maddr = {s = 0x7fe9e5995940 "", len = -442934976},
> method = {
>     s = 0x7fe9e646d410 "�Y\231��\177", len = -1}, lr = {s = 0x0, len =
> -301150320},
>   r2 = {s = 0x7fe9e56c67e8 "\203=\001,-", len = -301150592}, transport_val
> = {
>     s = 0x7fe9e571618f "\220H\213\234$�", len = 20}, ttl_val = {
>     s = 0x498b0b01 <Address 0x498b0b01 out of bounds>, len = -431565200},
>   user_param_val = {s = 0xf4 <Address 0xf4 out of bounds>, len = -431565200},
>   maddr_val = {s = 0x0, len = -445555808}, method_val = {
>     s = 0x7fffee0cce80 "p�F��\177", len = 0}, lr_val = {s = 0x7fe9e62f0319
> "",
>     len = -301149208}, r2_val = {s = 0x7fe9e600d48e "f\220�:\005", len =
> -432706168}}
> u = (struct sip_uri *) 0x0
> port = 0
> cmatch = -5
> aitem = (struct action *) 0x7fe9e632be50
> adefault = (struct action *) 0x7fffee0cd800
> spec = (pv_spec_t *) 0x7fe9e632be50
> model = (pv_elem_p) 0x0
> val = {rs = {s = 0x7fe9e646f670 "", len = 8208}, ri = 8208, flags = 0}
> pve = (pv_elem_t *) 0x0
> name_s = {s = 0x0, len = -436059326}
> __FUNCTION__ = "do_action"
> #9  0x00007fe9e5fdf3d9 in run_action_list (a=0x7fe9e6356468,
> msg=0x7fe9e6356468)
>     at action.c:139
> ret = 1
> t = (struct action *) 0x7fe9e6333ec0
> __FUNCTION__ = "run_action_list"
> #10 0x00007fe9e5fe1d69 in do_action (a=0x7fe9e63343f0, msg=0x7fe9e6356468)
>     at action.c:705
> val_s = {s = 0x7fffee0cd640 "�C3��\177", len = -435532848}
> expires = -432882096
> aux = {s = 0x7fe9e5762b0b "/etc/localtime", len = -431565196}
> ret = 1
> ---Type <return> to continue, or q <return> to quit---
> v = 1
> to = (union sockaddr_union *) 0x8
> p = (struct proxy_l *) 0x7fffee0cd800
> tmp = 0x1 <Address 0x1 out of bounds>
> new_uri = 0x0
> end = 0x0
> crt = 0x1 <Address 0x1 out of bounds>
> len = -301148160
> user = 32745
> uri = {user = {s = 0x7fe9e5995940 "", len = -431565808}, passwd = {
>     s = 0xffffffff <Address 0xffffffff out of bounds>, len = 0}, host = {
>     s = 0x7fffee0cd640 "�C3��\177", len = -445880344}, port = {
>     s = 0x7fffee0cd530 "p�F��\177", len = -445554289}, params = {
>     s = 0x14 <Address 0x14 out of bounds>, len = 1233849089}, headers = {
>     s = 0x7fe9e646d670 "<27>Feb  5 17:51:29 /usr/sbin/opensips[4296]:
> ERROR:group:get_hf: unsupported User Field identifier\n", len = 105},
> port_no = 54896, proto = 58950,
>   type = 32745, transport = {s = 0x0, len = -445555808}, ttl = {
>     s = 0x7fffee0cd530 "p�F��\177", len = 0}, user_param = {s =
> 0x7fe9e4bf126c "�\001",
>     len = 2}, maddr = {s = 0x479 "", len = -433127723}, method = {
>     s = 0x7fe9e6356470 "\001", len = -432708504}, lr = {s = 0x7fffee0cd800
> "\002",
>     len = -301148160}, r2 = {s = 0x7fe9e5716560 "H\201��", len = 0},
> transport_val = {
>     s = 0x7fffee0cd680 "p�F��\177", len = 1145}, ttl_val = {s =
> 0x7fe9e6356468 "\004",
>     len = 29}, user_param_val = {s = 0x500000011 <Address 0x500000011 out
> of bounds>,
>     len = 1}, maddr_val = {s = 0x2300000004 <Address 0x2300000004 out of
> bounds>,
>     len = 0}, method_val = {s = 0x1c20 "", len = -431917424}, lr_val = {s
> = 0x0,
>     len = 0}, r2_val = {s = 0x479 "", len = -301148160}}
> next_hop = {user = {s = 0xffffffff <Address 0xffffffff out of bounds>,
>     len = 1}, passwd = {s = 0x7fe9e576339c "T ", len = -445245638}, host = {
>     s = 0x7fe9e646d67b "17:51:29 /usr/sbin/opensips[4296]:
> ERROR:group:get_hf: unsupported User Field identifier\n", len =
> -442934888}, port = {s = 0x7fe9e59959a0 "",
>     len = -431565088}, params = {s = 0x7fe9e5995940 "", len = 133408},
> headers = {
>     s = 0x7fe9e646f670 "", len = 125328}, port_no = 54880, proto = 58950,
> type = 32745,
> ---Type <return> to continue, or q <return> to quit---
>   transport = {s = 0x7fe9e56c63d4
> "�����H\213D$\020H\001�H\211\004$�EH9X\020\017\205
>     len = -431565200}, ttl = {s = 0x1f <Address 0x1f out of bounds>, len =
> -1},
>   user_param = {s = 0x7fe9e646f670 "", len = -431557008}, maddr = {s =
> 0x2010 "",
>     len = 8208}, method = {s = 0x0, len = -431565200}, lr = {
>     s = 0x7fe9e56c7ca8
> "I\215G\020�����H\213|$\020I\215p�L\211\004$�}���I\211�1�L\213\004$M\205�\017\204����I\215M�H\211L$\bM\213e�I\203��H9�\017\204\026\001",
>     len = -301149104}, r2 = {s = 0x500000004 <Address 0x500000004 out of
> bounds>,
>     len = -442934976}, transport_val = {s = 0x7fe9e5995940 "", len = 105},
> ttl_val = {
>     s = 0x7fe9e646d670 "<27>Feb  5 17:51:29 /usr/sbin/opensips[4296]:
> ERROR:group:get_hf: unsupported User Field identifier\n", len = 0},
> user_param_val = {
>     s = 0x1 <Address 0x1 out of bounds>, len = -435532848}, maddr_val = {
>     s = 0x7fe9e56c8994 "I\211�\203=R\n-", len = 8208}, method_val = {
>     s = 0x7fffee0cd520 "p�F��\177", len = -431565808}, lr_val = {s =
> 0x7fe9e5995940 "",
>     len = -431565808}, r2_val = {s = 0x0, len = 0}}
> u = (struct sip_uri *) 0x0
> port = 0
> cmatch = 1
> aitem = (struct action *) 0x7fe9e632be50
> adefault = (struct action *) 0x7fffee0cd800
> spec = (pv_spec_t *) 0x7fe9e632be50
> model = (pv_elem_p) 0x0
> val = {rs = {s = 0x7fe9e646d410 "�Y\231��\177", len = -442934976},
>   ri = -431565808, flags = 14642}
> pve = (pv_elem_t *) 0x0
> name_s = {s = 0x7fffee0cd3a0 "{�F��\177", len = -445783251}
> __FUNCTION__ = "do_action"
> #11 0x00007fe9e5fdf3d9 in run_action_list (a=0x7fe9e6356468,
> msg=0x7fe9e6356468)
>     at action.c:139
> ret = 1
> t = (struct action *) 0x7fe9e63343f0
> __FUNCTION__ = "run_action_list"
> #12 0x00007fe9e5fdf886 in run_top_route (a=0x7fe9e632be50,
> msg=0x7fe9e6356468)
> ---Type <return> to continue, or q <return> to quit---
>     at action.c:119
> bk_action_flags = 0
> bk_rec_lev = 0
> ret = 0
> #13 0x00007fe9e601ca11 in receive_msg (
>     buf=0x7fe9e62efea0 "INVITE sip:[hidden email]
> SIP/2.0\r\nDate: Thu, 05 Feb 2009 15:51:29 GMT\r\nCSeq: 2
> INVITE\r\nVia: SIP/2.0/UDP
> 194.44.160.178:5085;branch=z9hG4bKc68d7285-0af2-dd11-9564-001fc6030555;rport\r"...,
> len=1145,
>     rcv_info=0x7fffee0cd800) at receive.c:165
> msg = (struct sip_msg *) 0x7fe9e6356468
> __FUNCTION__ = "receive_msg"
> #14 0x00007fe9e60571b9 in udp_rcv_loop () at udp_server.c:449
> len = 1145
> buf = "INVITE sip:[hidden email] SIP/2.0\r\nDate: Thu,
> 05 Feb 2009 15:51:29 GMT\r\nCSeq: 2 INVITE\r\nVia: SIP/2.0/UDP
> 194.44.160.178:5085;branch=z9hG4bKc68d7285-0af2-dd11-9564-001fc6030555;rport\r"...
> tmp = 0x479 ""
> from = (union sockaddr_union *) 0x7fe9e6356448
> fromlen = 16
> ri = {src_ip = {af = 2, len = 4, u = {addrl = {140641700949186, 0},
> addr32 = {
>         2996841666, 32745, 0, 0}, addr16 = {11458, 45728, 32745, 0, 0, 0,
> 0, 0},
>       addr = "�,���\177\000\000\000\000\000\000\000\000\000"}}, dst_ip =
> {af = 2,
>     len = 4, u = {addrl = {983575746, 0}, addr32 = {983575746, 0, 0, 0},
> addr16 = {
>         11458, 15008, 0, 0, 0, 0, 0, 0}, addr = "�,�:", '\0' <repeats 11
> times>}},
>   src_port = 5085, dst_port = 5060, proto = 1, proto_reserved1 = 0,
>   proto_reserved2 = 0, src_su = {s = {sa_family = 2,
>       sa_data = "\023��,��\000\000\000\000\000\000\000"}, sin =
> {sin_family = 2,
>       sin_port = 56595, sin_addr = {s_addr = 2996841666},
>       sin_zero = "\000\000\000\000\000\000\000"}}, bind_address =
> 0x7fe9e6319af0}
> __FUNCTION__ = "udp_rcv_loop"
> #15 0x00007fe9e5ff5007 in main_loop () at main.c:774
> chd_rank = 6
> ---Type <return> to continue, or q <return> to quit---
> i = 5
> pid = 0
> si = (struct socket_info *) 0x7fe9e6319af0
> __FUNCTION__ = "main_loop"
> #16 0x00007fe9e5ff7d55 in main (argc=4, argv=0x0) at main.c:1313
> cfg_log_stderr = 0
> cfg_stream = (FILE *) 0x7fe9e64110f0
> c = 0
> r = 0
> tmp = 0x7fffee0cde67 ""
> tmp_len = 0
> port = 0
> proto = 0
> options = 0x7fe9e64110f0 "\230$�
> ret = -1
> seed = 504339942
> rfd = 4
> __FUNCTION__ = "main"
>
>  
>> Hmmm, as far as I know, you should include -g in your CFLAGS, to generate
>> debugging symbols.
>>
>> Regards.
>>
>> Sergio.
>>
>> On Thu, Feb 5, 2009 at 10:27 AM, <[hidden email]> wrote:
>>
>>    
>>> Hi, Sergia!
>>>
>>>      
>>>> Hello Olex.
>>>>
>>>> Could you execute a list at frame 0?
>>>>
>>>>        
>>> Unfortunately it does not give more info:
>>> #0  0x00007f46a3f42b0a in get_username_domain () from
>>> /usr/lib/opensips/modules/group.so
>>> No symbol table info available.
>>> #1  0x00007f46a3f4364f in is_user_in () from
>>> /usr/lib/opensips/modules/group.so
>>> No symbol table info available.
>>> #2  0x00007f46a7e8f64c in do_action () from /usr/sbin/opensips
>>> No symbol table info available.
>>> #3  0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
>>> No symbol table info available.
>>>
>>> Which commands should I use to compile opensips with debugging symbols?
>>>
>>>      
>>>> Did you download opensips from SVN? What OS are you running on?
>>>>
>>>>        
>>> opensips 1.5.0 r5249
>>> os Gentoo linux x86_64
>>> $ uname -a
>>> Linux voip 2.6.25-hardened-r7-20080922 #1 SMP Tue Sep 23 00:30:01 EEST
>>> 2008 x86_64 Intel(R) Xeon(R) CPU X3220 @ 2.40GHz GenuineIntel GNU/Linux
>>>
>>>      
>>>> Regards.
>>>>
>>>> Sergio.
>>>>
>>>>
>>>> On Thu, Feb 5, 2009 at 10:12 AM, <[hidden email]> wrote:
>>>>
>>>>        
>>>>> Hello, All!
>>>>>
>>>>> When using function is_user_in() from module group.so there is a
>>>>>          
>>> crash
>>>      
>>>>> of
>>>>> opensips.
>>>>> The same opensips.cfg was tested on 1.4.3 and 1.4.4 without any
>>>>>          
>>> crashes
>>>      
>>>>> or
>>>>> problems.
>>>>>
>>>>> /var/log/messages
>>>>> ------------------
>>>>> Feb  5 16:05:13 voip /usr/sbin/opensips[11992]:
>>>>>          
>>> INFO:core:handle_sigs:
>>>      
>>>>> child process 1203
>>>>> 9 exited by a signal 11
>>>>> Feb  5 16:05:13 voip /usr/sbin/opensips[11992]:
>>>>>          
>>> INFO:core:handle_sigs:
>>>      
>>>>> core was generated
>>>>> Feb  5 16:05:13 voip /usr/sbin/opensips[11992]:
>>>>>          
>>> INFO:core:handle_sigs:
>>>      
>>>>> terminating due to
>>>>>  SIGCHLD
>>>>> Feb  5 16:05:13 voip /usr/sbin/opensips[12037]: INFO:core:sig_usr:
>>>>> signal
>>>>> 15 received
>>>>>
>>>>> opensips.cfg(only some strings)
>>>>> ---------------------------------
>>>>> if (is_user_in("From", "disabled")) {
>>>>>    xlog("L_INFO", "User is in group 'disabled' F=$fu D=$fd\n");
>>>>>    rewriteuser("403");
>>>>> }
>>>>>
>>>>>
>>>>> GDB trace
>>>>> -----------
>>>>> #0  0x00007f46a3f42b0a in get_username_domain () from
>>>>> /usr/lib/opensips/modules/group.so
>>>>> #1  0x00007f46a3f4364f in is_user_in () from
>>>>> /usr/lib/opensips/modules/group.so
>>>>> #2  0x00007f46a7e8f64c in do_action () from /usr/sbin/opensips
>>>>> #3  0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
>>>>> #4  0x00007f46a7ed0f8e in eval_expr () from /usr/sbin/opensips
>>>>> #5  0x00007f46a7ed0dac in eval_expr () from /usr/sbin/opensips
>>>>> #6  0x00007f46a7e8e37e in do_action () from /usr/sbin/opensips
>>>>> #7  0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
>>>>> #8  0x00007f46a7e916e5 in do_action () from /usr/sbin/opensips
>>>>> #9  0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
>>>>> #10 0x00007f46a7e916e5 in do_action () from /usr/sbin/opensips
>>>>> #11 0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
>>>>> #12 0x00007f46a7e92046 in run_top_route () from /usr/sbin/opensips
>>>>> #13 0x00007f46a7ec6d24 in receive_msg () from /usr/sbin/opensips
>>>>> #14 0x00007f46a7efd23b in udp_rcv_loop () from /usr/sbin/opensips
>>>>> #15 0x00007f46a7ea485c in main () from /usr/sbin/opensips
>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Users mailing list
>>>>> [hidden email]
>>>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>>>>
>>>>>          
>>>>
>>>> --
>>>> Sergio Gutiérrez
>>>>
>>>>        
>>>
>>>      
>> --
>> Sergio Gutiérrez
>>
>>    
>
>
>
> _______________________________________________
> Users mailing list
> [hidden email]
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>  


_______________________________________________
Users mailing list
[hidden email]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Reply | Threaded
Open this post in threaded view
|

Re: opensips 1.5.0 crashes when using is_user_in()

olex-2
Hello, Bogdan!
Hello, Sergio!

Unfortunately I've got no error messages (even in debug mode).
But now opensips does not crashes and works very well. (rev5252).

Thank You, Guys!


> Hi,
>
> I made a fix (to avoid crashing) - please updated from SVN and try again.
>
> Most probably you will get some error in log, so please post them here.
>
> Thanks and regards,
> Bogdan
>
> [hidden email] wrote:
>> The problem was that opensips binary was stripped after compilation.
>> Here is full backtrace.
>>
>> #0  get_username_domain (msg=0x7fe9e6356468, gcp=0x0,
>> username=0x7fffee0cc070,
>>     domain=0x7fffee0cc0b0) at group.c:59
>> puri = {user = {s = 0x6d00000001 <Address 0x6d00000001 out of bounds>,
>>     len = 4}, passwd = {s = 0x0, len = 7200}, host = {s = 0x7fe9e6417690
>> "EET",
>>     len = -436117617}, port = {s = 0xffffffff <Address 0xffffffff out of
>> bounds>,
>>     len = -432850920}, params = {s = 0x7fe9e6358168 "", len =
>> -432851312},
>> headers = {
>>     s = 0x7fe9e6356468 "\004", len = -301148160}, port_no = 1, proto =
>> 0,
>>   type = ERROR_URI_T, transport = {s = 0x7fe9e5716560 "H\201��", len =
>> 24}, ttl = {
>>     s = 0x7fffee0cbf80 "", len = -301154624}, user_param = {s = 0x0, len
>> =
>> -445555808},
>>   maddr = {s = 0x7fffee0cbeb0 "��\f��\177", len = -502729501}, method =
>> {
>>     s = 0x7fe9e59959a0 "", len = -431565200}, lr = {s = 0x0, len = -1},
>> r2
>> = {
>>     s = 0x7300000000000000 <Address 0x7300000000000000 out of bounds>,
>>     len = -301152992}, transport_val = {s = 0x7fe9e56df3ad
>> "\205�\017\204\205\001",
>>     len = 16}, ttl_val = {s = 0xee0cc570 <Address 0xee0cc570 out of
>> bounds>, len = -1},
>>   user_param_val = {s = 0x0, len = 0}, maddr_val = {s = 0x0, len = 0},
>> method_val = {
>>     s = 0x500000011 <Address 0x500000011 out of bounds>, len =
>> -432850920}, lr_val = {
>>     s = 0x7fe9e6358168 "", len = 0}, r2_val = {s = 0x7fe9e6356468
>> "\004",
>>     len = -432850920}}
>> turi = (struct sip_uri *) 0x0
>> h = (struct hdr_field *) 0x0
>> c = (struct auth_body *) 0x0
>> value = {rs = {s = 0x2010 "", len = -301154656}, ri = 29, flags = 51}
>> __FUNCTION__ = "get_username_domain"
>> #1  0x00007fe9e208d278 in is_user_in (_msg=0x7fe9e6356468, _hf=0x0,
>>     _grp=0x7fe9e6333690 "\001") at group.c:153
>> my_ps = (db_ps_t) 0x0
>> keys = {0x7fe9e2291070, 0x7fe9e2291090, 0x7fe9e2291080}
>> vals = {{type = DB_DOUBLE, nul = 0, free = 33188, val = {int_val = 0,
>>       double_val = 0, time_val = 0, string_val = 0x0, str_val = {s =
>> 0x0,
>>         len = -445245638}, blob_val = {s = 0x0, len = -445245638},
>> bitmap_val = 0}}, {
>>     type = 3849721658, nul = 32745, free = -432708504, val = {int_val =
>> -432708504,
>>       double_val = 6.9486660384542317e-310, time_val = 140642566366312,
>> ---Type <return> to continue, or q <return> to quit---
>>       string_val = 0x7fe9e6356468 "\004", str_val = {s = 0x7fe9e6356468
>> "\004",
>>         len = -470301741}, blob_val = {s = 0x7fe9e6356468 "\004", len =
>> -470301741},
>>       bitmap_val = 3862258792}}, {type = 16, nul = 48, free =
>> -301152512,
>> val = {
>>       int_val = -301152704, double_val = 6.9533409289144845e-310,
>>       time_val = 140737187202624, string_val = 0x7fffee0cc640 "",
>> str_val = {
>>         s = 0x7fffee0cc640 "", len = -445755489}, blob_val = {s =
>> 0x7fffee0cc640 "",
>>         len = -445755489}, bitmap_val = 3993814592}}}
>> col = {0x7fe9e2291090}
>> res = (db_res_t *) 0x0
>> hf_s = {s = 0x7fe9e6333818 "Session-Expires: 1800\r\n", len = 4}
>> grp_s = {s = 0x7fe9e63338a8 "zero_balance", len = 12}
>> __FUNCTION__ = "is_user_in"
>> hfPtr = (group_check_p) 0x0
>> #2  0x00007fe9e5fe2f17 in do_action (a=0x7fe9e6333938,
>> msg=0x7fe9e6356468)
>>     at action.c:961
>> val_s = {s = 0x7fffee0cc438 "", len = 32}
>> expires = -432708504
>> aux = {s = 0x7fffee0cc520 "", len = -445691043}
>> ret = -5
>> v = 1
>> to = (union sockaddr_union *) 0xfffffffb
>> p = (struct proxy_l *) 0x7fffee0cd800
>> tmp = 0x1 <Address 0x1 out of bounds>
>> new_uri = 0x7fe9e6356468 "\004"
>> end = 0x8 <Address 0x8 out of bounds>
>> crt = 0xfffffffb <Address 0xfffffffb out of bounds>
>> len = -301148160
>> user = 0
>> uri = {user = {s = 0x0, len = 0}, passwd = {s = 0x0, len = 0}, host =
>> {s
>> = 0x0,
>>     len = 0}, port = {s = 0x0, len = -431848992}, params = {s = 0x0, len
>> =
>> 0},
>>   headers = {s = 0x0, len = -432745568}, port_no = 65191, proto = 58926,
>> type = 32745,
>>   transport = {s = 0x7fe9e5702193 "\211�\203=Tr)", len = 0}, ttl = {s =
>> 0x0, len = 0},
>> ---Type <return> to continue, or q <return> to quit---
>>   user_param = {s = 0xffffffff00000000 <Address 0xffffffff00000000 out
>> of
>> bounds>,
>>     len = 0}, maddr = {s = 0x7fe9e6356468 "\004", len = -432851208},
>> method = {
>>     s = 0x7fe9e6356488 "��.��\177", len = -432851176}, lr = {
>>     s = 0x20 <Address 0x20 out of bounds>, len = 21}, r2 = {
>>     s = 0x7fe9e6029b91
>> "\205�\017\224�\017��IcT$\bI\213\004$D\2104\020A\203�\026\017\205�",
>> len = 0}, transport_val = {s = 0x7fe9e6427960 "PzB��\177", len = 0},
>> ttl_val = {
>>     s = 0x0, len = 0}, user_param_val = {s = 0x7fe9e634cea0 "`yB��\177",
>>     len = -433127769}, maddr_val = {s = 0x7fe9e5702193 "\211�\203=Tr)",
>> len = 0},
>>   method_val = {s = 0x0, len = 0}, lr_val = {s = 0x7fe9e6356468 "\004",
>> len = 0},
>>   r2_val = {s = 0x7fe9e6356468 "\004", len = -432859640}}
>> next_hop = {user = {s = 0x7fe9e645e510 "\022", len = 0}, passwd = {
>>     s = 0x100000011 <Address 0x100000011 out of bounds>, len = 0}, host
>> = {
>>     s = 0x7fe9e64280d0 "", len = 50}, port = {
>>     s = 0x600000000 <Address 0x600000000 out of bounds>, len = 0},
>> params
>> = {s = 0x0,
>>     len = -431848992}, headers = {s = 0xe646d670 <Address 0xe646d670 out
>> of bounds>,
>>     len = 0}, port_no = 65191, proto = 58926, type = 32745, transport =
>> {
>>     s = 0x7fe9e634d3a0 "�\201B��\177", len = 0}, ttl = {s = 0x0, len =
>> 88},
>>   user_param = {
>>     s = 0x7fe9e646d670 "<27>Feb  5 17:51:29 /usr/sbin/opensips[4296]:
>> ERROR:group:get_hf: unsupported User Field identifier\n", len = 0},
>> maddr = {
>>     s = 0x1 <Address 0x1 out of bounds>, len = -431665056}, method = {s
>> =
>> 0x0,
>>     len = -1}, lr = {s = 0x7fffee0cc4dc "�\177", len = -433127769}, r2 =
>> {
>>     s = 0x7fe9e64634f0 "��D��\177", len = 0}, transport_val = {s = 0x0,
>> len = 0},
>>   ttl_val = {s = 0x1700000000 <Address 0x1700000000 out of bounds>, len
>> =
>> 23},
>>   user_param_val = {s = 0x2400000011 <Address 0x2400000011 out of
>> bounds>,
>> len = 36},
>>   maddr_val = {s = 0x600000024 <Address 0x600000024 out of bounds>, len
>> = 0},
>>   method_val = {s = 0x7fe9e6428288 "", len = 16777217}, lr_val = {
>>     s = 0x1 <Address 0x1 out of bounds>, len = -431848992}, r2_val = {
>>     s = 0x1100000000 <Address 0x1100000000 out of bounds>, len = 0}}
>> u = (struct sip_uri *) 0x0
>> port = 0
>> cmatch = -5
>> ---Type <return> to continue, or q <return> to quit---
>> aitem = (struct action *) 0x7fe9e6356468
>> adefault = (struct action *) 0x7fffee0cd800
>> spec = (pv_spec_t *) 0x7fe9e6356468
>> model = (pv_elem_p) 0x0
>> val = {rs = {s = 0x16 <Address 0x16 out of bounds>, len = 0}, ri =
>> -301152992,
>>   flags = 32767}
>> pve = (pv_elem_t *) 0x0
>> name_s = {s = 0x0, len = -442934976}
>> __FUNCTION__ = "do_action"
>> #3  0x00007fe9e5fdf3d9 in run_action_list (a=0x7fe9e6356468,
>> msg=0x7fe9e6356468)
>>     at action.c:139
>> ret = -1
>> t = (struct action *) 0x7fe9e6333938
>> __FUNCTION__ = "run_action_list"
>> #4  0x00007fe9e6024342 in eval_elem (e=0x7fe9e6333a08,
>> msg=0x7fe9e6356468,
>> val=0x0)
>>     at route.c:1182
>> uri = {user = {s = 0x0, len = -445873502}, passwd = {
>>     s = 0xf <Address 0xf out of bounds>, len = 0}, host = {
>>     s = 0x7fe9e5762b20 "^0-9,+-]", len = -431565189}, port = {
>>     s = 0x8 <Address 0x8 out of bounds>, len = 0}, params = {
>>     s = 0xffffff3b000000c5 <Address 0xffffff3b000000c5 out of bounds>,
>> len
>> = 0},
>>   headers = {s = 0x0, len = 0}, port_no = 0, proto = 0, type =
>> ERROR_URI_T,
>>   transport = {s = 0x7fe900000000 <Address 0x7fe900000000 out of
>> bounds>,
>>     len = -445245638}, ttl = {s = 0x7fe9e57633a3 "", len = 0},
>> user_param = {
>>     s = 0x100000000 <Address 0x100000000 out of bounds>, len =
>> -301150696}, maddr = {
>>     s = 0x0, len = -459498875}, method = {
>>     s = 0xc5e56e4f9f <Address 0xc5e56e4f9f out of bounds>, len = -1}, lr
>> =
>> {s = 0x0,
>>     len = -301150320}, r2 = {s = 0x7fe9e49c9a85 "%.*s", len =
>> -431565808},
>>   transport_val = {s = 0x1000 "y", len = 16}, ttl_val = {s =
>> 0x7fffee0cce60 "\024",
>>     len = -301150816}, user_param_val = {
>>     s = 0x4948347a <Address 0x4948347a out of bounds>, len = 0},
>> maddr_val
>> = {
>>     s = 0x4948347a <Address 0x4948347a out of bounds>, len = 0},
>> method_val = {s = 0x0,
>> ---Type <return> to continue, or q <return> to quit---
>>     len = -432851208}, lr_val = {s = 0x7fe9e6356468 "\004", len =
>> -432708504},
>>   r2_val = {s = 0x7fe9e6029db5 "��\001", len = -442948928}}
>> ret = -5
>> ival = -432708504
>> lval = {rs = {s = 0x7fffee0ccd80 "p�F��\177", len = -445238369},
>>   ri = -431565808, flags = 32745}
>> rval = {rs = {s = 0x7fe9e57633a0 "%d]", len = 0}, ri = -1, flags = -1}
>> p = 0x7fe9e6356468 "\004"
>> __FUNCTION__ = "eval_elem"
>> #5  0x00007fe9e6029db5 in eval_expr (e=0x7fe9e6333a08,
>> msg=0x7fe9e6356468,
>> val=0x0)
>>     at route.c:1479
>> rec_lev = 3
>> ret = 0
>> __FUNCTION__ = "eval_expr"
>> #6  0x00007fe9e6029e15 in eval_expr (e=0x7fe9e6333a50,
>> msg=0x7fe9e6356468,
>> val=0x0)
>>     at route.c:1486
>> rec_lev = 3
>> ret = 0
>> __FUNCTION__ = "eval_expr"
>> #7  0x00007fe9e6029e66 in eval_expr (e=0x7fe9e6333a98,
>> msg=0x7fe9e6356468,
>> val=0x0)
>>     at route.c:1500
>> rec_lev = 3
>> ret = 0
>> __FUNCTION__ = "eval_expr"
>> #8  0x00007fe9e5fe1c5b in do_action (a=0x7fe9e6333ec0,
>> msg=0x7fe9e6356468)
>>     at action.c:688
>> val_s = {s = 0x7fe9e6330498 "\002", len = -5}
>> expires = -432882096
>> aux = {s = 0x7fe9e646d660 "`\002", len = -432708504}
>> ret = -5
>> v = 1
>> to = (union sockaddr_union *) 0x7fe9e646d67b
>> ---Type <return> to continue, or q <return> to quit---
>> p = (struct proxy_l *) 0x7fffee0cd800
>> tmp = 0x1 <Address 0x1 out of bounds>
>> new_uri = 0x7fe9e5762b0b "/etc/localtime"
>> end = 0xf <Address 0xf out of bounds>
>> crt = 0xfffffffb <Address 0xfffffffb out of bounds>
>> len = -301148160
>> user = 0
>> uri = {user = {s = 0x7fe9e634a030 "", len = -432708504}, passwd = {
>>     s = 0x7fffee0cd800 "\002", len = -435798311}, host = {s = 0x0, len =
>> -431565104},
>>   port = {s = 0x0, len = -432758640}, params = {
>>     s = 0x330000001d <Address 0x330000001d out of bounds>, len = 17},
>> headers = {
>>     s = 0x6d00000001 <Address 0x6d00000001 out of bounds>, len = 4},
>> port_no = 0,
>>   proto = 0, type = 32745, transport = {s = 0x1c20 "", len =
>> -431917424},
>> ttl = {
>>     s = 0xe <Address 0xe out of bounds>, len = 0}, user_param = {
>>     s = 0x3 <Address 0x3 out of bounds>, len = -432708504}, maddr = {
>>     s = 0x7fe9e632bd30 "��2��\177", len = -432708504}, method = {
>>     s = 0x7fffee0cd800 "\002", len = -301148160}, lr = {s =
>> 0x7fe9e5716560
>> "H\201��",
>>     len = 32}, r2 = {s = 0x7fffee0cd070 "hd5��\177", len = 0},
>> transport_val = {
>>     s = 0x3ae646d670 <Address 0x3ae646d670 out of bounds>, len =
>> -432757997},
>>   ttl_val = {s = 0x0, len = -432873752}, user_param_val = {s =
>> 0x7fe9e6356468 "\004",
>>     len = -432708504}, maddr_val = {s = 0x7fe9e6029db5 "��\001", len =
>> 16},
>>   method_val = {s = 0x7fffee0cd510 "\024", len = 0}, lr_val = {
>>     s = 0x29 <Address 0x29 out of bounds>, len = 0}, r2_val = {s = 0x0,
>>     len = -432864104}}
>> next_hop = {user = {
>>     s = 0x7fe9e646d670 "<27>Feb  5 17:51:29 /usr/sbin/opensips[4296]:
>> ERROR:group:get_hf: unsupported User Field identifier\n", len =
>> -445875032}, passwd = {
>>     s = 0x7fffee0ccda0 "@Y\231��\177", len = -432705496}, host = {
>>     s = 0x7fe9e5995940 "", len = -442934976}, port = {
>>     s = 0xf4 <Address 0xf4 out of bounds>, len = -431565200}, params =
>> {s
>> = 0x0,
>>     len = 1}, headers = {s = 0x7fe9e49c9a85 "%.*s", len = -445871724},
>> port_no = 8208,
>>   proto = 0, type = ERROR_URI_T, transport = {s = 0x7fffee0cce70
>> "p�F��\177",
>> ---Type <return> to continue, or q <return> to quit---
>>     len = -431565808}, ttl = {s = 0x7fe9e5995940 "", len = -431565808},
>> user_param = {
>>     s = 0x0, len = 0}, maddr = {s = 0x7fe9e5995940 "", len =
>> -442934976},
>> method = {
>>     s = 0x7fe9e646d410 "�Y\231��\177", len = -1}, lr = {s = 0x0, len =
>> -301150320},
>>   r2 = {s = 0x7fe9e56c67e8 "\203=\001,-", len = -301150592},
>> transport_val
>> = {
>>     s = 0x7fe9e571618f "\220H\213\234$�", len = 20}, ttl_val = {
>>     s = 0x498b0b01 <Address 0x498b0b01 out of bounds>, len =
>> -431565200},
>>   user_param_val = {s = 0xf4 <Address 0xf4 out of bounds>, len =
>> -431565200},
>>   maddr_val = {s = 0x0, len = -445555808}, method_val = {
>>     s = 0x7fffee0cce80 "p�F��\177", len = 0}, lr_val = {s =
>> 0x7fe9e62f0319
>> "",
>>     len = -301149208}, r2_val = {s = 0x7fe9e600d48e "f\220�:\005", len =
>> -432706168}}
>> u = (struct sip_uri *) 0x0
>> port = 0
>> cmatch = -5
>> aitem = (struct action *) 0x7fe9e632be50
>> adefault = (struct action *) 0x7fffee0cd800
>> spec = (pv_spec_t *) 0x7fe9e632be50
>> model = (pv_elem_p) 0x0
>> val = {rs = {s = 0x7fe9e646f670 "", len = 8208}, ri = 8208, flags = 0}
>> pve = (pv_elem_t *) 0x0
>> name_s = {s = 0x0, len = -436059326}
>> __FUNCTION__ = "do_action"
>> #9  0x00007fe9e5fdf3d9 in run_action_list (a=0x7fe9e6356468,
>> msg=0x7fe9e6356468)
>>     at action.c:139
>> ret = 1
>> t = (struct action *) 0x7fe9e6333ec0
>> __FUNCTION__ = "run_action_list"
>> #10 0x00007fe9e5fe1d69 in do_action (a=0x7fe9e63343f0,
>> msg=0x7fe9e6356468)
>>     at action.c:705
>> val_s = {s = 0x7fffee0cd640 "�C3��\177", len = -435532848}
>> expires = -432882096
>> aux = {s = 0x7fe9e5762b0b "/etc/localtime", len = -431565196}
>> ret = 1
>> ---Type <return> to continue, or q <return> to quit---
>> v = 1
>> to = (union sockaddr_union *) 0x8
>> p = (struct proxy_l *) 0x7fffee0cd800
>> tmp = 0x1 <Address 0x1 out of bounds>
>> new_uri = 0x0
>> end = 0x0
>> crt = 0x1 <Address 0x1 out of bounds>
>> len = -301148160
>> user = 32745
>> uri = {user = {s = 0x7fe9e5995940 "", len = -431565808}, passwd = {
>>     s = 0xffffffff <Address 0xffffffff out of bounds>, len = 0}, host =
>> {
>>     s = 0x7fffee0cd640 "�C3��\177", len = -445880344}, port = {
>>     s = 0x7fffee0cd530 "p�F��\177", len = -445554289}, params = {
>>     s = 0x14 <Address 0x14 out of bounds>, len = 1233849089}, headers =
>> {
>>     s = 0x7fe9e646d670 "<27>Feb  5 17:51:29 /usr/sbin/opensips[4296]:
>> ERROR:group:get_hf: unsupported User Field identifier\n", len = 105},
>> port_no = 54896, proto = 58950,
>>   type = 32745, transport = {s = 0x0, len = -445555808}, ttl = {
>>     s = 0x7fffee0cd530 "p�F��\177", len = 0}, user_param = {s =
>> 0x7fe9e4bf126c "�\001",
>>     len = 2}, maddr = {s = 0x479 "", len = -433127723}, method = {
>>     s = 0x7fe9e6356470 "\001", len = -432708504}, lr = {s =
>> 0x7fffee0cd800
>> "\002",
>>     len = -301148160}, r2 = {s = 0x7fe9e5716560 "H\201��", len = 0},
>> transport_val = {
>>     s = 0x7fffee0cd680 "p�F��\177", len = 1145}, ttl_val = {s =
>> 0x7fe9e6356468 "\004",
>>     len = 29}, user_param_val = {s = 0x500000011 <Address 0x500000011
>> out
>> of bounds>,
>>     len = 1}, maddr_val = {s = 0x2300000004 <Address 0x2300000004 out of
>> bounds>,
>>     len = 0}, method_val = {s = 0x1c20 "", len = -431917424}, lr_val =
>> {s
>> = 0x0,
>>     len = 0}, r2_val = {s = 0x479 "", len = -301148160}}
>> next_hop = {user = {s = 0xffffffff <Address 0xffffffff out of bounds>,
>>     len = 1}, passwd = {s = 0x7fe9e576339c "T ", len = -445245638}, host
>> = {
>>     s = 0x7fe9e646d67b "17:51:29 /usr/sbin/opensips[4296]:
>> ERROR:group:get_hf: unsupported User Field identifier\n", len =
>> -442934888}, port = {s = 0x7fe9e59959a0 "",
>>     len = -431565088}, params = {s = 0x7fe9e5995940 "", len = 133408},
>> headers = {
>>     s = 0x7fe9e646f670 "", len = 125328}, port_no = 54880, proto =
>> 58950,
>> type = 32745,
>> ---Type <return> to continue, or q <return> to quit---
>>   transport = {s = 0x7fe9e56c63d4
>> "�����H\213D$\020H\001�H\211\004$�EH9X\020\017\205
>>     len = -431565200}, ttl = {s = 0x1f <Address 0x1f out of bounds>, len
>> =
>> -1},
>>   user_param = {s = 0x7fe9e646f670 "", len = -431557008}, maddr = {s =
>> 0x2010 "",
>>     len = 8208}, method = {s = 0x0, len = -431565200}, lr = {
>>     s = 0x7fe9e56c7ca8
>> "I\215G\020�����H\213|$\020I\215p�L\211\004$�}���I\211�1�L\213\004$M\205�\017\204����I\215M�H\211L$\bM\213e�I\203��H9�\017\204\026\001",
>>     len = -301149104}, r2 = {s = 0x500000004 <Address 0x500000004 out of
>> bounds>,
>>     len = -442934976}, transport_val = {s = 0x7fe9e5995940 "", len =
>> 105},
>> ttl_val = {
>>     s = 0x7fe9e646d670 "<27>Feb  5 17:51:29 /usr/sbin/opensips[4296]:
>> ERROR:group:get_hf: unsupported User Field identifier\n", len = 0},
>> user_param_val = {
>>     s = 0x1 <Address 0x1 out of bounds>, len = -435532848}, maddr_val =
>> {
>>     s = 0x7fe9e56c8994 "I\211�\203=R\n-", len = 8208}, method_val = {
>>     s = 0x7fffee0cd520 "p�F��\177", len = -431565808}, lr_val = {s =
>> 0x7fe9e5995940 "",
>>     len = -431565808}, r2_val = {s = 0x0, len = 0}}
>> u = (struct sip_uri *) 0x0
>> port = 0
>> cmatch = 1
>> aitem = (struct action *) 0x7fe9e632be50
>> adefault = (struct action *) 0x7fffee0cd800
>> spec = (pv_spec_t *) 0x7fe9e632be50
>> model = (pv_elem_p) 0x0
>> val = {rs = {s = 0x7fe9e646d410 "�Y\231��\177", len = -442934976},
>>   ri = -431565808, flags = 14642}
>> pve = (pv_elem_t *) 0x0
>> name_s = {s = 0x7fffee0cd3a0 "{�F��\177", len = -445783251}
>> __FUNCTION__ = "do_action"
>> #11 0x00007fe9e5fdf3d9 in run_action_list (a=0x7fe9e6356468,
>> msg=0x7fe9e6356468)
>>     at action.c:139
>> ret = 1
>> t = (struct action *) 0x7fe9e63343f0
>> __FUNCTION__ = "run_action_list"
>> #12 0x00007fe9e5fdf886 in run_top_route (a=0x7fe9e632be50,
>> msg=0x7fe9e6356468)
>> ---Type <return> to continue, or q <return> to quit---
>>     at action.c:119
>> bk_action_flags = 0
>> bk_rec_lev = 0
>> ret = 0
>> #13 0x00007fe9e601ca11 in receive_msg (
>>     buf=0x7fe9e62efea0 "INVITE sip:[hidden email]
>> SIP/2.0\r\nDate: Thu, 05 Feb 2009 15:51:29 GMT\r\nCSeq: 2
>> INVITE\r\nVia: SIP/2.0/UDP
>> 194.44.160.178:5085;branch=z9hG4bKc68d7285-0af2-dd11-9564-001fc6030555;rport\r"...,
>> len=1145,
>>     rcv_info=0x7fffee0cd800) at receive.c:165
>> msg = (struct sip_msg *) 0x7fe9e6356468
>> __FUNCTION__ = "receive_msg"
>> #14 0x00007fe9e60571b9 in udp_rcv_loop () at udp_server.c:449
>> len = 1145
>> buf = "INVITE sip:[hidden email] SIP/2.0\r\nDate:
>> Thu,
>> 05 Feb 2009 15:51:29 GMT\r\nCSeq: 2 INVITE\r\nVia: SIP/2.0/UDP
>> 194.44.160.178:5085;branch=z9hG4bKc68d7285-0af2-dd11-9564-001fc6030555;rport\r"...
>> tmp = 0x479 ""
>> from = (union sockaddr_union *) 0x7fe9e6356448
>> fromlen = 16
>> ri = {src_ip = {af = 2, len = 4, u = {addrl = {140641700949186, 0},
>> addr32 = {
>>         2996841666, 32745, 0, 0}, addr16 = {11458, 45728, 32745, 0, 0,
>> 0,
>> 0, 0},
>>       addr = "�,���\177\000\000\000\000\000\000\000\000\000"}}, dst_ip =
>> {af = 2,
>>     len = 4, u = {addrl = {983575746, 0}, addr32 = {983575746, 0, 0, 0},
>> addr16 = {
>>         11458, 15008, 0, 0, 0, 0, 0, 0}, addr = "�,�:", '\0' <repeats 11
>> times>}},
>>   src_port = 5085, dst_port = 5060, proto = 1, proto_reserved1 = 0,
>>   proto_reserved2 = 0, src_su = {s = {sa_family = 2,
>>       sa_data = "\023��,��\000\000\000\000\000\000\000"}, sin =
>> {sin_family = 2,
>>       sin_port = 56595, sin_addr = {s_addr = 2996841666},
>>       sin_zero = "\000\000\000\000\000\000\000"}}, bind_address =
>> 0x7fe9e6319af0}
>> __FUNCTION__ = "udp_rcv_loop"
>> #15 0x00007fe9e5ff5007 in main_loop () at main.c:774
>> chd_rank = 6
>> ---Type <return> to continue, or q <return> to quit---
>> i = 5
>> pid = 0
>> si = (struct socket_info *) 0x7fe9e6319af0
>> __FUNCTION__ = "main_loop"
>> #16 0x00007fe9e5ff7d55 in main (argc=4, argv=0x0) at main.c:1313
>> cfg_log_stderr = 0
>> cfg_stream = (FILE *) 0x7fe9e64110f0
>> c = 0
>> r = 0
>> tmp = 0x7fffee0cde67 ""
>> tmp_len = 0
>> port = 0
>> proto = 0
>> options = 0x7fe9e64110f0 "\230$�
>> ret = -1
>> seed = 504339942
>> rfd = 4
>> __FUNCTION__ = "main"
>>
>>
>>> Hmmm, as far as I know, you should include -g in your CFLAGS, to
>>> generate
>>> debugging symbols.
>>>
>>> Regards.
>>>
>>> Sergio.
>>>
>>> On Thu, Feb 5, 2009 at 10:27 AM, <[hidden email]> wrote:
>>>
>>>
>>>> Hi, Sergia!
>>>>
>>>>
>>>>> Hello Olex.
>>>>>
>>>>> Could you execute a list at frame 0?
>>>>>
>>>>>
>>>> Unfortunately it does not give more info:
>>>> #0  0x00007f46a3f42b0a in get_username_domain () from
>>>> /usr/lib/opensips/modules/group.so
>>>> No symbol table info available.
>>>> #1  0x00007f46a3f4364f in is_user_in () from
>>>> /usr/lib/opensips/modules/group.so
>>>> No symbol table info available.
>>>> #2  0x00007f46a7e8f64c in do_action () from /usr/sbin/opensips
>>>> No symbol table info available.
>>>> #3  0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
>>>> No symbol table info available.
>>>>
>>>> Which commands should I use to compile opensips with debugging
>>>> symbols?
>>>>
>>>>
>>>>> Did you download opensips from SVN? What OS are you running on?
>>>>>
>>>>>
>>>> opensips 1.5.0 r5249
>>>> os Gentoo linux x86_64
>>>> $ uname -a
>>>> Linux voip 2.6.25-hardened-r7-20080922 #1 SMP Tue Sep 23 00:30:01 EEST
>>>> 2008 x86_64 Intel(R) Xeon(R) CPU X3220 @ 2.40GHz GenuineIntel
>>>> GNU/Linux
>>>>
>>>>
>>>>> Regards.
>>>>>
>>>>> Sergio.
>>>>>
>>>>>
>>>>> On Thu, Feb 5, 2009 at 10:12 AM, <[hidden email]> wrote:
>>>>>
>>>>>
>>>>>> Hello, All!
>>>>>>
>>>>>> When using function is_user_in() from module group.so there is a
>>>>>>
>>>> crash
>>>>
>>>>>> of
>>>>>> opensips.
>>>>>> The same opensips.cfg was tested on 1.4.3 and 1.4.4 without any
>>>>>>
>>>> crashes
>>>>
>>>>>> or
>>>>>> problems.
>>>>>>
>>>>>> /var/log/messages
>>>>>> ------------------
>>>>>> Feb  5 16:05:13 voip /usr/sbin/opensips[11992]:
>>>>>>
>>>> INFO:core:handle_sigs:
>>>>
>>>>>> child process 1203
>>>>>> 9 exited by a signal 11
>>>>>> Feb  5 16:05:13 voip /usr/sbin/opensips[11992]:
>>>>>>
>>>> INFO:core:handle_sigs:
>>>>
>>>>>> core was generated
>>>>>> Feb  5 16:05:13 voip /usr/sbin/opensips[11992]:
>>>>>>
>>>> INFO:core:handle_sigs:
>>>>
>>>>>> terminating due to
>>>>>>  SIGCHLD
>>>>>> Feb  5 16:05:13 voip /usr/sbin/opensips[12037]: INFO:core:sig_usr:
>>>>>> signal
>>>>>> 15 received
>>>>>>
>>>>>> opensips.cfg(only some strings)
>>>>>> ---------------------------------
>>>>>> if (is_user_in("From", "disabled")) {
>>>>>>    xlog("L_INFO", "User is in group 'disabled' F=$fu D=$fd\n");
>>>>>>    rewriteuser("403");
>>>>>> }
>>>>>>
>>>>>>
>>>>>> GDB trace
>>>>>> -----------
>>>>>> #0  0x00007f46a3f42b0a in get_username_domain () from
>>>>>> /usr/lib/opensips/modules/group.so
>>>>>> #1  0x00007f46a3f4364f in is_user_in () from
>>>>>> /usr/lib/opensips/modules/group.so
>>>>>> #2  0x00007f46a7e8f64c in do_action () from /usr/sbin/opensips
>>>>>> #3  0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
>>>>>> #4  0x00007f46a7ed0f8e in eval_expr () from /usr/sbin/opensips
>>>>>> #5  0x00007f46a7ed0dac in eval_expr () from /usr/sbin/opensips
>>>>>> #6  0x00007f46a7e8e37e in do_action () from /usr/sbin/opensips
>>>>>> #7  0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
>>>>>> #8  0x00007f46a7e916e5 in do_action () from /usr/sbin/opensips
>>>>>> #9  0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
>>>>>> #10 0x00007f46a7e916e5 in do_action () from /usr/sbin/opensips
>>>>>> #11 0x00007f46a7e91cc4 in run_action_list () from /usr/sbin/opensips
>>>>>> #12 0x00007f46a7e92046 in run_top_route () from /usr/sbin/opensips
>>>>>> #13 0x00007f46a7ec6d24 in receive_msg () from /usr/sbin/opensips
>>>>>> #14 0x00007f46a7efd23b in udp_rcv_loop () from /usr/sbin/opensips
>>>>>> #15 0x00007f46a7ea485c in main () from /usr/sbin/opensips
>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Users mailing list
>>>>>> [hidden email]
>>>>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>>>>>
>>>>>>
>>>>>
>>>>> --
>>>>> Sergio Gutiérrez
>>>>>
>>>>>
>>>>
>>>>
>>> --
>>> Sergio Gutiérrez
>>>
>>>
>>
>>
>>
>> _______________________________________________
>> Users mailing list
>> [hidden email]
>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>
>
>



_______________________________________________
Users mailing list
[hidden email]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users