[sr-dev] problem with locally generated ACKs

Juha Heinanen jh at tutpro.com
Mon Dec 21 11:17:49 CET 2009


since i'm stuck with ACKs to locally generated INVITEs never reaching
UASes behind NATs, i tried to read tm code to find out how to make sr
always send ACK to locally generated INVITE to use the same r-uri and
destination set as the INVITE itself.

i found this piece of code reply_received() function of t_reply.c:

		if (is_invite(t)) {
			if (msg_status >= 300) {
				ack = build_ack(p_msg, t, branch, &ack_len);

it looks to me that the desired effect could be achieved if the middle
line is changed to something like this:

if ((msg_status >= 300) || "invite was generated locally by t_uac function") {

does someone know how to implement the test, i.e., is there some info in
t structure that could be used to figure out if the invite was locally
generated?

-- juha



More information about the sr-dev mailing list