[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20110427.140319.39177501.davem@davemloft.net>
Date: Wed, 27 Apr 2011 14:03:19 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: netdev@...r.kernel.org
Subject: Re: [PATCH 1/4] ipv4: Respect 'saddr' and 'daddr' args to
ip_build_and_send_pkt().
From: David Miller <davem@...emloft.net>
Date: Tue, 26 Apr 2011 15:12:00 -0700 (PDT)
>
> This function ignores the passed in addresses and forces their
> settings using rt->rt_dst and rt->rt_src.
>
> There is never a reason to do this, because the socket of the
> callers of this function must know what addresses it is using.
>
> Signed-off-by: David S. Miller <davem@...emloft.net>
I did not end up applying this one to net-next-2.6, it's not correct.
It would break things when the source routing is enabled on the
socket.
When that happens, we look up the route to the SRR options's first
entry, not the actual final destination. And that initial SRR option
address is the destination IP address we need to use in the IP header
this we need to use rt->rt_{src,dst}.
This could be implemented properly by doing something like:
if (opt && opt->srr)
iph->daddr = x;
else
iph->daddr = daddr;
I'll think about it.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists