How to find the correct source address to a destination in a kernel driver?
From: Stephan von Krawczynski
Date: Fri Oct 17 2014 - 04:15:00 EST
Hello all,
in former kernels with routing cache things were easy. We just used :
rt = ip_route_output_key(XXX)
src = rt->rt_src;
Now if there is no routing cache, we tried this:
rt = ip_route_output_key(XXX)
src = inet_select_addr(rt->dst.dev, dst, RT_SCOPE_UNIVERSE);
Unfortunately this does not work with interfaces having multiple ip addresses
and the routing in question is not over the first configured ip.
How do I get the correct src for all possible cases?
--
Regards,
Stephan
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/