[Kamailio-Users] Fwd: TLS Multiple records not read
Klaus Darilion
klaus.mailinglists at pernau.at
Mon Jan 25 09:43:49 CET 2010
Hi Jijo!
- Next time, please do not send a screenshot, but the pcap file (if it
would contain private data, send it privately)
- the screenshot shows the first message, but more interesting is the
second message
- which version of Kamailio do you use (kamailio -V)? You mentioned that
you compared the codebase between 1.4 and 1.1 - why? Doesn't 1.1 show
this behavior?
regards
Klaus
Jijo Jose schrieb:
>
> Thanks for the response.
>
> The SIP server is reading only the first record(first sip message), the
> _tls_read() function's log shows the length of first sip message which
> is matching with length of first record in wireshark.. This means
> SSL_read returns only the first record.
> I did the test using TCP which is working fine as it is reading two sip
> messages on a single read.
>
> Please find the log and attached print screen of wireshark traces.
>
>
> Jan 22 20:41:37 REGS-1a0240 openser[936]: io_wait_loop_sigio_rt:
> siginfo: signal=35 (35), si_code=1, si_band=0x41, si_fd=37
> Jan 22 20:41:37 REGS-1a0240 openser[936]: TCPCONN: handle_io: fd map
> 0x1011d73c (37): {37, 2, 0x30294da0}
> Jan 22 20:41:37 REGS-1a0240 openser[936]: tls_update_fd: New fd is 37
> Jan 22 20:41:37 REGS-1a0240 openser[936]: _tls_read: 559 bytes read
> Jan 22 20:41:37 REGS-1a0240 openser[936]: read= 559 bytes, parsed=559,
> state=4, error=1
> Jan 22 20:41:37 REGS-1a0240 openser[936]: tcp_read_req: last char=0x0A,
> parsed msg= BYE sip:551138175007 at 21.21.81.11:6061;transport=tls
> SIP/2.0^M To: SIP5007_TLS_SIMPLEX <sip:551138175007 at 41.41.0.230
> <mailto:sip%3A551138175007 at 41.41.0.230>>;tag=91c2c894c0^M From:
> <sip:551138175008 at 41.41.0.230:5061;transport=tls>;tag=snl_G84KdX4MLT^M
> Call-ID: 0ad3e453326a4160^M CSeq: 1 BYE^M Route:
> <sip:21.21.27.10:5061;transport=tls;ftag=91c2c894c0;lr=on>^M Via:
> SIP/2.0/TLS
> 41.41.0.230:5061;branch=z9hG4bK_brancha_41.41.0.230_KonTU5DMPx^M
> Accept-Language: en;q=0.0^M Allow: REGISTER, INVITE, ACK, BYE, CANCEL,
> NOTIFY, REFER^M Date: Fri, 22 Jan 2010 20:41:36 GMT ^M Max-Forwards:
> 69^M Content-Length: 0^M ^M
> Jan 22 20:41:37 REGS-1a0240 openser[936]: tcp_read_req: end of header part
> Jan 22 20:41:37 REGS-1a0240 openser[936]: - received from: port 5061
> Jan 22 20:41:37 REGS-1a0240 openser[936]: - received from: ip 41.41.0.230
> Jan 22 20:41:37 REGS-1a0240 openser[936]: tcp_read_req: headers: BYE
> sip:551138175007 at 21.21.81.11:6061;transport=tls SIP/2.0^M To:
> SIP5007_TLS_SIMPLEX <sip:551138175007 at 41.41.0.230
> <mailto:sip%3A551138175007 at 41.41.0.230>>;tag=91c2c894c0^M From:
> <sip:551138175008 at 41.41.0.230:5061;transport=tls>;tag=snl_G84KdX4MLT^M
> Call-ID: 0ad3e453326a4160^M CSeq: 1 BYE^M Route:
> <sip:21.21.27.10:5061;transport=tls;ftag=91c2c894c0;lr=on>^M Via:
> SIP/2.0/TLS
> 41.41.0.230:5061;branch=z9hG4bK_brancha_41.41.0.230_KonTU5DMPx^M
> Accept-Language: en;q=0.0^M Allow: REGISTER, INVITE, ACK, BYE, CANCEL,
> NOTIFY, REFER^M Date: Fri, 22 Jan 2010 20:41:36 GMT ^M Max-Forwards:
> 69^M Content-Length: 0^M ^M .
> Jan 22 20:41:37 REGS-1a0240 openser[936]: tcp_read_req: content-length= 0
> Jan 22 20:41:37 REGS-1a0240 openser[936]: tcp_read_req: body:
> Jan 22 20:41:37 REGS-1a0240 openser[936]: calling
> receive_msg(0x30294e14, 559, )
> Jan 22 20:41:37 REGS-1a0240 openser[936]: SIP Request:
> Jan 22 20:41:37 REGS-1a0240 openser[936]: method: <BYE>
> Jan 22 20:41:37 REGS-1a0240 openser[936]: uri:
> <sip:551138175007 at 21.21.81.11:6061;transport=tls>
> Jan 22 20:41:37 REGS-1a0240 openser[936]: version: <SIP/2.0>
>
> Thanks
> Jijo
>
>
>
> On Sun, Jan 24, 2010 at 5:53 AM, Klaus Darilion
> <klaus.mailinglists at pernau.at <mailto:klaus.mailinglists at pernau.at>> wrote:
>
> I would verify if the received fragment really contains 2 complete
> SIP messages (e.g. 2xCRLF at the end of the SIP headers and if
> Content-Length header is correct).
>
> For debugging, TLS is PITA.
>
> Maybe the SIP server shows the same behavior when using TCP.
> Otherwise you can try to configure the NULL:CIPHER on both servers -
> then you see the plaintext SIP message in the TLS packets.
>
> regards
> klaus
>
> Jijo Jose wrote:
>
> Hi All,
> We have a SIP server which enabled NAGLE algorithm and proxy as
> openser ver 1.1
> SIP Server send a TLS multiple records( 2 SIP messages) in a
> packet to openser. Openser is reading only the first record(
> first SIP message). The second TLS record(sip message) is read
> only when the next message recieved by openser from the SIP Server.
> I would like to know anybody observed this issue. I have
> compared the codebase of kamailio 1.4 and openser 1.1 but
> didin't find any diffrence for TLS.
> I have looked at the API _tls_read() in openser which is same
> as that of kamilio.
> Don't we need to use SSL_pending() after SSL_read() to verify
> any buffer is left in the SSL layer ?
> Do you think is it due to the poll method error? The poll
> method we use is POLL_SIGIO_RT
> Please let me know your comments.
> Thanks in advance.
> Jijo
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Kamailio (OpenSER) - Users mailing list
> Users at lists.kamailio.org <mailto:Users at lists.kamailio.org>
> http://lists.kamailio.org/cgi-bin/mailman/listinfo/users
> http://lists.openser-project.org/cgi-bin/mailman/listinfo/users
>
>
>
>
>
> ------------------------------------------------------------------------
>
More information about the sr-users
mailing list