[Home]

Summary:ASTERISK-17379: bfin-uclinux-uclibc:TLS extension can not make calls
Reporter:timzc (timzc)Labels:
Date Opened:2011-02-09 21:08:01.000-0600Date Closed:2018-01-02 08:44:20.000-0600
Priority:MinorRegression?No
Status:Closed/CompleteComponents:Channels/chan_sip/TCP-TLS
Versions:1.8.2 Frequency of
Occurrence
Related
Issues:
Environment:Attachments:
Description:First,Please forgive me for my poor english.
Everything works well in ubuntu.
The extension can register but not make calls with TLS.
I think the problem is in function ssl_read() in main/tcptls.c.
static HOOK_T ssl_read(void *cookie, char *buf, LEN_T len)
{
       int i = SSL_read(cookie, buf, len-1);
#if 1
       if (i >= 0)
               buf[i] = '\0';
       ast_verb(0, "ssl read size %d returns %d <%s>\n", (int)len, i, buf);
#endif
       return i;
}

If len = 1,SSL_read() will get 0 bytes.


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

When I make calls.I get the debug info:

ssl read size 256 returns 255 <INVITE sip:501@192.168.5.222;transport=tls SIP/2.0
Via: SIP/2.0/TLS 192.168.5.34:1339;branch=z9hG4bK803f198d2a33e0118db70800276d6cb1;rport;alias
From: "PhonerLite" <sip:502@192.168.5.222>;tag=2300400859
To: <sip:501@192.168.5.222;transport=tls>
Call-I>
ssl read begin len = 256
ssl read size 256 returns 255 <D: 803F198D-2A33-E011-8DB6-0800276D6CB1@192.168.5.34
CSeq: 5 INVITE
Contact: <sip:502@192.168.5.34:1332;transport=tls>
Content-Type: application/sdp
Allow: INVITE, OPTIONS, ACK, BYE, CANCEL, INFO, NOTIFY, MESSAGE, UPDATE
Max-Forwards: 70
Supported: >
ssl read begin len = 256
ssl read size 256 returns 255 <100rel, replaces
User-Agent: SIPPER for PhonerLite
P-Preferred-Identity: <sip:502@192.168.5.222>
Content-Length:   395

v=0
o=- 2969245308 0 IN IP4 192.168.5.34
s=SIPPER for PhonerLite
c=IN IP4 192.168.5.34
t=0 0
m=audio 1333 RTP/AVP 8 0 2 3 97 >
ssl read size 265 returns 264 <110 111 9 101
a=rtpmap:8 PCMA/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:2 G726-32/8000
a=rtpmap:3 GSM/8000
a=rtpmap:97 iLBC/8000
a=rtpmap:110 speex/8000
a=rtpmap:111 speex/16000
a=rtpmap:9 G722/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
>=sendrecv
ssl read size 1 returns 0 <>

The last byte can not be read.
May be the implement of the function fread() is different in uClibc.
Comments:By: Leif Madsen (lmadsen) 2011-02-10 12:06:27.000-0600

Little-endian vs. Big-endian ?

By: timzc (timzc) 2011-02-10 20:10:35.000-0600

Little-endian

By: Joshua C. Colp (jcolp) 2017-12-19 07:10:44.418-0600

Is this still a problem under current supported versions of Asterisk?

By: Asterisk Team (asteriskteam) 2018-01-02 08:44:20.622-0600

Suspended due to lack of activity. This issue will be automatically re-opened if the reporter posts a comment. If you are not the reporter and would like this re-opened please create a new issue instead. If the new issue is related to this one a link will be created during the triage process. Further information on issue tracker usage can be found in the Asterisk Issue Guidlines [1].

[1] https://wiki.asterisk.org/wiki/display/AST/Asterisk+Issue+Guidelines