Hi Florian, 2011/6/29 Florian Limberger <florian.limber...@aon.at>: ... > When an ipv6 client initiates a call to a ipv4 client the call is > properly established!! .... > If ipv4 calls ipv6, the final ACK is not sent. ... > Probably, this has something to do with the Contact header, which > contains the transport address which has been used for registration. > However, if ipv6 invites ipv4, everything is fine. > > Note, that the ipv4 only host has a link-local ipv6 address but has no > ipv6 connectivity to the Internet. > > Please advise me where and how the transport for an ACK is determined > and where in the code this can be fixed.
You are correct when you assume that the Contact header is in play. It determines the transport for ACK, unless there happens to be some Record-Route headers. Your proxy is supposed to add those Record-Route headers in case it notices that caller is IPv4 and callee IPv6. Alternatively, the IPv4-only User Agent could try to do something clever, like still using the same proxy to send ACK it used to send INVITE, if it cannot use the transport from Contact header. Unfortunately, Sofia is not so clever. -- Pekka.Pessi mail at nokia.com ------------------------------------------------------------------------------ Get a FREE DOWNLOAD! and learn more about uberSVN rich system, user administration capabilities and model configuration. Take the hassle out of deploying and managing Subversion and the tools developers use with it. http://p.sf.net/sfu/wandisco-d2d-2 _______________________________________________ Sofia-sip-devel mailing list Sofia-sip-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/sofia-sip-devel