Hi Daniel, Tks for the time. I don't actually think the net trace will help so much ... It is a problem of crashing while a periodic clean of the active_watchers table is done ... so basically there is some value returned from the query to the database that openser does not like ... I ask my colleague to attach a copy of the database file ... and also to try to do some investigation for himself, placing some printfs here and there ... but you'll probably spot the problem first :)
Cesc On 2/5/07, Daniel-Constantin Mierla <[EMAIL PROTECTED]> wrote:
Hello, ngrep or pcap traces are more useful because I can see full content of SIP messages instead of summary. As I could get it from what you send, the 489 Event Package Not Supported reply is sent by X-Lite -- so you do not handle that SUBSCRIBE with presence module from openser. Do a "ngrep -d any -qt port 5060" on openser server and see if the SUBSCRIBE is sent to x-lite and from there comes then the reply. Cheers, Daniel On 02/05/07 15:35, Kc Ayuba wrote: > Hi, > > Here is the SIP messages that i captured when OpenSER crashed. > After package number 312 (PUBLISH) OpenSER crashed. > > No. Time Source Destination Protocol Info > 303 395.082565 192.168.3.172 192.168.3.170 SIP > Request:REGISTER sip:192.168.3.170 sip:192.168.3.170 > CSeq: 1 REGISTER > Expires: 60 > User-Agent: X-Lite > Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, > SUBSCRIBE, INFO > > No. Time Source Destination Protocol Info > 304 395.086627 192.168.3.170 192.168.3.172 SIP > Status: 200 OK (1 bindings) > CSeq: 1 REGISTER > Server: OpenSer (1.2.0-dev14-notls (i386/linux)) > > No. Time Source Destination Protocol Info > 305 395.393790 192.168.3.172 192.168.3.170 SIP > Request:SUBSCRIBE sip:[EMAIL PROTECTED] > CSeq: 1 SUBSCRIBE > Expires: 3600 > Accept: application/watcherinfo+xml > Event: presence.winfo > User-Agent: X-Lite > > No. Time Source Destination Protocol Info > 306 395.393944 192.168.3.172 192.168.3.170 SIP > Request:SUBSCRIBE sip:[EMAIL PROTECTED] > CSeq: 1 SUBSCRIBE > Expires: 3600 > Accept: multipart/related, application/rlmi+xml, application/pidf+xml > Event: presence > User-Agent: X-Lite > > No. Time Source Destination Protocol Info > 307 395.394042 192.168.3.172 192.168.3.170 SIP/XML > Request:PUBLISH sip:[EMAIL PROTECTED] > CSeq: 1 PUBLISH > Expires: 3600 > Content-Type: application/pidf+xml > User-Agent: X-Lite > Event: presence > > No. Time Source Destination Protocol Info > 308 395.397656 192.168.3.170 192.168.3.172 SIP > Status: 404 Not Found > CSeq: 1 SUBSCRIBE > Server: OpenSer (1.2.0-dev14-notls (i386/linux)) > > No. Time Source Destination Protocol Info > 309 395.536895 192.168.3.170 192.168.3.172 SIP > Request:SUBSCRIBE > sip:[EMAIL PROTECTED]:14188;rinstance=38756ac05409b128 > CSeq: 1 SUBSCRIBE > Expires: 3600 > User-Agent: X-Lite > Accept: application/watcherinfo+xml > Event: presence.winfo > P-hint: usrloc applied > > No. Time Source Destination Protocol Info > 310 395.638825 192.168.3.172 192.168.3.170 SIP > Status: 489 Event Package Not Supported > CSeq: 1 SUBSCRIBE > User-Agent: X-Lite > > No. Time Source Destination Protocol Info > 311 395.641067 192.168.3.170 192.168.3.172 SIP > Status: 489 Event Package Not Supported > CSeq: 1 SUBSCRIBE > User-Agent: X-Lite > > No. Time Source Destination Protocol Info > 312 395.946974 192.168.3.172 192.168.3.170 SIP/XML > Request:PUBLISH sip:[EMAIL PROTECTED] > CSeq: 1 PUBLISH > Expires: 3600 > Content-Type: application/pidf+xml > User-Agent: X-Lite > Event: presence > > No. Time Source Destination Protocol Info > 313 395.949651 192.168.3.170 192.168.3.172 ICMP > Destination unreachable (Port unreachable) > Internet Control Message Protocol > > > Kinds regards, > > Kc > > On 2/5/07, Daniel-Constantin Mierla <[EMAIL PROTECTED]> wrote: >> Hello, >> >> presence.winfo should be supported. Cesc could you send some netork >> trace to watch a bit? >> >> The issue with strlen might be there. I will have a look in these days. >> >> Cheers, >> Daniel >> >> >> On 02/04/07 13:16, Nicolas Palix wrote: >> > Hi, >> > >> > "strange event package" .winfo is RFC3857 >> > >> > A Watcher Information Event Template-Package for >> > the Session Initiation Protocol (SIP) >> > >> > http://www.ietf.org/rfc/rfc3857.txt >> > >> > >> > Le vendredi 02 février 2007 16:54, Cesc a écrit : >> > >> >> Hi, >> >> >> >> Just add something my colleague forgot to mention and i think it >> may help. >> >> This error happened after the phone sends a subscribe (or was it a >> >> publish?) message with a strange event package = presence.winfo (or >> >> something like this). >> >> The reaction of presence module (out of my head, so could be >> wrong) is >> >> to answer with a 484 Event package not known ... >> >> Then, after a while, a timer gets called which tries to clean the >> >> active watchers table ... and then ... pum! :) the seg fault here >> >> attached ... >> >> >> >> As you can see in the bt, the problem seems to be in strlen call ... >> >> probably the row_vals returned is null (?) ... and strlen I think is >> >> not very robust against this sort of perversions :) >> >> >> >> >> >>> 610 subs.event_id.len = >> strlen(row_vals[event_id_col].val.str_val.s); >> >>> >> >> Cesc >> >> PS - The work around seems to be to start openser with a clean >> >> (=empty) active_watchers dbtext file ... >> >> >> >> On 2/2/07, Kc Ayuba <[EMAIL PROTECTED]> wrote: >> >> >> >>> Hi, >> >>> I'm trying to use db_text database with the presence module of >> >>> OpenSER(1.2.x). >> >>> User agent is X-Lite(3.0). When I try to send a REGISTER message to >> >>> OpenSER, OpenSER still works. >> >>> But if i sent a SUBSCRIBE or a PUBLISH message, then openser >> crashes. >> >>> If i use the MySQL database, then everything works just fine. But i >> >>> prefer to use the db_text database. >> >>> Here is the core file that was generated when OpenSER crashed. >> >>> >> >>> Core generated: >> >>> >> >>> Program terminated with signal 11, Segmentation fault. >> >>> #0 0xa7ced659 in msg_active_watchers_clean (ticks=100, param=0x0) at >> >>> subscribe.c:610 >> >>> 610 subs.event_id.len = >> >>> strlen(row_vals[event_id_col].val.str_val.s); >> >>> (gdb) bt >> >>> #0 0xa7ced659 in msg_active_watchers_clean (ticks=100, param=0x0) at >> >>> subscribe.c:610 >> >>> #1 0x080a3f6c in timer_ticker () at timer.c:141 >> >>> #2 0x0806b51f in main_loop () at main.c:724 >> >>> #3 0x0806d43b in main (argc=3, argv=0xaff0a2e4) at main.c:1438 >> >>> (gdb) frame 0 >> >>> #0 0xa7ced659 in msg_active_watchers_clean (ticks=100, param=0x0) at >> >>> subscribe.c:610 >> >>> 610 subs.event_id.len = >> >>> strlen(row_vals[event_id_col].val.str_val.s); >> >>> (gdb) list >> >>> 605 >> >>> 606 subs.from_domain.s = >> >>> row_vals[from_domain_col].val.str_val.s; >> >>> 607 subs.from_domain.len = >> >>> strlen(row_vals[from_domain_col].val.str_val.s); >> >>> 608 >> >>> 609 subs.event_id.s = row_vals[event_id_col].val.str_val.s; >> >>> 610 subs.event_id.len = >> >>> strlen(row_vals[event_id_col].val.str_val.s); >> >>> 611 >> >>> 612 subs.to_tag.s = row_vals[to_tag_col].val.str_val.s; >> >>> 613 subs.to_tag.len = >> >>> strlen(row_vals[to_tag_col].val.str_val.s); >> >>> 614 >> >>> (gdb) >> >>> 615 subs.from_tag.s = row_vals[from_tag_col].val.str_val.s; >> >>> 616 subs.from_tag.len = >> >>> strlen(row_vals[from_tag_col].val.str_val.s); >> >>> 617 >> >>> 618 subs.callid.s = row_vals[callid_col].val.str_val.s; >> >>> 619 subs.callid.len = >> >>> strlen(row_vals[callid_col].val.str_val.s); >> >>> 620 >> >>> 621 subs.contact.s = row_vals[contact_col].val.str_val.s; >> >>> 622 subs.contact.len = >> >>> strlen(row_vals[contact_col].val.str_val.s); >> >>> 623 >> >>> 624 subs.cseq = row_vals[cseq_col].val.int_val; >> >>> >> >>> >> >>> I really hope that someone can help me with this problem. Thanks in >> >>> advance. >> >>> >> >>> Kind regards, >> >>> >> >>> Kc >> >>> _______________________________________________ >> >>> Users mailing list >> >>> [email protected] >> >>> http://openser.org/cgi-bin/mailman/listinfo/users >> >>> >> >> _______________________________________________ >> >> Users mailing list >> >> [email protected] >> >> http://openser.org/cgi-bin/mailman/listinfo/users >> >> >> > >> > >> >> _______________________________________________ >> Users mailing list >> [email protected] >> http://openser.org/cgi-bin/mailman/listinfo/users >> > > _______________________________________________ > Users mailing list > [email protected] > http://openser.org/cgi-bin/mailman/listinfo/users > _______________________________________________ Users mailing list [email protected] http://openser.org/cgi-bin/mailman/listinfo/users
_______________________________________________ Users mailing list [email protected] http://openser.org/cgi-bin/mailman/listinfo/users
