Print this page
@@ -22,11 +22,11 @@
/*
* Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
*/
/*
- * Copyright (c) 2015, Joyent, Inc. All rights reserved.
+ * Copyright (c) 2014, Joyent, Inc. All rights reserved.
*/
#include <sys/types.h>
#include <sys/param.h>
#include <sys/systm.h>
@@ -1322,30 +1322,10 @@
goto space_check;
}
}
}
- mutex_enter(&so->so_lock);
- if (so->so_krecv_cb != NULL) {
- boolean_t cont;
- so_krecv_f func = so->so_krecv_cb;
- void *arg = so->so_krecv_arg;
-
- mutex_exit(&so->so_lock);
- cont = func(so, mp, msg_size, flags & MSG_OOB, arg);
- mutex_enter(&so->so_lock);
- if (cont == B_TRUE) {
- space_left = so->so_rcvbuf;
- } else {
- so->so_rcv_queued = so->so_rcvlowat;
- *errorp = ENOSPC;
- space_left = -1;
- }
- goto done_unlock;
- }
- mutex_exit(&so->so_lock);
-
if (flags & MSG_OOB) {
so_queue_oob(so, mp, msg_size);
mutex_enter(&so->so_lock);
goto space_check;
}
@@ -1620,17 +1600,10 @@
(so->so_mode & SM_CONNREQUIRED)) {
SO_UNBLOCK_FALLBACK(so);
return (ENOTCONN);
}
- mutex_enter(&so->so_lock);
- if (so->so_krecv_cb != NULL) {
- mutex_exit(&so->so_lock);
- return (EOPNOTSUPP);
- }
- mutex_exit(&so->so_lock);
-
if (msg->msg_flags & MSG_PEEK)
msg->msg_flags &= ~MSG_WAITALL;
if (so->so_mode & SM_ATOMIC)
msg->msg_flags |= MSG_TRUNC;