From: Jo-Philipp Wich Date: Fri, 29 Jun 2012 11:26:32 +0000 (+0200) Subject: interface-ip.{c,h}: add new flag DEVROUTE_MTU and set it for per-route mtu overrides X-Git-Url: https://git.archive.openwrt.org/?p=project%2Fnetifd.git;a=commitdiff_plain;h=55c7d8f55b6bdb264a52410467a7e8cff3bec3a9;hp=19048f79a49b1f242f03e2d81cec6b6e11f18a9e;ds=sidebyside interface-ip.{c,h}: add new flag DEVROUTE_MTU and set it for per-route mtu overrides --- diff --git a/interface-ip.c b/interface-ip.c index b097c1f..fa84fc7 100644 --- a/interface-ip.c +++ b/interface-ip.c @@ -238,8 +238,10 @@ interface_ip_add_route(struct interface *iface, struct blob_attr *attr, bool v6) route->flags |= DEVROUTE_METRIC; } - if ((cur = tb[ROUTE_MTU]) != NULL) + if ((cur = tb[ROUTE_MTU]) != NULL) { route->mtu = blobmsg_get_u32(cur); + route->flags |= DEVROUTE_MTU; + } vlist_add(&ip->route, &route->node, &route->flags); return; diff --git a/interface-ip.h b/interface-ip.h index d206eca..1a82ad6 100644 --- a/interface-ip.h +++ b/interface-ip.h @@ -28,8 +28,11 @@ enum device_addr_flags { /* route overrides the default interface metric */ DEVROUTE_METRIC = (1 << 3), + /* route overrides the default interface mtu */ + DEVROUTE_MTU = (1 << 4), + /* route automatically added by kernel */ - DEVADDR_KERNEL = (1 << 4), + DEVADDR_KERNEL = (1 << 5), }; union if_addr {