[Kamailio-Devel] [ openser-Bugs-2102541 ] DNS_name to IP coredumps

Klaus Darilion klaus.mailinglists at pernau.at
Fri Sep 12 11:55:24 CEST 2008


moved to -dev:

really strange. The coredumps do not show any interesting (as Henning said)

I also tried to reproduce the scenario but in my case (kamailio trunk) 
everything is fine.

can you send (privately if preferred) the whole logfile of a crash 
scenario (from the reception of the BYE till openser shutdown)

regards
klaus

SourceForge.net schrieb:
> Bugs item #2102541, was opened at 2008-09-09 19:42
> Message generated for change (Comment added) made by henningw
> You can respond by visiting: 
> https://sourceforge.net/tracker/?func=detail&atid=743020&aid=2102541&group_id=139143
> 
> Please note that this message will contain a full copy of the comment thread,
> including the initial issue submission, for this request,
> not just the latest update.
> Category: core
> Group: ver 1.3.x
> Status: Open
> Resolution: None
>> Priority: 7
> Private: No
> Submitted By: Stefan Broddesson (broddesson)
>> Assigned to: Henning Westerholt (henningw)
> Summary: DNS_name to IP coredumps
> 
> Initial Comment:
> Calee initiated <bye> and destination address is a hostname not IP address.
> Executing forward() or t_relay() in script triggers the coredump.
> dns & rev_dns On/Off with the same result.
> ---
> DBG:core:comp_scriptvar: str 20 : siphost.domain.com
> DBG:tm:t_newtran: transaction on entrance=0xffffffffffffffff
> DBG:core:parse_headers: flags=ffffffffffffffff
> DBG:core:parse_headers: flags=78
> DBG:tm:t_lookup_request: start searching: hash=7994, isACK=0
> DBG:tm:matching_3261: RFC3261 transaction matching failed
> DBG:tm:t_lookup_request: no transaction found
> DBG:tm:run_reqin_callbacks: trans=0x2b4e6b2e0f48, callback type 1, id 0 entered
> DBG:siptrace:trace_onreq_in: trace off...
> DBG:core:mk_proxy: doing DNS lookup...
> DBG:core:sip_resolvehost: no port, no proto -> do NAPTR lookup!
> DBG:core:filter_and_sort_naptr: found valid SIP+D2U -> _sip._udp.siphost.domain.com
> DBG:core:filter_and_sort_naptr: skipping SIPS+D2T -> _sips._tcp.siphost.domain.com
> DBG:core:filter_and_sort_naptr: skipping SIP+D2T -> _sip._tcp.siphost.domain.com
> 
> //s
> 
> ----------------------------------------------------------------------
> 
>> Comment By: Henning Westerholt (henningw)
> Date: 2008-09-12 09:18
> 
> Message:
> Hi Stefan,
> 
> the "filter_and_sort_naptr" DBG output given is the last message in the
> logs before the crash? Can you send me (privatly) the msg trace/ domain
> name that causes this? Does it depend on certain things in the config
> scripts, perhaps you could isolate the problem to a "minimal" config that
> still crash?
> 
> My mail address is henning dot westerholt at 1und1 dot de
> 
> Best regards,
> 
> Henning
> 
> ----------------------------------------------------------------------
> 
> Comment By: Stefan Broddesson (broddesson)
> Date: 2008-09-11 15:34
> 
> Message:
> <bye> that triggers this:
> 
> BYE sip:+45123123123 at otherhost.domain.com SIP/2.0
> Via: SIP/2.0/UDP 113.113.113.113:5060;branch=z9hG4bK5e4fd039;rport
> Route:
> <sip:113.113.113.99;lr=on;ftag=8d7a097f>,<sip:siphost.domain.com;lr>
> From:
> "0105140809"<sip:+45105140809 at 113.113.113.10;user=phone>;tag=as3102acd2
> To:
> "45123123123"<sip:+45123123123 at siphost.domain.com;user=phone>;tag=8d7a097f
> Call-ID: ODA4OTViYTRhNDU1Njg4MjE1OWEyY2I5MWMyZTk3MzM.
> CSeq: 102 BYE
> User-Agent: asterisk
> Max-Forwards: 70
> Content-Length: 0
> 
> //s
> 
> ----------------------------------------------------------------------
> 
> Comment By: Stefan Broddesson (broddesson)
> Date: 2008-09-11 15:08
> 
> Message:
> Hi Henning,
> 
> Please disregard that comment, about route(1), of mine...  was missing an
> "exit;" that wasn't missing.
> 
> Core dumps occur 100% of the time, on calee <bye>, if destination is
> siphost.domain.com instead of it's IP address.
> 
> //s
> 
> 
> ----------------------------------------------------------------------
> 
> Comment By: Henning Westerholt (henningw)
> Date: 2008-09-11 13:57
> 
> Message:
> Hi Stefan,
> 
> thanks for the coredumps, but they also show not that much interesting,
> unfortunally. Did i understand correctly that it crashes only if you do two
> "route(1)" in the script? How frequent does the crash then happens?
> 
> Cheers,
> 
> Henning
> 
> ----------------------------------------------------------------------
> 
> Comment By: Stefan Broddesson (broddesson)
> Date: 2008-09-11 07:25
> 
> Message:
> Haven't tried the 1.4 release yet.
> No proprietary modules, script profile is for LB/Dispatching, and Dialog
> module is not used.
> 
> Initially sip headers was search/replace'd for the occurances of theese
> host names, this also works, and 
> openser does not dump core. Of what you mention the restart of openser in
> between <invite> and <bye> haven't been tested. 
> 
> Tried both forward() and t_relay() and they both cause a core dump if any
> host name is found for the returning <bye>.
> 
> I do subscribe to the dev & users mailing list.
> Backtraces attached.
> //s
> File Added: OpenSER-1_3_3-svn_4779-bug_2102541_Backtraces.txt
> 
> ----------------------------------------------------------------------
> 
> Comment By: Stefan Broddesson (broddesson)
> Date: 2008-09-10 15:45
> 
> Message:
> Made it dump core with the additional startup params.
> 
> In all 21 files created. Will prepare a file, with backtraces, to upload.
> Expect it by tomorrow morning.
> 
> //s
> 
> ----------------------------------------------------------------------
> 
> Comment By: Nobody/Anonymous (nobody)
> Date: 2008-09-10 14:25
> 
> Message:
> not sure if I understand? you were calling route(1) (with t_relay())
> twice?
> 
> Yes, it shouldn't coredump anyway
> 
> ----------------------------------------------------------------------
> 
> Comment By: Stefan Broddesson (broddesson)
> Date: 2008-09-10 14:00
> 
> Message:
> Klaus,
> 
> Had a serial of 2 route(1)'s that caused this, first one now does exit;.
> Still would expect it would be absorbed without a coredump, right?
> 
>  do we still want to proceed with the coredump?
> 
> //s
> 
> ----------------------------------------------------------------------
> 
> Comment By: Nobody/Anonymous (nobody)
> Date: 2008-09-10 11:23
> 
> Message:
> hmmm - maybe multiple process crash and the cordeump gets overwritten by
> another coredump. I use the following config (in the init script) to have
> the PID in the core dump file name:
> 
>     # directory for the core dump files
>     COREDIR=/tmp
>     [ -d $COREDIR ] || mkdir $COREDIR
>     chmod 777 $COREDIR
>     echo "$COREDIR/openser.core.%e.sig%s.%p" >
> /proc/sys/kernel/core_pattern
> 
> Then start openser with debug=4.
> 
> In the logfile you should see which process segfaults first (if multiple
> segfault) to analyze the proper core.
> 
> Have you tried using 1.4 release?
> 
> Are you using any proprietary modules? How ar you handling the BYE (just
> loose_route() and t_relay()? Are you using the dialog module? What if you
> put the same domain as in the BYE into an INVITE - does it crash too? Does
> it also crash if you restart openser inbetween INV-200-ACK and BYE ?
> 
> Are you subscribed to an mailinglist? So we could move the discussion to
> the mailinglist.
> 
> klaus
> 
> ----------------------------------------------------------------------
> 
> Comment By: Stefan Broddesson (broddesson)
> Date: 2008-09-10 11:13
> 
> Message:
> Yes, it is easy to reproduce.
> If no replacement of hostname to IP is done, then it coredumps.
> 
> No other core files exist.
> -is there anything I could prep. the script with, flags to use a.s.o.?
> 
> //s
> 
> ----------------------------------------------------------------------
> 
> Comment By: Nobody/Anonymous (nobody)
> Date: 2008-09-10 10:43
> 
> Message:
> That does not show anything interesting. MAybe there is another core file
> from another openser process which acutally crashed?
> 
> Can you reproduce the crash?
> 
> ----------------------------------------------------------------------
> 
> Comment By: Stefan Broddesson (broddesson)
> Date: 2008-09-10 08:39
> 
> Message:
> ...on autopilot  ;-)  should have realised that.
> 
> here goes:
> 
> (gdb) bt
> #0  0x00002b11a1505145 in _dl_rtld_di_serinfo () from
> /lib64/ld-linux-x86-64.so.2
> #1  0x00002b11a185bb8d in exit () from /lib/libc.so.6
> #2  0x0000000000420e20 in handle_sigs () at main.c:522
> #3  0x0000000000424ec0 in main (argc=10274, argv=0x20) at main.c:919
> (gdb)
> 
> //s
> 
> ----------------------------------------------------------------------
> 
> Comment By: Nobody/Anonymous (nobody)
> Date: 2008-09-10 06:47
> 
> Message:
> my fault. please enter 'bt' without #
> (the # was meant to reflect the prompt of the gdb shell, but the gdb
> prompt is (gdb))
> 
> ----------------------------------------------------------------------
> 
> Comment By: Stefan Broddesson (broddesson)
> Date: 2008-09-09 22:36
> 
> Message:
> Hi Klaus!
> 
> Didn't include "# bt" output, since it was just a blank line...
> 
> Regards,
> Stefan 
> 
> ----------------------------------------------------------------------
> 
> Comment By: Stefan Broddesson (broddesson)
> Date: 2008-09-09 22:30
> 
> Message:
> OpenSER 1.3.3-notls (x86_64) openser_receiver_version_9460
> backtrace is:
> 
> GNU gdb 6.4.90-debian
> Copyright (C) 2006 Free Software Foundation, Inc.
> GDB is free software, covered by the GNU General Public License, and you
> are
> welcome to change it and/or distribute copies of it under certain
> conditions.
> Type "show copying" to see the conditions.
> There is absolutely no warranty for GDB.  Type "show warranty" for
> details.
> This GDB was configured as "x86_64-linux-gnu"...Using host libthread_db
> library "/lib/libthread_db.so.1".
> 
> 
> warning: Can't read pathname for load map: Input/output error.
> Reading symbols from /lib/libdl.so.2...done.
> Loaded symbols for /lib/libdl.so.2
> Reading symbols from /lib/libresolv.so.2...done.
> Loaded symbols for /lib/libresolv.so.2
> Reading symbols from /lib/libc.so.6...done.
> Loaded symbols for /lib/libc.so.6
> Reading symbols from /lib/ld-linux-x86-64.so.2...done.
> Loaded symbols for /lib64/ld-linux-x86-64.so.2
> Reading symbols from /usr/local/lib64/openser/modules/sl.so...done.
> Loaded symbols for /usr/local/lib64/openser/modules/sl.so
> Reading symbols from /usr/local/lib64/openser/modules/uri.so...done.
> Loaded symbols for /usr/local/lib64/openser/modules/uri.so
> Reading symbols from /usr/local/lib64/openser/modules/mi_fifo.so...done.
> Loaded symbols for /usr/local/lib64/openser/modules/mi_fifo.so
> Reading symbols from /usr/local/lib64/openser/modules/maxfwd.so...done.
> Loaded symbols for /usr/local/lib64/openser/modules/maxfwd.so
> Reading symbols from /usr/local/lib64/openser/modules/xlog.so...done.
> Loaded symbols for /usr/local/lib64/openser/modules/xlog.so
> Reading symbols from /usr/local/lib64/openser/modules/unixodbc.so...done.
> Loaded symbols for /usr/local/lib64/openser/modules/unixodbc.so
> Reading symbols from /usr/lib/libodbc.so.1...done.
> Loaded symbols for /usr/lib/libodbc.so.1
> Reading symbols from /usr/lib/libz.so.1...done.
> Loaded symbols for /usr/lib/libz.so.1
> Reading symbols from /usr/lib/libltdl.so.3...done.
> Loaded symbols for /usr/lib/libltdl.so.3
> Reading symbols from /lib/libpthread.so.0...done.
> Loaded symbols for /lib/libpthread.so.0
> Reading symbols from /usr/local/lib64/openser/modules/auth.so...done.
> Loaded symbols for /usr/local/lib64/openser/modules/auth.so
> Reading symbols from /usr/local/lib64/openser/modules/auth_db.so...done.
> Loaded symbols for /usr/local/lib64/openser/modules/auth_db.so
> Reading symbols from /usr/local/lib64/openser/modules/uri_db.so...done.
> Loaded symbols for /usr/local/lib64/openser/modules/uri_db.so
> Reading symbols from /usr/local/lib64/openser/modules/usrloc.so...done.
> Loaded symbols for /usr/local/lib64/openser/modules/usrloc.so
> Reading symbols from
> /usr/local/lib64/openser/modules/registrar.so...done.
> Loaded symbols for /usr/local/lib64/openser/modules/registrar.so
> Reading symbols from /usr/local/lib64/openser/modules/path.so...done.
> Loaded symbols for /usr/local/lib64/openser/modules/path.so
> Reading symbols from /usr/local/lib64/openser/modules/options.so...done.
> Loaded symbols for /usr/local/lib64/openser/modules/options.so
> Reading symbols from /usr/local/lib64/openser/modules/mangler.so...done.
> Loaded symbols for /usr/local/lib64/openser/modules/mangler.so
> Reading symbols from
> /usr/local/lib64/openser/modules/uac_redirect.so...done.
> Loaded symbols for /usr/local/lib64/openser/modules/uac_redirect.so
> Reading symbols from
> /usr/local/lib64/openser/modules/permissions.so...done.
> Loaded symbols for /usr/local/lib64/openser/modules/permissions.so
> Reading symbols from /usr/local/lib64/openser/modules/rr.so...done.
> Loaded symbols for /usr/local/lib64/openser/modules/rr.so
> Reading symbols from /usr/local/lib64/openser/modules/tm.so...done.
> Loaded symbols for /usr/local/lib64/openser/modules/tm.so
> Reading symbols from /usr/local/lib64/openser/modules/pike.so...done.
> Loaded symbols for /usr/local/lib64/openser/modules/pike.so
> Reading symbols from /usr/local/lib64/openser/modules/textops.so...done.
> Loaded symbols for /usr/local/lib64/openser/modules/textops.so
> Reading symbols from /usr/local/lib64/openser/modules/siptrace.so...done.
> Loaded symbols for /usr/local/lib64/openser/modules/siptrace.so
> Reading symbols from /lib/libnss_compat.so.2...done.
> Loaded symbols for /lib/libnss_compat.so.2
> Reading symbols from /lib/libnsl.so.1...done.
> Loaded symbols for /lib/libnsl.so.1
> Reading symbols from /lib/libnss_nis.so.2...done.
> Loaded symbols for /lib/libnss_nis.so.2
> Reading symbols from /lib/libnss_files.so.2...done.
> Loaded symbols for /lib/libnss_files.so.2
> Reading symbols from /usr/lib/gconv/ISO8859-1.so...done.
> Loaded symbols for /usr/lib/gconv/ISO8859-1.so
> Reading symbols from /usr/lib/odbc/libtdsodbc.so...done.
> Loaded symbols for /usr/lib64/odbc/libtdsodbc.so
> Reading symbols from /usr/lib/libodbcinst.so.1...done.
> Loaded symbols for /usr/lib/libodbcinst.so.1
> 
> warning: Can't read pathname for load map: Input/output error.
> Core was generated by `./openser -P /var/run/openser.pid -f
> /usr/local/etc/openser/dispatcher_x98.cfg'.
> Program terminated with signal 11, Segmentation fault.
> #0  0x00002b9860124145 in _dl_rtld_di_serinfo () from
> /lib64/ld-linux-x86-64.so.2
> 
> 
> 
> ----------------------------------------------------------------------
> 
> Comment By: Nobody/Anonymous (nobody)
> Date: 2008-09-09 21:24
> 
> Message:
> Hi Stefan!
> 
> Which version? Can you also please post a backtrack of the coredump?
>  1. gdb /usr/sbin/kamailio /path/to/core.file
>  2. # bt
> 
> thanks
> klaus
> 
> ----------------------------------------------------------------------
> 
> You can respond by visiting: 
> https://sourceforge.net/tracker/?func=detail&atid=743020&aid=2102541&group_id=139143
> 
> _______________________________________________
> Devel mailing list
> Devel at lists.kamailio.org
> http://lists.kamailio.org/cgi-bin/mailman/listinfo/devel



More information about the Devel mailing list