summaryrefslogtreecommitdiff
path: root/ospf6d/ospf6_interface.h
diff options
context:
space:
mode:
authorDon Slice <dslice@cumulusnetworks.com>2017-06-22 09:17:24 -0700
committerDon Slice <dslice@cumulusnetworks.com>2017-06-26 11:07:23 -0400
commit0c7ef48afe13284d5eb429b89744886d6fa74b7e (patch)
tree39c843977e9f95fdeff65560f5100009fbe93e16 /ospf6d/ospf6_interface.h
parent8ea37652c714edcd913d5dc02a0bfc5968fdc45e (diff)
ospf6d: fix ifmtu settings when kernel changes values
Problem reported by customer that if an mtu value was set in the kernel, quagga/frr would get very confused about what had been configured and what had been learned. This caused peers to not be successfully established. Resolved by keeping a configuration value separate than the operational value and set the operational accordingly. If configured, it wins unless the config defines a value that is higher than the kernel supports. Ticket: CM-16876 Signed-off-by: Don Slice <dslice@cumulusnetworks.com> Reviewed By: CCR-6399 Testing Done: Manual testing successful, submitter tested, ospf-smoke completed with no new failures.
Diffstat (limited to 'ospf6d/ospf6_interface.h')
-rw-r--r--ospf6d/ospf6_interface.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/ospf6d/ospf6_interface.h b/ospf6d/ospf6_interface.h
index 0408fc69d6..327402d752 100644
--- a/ospf6d/ospf6_interface.h
+++ b/ospf6d/ospf6_interface.h
@@ -76,6 +76,9 @@ struct ospf6_interface
/* I/F MTU */
u_int32_t ifmtu;
+ /* Configured MTU */
+ u_int32_t c_ifmtu;
+
/* Interface State */
u_char state;