[asterisk-dev] [Code Review] No valid transports available, falling back to 'udp'
sean darcy
seandarcy2 at gmail.com
Wed Feb 15 19:08:07 CST 2012
On 02/15/2012 03:45 PM, wdoekes wrote:
> This is an automatically generated e-mail. To reply, visit:
> https://reviewboard.asterisk.org/r/1745/
>
>
>> However, somebody somewhere probably relies on current behaviour.. or?
>
> Since I already caused enough regressions on this one issue, I should probably suggest this:
>
> - tone down the warning in 1.8 and 10 and update the sip.conf.sample
> - implement this in trunk and note the changed behaviour of transport= in the changes doc
>
>
> - wdoekes
>
>
> On February 15th, 2012, 2:35 p.m., wdoekes wrote:
>
> Review request for Asterisk Developers.
> By wdoekes.
>
> /Updated Feb. 15, 2012, 2:35 p.m./
>
>
> Description
>
> In r347727 I introduced an extra warning for anyone who doesn't have any transport= set. This causes confusion, especially since that setting isn't in [general] in the sip.conf.sample.
>
> I could tone down the warning, but I'd rather fix it like this: only complain if transports= was supplied and ended up empty (because of invalid transports).
>
> However, I'd like to change the behaviour of the transport= option for that.
>
> Previously:
> transport=udp
> transport=tcp
> meant:
> transport=udp,tcp
>
> Which is odd, since other options don't behave like that (apart from allow/deny/permit/disallow). insecure=port and insecure=invite means insecure=invite and not the combination of the two.
>
> After this patch, it means:
> transport=tcp
>
> However, somebody somewhere probably relies on current behaviour.. or?
>
>
> Testing
>
> Tested that only the last transport= setting for [general] and for peers is used and that the warning is gone if no transport= is supplied in [general]. I didn't run the test-suite (yet).
>
> *Bugs: * ASTERISK-19352
> <https://issues.asterisk.org/jira/browse/ASTERISK-19352>
>
>
> Diffs
>
> * /branches/1.8/channels/chan_sip.c (355531)
>
> View Diff <https://reviewboard.asterisk.org/r/1745/diff/>
>
This issue comes up for me, at least, when some sip devices are using
tcp, while others use udp. As it stands, udp is the default, so I only
put transport= in those devices that use tcp.
So:
1. why do we need tcpenable at all in [general]? If any device has
transport=tcp, why isn't that enough to enable tcp?
2. transport= would only be for a device. [general] could have
transportdefault= (or some such) , which would itself default to udp.
I think this would be backwards compatible, just now tcpenable and
transport= in [general] would be a noops. If transport= wasn't
specified, it would default to udp (unless the default were changed).
sean
More information about the asterisk-dev
mailing list