[asterisk-dev] More T38 questions/fixes

Dan Austin Dan_Austin at Phoenix.com
Thu Nov 23 11:07:24 MST 2006


Olle wrote:
> 22 nov 2006 kl. 20.57 skrev Dan Austin:

>> A bug reporter no Mantis noticed that T38 would not work
>> for a peer unless support was enabled in both the general
>> and iser/peer section of the config.

> It's the same as video. We will have to add a comment to 
> this in the configuration file, like I did with video. You 
> need to enable it globally and disable it for those peers 
> that don't want support.
I think that is an acceptable workaround/requirement for 1.4

> To change this, we need an architecture change that I think
> won't happen in 1.4.
Agreed.  

>> While digging through
>> the way flags are set/checked/copied I noticed this in
>> sip_alloc():
>>
>> if (ast_test_flag(&p->flags[1], SIP_PAGE2_T38SUPPORT))
>>    p->udptl = ast_udptl_new_with_bindaddr(sched, io, 0,
>> bindaddr.sin_addr);
>>
>> Support for RTP and TCP passthrough of T38 is not complete, 
>> but won't the code above always setup T38 on UDPTL if any T38
>> passthrough options are set?
>>
>Yes, but if it's disabled for a peer/user, we will not allocate the  
> udptl socket. Exactly as video.

This question was more about future enhancements.  There is code
in chan_sip for T38 over RTP and TCP.  It is clearly not complete
and ifdef'd out.

The three T38 options use these flags:
SIP_PAGE2_T38SUPPORT_UDTPL
SIP_PAGE2_T38SUPPORT_RTP
SIP_PAGE2_T38SUPPORT_TCP

The section of code above only tests for SIP_PAGE2_T38SUPPORT, which
Will match any of the three flags and always setup UDPTL.

What I should have said more directly is that the test most likely
should be for SIP_PAGE2_T38SUPPORT_UDPTL specifically.  Today it
doesn't really matter, but if someone make progress on the other
two methods this test might trip them up for a bit.

Thanks,
Dan
>
/O


More information about the asterisk-dev mailing list