[Serusers] MSRTC DLL Bug with SER

Jonathan jbcrisostomo at gmail.com
Wed Aug 18 10:54:01 UTC 2004


Yes, when i use UDP, SER sets the request-uri properly it seems (or i
don't know, maybe RTC does something that causes SER to recognize the
correct address). And still yes, UDP uses record_route. I've tried
removing record route and hence putting the two UAs in peer-to-peer
session.....and TCP did work fine this way.

But still, i have no idea why it shouldn't work with record_route
(TCP) while it does so with UDP. >_<;;

Here's another sample SIP Message capture, this time showing the UDP packets.


First, the UA that initiated the call sends a message
_______________________________________________________


#
U 192.168.10.42:4461 -> 192.168.10.38:5060
  MESSAGE sip:jon at gandalf.hq1.astra.ph SIP/2.0..Via: SIP/2.0/UDP
192.168.10.42:16054..Max-Forwards: 70..From: "adrian"
<sip:adrian at gandalf.hq1.astra.ph>;tag=ce10eb946c934f1f9c14812bd35adfa9;epid=90fbe8b22b..To:
<sip:jon at gandalf.hq1.astra.ph>.
  .Call-ID: bf67cf236e954ebda981f07d8f28b7dd at 192.168.10.42..CSeq: 1
MESSAGE..Contact: <sip:192.168.10.42:16054>..User-Agen
  t: RTC/1.2..Content-Type: text/enriched;
charset=UTF-8..Content-Length: 227...."My Message Here"
#
U 192.168.10.38:5060 -> 192.168.10.27:14412
  MESSAGE sip:192.168.10.27:14412 SIP/2.0..Record-Route:
<sip:jon at 192.168.10.38;ftag=ce10eb946c934f1f9c14812bd35adfa9;lr=o
  n>..Via: SIP/2.0/UDP
192.168.10.38;branch=z9hG4bKbaba.47427281.0..Via: SIP/2.0/UDP
192.168.10.42:16054..Max-Forwards: 69
  ..From: "adrian"
<sip:adrian at gandalf.hq1.astra.ph>;tag=ce10eb946c934f1f9c14812bd35adfa9;epid=90fbe8b22b..To:
<sip:jon at ga
  ndalf.hq1.astra.ph>..Call-ID:
bf67cf236e954ebda981f07d8f28b7dd at 192.168.10.42..CSeq: 1
MESSAGE..Contact: <sip:192.168.10.
  42:16054>..User-Agent: RTC/1.2..Content-Type: text/enriched;
charset=UTF-8..Content-Length: 227...."Message Here"
#
U 192.168.10.27:4671 -> 192.168.10.38:5060
  SIP/2.0 100 Trying..Via: SIP/2.0/UDP
192.168.10.38;branch=z9hG4bKbaba.47427281.0..Via: SIP/2.0/UDP
192.168.10.42:16054..
  From: "adrian"
<sip:adrian at gandalf.hq1.astra.ph>;tag=ce10eb946c934f1f9c14812bd35adfa9;epid=90fbe8b22b..To:
<sip:jon at gand
  alf.hq1.astra.ph>;tag=805b3c1efca340598f2b00bf297b58dd..Call-ID:
bf67cf236e954ebda981f07d8f28b7dd at 192.168.10.42..CSeq: 1
   MESSAGE..User-Agent: RTC/1.2..Content-Length: 0....
#
U 192.168.10.27:4671 -> 192.168.10.38:5060
  SIP/2.0 200 OK..Via: SIP/2.0/UDP
192.168.10.38;branch=z9hG4bKbaba.47427281.0..Via: SIP/2.0/UDP
192.168.10.42:16054..From
  : "adrian" <sip:adrian at gandalf.hq1.astra.ph>;tag=ce10eb946c934f1f9c14812bd35adfa9;epid=90fbe8b22b..To:
<sip:jon at gandalf.
  hq1.astra.ph>;tag=805b3c1efca340598f2b00bf297b58dd..Call-ID:
bf67cf236e954ebda981f07d8f28b7dd at 192.168.10.42..CSeq: 1 MES
  SAGE..Record-Route:
<sip:jon at 192.168.10.38;ftag=ce10eb946c934f1f9c14812bd35adfa9;lr=on>..Contact:
<sip:192.168.10.27:144
  12>..User-Agent: RTC/1.2..Content-Length: 0....
#
U 192.168.10.38:5060 -> 192.168.10.42:16054
  SIP/2.0 200 OK..Via: SIP/2.0/UDP 192.168.10.42:16054..From: "adrian"
<sip:adrian at gandalf.hq1.astra.ph>;tag=ce10eb946c934
  f1f9c14812bd35adfa9;epid=90fbe8b22b..To:
<sip:jon at gandalf.hq1.astra.ph>;tag=805b3c1efca340598f2b00bf297b58dd..Call-ID:
b
  f67cf236e954ebda981f07d8f28b7dd at 192.168.10.42..CSeq: 1
MESSAGE..Record-Route: <sip:jon at 192.168.10.38;ftag=ce10eb946c934f
  1f9c14812bd35adfa9;lr=on>..Contact:
<sip:192.168.10.27:14412>..User-Agent: RTC/1.2..Content-Length: 0....
#
_______________________________________________________


This one is the SIP messages from the other UA replying to the caller
_______________________________________________________

U 192.168.10.27:4671 -> 192.168.10.38:5060
  MESSAGE sip:jon at 192.168.10.38;ftag=ce10eb946c934f1f9c14812bd35adfa9;lr=on
SIP/2.0..Via: SIP/2.0/UDP 192.168.10.27:14412.
  .Max-Forwards: 70..From:
<sip:jon at gandalf.hq1.astra.ph>;tag=805b3c1efca340598f2b00bf297b58dd..To:
"adrian" <sip:adrian at g
  andalf.hq1.astra.ph>;tag=ce10eb946c934f1f9c14812bd35adfa9;epid=90fbe8b22b..Call-ID:
bf67cf236e954ebda981f07d8f28b7dd at 192
  .168.10.42..CSeq: 1 MESSAGE..Route:
<sip:192.168.10.42:16054>..Contact:
<sip:192.168.10.27:14412>..User-Agent: RTC/1.2..
  Content-Type: text/enriched; charset=UTF-8..Content-Length:
258...."Message here"

#
U 192.168.10.38:5060 -> 192.168.10.42:16054
  MESSAGE sip:192.168.10.42:16054 SIP/2.0..Record-Route:
<sip:jon at 192.168.10.38;ftag=805b3c1efca340598f2b00bf297b58dd;lr=o
  n>..Via: SIP/2.0/UDP
192.168.10.38;branch=z9hG4bKbaba.57427281.0..Via: SIP/2.0/UDP
192.168.10.27:14412..Max-Forwards: 69
  ..From: <sip:jon at gandalf.hq1.astra.ph>;tag=805b3c1efca340598f2b00bf297b58dd..To:
"adrian" <sip:adrian at gandalf.hq1.astra.
  ph>;tag=ce10eb946c934f1f9c14812bd35adfa9;epid=90fbe8b22b..Call-ID:
bf67cf236e954ebda981f07d8f28b7dd at 192.168.10.42..CSeq:
   1 MESSAGE..Contact: <sip:192.168.10.27:14412>..User-Agent:
RTC/1.2..Content-Type: text/enriched; charset=UTF-8..Content
  -Length: 258...."Message Here"

#
U 192.168.10.42:4461 -> 192.168.10.38:5060
  SIP/2.0 200 OK..Via: SIP/2.0/UDP
192.168.10.38;branch=z9hG4bKbaba.57427281.0..Via: SIP/2.0/UDP
192.168.10.27:14412..From
  : <sip:jon at gandalf.hq1.astra.ph>;tag=805b3c1efca340598f2b00bf297b58dd..To:
"adrian" <sip:adrian at gandalf.hq1.astra.ph>;ta
  g=ce10eb946c934f1f9c14812bd35adfa9;epid=90fbe8b22b..Call-ID:
bf67cf236e954ebda981f07d8f28b7dd at 192.168.10.42..CSeq: 1 MES
  SAGE..Contact: <sip:192.168.10.42:16054>..User-Agent:
RTC/1.2..Content-Length: 0....
#
U 192.168.10.38:5060 -> 192.168.10.27:14412
  SIP/2.0 200 OK..Via: SIP/2.0/UDP 192.168.10.27:14412..From:
<sip:jon at gandalf.hq1.astra.ph>;tag=805b3c1efca340598f2b00bf2
  97b58dd..To: "adrian"
<sip:adrian at gandalf.hq1.astra.ph>;tag=ce10eb946c934f1f9c14812bd35adfa9;epid=90fbe8b22b..Call-ID:
b
  f67cf236e954ebda981f07d8f28b7dd at 192.168.10.42..CSeq: 1
MESSAGE..Contact: <sip:192.168.10.42:16054>..User-Agent: RTC/1.2.
  .Content-Length: 0....

____________________________________________________

Let me know if you'd find something else about the TCP bug using
record_route. ^_^

Id really appreciate it. i'll see what i can do about the checking
module in rr.so but Im not sure my C skills are up to the task of
touching SER's modules, it's been many years since i last programmed
in C. ^_^;;

Thanks for the bits of information and help you gave. It made the issue clearer.


- Jonathan -




More information about the Serusers mailing list