Summary: | ASTERISK-01949: SIP 30X Reply (promicious redirect) fails with authentication on INVITE for Nikotel | ||
Reporter: | blackvel (blackvel) | Labels: | |
Date Opened: | 2004-07-05 07:46:57 | Date Closed: | 2011-06-07 14:10:46 |
Priority: | Minor | Regression? | No |
Status: | Closed/Complete | Components: | Core/General |
Versions: | Frequency of Occurrence | ||
Related Issues: | |||
Environment: | Attachments: | ||
Description: | This bug is related to Bug ID 730. Bug ASTERISK-724 has been closed because of not being a bug but being a missing feature. Mark has implemented into latest cvs head the promicious redirect (sip.conf peer section : promiscredir=yes). Unfortunately this aint working with Nikotel SIP 302 Moved temporarily redirect. I name this a bug because the user FROM header after the SIP 302 message is getting changed into something not usable. Therefore the authentication fails (on INVITE). ****** ADDITIONAL INFORMATION ****** Please see the sip debug: -- Going to extension s|1 because of immediate=yes -- Executing DISA("Zap/2-1", "no-password|default") in new stack -- Accepting call from '90' to 's' on channel 2, span 1 SIP Debugging Enabled *CLI> Jun 25 23:21:05 WARNING[278543]: cdr.c:287 ast_cdr_init: CDR already initialized on 'Zap/2-1' -- Executing SetCIDNum("Zap/2-1", "99846627XXXX") in new stack -- Executing Dial("Zap/2-1", "SIP/99228888XXXX@nikotel.de|30|r") in new stack We're at 212.144.202.70 port 11130 Answering with preferred capability 0x2(GSM) Answering with preferred capability 0x100(G729A) Answering with non-codec capability 0x1(G723) 12 headers, 11 lines Reliably Transmitting: INVITE sip:99228888XXXX@calamar0.nikotel.com SIP/2.0 Via: SIP/2.0/UDP 212.144.202.70:5060;branch=z9hG4bK46d63ebe;rport From: "99846627XXXX" <sip:myusername@nikotel.de>;tag=as216383c9 To: <sip:99228888XXXX@calamar0.nikotel.com> Contact: <sip:myusername@212.144.202.70> Call-ID: 3eab7ac27a2891231482afb47444e2d7@212.144.202.70 CSeq: 102 INVITE User-Agent: Asterisk PBX Date: Fri, 25 Jun 2004 21:21:05 GMT Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER Content-Type: application/sdp Content-Length: 243 v=0 o=root 9093 9093 IN IP4 212.144.202.70 s=session c=IN IP4 212.144.202.70 t=0 0 m=audio 11130 RTP/AVP 3 18 101 a=rtpmap:3 GSM/8000 a=rtpmap:18 G729/8000 a=rtpmap:101 telephone-event/8000 a=fmtp:101 0-16 a=silenceSupp:off - - - - (NAT) to 63.214.186.6:5060 -- Called 99228888XXXX@nikotel.de Sip read: SIP/2.0 100 Trying "Invite request is in progress" Via: SIP/2.0/UDP 212.144.202.70;branch=z9hG4bK46d63ebe From: "99846627XXXX" <sip:myusername@nikotel.de>;tag=as216383c9 To: <sip:99228888XXXX@calamar0.nikotel.com> CSeq: 102 INVITE Call-ID: 3eab7ac27a2891231482afb47444e2d7@212.144.202.70 Expires: 31 Content-Length: 0 8 headers, 0 lines Sip read: SIP/2.0 407 Proxy Authentication Required Via: SIP/2.0/UDP 212.144.202.70;branch=z9hG4bK46d63ebe From: "99846627XXXX" <sip:myusername@nikotel.de>;tag=as216383c9 To: <sip:99228888XXXX@calamar0.nikotel.com> CSeq: 102 INVITE Call-ID: 3eab7ac27a2891231482afb47444e2d7@212.144.202.70 Expires: 31 Proxy-Authenticate: Digest realm="nikotel.com", algorithm="MD5", nonce="fd5daee94f", qop="auth", opaque="fd5daee94ffd5daee94f" Content-Length: 0 9 headers, 0 lines Transmitting: ACK sip:99228888XXXX@calamar0.nikotel.com SIP/2.0 Via: SIP/2.0/UDP 212.144.202.70:5060;branch=z9hG4bK46d63ebe;rport From: "99846627XXXX" <sip:myusername@nikotel.de>;tag=as216383c9 To: <sip:99228888XXXX@calamar0.nikotel.com> Contact: <sip:myusername@212.144.202.70> Call-ID: 3eab7ac27a2891231482afb47444e2d7@212.144.202.70 CSeq: 102 ACK User-Agent: Asterisk PBX Content-Length: 0 (NAT) to 63.214.186.6:5060 We're at 212.144.202.70 port 11130 Answering with preferred capability 0x2(GSM) Answering with preferred capability 0x100(G729A) Answering with non-codec capability 0x1(G723) Reliably Transmitting: INVITE sip:99228888XXXX@calamar0.nikotel.com SIP/2.0 Via: SIP/2.0/UDP 212.144.202.70:5060;branch=z9hG4bK3e6b894d;rport From: "99846627XXXX" <sip:myusername@nikotel.de>;tag=as216383c9 To: <sip:99228888XXXX@calamar0.nikotel.com> Contact: <sip:myusername@212.144.202.70> Call-ID: 3eab7ac27a2891231482afb47444e2d7@212.144.202.70 CSeq: 103 INVITE User-Agent: Asterisk PBX Proxy-Authorization: Digest username="myusername", realm="nikotel.com", algorithm="MD5", uri="sip:99228888XXXX@calamar0.nikotel.com", nonce="fd5daee94f", response="969138e816a7bb541d14373d8402ad34", opaque="fd5daee94ffd5daee94f", qop="auth", cnonce="0768cf67", nc=00000001 Date: Fri, 25 Jun 2004 21:21:05 GMT Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER Content-Type: application/sdp Content-Length: 243 v=0 o=root 9093 9094 IN IP4 212.144.202.70 s=session c=IN IP4 212.144.202.70 t=0 0 m=audio 11130 RTP/AVP 3 18 101 a=rtpmap:3 GSM/8000 a=rtpmap:18 G729/8000 a=rtpmap:101 telephone-event/8000 a=fmtp:101 0-16 a=silenceSupp:off - - - - (NAT) to 63.214.186.6:5060 Sip read: SIP/2.0 100 Trying "Invite request is in progress" Via: SIP/2.0/UDP 212.144.202.70;branch=z9hG4bK3e6b894d From: "99846627XXXX" <sip:myusername@nikotel.de>;tag=as216383c9 To: <sip:99228888XXXX@calamar0.nikotel.com> CSeq: 103 INVITE Call-ID: 3eab7ac27a2891231482afb47444e2d7@212.144.202.70 Expires: 31 Content-Length: 0 8 headers, 0 lines Sip read: SIP/2.0 302 Moved Temporarily Via: SIP/2.0/UDP 212.144.202.70;branch=z9hG4bK3e6b894d From: "99846627XXXX" <sip:myusername@nikotel.de>;tag=as216383c9 To: <sip:99228888XXXX@calamar0.nikotel.com> CSeq: 103 INVITE Call-ID: 3eab7ac27a2891231482afb47444e2d7@212.144.202.70 Expires: 31 Content-Length: 0 Contact: <sip:aaaaa494060020XXXX@63.214.186.6:5060> 9 headers, 0 lines -- Got SIP response 302 "Moved Temporarily" back from 63.214.186.6 Transmitting: ACK sip:aaaaa494060020XXXX@63.214.186.6:5060 SIP/2.0 Via: SIP/2.0/UDP 212.144.202.70:5060;branch=z9hG4bK3e6b894d;rport From: "99846627XXXX" <sip:myusername@nikotel.de>;tag=as216383c9 To: <sip:99228888XXXX@calamar0.nikotel.com> Contact: <sip:myusername@212.144.202.70> Call-ID: 3eab7ac27a2891231482afb47444e2d7@212.144.202.70 CSeq: 103 ACK User-Agent: Asterisk PBX Content-Length: 0 ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- (NAT) to 63.214.186.6:5060 -- Now forwarding Zap/2-1 to 'SIP/aaaaa494060020XXXX@63.214.186.6:5060' (thanks to SIP/nikotel.de-f508) Destroying call '3eab7ac27a2891231482afb47444e2d7@212.144.202.70' We're at 212.144.202.70 port 12560 Answering with preferred capability 0x400(ILBC) Answering with preferred capability 0x2(GSM) Answering with preferred capability 0x100(G729A) Answering with non-codec capability 0x1(G723) 12 headers, 12 lines Reliably Transmitting: INVITE sip:aaaaa494060020XXXX@63.214.186.6 SIP/2.0 Via: SIP/2.0/UDP 212.144.202.70:5060;branch=z9hG4bK5a08b74e;rport From: "99846627XXXX" <sip:99846627XXXX@212.144.202.70>;tag=as65769874 To: <sip:aaaaa494060020XXXX@63.214.186.6> Contact: <sip:99846627XXXX@212.144.202.70> Call-ID: 6c410c7871b5f00454df98d4592b5b99@212.144.202.70 CSeq: 102 INVITE User-Agent: Asterisk PBX Date: Fri, 25 Jun 2004 21:21:06 GMT Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER Content-Type: application/sdp Content-Length: 269 v=0 o=root 9093 9093 IN IP4 212.144.202.70 s=session c=IN IP4 212.144.202.70 t=0 0 m=audio 12560 RTP/AVP 97 3 18 101 a=rtpmap:97 iLBC/8000 a=rtpmap:3 GSM/8000 a=rtpmap:18 G729/8000 a=rtpmap:101 telephone-event/8000 a=fmtp:101 0-16 a=silenceSupp:off - - - - (no NAT) to 63.214.186.6:5060 11 headers, 0 lines Reliably Transmitting: OPTIONS sip:63.214.186.6 SIP/2.0 Via: SIP/2.0/UDP 212.144.202.70:5060;branch=z9hG4bK4db81527;rport From: "asterisk" <sip:asterisk@212.144.202.70>;tag=as14ca4263 To: <sip:63.214.186.6> Contact: <sip:asterisk@212.144.202.70> Call-ID: 28decc6312656f8457a58e501b2ac16b@212.144.202.70 CSeq: 102 OPTIONS User-Agent: Asterisk PBX Date: Fri, 25 Jun 2004 21:21:06 GMT Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER Content-Length: 0 (no NAT) to 63.214.186.6:5060 Sip read: SIP/2.0 100 Trying "Invite request is in progress" Via: SIP/2.0/UDP 212.144.202.70;branch=z9hG4bK5a08b74e From: "99846627XXXX" <sip:99846627XXXX@212.144.202.70>;tag=as65769874 To: <sip:aaaaa494060020XXXX@63.214.186.6> CSeq: 102 INVITE Call-ID: 6c410c7871b5f00454df98d4592b5b99@212.144.202.70 Expires: 31 Content-Length: 0 8 headers, 0 lines 11 headers, 0 lines Reliably Transmitting: OPTIONS sip:63.214.186.6 SIP/2.0 Via: SIP/2.0/UDP 212.144.202.70:5060;branch=z9hG4bK3e925646;rport From: "asterisk" <sip:asterisk@212.144.202.70>;tag=as3db29a4f To: <sip:63.214.186.6> Contact: <sip:asterisk@212.144.202.70> Call-ID: 2edbe69826dbca4464719ec62091d69c@212.144.202.70 CSeq: 102 OPTIONS User-Agent: Asterisk PBX Date: Fri, 25 Jun 2004 21:21:06 GMT Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER Content-Length: 0 (no NAT) to 63.214.186.6:5060 Sip read: SIP/2.0 407 Proxy Authentication Required Via: SIP/2.0/UDP 212.144.202.70;branch=z9hG4bK5a08b74e From: "99846627XXXX" <sip:99846627XXXX@212.144.202.70>;tag=as65769874 To: <sip:aaaaa494060020XXXX@63.214.186.6> CSeq: 102 INVITE Call-ID: 6c410c7871b5f00454df98d4592b5b99@212.144.202.70 Expires: 31 Proxy-Authenticate: Digest realm="nikotel.com", algorithm="MD5", nonce="fd5daeedd7", qop="auth", opaque="fd5daeedd8fd5daeedd8" Content-Length: 0 9 headers, 0 lines Transmitting: ACK sip:aaaaa494060020XXXX@63.214.186.6 SIP/2.0 Via: SIP/2.0/UDP 212.144.202.70:5060;branch=z9hG4bK5a08b74e;rport From: "99846627XXXX" <sip:99846627XXXX@212.144.202.70>;tag=as65769874 To: <sip:aaaaa494060020XXXX@63.214.186.6> Contact: <sip:99846627XXXX@212.144.202.70> Call-ID: 6c410c7871b5f00454df98d4592b5b99@212.144.202.70 CSeq: 102 ACK User-Agent: Asterisk PBX Content-Length: 0 (no NAT) to 63.214.186.6:5060 We're at 212.144.202.70 port 12560 Answering with preferred capability 0x400(ILBC) Answering with preferred capability 0x2(GSM) Answering with preferred capability 0x100(G729A) Answering with non-codec capability 0x1(G723) Reliably Transmitting: INVITE sip:aaaaa494060020XXXX@63.214.186.6 SIP/2.0 Via: SIP/2.0/UDP 212.144.202.70:5060;branch=z9hG4bK392d00e2;rport From: "99846627XXXX" <sip:99846627XXXX@212.144.202.70>;tag=as65769874 To: <sip:aaaaa494060020XXXX@63.214.186.6> Contact: <sip:99846627XXXX@212.144.202.70> Call-ID: 6c410c7871b5f00454df98d4592b5b99@212.144.202.70 CSeq: 103 INVITE User-Agent: Asterisk PBX Proxy-Authorization: Digest username="", realm="nikotel.com", algorithm="MD5", uri="sip:aaaaa494060020XXXX@63.214.186.6", nonce="fd5daeedd7", response="95d36580978086babde3af83bd4dcf85", opaque="fd5daeedd8fd5daeedd8", qop="auth", cnonce="3d9cfa5f", nc=00000001 Date: Fri, 25 Jun 2004 21:21:06 GMT Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER Content-Type: application/sdp Content-Length: 269 v=0 o=root 9093 9094 IN IP4 212.144.202.70 s=session c=IN IP4 212.144.202.70 t=0 0 m=audio 12560 RTP/AVP 97 3 18 101 a=rtpmap:97 iLBC/8000 a=rtpmap:3 GSM/8000 a=rtpmap:18 G729/8000 a=rtpmap:101 telephone-event/8000 a=fmtp:101 0-16 a=silenceSupp:off - - - - (no NAT) to 63.214.186.6:5060 Sip read: SIP/2.0 100 Trying "Invite request is in progress" Via: SIP/2.0/UDP 212.144.202.70;branch=z9hG4bK392d00e2 From: "99846627XXXX" <sip:99846627XXXX@212.144.202.70>;tag=as65769874 To: <sip:aaaaa494060020XXXX@63.214.186.6> CSeq: 103 INVITE Call-ID: 6c410c7871b5f00454df98d4592b5b99@212.144.202.70 Expires: 31 Content-Length: 0 8 headers, 0 lines Sip read: SIP/2.0 407 Proxy Authentication Required "Account-user must match from-user" Via: SIP/2.0/UDP 212.144.202.70;branch=z9hG4bK392d00e2 From: "99846627XXXX" <sip:99846627XXXX@212.144.202.70>;tag=as65769874 To: <sip:aaaaa494060020XXXX@63.214.186.6> CSeq: 103 INVITE Call-ID: 6c410c7871b5f00454df98d4592b5b99@212.144.202.70 Expires: 31 Content-Length: 0 8 headers, 0 lines Transmitting: ACK sip:aaaaa494060020XXXX@63.214.186.6 SIP/2.0 Via: SIP/2.0/UDP 212.144.202.70:5060;branch=z9hG4bK392d00e2;rport From: "99846627XXXX" <sip:99846627XXXX@212.144.202.70>;tag=as65769874 To: <sip:aaaaa494060020XXXX@63.214.186.6> Contact: <sip:99846627XXXX@212.144.202.70> Call-ID: 6c410c7871b5f00454df98d4592b5b99@212.144.202.70 CSeq: 103 ACK User-Agent: Asterisk PBX Content-Length: 0 (no NAT) to 63.214.186.6:5060 Jun 25 23:21:07 NOTICE[49156]: chan_sip.c:6227 handle_response: Failed to authenticate on INVITE to '"99846627XXXX" <sip:99846627XXXX@212.144.202.70>;tag=as65769874' Destroying call '6c410c7871b5f00454df98d4592b5b99@212.144.202.70' == No one is available to answer at this time -- Executing Congestion("Zap/2-1", "") in new stack 11 headers, 0 lines Reliably Transmitting: OPTIONS sip:63.214.186.6 SIP/2.0 Via: SIP/2.0/UDP 212.144.202.70:5060;branch=z9hG4bK64b881b9;rport From: "asterisk" <sip:asterisk@212.144.202.70>;tag=as1e55dadd To: <sip:63.214.186.6> Contact: <sip:asterisk@212.144.202.70> Call-ID: 7dc2fe8275eae28049f6d64e55688cd2@212.144.202.70 CSeq: 102 OPTIONS User-Agent: Asterisk PBX Date: Fri, 25 Jun 2004 21:21:07 GMT Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER Content-Length: 0 (no NAT) to 63.214.186.6:5060 11 headers, 0 lines Reliably Transmitting: OPTIONS sip:63.214.186.6 SIP/2.0 Via: SIP/2.0/UDP 212.144.202.70:5060;branch=z9hG4bK4821b391;rport From: "asterisk" <sip:asterisk@212.144.202.70>;tag=as79a01fe9 To: <sip:63.214.186.6> Contact: <sip:asterisk@212.144.202.70> Call-ID: 5d58f56f531bd4556b9e2ea741ca9435@212.144.202.70 CSeq: 102 OPTIONS User-Agent: Asterisk PBX Date: Fri, 25 Jun 2004 21:21:07 GMT Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER Content-Length: 0 (no NAT) to 63.214.186.6:5060 | ||
Comments: | By: blackvel (blackvel) 2004-07-05 08:16:22 Yes, I have already been using insecure=very in sip.conf peer definition. Also I have added a peer section of [63.214.186.6] in sip.conf for the nikotel gateway. Both DO NOT resolv the message: authentication failed on INVITE since the from header is totally wrong :) By: Brian West (bkw918) 2004-07-05 19:18:43 have you trid to set fromdomain and fromuser to correct the header? By: blackvel (blackvel) 2004-07-06 07:04:24 this is my sip.conf, fromdomain and fromuser is set. [nikotel.de] type=friend username=username secret=***** host=calamar0.nikotel.com fromuser=username fromdomain=nikotel.de nat=yes ;dtmfband=inband context=default canreinvite=no insecure=very promiscredir=yes qualify=yes disallow=all allow=g729 allow=gsm [63.214.186.6] type=friend username=username secret=***** host=calamar0.nikotel.com fromuser=username fromdomain=nikotel.de nat=yes ;dtmfband=inband context=default canreinvite=no insecure=very promiscredir=yes qualify=yes disallow=all allow=g729 allow=gsm [calamar0.nikotel.com] type=friend username=username secret=***** host=calamar0.nikotel.com fromuser=username fromdomain=nikotel.de nat=yes ;dtmfband=inband context=default canreinvite=no insecure=very qualify=yes insecure=very disallow=all allow=g729 allow=gsm I get the feeling that for the 2nd INVITE that peer options won't be used even I have set up the nikotel gateway IP in sip.conf as [63.214.186.6]. When I don't use promisredir but instead doing a direct IP call to username@calamar0.nikotel.com (this is because I have [calamar0.nikotel.com] defined), it is working great and fromuser and fromdomain will be used. By: Mark Spencer (markster) 2004-07-07 10:42:29 Basically if you look at what is in the REFER, the address it sends us to, when asterisk calls it, it dials it EXACTLY as is, just putting SIP/ in front of it. Therefore asterisk should handle authentication and so on EXACTLY as if you actually dialed SIP/<whatever> directly. If you can fix the authentication for SIP/<whatever> then a redirect to the same place will work. By: blackvel (blackvel) 2004-07-07 10:56:34 Sorry, I don't get you Mark. I get forwarded from sip:99228888XXXX@calamar0.nikotel.com to aaaaa494060020XXXX@63.214.186.6. This is fine! As you can see in the output after 302: -- Now forwarding Zap/2-1 to 'SIP/aaaaa494060020XXXX@63.214.186.6:5060' (thanks to SIP/nikotel.de-f508) this will be sent according to sip debug: Reliably Transmitting: INVITE sip:aaaaa494060020XXXX@63.214.186.6 SIP/2.0 Via: SIP/2.0/UDP 212.144.202.70:5060;branch=z9hG4bK5a08b74e;rport From: "99846627XXXX" <sip:99846627XXXX@212.144.202.70>;tag=as65769874 To: <sip:aaaaa494060020XXXX@63.214.186.6> As you can see the contact address is very fine but my From: address has been changed from From: "99846627XXXX" <sip:myusername@nikotel.de to From: "99846627XXXX" <sip:99846627XXXX@212.144.202.70 Can you please explain to me as a non-SIP-RFC Guru what a REFER is, how a REFER debug output looks like (I don't see any refer output in sip debugging ???) and maybe what is going wrong. Where is the place (method, surrounding lines) for me to fix it ? :) As you tell me you take it as you get the REFER back, this is a Nikotel problem sending Asterisk the wrong REFER with the wrong FROM address ? Have I understood the problem in the right direction (my english is not that perfect, so I'm struggeling in understanding you). By: Mark Spencer (markster) 2004-07-07 12:10:04 It looks like it's going to take some more analysis to figure out what's going on. It does not appear to be honoring fromuser. Can you confirm that when you call: SIP/aaaaa494060020XXXX@63.214.186.6 That things work as you expect them to? Mark By: blackvel (blackvel) 2004-07-07 13:49:44 I have tested this with my two [] entries from sip.conf. It is working for calamar0.nikotel.com and also for [63.213.186.6] so I was calling SIP/aaaaa494060020XXXX@63.214.186.6. It rings and I could even speak. So peer entry + fromuser will be used if there is no redirect. By: Mark Spencer (markster) 2004-07-08 07:41:54 I'm still not convinced this isn't a configuration issue. Find me on IRC and lets see if we can work through it. By: Olle Johansson (oej) 2004-07-16 13:49:07 Any updates on this? Still a problem? Any contact on IRC? /Housekeeping By: blackvel (blackvel) 2004-07-17 08:25:01 No yet. Maybe it would be better to define a fixed time where we should speak. I am sitting in germany and timezone differences seem to be actually the problem. Also, you could easily test Nikotel by getting a cost free account at www.nikotel.com, define yourself for your username a 99XXXXXXXXXX number and call any Nikotel user from online list :) But of course, I don't expect this from since it is my problem (but also for others). It's fine if you would like to talk with me on IRC, but I guess that it will be not possible for us to catch ourself on IRC :) By: Mark Spencer (markster) 2004-07-17 20:18:53 Fixed -- we have to leave the port number off when looking for a peer. By: Mark Spencer (markster) 2004-09-17 00:06:53 The 302 moved points you to: sip:monsterhase65@63.214.186.6:5060 Therefore you would need the correct authentication information in the section titled [63.214.186.6] and not just in the original one. Please find someone on IRC, this is not a bug. Mark By: Digium Subversion (svnbot) 2008-01-15 15:02:54.000-0600 Repository: asterisk Revision: 3466 U trunk/channels/chan_sip.c ------------------------------------------------------------------------ r3466 | markster | 2008-01-15 15:02:53 -0600 (Tue, 15 Jan 2008) | 2 lines Don't consider port number in name of peer in create_addr (bug ASTERISK-1949) ------------------------------------------------------------------------ http://svn.digium.com/view/asterisk?view=rev&revision=3466 By: Digium Subversion (svnbot) 2008-01-15 15:05:53.000-0600 Repository: asterisk Revision: 3662 U trunk/apps/app_dial.c U trunk/channels/chan_sip.c ------------------------------------------------------------------------ r3662 | markster | 2008-01-15 15:05:52 -0600 (Tue, 15 Jan 2008) | 2 lines When detecting a hairpin, redirect to the appropriate local extension (bug ASTERISK-1949) ------------------------------------------------------------------------ http://svn.digium.com/view/asterisk?view=rev&revision=3662 |