summaryrefslogtreecommitdiffstats
path: root/sys/dev/an
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2002-04-01 21:31:13 +0000
committerjhb <jhb@FreeBSD.org>2002-04-01 21:31:13 +0000
commitdc2e474f79c1287592679cd5e0c4c2307feccd60 (patch)
tree79021f0d43a5858be317d5cd33eac8cd4962b336 /sys/dev/an
parent34c7d606c9818987384d404948ecdc98521462bd (diff)
downloadFreeBSD-src-dc2e474f79c1287592679cd5e0c4c2307feccd60.zip
FreeBSD-src-dc2e474f79c1287592679cd5e0c4c2307feccd60.tar.gz
Change the suser() API to take advantage of td_ucred as well as do a
general cleanup of the API. The entire API now consists of two functions similar to the pre-KSE API. The suser() function takes a thread pointer as its only argument. The td_ucred member of this thread must be valid so the only valid thread pointers are curthread and a few kernel threads such as thread0. The suser_cred() function takes a pointer to a struct ucred as its first argument and an integer flag as its second argument. The flag is currently only used for the PRISON_ROOT flag. Discussed on: smp@
Diffstat (limited to 'sys/dev/an')
-rw-r--r--sys/dev/an/if_an.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/sys/dev/an/if_an.c b/sys/dev/an/if_an.c
index e713796..826d069 100644
--- a/sys/dev/an/if_an.c
+++ b/sys/dev/an/if_an.c
@@ -1266,7 +1266,7 @@ an_ioctl(ifp, command, data)
int i;
struct an_softc *sc;
struct ifreq *ifr;
- struct proc *p = curproc;
+ struct thread *td = curthread;
struct ieee80211req *ireq;
u_int8_t tmpstr[IEEE80211_NWID_LEN*2];
u_int8_t *tmpptr;
@@ -1353,7 +1353,7 @@ an_ioctl(ifp, command, data)
error = copyout(&sc->areq, ifr->ifr_data, sizeof(sc->areq));
break;
case SIOCSAIRONET:
- if ((error = suser(p)))
+ if ((error = suser(td)))
goto out;
error = copyin(ifr->ifr_data, &sc->areq, sizeof(sc->areq));
if (error != 0)
@@ -1361,7 +1361,7 @@ an_ioctl(ifp, command, data)
an_setdef(sc, &sc->areq);
break;
case SIOCGPRIVATE_0: /* used by Cisco client utility */
- if ((error = suser(p)))
+ if ((error = suser(td)))
goto out;
copyin(ifr->ifr_data, &l_ioctl, sizeof(l_ioctl));
mode = l_ioctl.command;
@@ -1381,7 +1381,7 @@ an_ioctl(ifp, command, data)
break;
case SIOCGPRIVATE_1: /* used by Cisco client utility */
- if ((error = suser(p)))
+ if ((error = suser(td)))
goto out;
copyin(ifr->ifr_data, &l_ioctl, sizeof(l_ioctl));
l_ioctl.command = 0;
@@ -1614,7 +1614,7 @@ an_ioctl(ifp, command, data)
}
break;
case SIOCS80211:
- if ((error = suser(p)))
+ if ((error = suser(td)))
goto out;
sc->areq.an_len = sizeof(sc->areq);
/*
OpenPOWER on IntegriCloud