util/mtu: Avoid excessive ioctls for MTU

Issue: 7643

Use the cached livedev MTU value, when available.
pull/13483/head
Jeff Lucovsky 1 month ago committed by Victor Julien
parent 97bfa3b108
commit e8753b9ba7

@ -127,13 +127,16 @@ int GetIfaceMaxPacketSize(LiveDevice *ld)
if ((dev == NULL) || strlen(dev) == 0) if ((dev == NULL) || strlen(dev) == 0)
return 0; return 0;
int mtu = GetIfaceMTU(dev); int mtu = ld->mtu;
switch (mtu) { if (ld->mtu == 0) {
case 0: mtu = GetIfaceMTU(dev);
case -1: switch (mtu) {
return 0; case 0:
case -1:
return 0;
}
ld->mtu = mtu;
} }
ld->mtu = mtu;
int ll_header = GetIfaceMaxHWHeaderLength(dev); int ll_header = GetIfaceMaxHWHeaderLength(dev);
return ll_header + mtu; return ll_header + mtu;
} }

Loading…
Cancel
Save