< Previous by Date Date Index Next by Date >
< Previous in Thread Thread Index  

Re: [reSIProcate] How do I change the order of SIP headers?


The order of the headers in the class Headers defined in
HeaderTypes.hxx specifies the output order of the headers on the wire.

Jason


On 8/18/05, Chris Rigg <cdrigg@xxxxxxxxxxx> wrote:
> Hey All,
> 
> I have a simple little application that sends out a SUBSCRIBE message
> over TLS. When I create the SIP message, I have a specific order to my
> SIP headers -- when it goes out the wire, the order has changed.
> 
> I create the message like this:
> 
> <CODE>
>       Data txt("SUBSCRIBE sip:naim@xxxxxxxxxx;transport=TLS SIP/2.0\r\n"
>                "Contact:
> <sip:cdrigg@xxxxxxx:5061;transport=TLS;maddr=bldr-ccm51.sip.com;epid=1234567890>\r\n"
>                "Via: SIP/2.0/TLS
> 10.94.150.51:5061;branch=z9hG4bKnashds8;rport\r\n"
>                "Max-Forwards: 70\r\n"
>                "ms-asserted-verification-level:
> ms-source-verified-user=verified\r\n"
>                "From: \"Chris\"
> <sip:cdrigg@xxxxxxx>;tag=1928301774;epid=1234567890\r\n"
>                "To: <sip:naim@xxxxxxxxxx>\r\n"
>                "Call-ID: a84b4c76e66710\r\n"
>                "CSeq: 1 SUBSCRIBE\r\n"
>                "User-Agent: SIPimp.org/0.2.5 (curses)\r\n"
>                "Event: presence\r\n"
>                "Accept: application/pidf+xml\r\n"
>                "Content-Length: 0\r\n"
>                "\r\n");
> 
>       auto_ptr<SipMessage> message =
> auto_ptr<SipMessage>(SipMessage::make(txt, false));
> 
>       DebugLog ( << "Sending msg:" << *message );
>       sipStack.send( *message );
> </CODE>
> 
> However, when the message actually goes out the wire, the order of my
> SIP headers has been completely shifted around into something this:
> 
> SUBSCRIBE sip:naim@xxxxxxxxxx;transport=TLS SIP/2.0
> To: <sip:naim@xxxxxxxxxx>
> From: "Chris" <sip:cdrigg@xxxxxxx>;tag=1928301774;epid=1234567890
> Via: SIP/2.0/TLS 10.94.150.51:5061;branch=z9hG4bKnashds8;rport
> Call-ID: a84b4c76e66710
> CSeq: 1 SUBSCRIBE
> Contact:
> <sip:cdrigg@xxxxxxx:5061;transport=TLS;maddr=bldr-ccm51.sip.com;epid=1234567890>
> Max-Forwards: 70
> Accept: application/pidf+xml
> User-Agent: SIPimp.org/0.2.5 (curses)
> Event: presence
> Content-Length: 0
> ms-asserted-verification-level: ms-source-verified-user=verified
> 
> How do I change the order after calling SipMessage::make()? Or how do I
> prevent the stack from changing the order on me?
> 
> Thanks,
> Chris
> 
> 
> 
> 
> _______________________________________________
> resiprocate-devel mailing list
> resiprocate-devel@xxxxxxxxxxxxxxxxxxx
> https://list.sipfoundry.org/mailman/listinfo/resiprocate-devel
>