[Serusers] re: CONTACT field malformed in a 302 reply

Jiri Kuthan jiri at iptel.org
Tue Mar 27 17:24:14 CEST 2007


Contact from SER is NOT malformed. It is 100% compliant to the RFC3261 spec
(see sections 20.10 and 25 of RFC 3261). in the grammar, contact expands
to name-addr|addr-spec, with addr-spec being URI. Exapmles in the addr-spec
for also appear throughout the spec. Thus I suggest that the softswitch
vendor makes himself familiar with this document. As a workaround you may
wish trying some manual tricks to form a reply which will make the UAC
equipment happy (append_to_reply).

-jiri

p.s. interestingly, gl_redirect must be your own feature, so if you developed
some extra SER code updating the way of generating Contacts in 3xx should not
be a big deal. I just occur to think that doing it in public SER doesn't make
much sense, because if there are multiple ways to do things in SIP, whichever you
choose, you will find someone who is silly enough only to accept the opposite
one :-)

At 20:57 26/03/2007, Jignesh Gandhi wrote:
>Hello,
>
>I am using SER as a redirect server.
>Recently I came across an issue where the 302 sent back by SER is
>not liked by a soft switch. Particularly , the format of the CONTACT 
>field according to the softswitch.. 
>
>Here is an excerpt of the 302 reply send back ...
>
>Session Initiation Protocol
>    Status-Line: SIP/2.0 302 MovedTemporarily
>        Status-Code: 302
>        Resent Packet: True
>        Suspected resend of frame: 73
>    Message Header
>        To: <<mailto:sip:12345 at 172.20.20.46>sip:12345 at 172.20.20.46>;tag=b27e1a1d33761e85846fc98f5f3a7e58.dfa5
>            SIP to address: <mailto:sip:12345 at 172.20.20.46>sip:12345 at 172.20.20.46
>            SIP tag: b27e1a1d33761e85846fc98f5f3a7e58.dfa5
>        From: <http://172.20.20.46>172.20.20.46<<mailto:sip:12345 at 172.20.20.46>sip:12345 at 172.20.20.46>;tag=161dda6e
>            SIP Display info: <http://172.20.20.46>172.20.20.46
>            SIP from address: <mailto:sip:12345 at 172.20.20.46>sip:12345 at 172.20.20.46
>            SIP tag: 161dda6e
>        Via: SIP/2.0/UDP <http://10.99.99.140:9585>10.99.99.140:9585;branch=z9hG4bK-d87543-730866470-1--d87543-;rport=9585
>        Call-ID: 95239a63f0347c53
>        CSeq: 1 INVITE
>        Contact: sip:12345 at 172.20.20.37:5060
>        Server: Sip EXpress router (0.8.14 (i386/linux))
>        Content-Length: 0
>        Warning: 392 <http://172.20.20.46:5060>172.20.20.46:5060 "Noisy feedback tells:  pid=9550 req_src_ip=<http://10.99.99.140>10.99.99.140 req_src_port=9585 in_uri=<mailto:sip:12345 at 172.20.20.46>sip:12345 at 172.20.20.46 out_uri=sip:12345 at 172.20.20.37:5060 via_cnt==1
>
>the softswitch is wanting the contact field with <sip:xxxx at xxx.xxx.xxx.xxx:5060> like a FROM or TO URI.
>
>Here is ser.cfg part that does the sl_send_reply();
>
>  # do a stateless redirect, if return code is correct
>    if (method=="INVITE")
>    {
>        xlog("L_INFO", "SourceIP <%is> \n");
>        xlog("L_INFO", "From-uri<%fu>, r-uri <%ru> \n");
>        if (!gl_redirect()) 
>        {
>            sl_send_reply("480", "TemporarilyUnavailable");
>            xlog("L_WARN", "Sending a 480 response with r-uri <%ru>\n");
>            break;
>        }
>        else
>        {
>            sl_send_reply("302", "MovedTemporarily");
>            xlog("L_DBG", "Sending a 302 response with r-uri <%ru>\n");
>            break; 
>        }
>    };
>
>Any help is appreciated. 
>
>
>thanks,
>-- 
>Jignesh Gandhi
><mailto:jigpgandhi at gmail.com>jigpgandhi at gmail.com 
>_______________________________________________
>Serusers mailing list
>Serusers at lists.iptel.org
>http://lists.iptel.org/mailman/listinfo/serusers



--
Jiri Kuthan            http://iptel.org/~jiri/




More information about the sr-users mailing list