From c68246c069aa4ff6db1f688c391ecdc82ae058ff Mon Sep 17 00:00:00 2001 From: Christian Hopps Date: Sun, 14 Jan 2024 12:35:00 +0000 Subject: [PATCH] yang: lib: interface MTUs can be larger than uint16 Technically changing a leaf from uint16 to uint32 is a NBC change; however, increasing this to uint32 should not break anyone in reality. Signed-off-by: Christian Hopps --- lib/if.c | 2 +- yang/frr-interface.yang | 9 +++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/lib/if.c b/lib/if.c index a68f7f21e1..1328e21874 100644 --- a/lib/if.c +++ b/lib/if.c @@ -1677,7 +1677,7 @@ lib_interface_state_mtu_get_elem(struct nb_cb_get_elem_args *args) { const struct interface *ifp = args->list_entry; - return yang_data_new_uint16(args->xpath, ifp->mtu); + return yang_data_new_uint32(args->xpath, ifp->mtu); } /* diff --git a/yang/frr-interface.yang b/yang/frr-interface.yang index 012c96b600..fc5a290908 100644 --- a/yang/frr-interface.yang +++ b/yang/frr-interface.yang @@ -241,17 +241,18 @@ module frr-interface { } leaf mtu { - type uint16; + type uint32; description - "The size of the largest IPV4 packet that the interface - will send and receive."; + "The size of the largest IPV4 packet that the interface will send. + Normally this will never be larger than 65535; however, some devices + (e.g., vrf) can have larger values"; } leaf mtu6 { type uint32; description "The size of the largest IPV6 packet that the interface - will send and receive."; + will send."; } leaf speed {