From: Pekka P. <pp...@gm...> - 2008-06-22 23:50:51
|
2008/6/16 Colin Whittaker <co...@oc...>: > Still running 1.12.6, and it has been working great. Ran into a little > hiccup in another interop. > > During a call, we get a re-INVITE with a new media descriptor. We have > NOT included that media in our SDP, so the SOA task rejects it. > > Time 16:09:08: sipuad: soa_static(0x10b62588, soa_generate_answer): marking rejected media > > > But, the response to the INVITE is 200 OK. This appears to be a problem > for the switch, which is expecting a > > 415 Unsupported Media Type > > > Now the problem I have in fixing this is the stack does not give me a > chance to respond to the INVITE. > > So a couple of questions: > 1. Can I get the stack to allow me to respond to re-INVITEs with a TAG > or some other means ? Include NUTAG_AUTOANSWER(0) in nua_handle_create() or initial nua_respond(). I'm afraid this bug is documented there in the NUTAG_AUTOANSWER() dox. > 2. Can I get the rejected media to be responded to with 415 without > tearing down the call ? I think so. > 3. Is the sofia SDP response technically correct ? Yes... RFC 3261 section 21.4.13 describes how to handle unknown session description with 415. IMO 415 is wrong - it is part of the content negotation, ie, does your terminal support SDP-ng or just plain SDP. UA is expected to return a 488/606 response if there is something they can not process in the SDP. RFC 3264 section 8.1. describes how to proceed with a new stream. > The scenario is the switch is requesting a switch from a G.711 voice > call to do T.38 Fax. Our endpoint does not support T.38, so we need to > reject the INVITE without interrupting the call. Then it is section 8.3.3. on RFC 3264. Unfortunately, RFC 3264 leaves it open how a session is rejected. Sofia SIP now rejects each media, which is the most portable way, or so we thought. Obviously, if a re-offer replaces the only stream, the offer should be rejected with 488/606. (I'm afraid we were only concerned with a/v sessions, where the offerer might be confused if his offer modifying audio and adding a videeo stream was rejected.) Please check the logic in soa and nua_session.c and propose improvements... --Pekka > Here are the SIP packets: > > ================================================================================= > 16:09:08.424918 10.2.21.2.5060 > 10.3.6.30.5060: udp 714 (DF) > INVITE sip:9992221161@10.3.6.30 SIP/2.0 > Call-ID:diceiiffcbjbhaac-diiddgdbcb > CSeq:6002 INVITE > Contact: sip:6662221007@10.2.21.2 > From: sip:6662221007@10.2.21.2;tag=difcebgfcbjbhaac-diiddgdbcb > To:<sip:9992221161@10.2.21.2>;tag=S4tH4yDKj8ajg > Via:SIP/2.0/UDP 10.2.21.2:5060 > Content-Length: 368 > Content-Type:application/sdp > Max-Forwards:70 > > v=0 > o=ast12345sg 2694309633 2694309633 IN IP4 10.2.21.6 > s=- > c=IN IP4 10.2.21.6 > t=0 0 > a=sendrecv > m=image 10032 UDPTL t38 > a=T38FaxVersion:0 > a=T38maxBitRate:14400 > a=T38FaxRateManagement:transferredTCF > a=T38FaxMaxBuffer:800 > a=T38FaxMaxDatagram:213 > a=T38FaxUdpEC:t38UDPRedundancy > a=T38FaxFillBitRemoval:0 > a=T38FaxTranscodingMMR:0 > a=T38FaxTranscodingJBIG:0 > ================================================================================= > 16:09:08.438768 10.3.6.30.5060 > 10.2.21.2.5060: udp 632 (DF) [tos 0xb8] > SIP/2.0 200 OK > Via: SIP/2.0/UDP 10.2.21.2:5060 > From: <sip:6662221007@10.2.21.2>;tag=difcebgfcbjbhaac-diiddgdbcb > To: <sip:9992221161@10.2.21.2>;tag=S4tH4yDKj8ajg > Call-ID: diceiiffcbjbhaac-diiddgdbcb > CSeq: 6002 INVITE > Contact: <sip:9992221161@10.3.6.30;transport=udp> > User-Agent: sofia-sip/1.12.6 > Accept: application/sdp > Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, REFER, UPDATE, NOTIFY, INFO > Supported: timer > Min-SE: 120 > Content-Type: application/sdp > Content-Disposition: session > Content-Length: 118 > > v=0 > o=- 4381022568673842968 6575715192701033337 IN IP4 10.3.6.30 > s=- > c=IN IP4 10.3.6.30 > t=0 0 > m=image 0 UDPTL 9 > > > > > ------------------------------------------------------------------------- > Check out the new SourceForge.net Marketplace. > It's the best place to buy or sell services for > just about anything Open Source. > http://sourceforge.net/services/buy/index.php > _______________________________________________ > Sofia-sip-devel mailing list > Sof...@li... > https://lists.sourceforge.net/lists/listinfo/sofia-sip-devel > -- Pekka.Pessi mail at nokia.com |