Contacts are used to advertised wherebouts for subsequent in-dialog requests coming back to your UAC. For that reason, I don't entirely understand why the UAC includes Contact in CANCEL at all -- all in all CANCEL is used to discontinued estabslishment of a dialog. Anyhow, it should not matter the Contact content is invalid since there is no use for the header field in this case at all.
-jiri
At 11:16 AM 7/18/2004, Linus Surguy wrote:
Hi all,
I'm sure I must be doing something very stupid! I'm using fix_nated_contact and then t_relay(). The INVITE is being sent with a rewriten contact field, but if the UA issues a CANCEL the private IP address is sent in the contact field and is not rewritten.
What basic mistake have I made?!
A cut down version of my ser.cfg is:
record_route(); # loose-route processing if (loose_route()) { t_relay(); break; }; fix_nated_contact(); force_rport(); if (method=="INVITE") { fix_nated_sdp("1"); force_rtp_proxy(); /* set up reply processing */ t_on_reply("1"); setflag(6); }; rewritehostport("213.xxx.xxx.xxx:5060"); if (!t_relay()) { sl_reply_error(); };
# all incoming replies for t_onrepli-ed transactions enter here
onreply_route[1] {
fix_nated_contact(); if (status=~"[12][0-9][0-9]") force_rtp_proxy();
}
Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
-- Jiri Kuthan http://iptel.org/~jiri/