Changeset View
Changeset View
Standalone View
Standalone View
sys/compat/linux/linux_socket.c
Show First 20 Lines • Show All 1,172 Lines • ▼ Show 20 Lines | struct sendto_args /* { | ||||
int tolen; | int tolen; | ||||
} */ bsd_args; | } */ bsd_args; | ||||
struct file *fp; | struct file *fp; | ||||
int error, fflag; | int error, fflag; | ||||
bsd_args.s = args->s; | bsd_args.s = args->s; | ||||
bsd_args.buf = (caddr_t)PTRIN(args->msg); | bsd_args.buf = (caddr_t)PTRIN(args->msg); | ||||
bsd_args.len = args->len; | bsd_args.len = args->len; | ||||
bsd_args.flags = args->flags; | bsd_args.flags = linux_to_bsd_msg_flags(args->flags); | ||||
bsd_args.to = NULL; | bsd_args.to = NULL; | ||||
bsd_args.tolen = 0; | bsd_args.tolen = 0; | ||||
error = sys_sendto(td, &bsd_args); | error = sys_sendto(td, &bsd_args); | ||||
if (error == ENOTCONN) { | if (error == ENOTCONN) { | ||||
/* | /* | ||||
* Linux doesn't return ENOTCONN for non-blocking sockets. | * Linux doesn't return ENOTCONN for non-blocking sockets. | ||||
* Instead it returns the EAGAIN. | * Instead it returns the EAGAIN. | ||||
*/ | */ | ||||
▲ Show 20 Lines • Show All 1,009 Lines • Show Last 20 Lines |