ictzhanglei / telepresence

Automatically exported from code.google.com/p/telepresence
0 stars 0 forks source link

telepresence crash on INFO message #7

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
I'm try to use telepresence rev #130.
I call test room from linphone and got an coredump:

Console and gdb log:

RECV:INFO sip:test@xx.xx.xx.18:5070;transport=udp SIP/2.0
Via: SIP/2.0/UDP 192.168.53.4:5071;rport;branch=z9hG4bK13872
From: <sip:3100@192.168.53.4:5071>;tag=17900
To: "test" <sip:test@xx.xx.xx.18:5070>;tag=1578128240
Call-ID: 9750
CSeq: 21 INFO
Contact: <sip:3100@192.168.53.4:5071>
Content-Type: application/media_control+xml
Max-Forwards: 70
User-Agent: Linphone/3.6.1 (eXosip2/3.6.0)
Content-Length:   185

<?xml version="1.0" encoding="utf-8" ?><media_control>  <vc_primitive>    
<to_encoder>      <picture_fast_update></picture_fast_update>    </to_encoder>  
</vc_primitive></media_control>

*INFO: State machine: tsip_transac_nist_Started_2_Trying_X_request
*INFO: State machine: x0000_Any_2_Any_X_iINFO
*INFO: State machine: tsip_transac_nist_Trying_2_Completed_X_send_200_to_699
*INFO:

SEND: SIP/2.0 200 Ok
Via: SIP/2.0/UDP 
192.168.53.4:5071;rport=49348;received=xx.xx.xx.xx;branch=z9hG4bK13872
From: <sip:3100@192.168.53.4:5071>;tag=17900
To: "test"<sip:test@xx.xx.xx.18:5070>;tag=1578128240
Contact: <sip:test@xx.xx.xx.18:5070;transport=udp>
Call-ID: 9750
CSeq: 21 INFO
Content-Length: 0

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 80460a740 (LWP 100225/telepresence)]
0x0000000803108607 in strlen () from /lib/libc.so.7
(gdb)bt
#0  0x0000000803108607 in strlen () from /lib/libc.so.7
#1  0x0000000803101262 in open () from /lib/libc.so.7
#2  0x00000008031022c9 in open () from /lib/libc.so.7
#3  0x00000008031023fc in vfprintf () from /lib/libc.so.7
#4  0x00000008030f3eb8 in fprintf () from /lib/libc.so.7
#5  0x000000000043cca9 in OTSipSessionAV::handleIncomingData (
    this=0x804be5d30, pcContentType=Variable "pcContentType" is not available.
) at source/OTWrap.cc:172
#6  0x000000000043ff66 in OTSipCallback::OnInviteEvent (this=Variable "this" is 
not available.
)
    at source/OTWrap.cc:526
#7  0x000000000047cc10 in stack_callback (sipevent=0x8055ff2e0)
    at tinywrap/SipStack.cxx:504
#8  0x0000000800abc04c in run () from /usr/local/lib/libtinySIP.so.0
#9  0x000000080409f511 in pthread_getprio () from /lib/libthr.so.3
#10 0x0000000000000000 in ?? ()
Error accessing memory address 0x7ffffeff9000: Bad address.

(gdb) bt full
#0  0x0000000803108607 in strlen () from /lib/libc.so.7
No symbol table info available.
#1  0x0000000803101262 in open () from /lib/libc.so.7
No symbol table info available.
#2  0x00000008031022c9 in open () from /lib/libc.so.7
No symbol table info available.
#3  0x00000008031023fc in vfprintf () from /lib/libc.so.7
No symbol table info available.
#4  0x00000008030f3eb8 in fprintf () from /lib/libc.so.7
No symbol table info available.
#5  0x000000000043cca9 in OTSipSessionAV::handleIncomingData (
    this=0x804be5d30, pcContentType=Variable "pcContentType" is not available.
) at source/OTWrap.cc:172
        root = {static null = {
    static null = <same as static member of an already seen type>,
    static minLargestInt = -9223372036854775808,
    static maxLargestInt = 9223372036854775807,
    static maxLargestUInt = 18446744073709551615, static minInt = -2147483648,
    static maxInt = 2147483647, static maxUInt = 4294967295,
    static minInt64 = -9223372036854775808,
    static maxInt64 = 9223372036854775807,
    static maxUInt64 = 18446744073709551615, value_ = {int_ = 0, uint_ = 0,
      real_ = 0, bool_ = false, string_ = 0x0, map_ = 0x0},
    type_ = Json::nullValue, allocated_ = 0, comments_ = 0x0},
  static minLargestInt = -9223372036854775808,
  static maxLargestInt = 9223372036854775807,
  static maxLargestUInt = 18446744073709551615, static minInt = -2147483648,
  static maxInt = 2147483647, static maxUInt = 4294967295,
  static minInt64 = -9223372036854775808,
  static maxInt64 = 9223372036854775807,
  static maxUInt64 = 18446744073709551615, value_ = {int_ = 140737471548352,
    uint_ = 140737471548352, real_ = 6.9533549774600591e-310, bool_ = 192,
    string_ = 0x7ffffeff8bc0 "\020▒▒\004\b", map_ = 0x7ffffeff8bc0},
  type_ = 48, allocated_ = -1, comments_ = 0x7ffffeff8db0}
        reader = {nodes_ = {
    c = {<std::_Deque_base<Json::Value*,std::allocator<Json::Value*> >> = {
        _M_impl = {<std::allocator<Json::Value*>> = {<__gnu_cxx::new_allocator<Json::Value*>> = {<No data fields>}, <No data fields>}, _M_map = 0x8005d0d88,
          _M_map_size = 16, _M_start = {_M_cur = 0x804bf8940,
            _M_first = 0x803096f69, _M_last = 0x8005d80b0,
            _M_node = 0x200000}, _M_finish = {_M_cur = 0x1000,
            _M_first = 0x80460a740, _M_last = 0x804bf89c0,
            _M_node = 0x7ffffd3eb000}}}, <No data fields>}},
  errors_ = {<std::_Deque_base<Json::Reader::ErrorInfo,std::allocator<Json::Reader::ErrorInfo> >> = {
      _M_impl = {<std::allocator<Json::Reader::ErrorInfo>> = {<__gnu_cxx::new_allocator<Json::Reader::ErrorInfo>> = {<No data fields>}, <No data fields>},
        _M_map = 0x201000, _M_map_size = 34427510548, _M_start = {
          _M_cur = 0x804a24b60, _M_first = 0x0, _M_last = 0x804bf8940,
          _M_node = 0x8040a89d1}, _M_finish = {_M_cur = 0x42d020,
          _M_first = 0x0, _M_last = 0x0, _M_node = 0x0}}}, <No data fields>},
  document_ = {static npos = 18446744073709551615,
    _M_dataplus = {<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data fields>}, <No data fields>}, _M_p = 0x7ffffeff8ac0 "\220▒Z"}},
  begin_ = 0x0, end_ = 0x804a00558 "\0010▒\004\b",
  current_ = 0x38 <Error reading address 0x38: Bad address>,
  lastValueEnd_ = 0x5ae590 "\220▒Z", lastValue_ = 0x38, commentsBefore_ = {
    static npos = 18446744073709551615,
    _M_dataplus = {<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data fields>}, <No data fields>},
      _M_p = 0x1 <Error reading address 0x1: Bad address>}}, features_ = {
    allowComments_ = false, strictRoot_ = false}, collectComments_ = false}
        parsingSuccessful = Variable "parsingSuccessful" is not available.
(gdb)

Original issue reported on code.google.com by YuriSalt...@gmail.com on 19 Sep 2013 at 10:41

GoogleCodeExporter commented 9 years ago
I think in this line:
OT_DEBUG_ERROR("%s not supported content type");
missing argument for '%s'

Original comment by YuriSalt...@gmail.com on 19 Sep 2013 at 10:45

GoogleCodeExporter commented 9 years ago
Fixed
https://code.google.com/p/telepresence/source/detail?r=131

Original comment by boss...@yahoo.fr on 19 Sep 2013 at 11:20