summaryrefslogtreecommitdiffstats
path: root/sys/kern/kern_descrip.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/kern/kern_descrip.c')
-rw-r--r--sys/kern/kern_descrip.c14
1 files changed, 6 insertions, 8 deletions
diff --git a/sys/kern/kern_descrip.c b/sys/kern/kern_descrip.c
index 2722283..79f6695 100644
--- a/sys/kern/kern_descrip.c
+++ b/sys/kern/kern_descrip.c
@@ -404,9 +404,10 @@ kern_fcntl_freebsd(struct thread *td, int fd, int cmd, long arg)
struct flock fl;
struct __oflock ofl;
intptr_t arg1;
- int error;
+ int error, newcmd;
error = 0;
+ newcmd = cmd;
switch (cmd) {
case F_OGETLK:
case F_OSETLK:
@@ -424,13 +425,13 @@ kern_fcntl_freebsd(struct thread *td, int fd, int cmd, long arg)
switch (cmd) {
case F_OGETLK:
- cmd = F_GETLK;
+ newcmd = F_GETLK;
break;
case F_OSETLK:
- cmd = F_SETLK;
+ newcmd = F_SETLK;
break;
case F_OSETLKW:
- cmd = F_SETLKW;
+ newcmd = F_SETLKW;
break;
}
arg1 = (intptr_t)&fl;
@@ -448,7 +449,7 @@ kern_fcntl_freebsd(struct thread *td, int fd, int cmd, long arg)
}
if (error)
return (error);
- error = kern_fcntl(td, fd, cmd, arg1);
+ error = kern_fcntl(td, fd, newcmd, arg1);
if (error)
return (error);
if (cmd == F_OGETLK) {
@@ -2423,13 +2424,10 @@ _fget(struct thread *td, int fd, struct file **fpp, int flags,
{
struct filedesc *fdp;
struct file *fp;
- cap_rights_t needrights;
int error;
*fpp = NULL;
fdp = td->td_proc->p_fd;
- if (needrightsp == NULL)
- needrightsp = cap_rights_init(&needrights);
error = fget_unlocked(fdp, fd, needrightsp, &fp, seqp);
if (error != 0)
return (error);
OpenPOWER on IntegriCloud