[Home]

Summary:ASTERISK-00769: dialing own number with cisco 12SP+/VIP30 causes segfault
Reporter:trogs (trogs)Labels:
Date Opened:2004-01-09 18:40:47.000-0600Date Closed:2011-06-07 14:01:05
Priority:CriticalRegression?No
Status:Closed/CompleteComponents:Core/General
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:
Description:If I dial my own extension with the cisco VIP30 it will cause a segfault in asterisk.
dialing out is fine, as is dialing in, but as soon as you dial your own extension it segfaults.
the asterisk log of the bug is below

****** ADDITIONAL INFORMATION ******

Asterisk Ready.
   -- Starting Skinny session from 10.64.0.111
Recieved AlarmMessage
Device SEP00500FFF511F is attempting to register
   -- Device 'blair' successfuly registered
Requesting capabilities
Version Request
Received CapabilitiesRes
Buttontemplate requested
Received Time/Date Request
   -- Starting simple switch on '120@blair'
Collected digit: [1]
   -- Asked to indicate 'Stop tone' condition on channel Skinny/120@blair-2
Collected digit: [2]
   -- Asked to indicate 'Stop tone' condition on channel Skinny/120@blair-2
Collected digit: [0]
   -- Executing Dial("Skinny/120@blair-2", "Skinny/120@blair") in new stack
Found device: blair
   -- skinny_request(120@blair)
   -- Skinny cw: 0, dnd: 0, so: 1, sno: 0
   -- skinny_call(Skinny/120@blair-1)
   -- Called 120@blair
   -- Asked to indicate 'Stop tone' condition on channel Skinny/120@blair-2
   -- Skinny/120@blair-1 is ringing
   -- Asked to indicate 'Remote end is ringing' condition on channel Skinny/120@blair-2
Recieved Open Recieve Channel Ack
Segmentation fault

relevant sections of config files are
--- skinny.conf---
[general]
port = 2000             ; Port to bind to, default tcp/2000
bindaddr = 0.0.0.0      ; Address to bind to
dateFormat = M-D-Y      ; M,D,Y in any order (5 chars max)
keepAlive = 120

[blair]
device=SEP00500FFF511F
context=default
line => 120

---extensions.conf---
[default]
include => demo
include => skinny

[skinny]
exten => 120,1,Dial(Skinny/120@blair)
Comments:By: muckl (muckl) 2004-01-10 01:17:46.000-0600

same with Cisco 7960 here

By: jerjer (jerjer) 2004-01-10 15:42:20.000-0600

bt anyone?

By: trogs (trogs) 2004-01-10 16:35:53.000-0600

-- Asked to indicate 'Remote end is ringing' condition on channel Skinny/120@blair-2
Recieved Open Recieve Channel Ack

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 229391 (LWP 21842)]
0x0807abdd in ast_rtp_set_peer (rtp=0x0, them=0xbddffa34) at rtp.c:774
774             rtp->them.sin_port = them->sin_port;
(gdb) bt
#0  0x0807abdd in ast_rtp_set_peer (rtp=0x0, them=0xbddffa34) at rtp.c:774
#1  0x405fa7ca in handle_message (req=0x811d678, s=0x80e38f0) at chan_skinny.c:2185
#2  0x405f89ec in skinny_session (data=0xbddffa24) at chan_skinny.c:2311
#3  0x40026e31 in pthread_start_thread () from /lib/libpthread.so.0
#4  0x40026eaf in pthread_start_thread_event () from /lib/libpthread.so.0

By: trogs (trogs) 2004-01-10 16:37:12.000-0600

(gdb) bt full
#0  0x0807abdd in ast_rtp_set_peer (rtp=0x0, them=0xbddffa34) at rtp.c:774
No locals.
#1  0x405fa7ca in handle_message (req=0x811d678, s=0x80e38f0) at chan_skinny.c:2185
       c = (struct ast_channel *) 0xbddffa24
       f = {frametype = 0, subclass = 0, datalen = 0, samples = 0, mallocd = 0, offset = 0, src = 0x0, data = 0x0,
 prev = 0x0, next = 0x0}
       sin = {sin_family = 2, sin_port = 50763, sin_addr = {s_addr = 1862287370}, sin_zero = "\\úß&ASTERISK-186;R=\025@"}
       us = {sin_family = 11536, sin_port = 16417, sin_addr = {s_addr = 1008}, sin_zero = "\0-!@\220\"!@"}
       lines = (struct skinny_line *) 0xbddffa24
       name = "\0-!@xÖ\021\b<úß&ASTERISK-186;Z}\002@"
       d = 0 '\0'
       digit = 135258408
       lineNumber = 135258408
       stimulus = 50763
       port = 0
       i = 0
       timer = 1073937652
       cmtime = (struct tm *) 0x0
       t = 0
       sub = (struct skinny_subchannel *) 0x80fe128
       sub = (struct skinny_subchannel *) 0x0
       sub = (struct skinny_subchannel *) 0xbddffa24
#2  0x405f89ec in skinny_session (data=0xbddffa24) at chan_skinny.c:2311
       res = 0
       req = (skinny_req *) 0x0
#3  0x40026e31 in pthread_start_thread () from /lib/libpthread.so.0
No symbol table info available.
#4  0x40026eaf in pthread_start_thread_event () from /lib/libpthread.so.0
No symbol table info available.

By: jerjer (jerjer) 2004-01-10 20:42:57.000-0600

It looks like RTP doesn't like assigning its own ip to be a peer.

By: trogs (trogs) 2004-01-10 22:10:34.000-0600

latest cvs backtrace ---

(gdb) bt full
#0  0x0807adcd in ast_rtp_set_peer (rtp=0x0, them=0xbddffa34) at rtp.c:774
No locals.
#1  0x405fb830 in handle_message (req=0x811dcf0, s=0x80e3920) at chan_skinny.c:2193
       c = (struct ast_channel *) 0xbddffa24
       f = {frametype = 0, subclass = 0, datalen = 0, samples = 0, mallocd = 0, offset = 0, src = 0x0, data = 0x0,
 prev = 0x0, next = 0x0}
       sin = {sin_family = 2, sin_port = 10316, sin_addr = {s_addr = 1862287370}, sin_zero = "\\úß&ASTERISK-186;R=\025@"}
       us = {sin_family = 11536, sin_port = 16417, sin_addr = {s_addr = 1008}, sin_zero = "\0-!@\220\"!@"}
       lines = (struct skinny_line *) 0xbddffa24
       name = "\0-!@ðÜ\021\b<úß&ASTERISK-186;Z}\002@"
       d = 0 '\0'
       digit = 135260352
       lineNumber = 135260352
       stimulus = 10316
       port = 0
       i = 0
       timer = 1073937652
       cmtime = (struct tm *) 0x0
       t = 0
       sub = (struct skinny_subchannel *) 0x80fe8c0
       sub = (struct skinny_subchannel *) 0x0
       sub = (struct skinny_subchannel *) 0xbddffa24
#2  0x405f99fc in skinny_session (data=0xbddffa24) at chan_skinny.c:2319
       res = 0
       req = (skinny_req *) 0x0
#3  0x40026e31 in pthread_start_thread () from /lib/libpthread.so.0
No symbol table info available.
#4  0x40026eaf in pthread_start_thread_event () from /lib/libpthread.so.0
No symbol table info available.

By: trogs (trogs) 2004-01-11 23:58:42.000-0600

latest cvs, still broken, different backtrace again

Recieved Open Recieve Channel Ack

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 229391 (LWP 5148)]
0x0807af6d in ast_rtp_set_peer (rtp=0x0, them=0xbddffa34) at rtp.c:774
774             rtp->them.sin_port = them->sin_port;
(gdb) bt full
#0  0x0807af6d in ast_rtp_set_peer (rtp=0x0, them=0xbddffa34) at rtp.c:774
No locals.
#1  0x405fb943 in handle_message (req=0x811e258, s=0x80e3a60) at chan_skinny.c:2200
       c = (struct ast_channel *) 0xbddffa24
       f = {frametype = 0, subclass = 0, datalen = 0, samples = 0, mallocd = 0, offset = 0, src = 0x0, data = 0x0,
 prev = 0x0, next = 0x0}
       sin = {sin_family = 2, sin_port = 10826, sin_addr = {s_addr = 1862287370}, sin_zero = "\\úß&ASTERISK-186;R=\025@"}
       us = {sin_family = 11536, sin_port = 16417, sin_addr = {s_addr = 1008}, sin_zero = "\0-!@\220\"!@"}
       lines = (struct skinny_line *) 0xbddffa24
       name = "\0-!@Xâ\021\b<úß&ASTERISK-186;Z}\002@"
       d = 0 '\0'
       digit = 135258840
       lineNumber = 135258840
       stimulus = 10826
       stimulusInstance = -1109394892
       port = 0
       i = 0
       timer = 1073937652
       cmtime = (struct tm *) 0x0
       t = 0
       sub = (struct skinny_subchannel *) 0x80fe2d8
       sub = (struct skinny_subchannel *) 0x0
       sub = (struct skinny_subchannel *) 0xbddffa24
#2  0x405f99fc in skinny_session (data=0xbddffa24) at chan_skinny.c:2325
       res = 0
       req = (skinny_req *) 0x0
#3  0x40026e31 in pthread_start_thread () from /lib/libpthread.so.0
No symbol table info available.
#4  0x40026eaf in pthread_start_thread_event () from /lib/libpthread.so.0
No symbol table info available.
(gdb)

By: trogs (trogs) 2004-01-12 01:27:44.000-0600

when I call the cisco and the reciever is off the hook, I see the same segfault
I'm calling it from x-lite

--extensions.conf---
[skinny]
exten => 120,1,Dial(Skinny/120@blair)
exten => 121,1,Dial(SIP/xlitemac,20,tr)
---sip.conf---
[general]
port = 5060
bindaddr = 0.0.0.0
context = default

[xlitemac]
type=friend
username=xlitemac
secret=password
host=dynamic
dtmfmode=inband
defaultip=10.64.0.2
context=default
callerid="xlitemac" <121>

-----

   -- Starting simple switch on '120@blair'
Jan 12 20:04:44 DEBUG[81926]: chan_sip.c:4035 check_user: Setting NAT on RTP to 0
Jan 12 20:04:44 DEBUG[81926]: chan_sip.c:567 __sip_ack: Stopping retransmission on '9A09CE50-44CD-11D8-B4BF-000A95CD4402@10.64.0.2' of Response 46924: Found
Jan 12 20:04:44 DEBUG[81926]: chan_sip.c:4035 check_user: Setting NAT on RTP to 0
Jan 12 20:04:44 DEBUG[81926]: chan_sip.c:5115 handle_request: Check for res for xlitemac
Jan 12 20:04:44 DEBUG[81926]: chan_sip.c:1001 find_user: Call from user 'xlitemac' is 1 out of 0
Jan 12 20:04:44 DEBUG[81926]: chan_sip.c:3428 build_route: build_route: Contact hop: <sip:xlitemac@10.64.0.2:5060>
[New Thread 278546 (LWP 10596)]
   -- Executing Dial("SIP/xlitemac-3e3c", "Skinny/120@blair") in new stack
Found device: blair
   -- skinny_request(120@blair)
   -- Skinny cw: 0, dnd: 0, so: 1, sno: 0
   -- skinny_call(Skinny/120@blair-1)
   -- Called 120@blair
   -- Skinny/120@blair-1 is ringing
Recieved Open Recieve Channel Ack

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 229391 (LWP 10589)]
0x0807af6d in ast_rtp_set_peer (rtp=0x0, them=0xbddffa34) at rtp.c:774
774             rtp->them.sin_port = them->sin_port;
(gdb) bt full
#0  0x0807af6d in ast_rtp_set_peer (rtp=0x0, them=0xbddffa34) at rtp.c:774
No locals.
#1  0x405fb943 in handle_message (req=0x8124498, s=0x80e3350) at chan_skinny.c:2200
       c = (struct ast_channel *) 0xbddffa24
       f = {frametype = 0, subclass = 0, datalen = 0, samples = 0, mallocd = 0, offset = 0, src = 0x0, data = 0x0,
 prev = 0x0, next = 0x0}
       sin = {sin_family = 2, sin_port = 44615, sin_addr = {s_addr = 1862287370}, sin_zero = "\\úß&ASTERISK-186;R=\025@"}
       us = {sin_family = 11536, sin_port = 16417, sin_addr = {s_addr = 1008}, sin_zero = "\0-!@\220\"!@"}
       lines = (struct skinny_line *) 0xbddffa24
       name = "\0-!@\230D\022\b<úß&ASTERISK-186;Z}\002@"
       d = 0 '\0'
       digit = 135258960
       lineNumber = 135258960
       stimulus = 44615
       stimulusInstance = -1109394892
       port = 0
       i = 0
       timer = 1073937652
       cmtime = (struct tm *) 0x0
       t = 0
       sub = (struct skinny_subchannel *) 0x80fe350
       sub = (struct skinny_subchannel *) 0x0
       sub = (struct skinny_subchannel *) 0xbddffa24
#2  0x405f99fc in skinny_session (data=0xbddffa24) at chan_skinny.c:2325
       res = 0
       req = (skinny_req *) 0x0
#3  0x40026e31 in pthread_start_thread () from /lib/libpthread.so.0
No symbol table info available.
#4  0x40026eaf in pthread_start_thread_event () from /lib/libpthread.so.0
No symbol table info available.

By: Brian West (bkw918) 2004-03-21 10:43:25.000-0600

If this is still a problem please respond and we will reopen