diff options
author | ambrisko <ambrisko@FreeBSD.org> | 2002-03-14 20:56:41 +0000 |
---|---|---|
committer | ambrisko <ambrisko@FreeBSD.org> | 2002-03-14 20:56:41 +0000 |
commit | 81e2a6ab4a0eb935bb14e4dce1b18829a711c289 (patch) | |
tree | a67b8efe685ef2e4f243a9b8abcaa0dfcab397ee /sys/dev/an | |
parent | 34e76199f208412c5cff1cc198f79d466ecb3ac0 (diff) | |
download | FreeBSD-src-81e2a6ab4a0eb935bb14e4dce1b18829a711c289.zip FreeBSD-src-81e2a6ab4a0eb935bb14e4dce1b18829a711c289.tar.gz |
Only allow super user to perform the Linux compatible ioctls since some
of the things they do, shouldn't be done by normal users.
MFC after: 2 days
Diffstat (limited to 'sys/dev/an')
-rw-r--r-- | sys/dev/an/if_an.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/dev/an/if_an.c b/sys/dev/an/if_an.c index 856080b..ad143c9 100644 --- a/sys/dev/an/if_an.c +++ b/sys/dev/an/if_an.c @@ -1363,6 +1363,8 @@ an_ioctl(ifp, command, data) an_setdef(sc, &sc->areq); break; case SIOCGPRIVATE_0: /* used by Cisco client utility */ + if ((error = suser(p))) + goto out; copyin(ifr->ifr_data, &l_ioctl, sizeof(l_ioctl)); mode = l_ioctl.command; @@ -1381,6 +1383,8 @@ an_ioctl(ifp, command, data) break; case SIOCGPRIVATE_1: /* used by Cisco client utility */ + if ((error = suser(p))) + goto out; copyin(ifr->ifr_data, &l_ioctl, sizeof(l_ioctl)); l_ioctl.command = 0; error = AIROMAGIC; |