diff options
Diffstat (limited to 'sys/compat/linux/linux_socket.c')
-rw-r--r-- | sys/compat/linux/linux_socket.c | 39 |
1 files changed, 20 insertions, 19 deletions
diff --git a/sys/compat/linux/linux_socket.c b/sys/compat/linux/linux_socket.c index e47c725..ac73dde 100644 --- a/sys/compat/linux/linux_socket.c +++ b/sys/compat/linux/linux_socket.c @@ -423,7 +423,7 @@ linux_connect(struct proc *p, struct linux_connect_args *args) error = EISCONN; if (fp->f_flag & FNONBLOCK) { so = (struct socket *)fp->f_data; - if ((u_int)so->so_emuldata == 0) + if (so->so_emuldata == 0) error = so->so_error; so->so_emuldata = (void *)1; } @@ -870,38 +870,39 @@ linux_getsockopt(struct proc *p, struct linux_getsockopt_args *args) int linux_socketcall(struct proc *p, struct linux_socketcall_args *args) { + void *arg = (void *)args->args; switch (args->what) { case LINUX_SOCKET: - return (linux_socket(p, args->args)); + return (linux_socket(p, arg)); case LINUX_BIND: - return (linux_bind(p, args->args)); + return (linux_bind(p, arg)); case LINUX_CONNECT: - return (linux_connect(p, args->args)); + return (linux_connect(p, arg)); case LINUX_LISTEN: - return (linux_listen(p, args->args)); + return (linux_listen(p, arg)); case LINUX_ACCEPT: - return (linux_accept(p, args->args)); + return (linux_accept(p, arg)); case LINUX_GETSOCKNAME: - return (linux_getsockname(p, args->args)); + return (linux_getsockname(p, arg)); case LINUX_GETPEERNAME: - return (linux_getpeername(p, args->args)); + return (linux_getpeername(p, arg)); case LINUX_SOCKETPAIR: - return (linux_socketpair(p, args->args)); + return (linux_socketpair(p, arg)); case LINUX_SEND: - return (linux_send(p, args->args)); + return (linux_send(p, arg)); case LINUX_RECV: - return (linux_recv(p, args->args)); + return (linux_recv(p, arg)); case LINUX_SENDTO: - return (linux_sendto(p, args->args)); + return (linux_sendto(p, arg)); case LINUX_RECVFROM: - return (linux_recvfrom(p, args->args)); + return (linux_recvfrom(p, arg)); case LINUX_SHUTDOWN: - return (linux_shutdown(p, args->args)); + return (linux_shutdown(p, arg)); case LINUX_SETSOCKOPT: - return (linux_setsockopt(p, args->args)); + return (linux_setsockopt(p, arg)); case LINUX_GETSOCKOPT: - return (linux_getsockopt(p, args->args)); + return (linux_getsockopt(p, arg)); case LINUX_SENDMSG: do { int error; @@ -911,7 +912,7 @@ linux_socketcall(struct proc *p, struct linux_socketcall_args *args) int s; const struct msghdr *msg; int flags; - } *uap = args->args; + } *uap = arg; error = copyin(&uap->msg->msg_control, &control, sizeof(caddr_t)); @@ -939,10 +940,10 @@ linux_socketcall(struct proc *p, struct linux_socketcall_args *args) return (error); } done: - return (sendmsg(p, args->args)); + return (sendmsg(p, arg)); } while (0); case LINUX_RECVMSG: - return (linux_recvmsg(p, args->args)); + return (linux_recvmsg(p, arg)); } uprintf("LINUX: 'socket' typ=%d not implemented\n", args->what); |