[OpenSIPS-Devel] SF.net SVN: opensips:[5943] trunk/modules/presence_xml/xcap_auth.c

Iñaki Baz Castillo ibc at aliax.net
Sat Aug 8 16:06:22 CEST 2009


2009/8/8 Iñaki Baz Castillo <ibc at aliax.net>:
> 2009/8/7 Iñaki Baz Castillo <ibc at aliax.net>:
>> It works better now, but now when I block *explicitely* a user in the
>> pres-rules document, and OpenXCAP sends the MI command (via
>> opensips-mi-command) it receives:
>>
>> T 2009/08/07 16:07:05.370217 127.0.0.1:8080 -> 127.0.0.1:34777 [AP]
>> HTTP/1.1 500 Internal Server Error'
>> Date: Fri, 07 Aug 2009 14:07:05 GMT'
>> Content-Length: 201'
>> Content-Type: text/html'
>> Server: Twisted/8.1.0 TwistedWeb/[twisted.web2, version 8.1.0]'
>> Connection: close'
>> '
>> <html><head><title>Internal Server
>> Error</title></head><body><h1>Internal Server Error</h1>An error
>> occurred rendering the requested page. More information is available
>> in the server log.</body></html>
>
> ok, this occurs because opensips crashes. I've 4 coredumps from
> yesterday when testing the new XCAP feature.
> I'll try to inspect them.


(gdb) bt
#0  0x00002b2b82c96ac9 in db_mysql_val2bind (v=0x7fff289be290,
binds=0x7539e8, i=<value optimized out>) at val.c:254
#1  0x00002b2b82c924c6 in db_mysql_do_prepared_query (conn=0x743010,
query=0x2b2b82ea96d0, v=0x7fff289bde80, n=2, uv=0x7fff289be250, un=4)
at dbase.c:446
#2  0x00002b2b82c93a7f in db_mysql_update (_h=0x743010,
_k=0x7fff289be310, _o=0x0, _v=0x7fff289be250, _uk=0x7fff289bdf20,
_uv=0x7fff289bde80, _n=4, _un=2) at dbase.c:921
#3  0x00002b2b853cb010 in pres_update_status (subs=
      {pres_uri = {s = 0x74342b
"sip:alice at oversip.net\"\n\"presence\"\n\"0\"\n", len = 21}, to_user =
{s = 0x30 <Address 0x30 out of bounds>, len = 7682328}, to_domain = {s
= 0x3000000028 <Address 0x3000000028 out of bounds>, len = 681304640},
from_user = {s = 0x7535b8 "bob�", len = 3}, from_domain = {s =
0x7535f0 "oversip.net", len = 11}, event = 0x2b2b8692a908, event_id =
{s = 0x2b2b82a7b9e0 "", len = 9766904}, to_tag = {s = 0x2b2b82a7b9e0
"", len = 9704240}, from_tag = {s = 0x2e7 <Address 0x2e7 out of
bounds>, len = 8}, callid = {s = 0x6e87a8 "\b�e\206++", len =
681305056}, sockinfo = 0x2b2b827a2a56, remote_cseq = 0, local_cseq =
0, contact = {s = 0x2b2b82a7b9e0 "", len = 7501728}, local_contact =
{s = 0x2e7 <Address 0x2e7 out of bounds>, len = 8}, record_route = {s
= 0x6e87a8 "\b�e\206++", len = 681305056}, expires = 2189044310,
status = 1, reason = {s = 0x0, len = 0}, version = -2055260448,
db_flag = 502, auth_rules_doc = 0x753610, next = 0x1}, reason={s =
0x954a82 "ded val (3): len=8; type=254; is_null=0\n", len = 0},
query_cols=0x7fff289be310,
    query_vals=0x7fff289be250, n_query_cols=<value optimized out>,
subs_array=0x7fff289be390) at presence.c:652
#4  0x00002b2b853cca2b in update_watchers_status (pres_uri={s =
0x74342b "sip:alice at oversip.net\"\n\"presence\"\n\"0\"\n", len = 21},
ev=0x2b2b8692a908,
    rules_doc=<value optimized out>) at presence.c:884
#5  0x00002b2b853cd188 in mi_refreshWatchers (cmd=<value optimized
out>, param=<value optimized out>) at presence.c:532
#6  0x00002b2b82a84591 in mi_datagram_server (rx_sock=17, tx_sock=18)
at ../../mi/mi.h:104
#7  0x00002b2b82a86168 in datagram_process (rank=0) at mi_datagram.c:310
#8  0x0000000000458de9 in start_module_procs () at sr_module.c:585
#9  0x000000000042343d in main (argc=<value optimized out>,
argv=0x7fff289be7f8) at main.c:837
(gdb)





(gdb) bt full
#0  0x00002b2b82c96ac9 in db_mysql_val2bind (v=0x7fff289be290,
binds=0x7539e8, i=<value optimized out>) at val.c:254
        t = <value optimized out>
        mt = <value optimized out>
        __FUNCTION__ = "db_mysql_val2bind"
#1  0x00002b2b82c924c6 in db_mysql_do_prepared_query (conn=0x743010,
query=0x2b2b82ea96d0, v=0x7fff289bde80, n=2, uv=0x7fff289be250, un=4)
at dbase.c:446
        i = 2
        code = <value optimized out>
        cols = <value optimized out>
        pq_ptr = (struct prep_stmt *) 0x7539a8
        ctx = (struct my_stmt_ctx *) 0x7537c0
        mysql_bind = (MYSQL_BIND *) 0x7539e8
        __FUNCTION__ = "db_mysql_do_prepared_query"
#2  0x00002b2b82c93a7f in db_mysql_update (_h=0x743010,
_k=0x7fff289be310, _o=0x0, _v=0x7fff289be250, _uk=0x7fff289bdf20,
_uv=0x7fff289bde80, _n=4, _un=2) at dbase.c:921
        ret = 0
#3  0x00002b2b853cb010 in pres_update_status (subs=
      {pres_uri = {s = 0x74342b
"sip:alice at oversip.net\"\n\"presence\"\n\"0\"\n", len = 21}, to_user =
{s = 0x30 <Address 0x30 out of bounds>, len = 7682328}, to_domain = {s
= 0x3000000028 <Address 0x3000000028 out of bounds>, len = 681304640},
from_user = {s = 0x7535b8 "bob�", len = 3}, from_domain = {s =
0x7535f0 "oversip.net", len = 11}, event = 0x2b2b8692a908, event_id =
{s = 0x2b2b82a7b9e0 "", len = 9766904}, to_tag = {s = 0x2b2b82a7b9e0
"", len = 9704240}, from_tag = {s = 0x2e7 <Address 0x2e7 out of
bounds>, len = 8}, callid = {s = 0x6e87a8 "\b�e\206++", len =
681305056}, sockinfo = 0x2b2b827a2a56, remote_cseq = 0, local_cseq =
0, contact = {s = 0x2b2b82a7b9e0 "", len = 7501728}, local_contact =
{s = 0x2e7 <Address 0x2e7 out of bounds>, len = 8}, record_route = {s
= 0x6e87a8 "\b�e\206++", len = 681305056}, expires = 2189044310,
status = 1, reason = {s = 0x0, len = 0}, version = -2055260448,
db_flag = 502, auth_rules_doc = 0x753610, next = 0x1}, reason={s =
0x954a82 "ded val (3): len=8; type=254; is_null=0\n", len = 0},
query_cols=0x7fff289be310,
    query_vals=0x7fff289be250, n_query_cols=<value optimized out>,
subs_array=0x7fff289be390) at presence.c:652
        update_cols = {0x2b2b855e6470, 0x2b2b855e6480, 0x0,
0x2b2b82a7b9e0, 0x7277a0}
        update_vals = {{type = DB_INT, nul = 0, free = 0, val =
{int_val = 1, double_val = 4.9406564584124654e-324, time_val = 1,
string_val = 0x1 <Address 0x1 out of bounds>,
      str_val = {s = 0x1 <Address 0x1 out of bounds>, len = 7681376},
blob_val = {s = 0x1 <Address 0x1 out of bounds>, len = 7681376},
bitmap_val = 1}}, {type = DB_STR, nul = 0,
    free = 7681568, val = {int_val = 0, double_val = 0, time_val = 0,
string_val = 0x0, str_val = {s = 0x0, len = 0}, blob_val = {s = 0x0,
len = 0}, bitmap_val = 0}}, {
    type = 681303760, nul = 32767, free = 681304848, val = {int_val =
71040, double_val = 7.291122019671408e-304, time_val =
72057594037998976,
      string_val = 0x100000000011580 <Address 0x100000000011580 out of
bounds>, str_val = {s = 0x100000000011580 <Address 0x100000000011580
out of bounds>, len = 4846442},
      blob_val = {s = 0x100000000011580 <Address 0x100000000011580 out
of bounds>, len = 4846442}, bitmap_val = 71040}}, {type = 2235438944,
nul = 11051, free = -2102937120,
    val = {int_val = 9766488, double_val = 4.8252862013207843e-317,
time_val = 9766488, string_val = 0x950658 "!", str_val = {s = 0x950658
"!", len = -2102937120}, blob_val = {
        s = 0x950658 "!", len = -2102937120}, bitmap_val = 9766488}},
{type = 9704240, nul = 0, free = 7684584, val = {int_val = 7684528,
double_val = 3.7966612893051426e-317,
      time_val = 7684528, string_val = 0x7541b0 "\002", str_val = {s =
0x7541b0 "\002", len = 3}, blob_val = {s = 0x7541b0 "\002", len = 3},
bitmap_val = 7684528}}}
        my_ps = (db_ps_t) 0x7539a8
        __FUNCTION__ = "pres_update_status"
#4  0x00002b2b853cca2b in update_watchers_status (pres_uri={s =
0x74342b "sip:alice at oversip.net\"\n\"presence\"\n\"0\"\n", len = 21},
ev=0x2b2b8692a908,
    rules_doc=<value optimized out>) at presence.c:884
        subs = {pres_uri = {s = 0x74342b
"sip:alice at oversip.net\"\n\"presence\"\n\"0\"\n", len = 21}, to_user =
{s = 0x30 <Address 0x30 out of bounds>, len = 7682328},
  to_domain = {s = 0x3000000028 <Address 0x3000000028 out of bounds>,
len = 681304640}, from_user = {s = 0x7535b8 "bob�", len = 3},
from_domain = {s = 0x7535f0 "oversip.net",
    len = 11}, event = 0x2b2b8692a908, event_id = {s = 0x2b2b82a7b9e0
"", len = 9766904}, to_tag = {s = 0x2b2b82a7b9e0 "", len = 9704240},
from_tag = {
    s = 0x2e7 <Address 0x2e7 out of bounds>, len = 8}, callid = {s =
0x6e87a8 "\b�e\206++", len = 681305056}, sockinfo = 0x2b2b827a2a56,
remote_cseq = 0, local_cseq = 0,
  contact = {s = 0x2b2b82a7b9e0 "", len = 7501728}, local_contact = {s
= 0x2e7 <Address 0x2e7 out of bounds>, len = 8}, record_route = {s =
0x6e87a8 "\b�e\206++",
    len = 681305056}, expires = 2189044310, status = 2, reason = {s =
0x0, len = 0}, version = -2055260448, db_flag = 502, auth_rules_doc =
0x753610, next = 0x1}
        query_cols = {0x2b2b855e64c0, 0x2b2b855e63d0, 0x2b2b855e63a0,
0x2b2b855e63b0, 0x2b2b857f3650, 0x2b2b857f3640}
        result_cols = {0x2b2b855e6470, 0x2b2b855e6480, 0x2b2b855e63a0,
0x2b2b855e63b0, 0x2b2b857f3620}
        query_vals = {{type = DB_STR, nul = 0, free = 7243688, val =
{int_val = 7615531, double_val = 3.7625722419390341e-317, time_val =
7615531,
      string_val = 0x74342b
"sip:alice at oversip.net\"\n\"presence\"\n\"0\"\n", str_val = {s =
0x74342b "sip:alice at oversip.net\"\n\"presence\"\n\"0\"\n", len = 21},
blob_val = {
        s = 0x74342b "sip:alice at oversip.net\"\n\"presence\"\n\"0\"\n",
len = 21}, bitmap_val = 7615531}}, {type = DB_STR, nul = 0, free =
681304912, val = {int_val = -2037208664,
      double_val = 2.3451290966933897e-310, time_val = 47465941346728,
string_val = 0x2b2b8692a9a8 "presence ", str_val = {s = 0x2b2b8692a9a8
"presence ", len = 8}, blob_val = {
        s = 0x2b2b8692a9a8 "presence ", len = 8}, bitmap_val =
2257758632}}, {type = DB_STR, nul = 0, free = 4706946, val = {int_val
= 7681464,
      double_val = 3.795147472166285e-317, time_val = 7681464,
string_val = 0x7535b8 "bob�", str_val = {s = 0x7535b8 "bob�", len =
3}, blob_val = {s = 0x7535b8 "bob�", len = 3},
      bitmap_val = 7681464}}, {type = DB_STR, nul = 0, free = 101, val
= {int_val = 7681520, double_val = 3.7951751398424522e-317, time_val =
7681520,
      string_val = 0x7535f0 "oversip.net", str_val = {s = 0x7535f0
"oversip.net", len = 11}, blob_val = {s = 0x7535f0 "oversip.net", len
= 11}, bitmap_val = 7681520}}, {
    type = DB_INT, nul = 0, free = 7681200, val = {int_val = 2,
double_val = 9.8813129168249309e-324, time_val = 2, string_val = 0x2
<Address 0x2 out of bounds>, str_val = {
        s = 0x2 <Address 0x2 out of bounds>, len = 7615551}, blob_val
= {s = 0x2 <Address 0x2 out of bounds>, len = 7615551}, bitmap_val =
2}}, {type = 7680992, nul = 0,
    free = -2105568864, val = {int_val = 40, double_val =
4.4561911630033344e-313, time_val = 90194313256, string_val =
0x1500000028 <Address 0x1500000028 out of bounds>,





-- 
Iñaki Baz Castillo
<ibc at aliax.net>



More information about the Devel mailing list