netifd v2: Fix source routing for IPv4
authorKristian Evensen <kristian.evensen@gmail.com>
Wed, 26 Nov 2014 10:16:05 +0000 (10:16 +0000)
committerSteven Barth <steven@midlink.org>
Thu, 27 Nov 2014 07:25:12 +0000 (08:25 +0100)
commit25289c946427db676d41c0fa4e6c01ade2f43b66
tree3a47c494108eb4e127433a87311dca44eeedb8d5
parent3c570d03d747f6835bfecbf8a43e0b7092015fad
netifd v2: Fix source routing for IPv4

According to the OpenWRT Network documentation for route, the 'source' option is
"The preferred source address when sending to destinations covered by the
target". However, netifd currently stores this value in RTA_SRC on
NEWROUTE/DELROUTE.

RTA_SRC is not used by kernel when handling NEWROUTE nor DELROUTE for IPv4
routes. When adding a new IPv4 route, the source is stored in RTA_PREFSRC and
the option works as specified in documentation. For IPv6, the address is still
stored in RTA_SRC as to not break source-destination routing for IPv6.

v2: Limit patch to IPv4, to prevent breaking IPv6 configurations (thanks Steven
Barth)

Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
system-linux.c