X-Git-Url: https://git.archive.openwrt.org/?p=project%2Fnetifd.git;a=blobdiff_plain;f=system-linux.c;h=4401f784dde3d8e0753fdef9f862111d773ac7e1;hp=9d2e92f22b4fa05ed49fdacb42acab5e34685744;hb=587655b45085fcfc9c575792640c21c6ffb24f42;hpb=19e05a68ba2c5d11480ddd23d9b0d5756cbc8183 diff --git a/system-linux.c b/system-linux.c index 9d2e92f..4401f78 100644 --- a/system-linux.c +++ b/system-linux.c @@ -965,7 +965,8 @@ static int system_rt(struct device *dev, struct device_route *route, int cmd) unsigned char scope = (cmd == RTM_DELROUTE) ? RT_SCOPE_NOWHERE : (have_gw) ? RT_SCOPE_UNIVERSE : RT_SCOPE_LINK; - unsigned int table = (route->flags & DEVROUTE_TABLE) ? route->table : RT_TABLE_MAIN; + unsigned int table = (route->flags & (DEVROUTE_TABLE | DEVROUTE_SRCTABLE)) + ? route->table : RT_TABLE_MAIN; struct rtmsg rtm = { .rtm_family = (alen == 4) ? AF_INET : AF_INET6,