No subject
Fri Mar 15 02:20:01 CDT 2013
====================
register => tls://dbt:1234@dbt
[dbt]
type=peer
host=192.168.88.44
username=dbt
defaultuser=dbt
secret=1234
transport=tls
context=doug
disallow=all
allow=ulaw
directmedia=no
Error encountered:
==================
[Jun 26 10:43:47] ERROR[9054]: chan_sip.c:5342 create_addr_from_peer: 'UDP' is not a valid transport for 'dbt'. we only use 'TLS'! ending call.
[Jun 26 10:43:47] WARNING[9054]: chan_sip.c:13524 transmit_register: Probably a DNS error for registration to dbt at dbt, trying REGISTER again (after 20 seconds)
If I make the following change, the register statement succeeds:
--- channels/chan_sip.c (revision 392897)
+++ channels/chan_sip.c (working copy)
@@ -13484,7 +13484,11 @@
ast_log(LOG_WARNING, "Unable to allocate registration transaction (memory or socket error)\n");
return 0;
}
-
+ if (SIP_TRANSPORT_TLS == r->transport || SIP_TRANSPORT_TCP == r->transport ) {
+ p->socket.type = r->transport;
+ }
+
This occurs both in 1.8.15-cert2 and in the tip of the 1.8 branch.
> SIP TLS Register statement fails if sip.conf register directive uses peer name.
> --------------------------------------------------------------------------------
>
> Key: ASTERISK-21964
> URL: https://issues.asterisk.org/jira/browse/ASTERISK-21964
> Project: Asterisk
> Issue Type: Bug
> Security Level: None
> Components: Channels/chan_sip/Registration
> Affects Versions: 1.8.22.0
> Reporter: Doug Bailey
>
> I am using 1.8.15-cert2 and have been testing some TLS functionality. When I set a register statement that specifies TLS and uses the peer name as the target address in the register statement, I get an error and the register request never goes out.
> The problem occurs due to a create_addr failing in transmit_register due to an allocated dialog's socket being set to UDP while the sip_registry indicates only TLS transport.
> The register statement works if I explicitly specify the IP address in the sip.conf register statement.
> From sip.conf
> {noformat}
> register => tls://dbt:1234@dbt
> [dbt]
> type=peer
> host=192.168.88.44
> username=dbt
> defaultuser=dbt
> secret=1234
> transport=tls
> context=doug
> disallow=all
> allow=ulaw
> directmedia=no
> {noformat}
> Error encountered:
> {noformat}
> [Jun 26 10:43:47] ERROR[9054]: chan_sip.c:5342 create_addr_from_peer: 'UDP' is not a valid transport for 'dbt'. we only use 'TLS'! ending call.
> [Jun 26 10:43:47] WARNING[9054]: chan_sip.c:13524 transmit_register: Probably a DNS error for registration to dbt at dbt, trying REGISTER again (after 20 seconds)
> {noformat}
> If I make the following change, the register statement succeeds:
> {noformat}
> --- channels/chan_sip.c (revision 392897)
> +++ channels/chan_sip.c (working copy)
> @@ -13484,7 +13484,11 @@
> ast_log(LOG_WARNING, "Unable to allocate registration transaction (memory or socket error)\n");
> return 0;
> }
> -
> + if (SIP_TRANSPORT_TLS == r->transport || SIP_TRANSPORT_TCP == r->transport ) {
> + p->socket.type = r->transport;
> + }
> +
> {noformat}
> This occurs both in 1.8.15-cert2 and in the tip of the 1.8 branch.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.asterisk.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the asterisk-bugs
mailing list