diff options
author | Felix Fietkau <nbd@openwrt.org> | 2015-12-15 11:57:48 +0100 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2015-12-15 11:57:52 +0100 |
commit | d5f53f4d79231f59494da852b73d2d9d2b9c43cc (patch) | |
tree | e6faf6554096249b7658634259ce971c82a67be2 /interface-ip.h | |
parent | e911dd3a798a543d40b93fe8dcb0824bd011c621 (diff) |
interface-ip: fix subnet route handling
When the kernel subnet route has to be replaced, the cleanup call needs
to match the properties of the replacement route exactly, mainly the
metric and the routing table.
Fix handling this by embedding the device_route for the subnet in the
device_addr struct and using it in the cleanup path.
This fixes issues on config reload with changes to the routing table
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Diffstat (limited to 'interface-ip.h')
-rw-r--r-- | interface-ip.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/interface-ip.h b/interface-ip.h index f24b0ec..bbef62c 100644 --- a/interface-ip.h +++ b/interface-ip.h @@ -110,6 +110,8 @@ struct device_addr { bool failed; unsigned int policy_table; + struct device_route subnet; + /* ipv4 only */ uint32_t broadcast; uint32_t point_to_point; |