[Serdev] CVS:commitlog: sip_router/modules/tm t_lookup.c t_reply.c
Andrei Pelinescu-Onciul
pelinescu-onciul at fokus.fraunhofer.de
Tue Mar 1 11:46:25 UTC 2005
On Mar 01, 2005 at 12:22, Bogdan - Andrei IANCU <iancu at fokus.fraunhofer.de> wrote:
> bogdan 2005/03/01 12:22:10 CET
>
> SER CVS Repository
>
> Modified files:
> modules/tm t_lookup.c t_reply.c
> Log:
> - statefull replies are sent out exactly on the same interface on which the
> request was received;
> - note that the previous version was broken since get_send_socket(request)
> was called to determin the outgoing interface for relies; this was leading
> to sending back replies on the forced interfaced set for request forwarding!
This depends on what you understand by force_send_socket. It was so on
purpose, but since I don't see any new problem I agree with changing it.
OTOH your change doesn't take into account possible protocol or address
family differences. If reply_to_via is set there is no guarantee the
reply will be able to go on the same socket on which the request was
received. The reply could go on TCP for example.
You should check first for the same protocol an address family (msg.rcv
&& to) and only if they are the same use msg->rcv.bind_address, if not
use the old get_send_socket call.
Andrei
More information about the Serdev
mailing list