summaryrefslogtreecommitdiffstats
path: root/sys/net80211/ieee80211_ioctl.c
diff options
context:
space:
mode:
authorsam <sam@FreeBSD.org>2004-01-13 06:22:55 +0000
committersam <sam@FreeBSD.org>2004-01-13 06:22:55 +0000
commitb8570d5db4cc681044b6c4270d95ab74ea9698e6 (patch)
tree390e3c64186554ac7917301427589c29aa45624c /sys/net80211/ieee80211_ioctl.c
parent1012c19191db10049b26de7225117ed77f83124f (diff)
downloadFreeBSD-src-b8570d5db4cc681044b6c4270d95ab74ea9698e6.zip
FreeBSD-src-b8570d5db4cc681044b6c4270d95ab74ea9698e6.tar.gz
Handle SIOCSIFMTU ioctl directly so we can apply 802.11-specific bounds.
Note that the min is actually constrained to IF_MINMTU by the if layer.
Diffstat (limited to 'sys/net80211/ieee80211_ioctl.c')
-rw-r--r--sys/net80211/ieee80211_ioctl.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/sys/net80211/ieee80211_ioctl.c b/sys/net80211/ieee80211_ioctl.c
index 64a8879..1c7df74 100644
--- a/sys/net80211/ieee80211_ioctl.c
+++ b/sys/net80211/ieee80211_ioctl.c
@@ -1017,6 +1017,14 @@ ieee80211_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data)
ifr = (struct ifreq *)data;
copyout(&ic->ic_stats, ifr->ifr_data, sizeof (ic->ic_stats));
break;
+ case SIOCSIFMTU:
+ ifr = (struct ifreq *)data;
+ if (!(IEEE80211_MTU_MIN <= ifr->ifr_mtu &&
+ ifr->ifr_mtu <= IEEE80211_MTU_MAX))
+ error = EINVAL;
+ else
+ ifp->if_mtu = ifr->ifr_mtu;
+ break;
default:
error = ether_ioctl(ifp, cmd, data);
break;
OpenPOWER on IntegriCloud