Whitespace cleanup.
MFC after: 3 days
This commit is contained in:
parent
c0de06c375
commit
6e403ce2d9
@ -1529,7 +1529,7 @@ sctp_process_a_data_chunk(struct sctp_tcb *stcb, struct sctp_association *asoc,
|
|||||||
*/
|
*/
|
||||||
if (stcb->sctp_socket->so_rcv.sb_cc) {
|
if (stcb->sctp_socket->so_rcv.sb_cc) {
|
||||||
/* some to read, wake-up */
|
/* some to read, wake-up */
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
struct socket *so;
|
struct socket *so;
|
||||||
|
|
||||||
so = SCTP_INP_SO(stcb->sctp_ep);
|
so = SCTP_INP_SO(stcb->sctp_ep);
|
||||||
@ -1545,7 +1545,7 @@ sctp_process_a_data_chunk(struct sctp_tcb *stcb, struct sctp_association *asoc,
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
sctp_sorwakeup(stcb->sctp_ep, stcb->sctp_socket);
|
sctp_sorwakeup(stcb->sctp_ep, stcb->sctp_socket);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
@ -3982,7 +3982,7 @@ sctp_express_handle_sack(struct sctp_tcb *stcb, uint32_t cumack,
|
|||||||
}
|
}
|
||||||
/* sa_ignore NO_NULL_CHK */
|
/* sa_ignore NO_NULL_CHK */
|
||||||
if (stcb->sctp_socket) {
|
if (stcb->sctp_socket) {
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
struct socket *so;
|
struct socket *so;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
@ -3991,7 +3991,7 @@ sctp_express_handle_sack(struct sctp_tcb *stcb, uint32_t cumack,
|
|||||||
/* sa_ignore NO_NULL_CHK */
|
/* sa_ignore NO_NULL_CHK */
|
||||||
sctp_wakeup_log(stcb, 1, SCTP_WAKESND_FROM_SACK);
|
sctp_wakeup_log(stcb, 1, SCTP_WAKESND_FROM_SACK);
|
||||||
}
|
}
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
so = SCTP_INP_SO(stcb->sctp_ep);
|
so = SCTP_INP_SO(stcb->sctp_ep);
|
||||||
atomic_add_int(&stcb->asoc.refcnt, 1);
|
atomic_add_int(&stcb->asoc.refcnt, 1);
|
||||||
SCTP_TCB_UNLOCK(stcb);
|
SCTP_TCB_UNLOCK(stcb);
|
||||||
@ -4005,7 +4005,7 @@ sctp_express_handle_sack(struct sctp_tcb *stcb, uint32_t cumack,
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
sctp_sowwakeup_locked(stcb->sctp_ep, stcb->sctp_socket);
|
sctp_sowwakeup_locked(stcb->sctp_ep, stcb->sctp_socket);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
#endif
|
#endif
|
||||||
} else {
|
} else {
|
||||||
@ -4734,7 +4734,7 @@ sctp_handle_sack(struct mbuf *m, int offset_seg, int offset_dup,
|
|||||||
}
|
}
|
||||||
/* sa_ignore NO_NULL_CHK */
|
/* sa_ignore NO_NULL_CHK */
|
||||||
if ((wake_him) && (stcb->sctp_socket)) {
|
if ((wake_him) && (stcb->sctp_socket)) {
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
struct socket *so;
|
struct socket *so;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
@ -4742,7 +4742,7 @@ sctp_handle_sack(struct mbuf *m, int offset_seg, int offset_dup,
|
|||||||
if (SCTP_BASE_SYSCTL(sctp_logging_level) & SCTP_WAKE_LOGGING_ENABLE) {
|
if (SCTP_BASE_SYSCTL(sctp_logging_level) & SCTP_WAKE_LOGGING_ENABLE) {
|
||||||
sctp_wakeup_log(stcb, wake_him, SCTP_WAKESND_FROM_SACK);
|
sctp_wakeup_log(stcb, wake_him, SCTP_WAKESND_FROM_SACK);
|
||||||
}
|
}
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
so = SCTP_INP_SO(stcb->sctp_ep);
|
so = SCTP_INP_SO(stcb->sctp_ep);
|
||||||
atomic_add_int(&stcb->asoc.refcnt, 1);
|
atomic_add_int(&stcb->asoc.refcnt, 1);
|
||||||
SCTP_TCB_UNLOCK(stcb);
|
SCTP_TCB_UNLOCK(stcb);
|
||||||
@ -4756,7 +4756,7 @@ sctp_handle_sack(struct mbuf *m, int offset_seg, int offset_dup,
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
sctp_sowwakeup_locked(stcb->sctp_ep, stcb->sctp_socket);
|
sctp_sowwakeup_locked(stcb->sctp_ep, stcb->sctp_socket);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
#endif
|
#endif
|
||||||
} else {
|
} else {
|
||||||
|
@ -757,7 +757,7 @@ static void
|
|||||||
sctp_handle_abort(struct sctp_abort_chunk *abort,
|
sctp_handle_abort(struct sctp_abort_chunk *abort,
|
||||||
struct sctp_tcb *stcb, struct sctp_nets *net)
|
struct sctp_tcb *stcb, struct sctp_nets *net)
|
||||||
{
|
{
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
struct socket *so;
|
struct socket *so;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
@ -807,7 +807,7 @@ sctp_handle_abort(struct sctp_abort_chunk *abort,
|
|||||||
#ifdef SCTP_ASOCLOG_OF_TSNS
|
#ifdef SCTP_ASOCLOG_OF_TSNS
|
||||||
sctp_print_out_track_log(stcb);
|
sctp_print_out_track_log(stcb);
|
||||||
#endif
|
#endif
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
so = SCTP_INP_SO(stcb->sctp_ep);
|
so = SCTP_INP_SO(stcb->sctp_ep);
|
||||||
atomic_add_int(&stcb->asoc.refcnt, 1);
|
atomic_add_int(&stcb->asoc.refcnt, 1);
|
||||||
SCTP_TCB_UNLOCK(stcb);
|
SCTP_TCB_UNLOCK(stcb);
|
||||||
@ -818,7 +818,7 @@ sctp_handle_abort(struct sctp_abort_chunk *abort,
|
|||||||
stcb->asoc.state |= SCTP_STATE_WAS_ABORTED;
|
stcb->asoc.state |= SCTP_STATE_WAS_ABORTED;
|
||||||
(void)sctp_free_assoc(stcb->sctp_ep, stcb, SCTP_NORMAL_PROC,
|
(void)sctp_free_assoc(stcb->sctp_ep, stcb, SCTP_NORMAL_PROC,
|
||||||
SCTP_FROM_SCTP_INPUT + SCTP_LOC_6);
|
SCTP_FROM_SCTP_INPUT + SCTP_LOC_6);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
#endif
|
#endif
|
||||||
SCTPDBG(SCTP_DEBUG_INPUT2, "sctp_handle_abort: finished\n");
|
SCTPDBG(SCTP_DEBUG_INPUT2, "sctp_handle_abort: finished\n");
|
||||||
@ -860,7 +860,7 @@ sctp_handle_shutdown(struct sctp_shutdown_chunk *cp,
|
|||||||
struct sctp_association *asoc;
|
struct sctp_association *asoc;
|
||||||
int some_on_streamwheel;
|
int some_on_streamwheel;
|
||||||
|
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
struct socket *so;
|
struct socket *so;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
@ -892,7 +892,7 @@ sctp_handle_shutdown(struct sctp_shutdown_chunk *cp,
|
|||||||
asoc->control_pdapi->pdapi_aborted = 1;
|
asoc->control_pdapi->pdapi_aborted = 1;
|
||||||
asoc->control_pdapi = NULL;
|
asoc->control_pdapi = NULL;
|
||||||
SCTP_INP_READ_UNLOCK(stcb->sctp_ep);
|
SCTP_INP_READ_UNLOCK(stcb->sctp_ep);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
so = SCTP_INP_SO(stcb->sctp_ep);
|
so = SCTP_INP_SO(stcb->sctp_ep);
|
||||||
atomic_add_int(&stcb->asoc.refcnt, 1);
|
atomic_add_int(&stcb->asoc.refcnt, 1);
|
||||||
SCTP_TCB_UNLOCK(stcb);
|
SCTP_TCB_UNLOCK(stcb);
|
||||||
@ -906,7 +906,7 @@ sctp_handle_shutdown(struct sctp_shutdown_chunk *cp,
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
sctp_sorwakeup(stcb->sctp_ep, stcb->sctp_socket);
|
sctp_sorwakeup(stcb->sctp_ep, stcb->sctp_socket);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
@ -966,7 +966,7 @@ sctp_handle_shutdown_ack(struct sctp_shutdown_ack_chunk *cp SCTP_UNUSED,
|
|||||||
{
|
{
|
||||||
struct sctp_association *asoc;
|
struct sctp_association *asoc;
|
||||||
|
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
struct socket *so;
|
struct socket *so;
|
||||||
|
|
||||||
so = SCTP_INP_SO(stcb->sctp_ep);
|
so = SCTP_INP_SO(stcb->sctp_ep);
|
||||||
@ -1000,7 +1000,7 @@ sctp_handle_shutdown_ack(struct sctp_shutdown_ack_chunk *cp SCTP_UNUSED,
|
|||||||
asoc->control_pdapi->pdapi_aborted = 1;
|
asoc->control_pdapi->pdapi_aborted = 1;
|
||||||
asoc->control_pdapi = NULL;
|
asoc->control_pdapi = NULL;
|
||||||
SCTP_INP_READ_UNLOCK(stcb->sctp_ep);
|
SCTP_INP_READ_UNLOCK(stcb->sctp_ep);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
atomic_add_int(&stcb->asoc.refcnt, 1);
|
atomic_add_int(&stcb->asoc.refcnt, 1);
|
||||||
SCTP_TCB_UNLOCK(stcb);
|
SCTP_TCB_UNLOCK(stcb);
|
||||||
SCTP_SOCKET_LOCK(so, 1);
|
SCTP_SOCKET_LOCK(so, 1);
|
||||||
@ -1013,7 +1013,7 @@ sctp_handle_shutdown_ack(struct sctp_shutdown_ack_chunk *cp SCTP_UNUSED,
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
sctp_sorwakeup(stcb->sctp_ep, stcb->sctp_socket);
|
sctp_sorwakeup(stcb->sctp_ep, stcb->sctp_socket);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
@ -1037,7 +1037,7 @@ sctp_handle_shutdown_ack(struct sctp_shutdown_ack_chunk *cp SCTP_UNUSED,
|
|||||||
}
|
}
|
||||||
SCTP_STAT_INCR_COUNTER32(sctps_shutdown);
|
SCTP_STAT_INCR_COUNTER32(sctps_shutdown);
|
||||||
/* free the TCB but first save off the ep */
|
/* free the TCB but first save off the ep */
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
atomic_add_int(&stcb->asoc.refcnt, 1);
|
atomic_add_int(&stcb->asoc.refcnt, 1);
|
||||||
SCTP_TCB_UNLOCK(stcb);
|
SCTP_TCB_UNLOCK(stcb);
|
||||||
SCTP_SOCKET_LOCK(so, 1);
|
SCTP_SOCKET_LOCK(so, 1);
|
||||||
@ -1046,7 +1046,7 @@ sctp_handle_shutdown_ack(struct sctp_shutdown_ack_chunk *cp SCTP_UNUSED,
|
|||||||
#endif
|
#endif
|
||||||
(void)sctp_free_assoc(stcb->sctp_ep, stcb, SCTP_NORMAL_PROC,
|
(void)sctp_free_assoc(stcb->sctp_ep, stcb, SCTP_NORMAL_PROC,
|
||||||
SCTP_FROM_SCTP_INPUT + SCTP_LOC_10);
|
SCTP_FROM_SCTP_INPUT + SCTP_LOC_10);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
@ -1132,7 +1132,7 @@ sctp_handle_error(struct sctp_chunkhdr *ch,
|
|||||||
struct sctp_association *asoc;
|
struct sctp_association *asoc;
|
||||||
int adjust;
|
int adjust;
|
||||||
|
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
struct socket *so;
|
struct socket *so;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
@ -1195,7 +1195,7 @@ sctp_handle_error(struct sctp_chunkhdr *ch,
|
|||||||
asoc->max_init_times) {
|
asoc->max_init_times) {
|
||||||
sctp_abort_notification(stcb, 0, 0, NULL, SCTP_SO_NOT_LOCKED);
|
sctp_abort_notification(stcb, 0, 0, NULL, SCTP_SO_NOT_LOCKED);
|
||||||
/* now free the asoc */
|
/* now free the asoc */
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
so = SCTP_INP_SO(stcb->sctp_ep);
|
so = SCTP_INP_SO(stcb->sctp_ep);
|
||||||
atomic_add_int(&stcb->asoc.refcnt, 1);
|
atomic_add_int(&stcb->asoc.refcnt, 1);
|
||||||
SCTP_TCB_UNLOCK(stcb);
|
SCTP_TCB_UNLOCK(stcb);
|
||||||
@ -1205,7 +1205,7 @@ sctp_handle_error(struct sctp_chunkhdr *ch,
|
|||||||
#endif
|
#endif
|
||||||
(void)sctp_free_assoc(stcb->sctp_ep, stcb, SCTP_NORMAL_PROC,
|
(void)sctp_free_assoc(stcb->sctp_ep, stcb, SCTP_NORMAL_PROC,
|
||||||
SCTP_FROM_SCTP_INPUT + SCTP_LOC_11);
|
SCTP_FROM_SCTP_INPUT + SCTP_LOC_11);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
#endif
|
#endif
|
||||||
return (-1);
|
return (-1);
|
||||||
@ -1580,7 +1580,7 @@ sctp_process_cookie_existing(struct mbuf *m, int iphlen, int offset,
|
|||||||
(stcb->sctp_ep->sctp_flags & SCTP_PCB_FLAGS_IN_TCPPOOL)) &&
|
(stcb->sctp_ep->sctp_flags & SCTP_PCB_FLAGS_IN_TCPPOOL)) &&
|
||||||
(inp->sctp_socket->so_qlimit == 0)
|
(inp->sctp_socket->so_qlimit == 0)
|
||||||
) {
|
) {
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
struct socket *so;
|
struct socket *so;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
@ -1592,7 +1592,7 @@ sctp_process_cookie_existing(struct mbuf *m, int iphlen, int offset,
|
|||||||
*/
|
*/
|
||||||
stcb->sctp_ep->sctp_flags |=
|
stcb->sctp_ep->sctp_flags |=
|
||||||
SCTP_PCB_FLAGS_CONNECTED;
|
SCTP_PCB_FLAGS_CONNECTED;
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
so = SCTP_INP_SO(stcb->sctp_ep);
|
so = SCTP_INP_SO(stcb->sctp_ep);
|
||||||
atomic_add_int(&stcb->asoc.refcnt, 1);
|
atomic_add_int(&stcb->asoc.refcnt, 1);
|
||||||
SCTP_TCB_UNLOCK(stcb);
|
SCTP_TCB_UNLOCK(stcb);
|
||||||
@ -1605,7 +1605,7 @@ sctp_process_cookie_existing(struct mbuf *m, int iphlen, int offset,
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
soisconnected(stcb->sctp_socket);
|
soisconnected(stcb->sctp_socket);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
@ -1798,13 +1798,13 @@ sctp_process_cookie_existing(struct mbuf *m, int iphlen, int offset,
|
|||||||
if (((stcb->sctp_ep->sctp_flags & SCTP_PCB_FLAGS_TCPTYPE) ||
|
if (((stcb->sctp_ep->sctp_flags & SCTP_PCB_FLAGS_TCPTYPE) ||
|
||||||
(stcb->sctp_ep->sctp_flags & SCTP_PCB_FLAGS_IN_TCPPOOL)) &&
|
(stcb->sctp_ep->sctp_flags & SCTP_PCB_FLAGS_IN_TCPPOOL)) &&
|
||||||
(inp->sctp_socket->so_qlimit == 0)) {
|
(inp->sctp_socket->so_qlimit == 0)) {
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
struct socket *so;
|
struct socket *so;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
stcb->sctp_ep->sctp_flags |=
|
stcb->sctp_ep->sctp_flags |=
|
||||||
SCTP_PCB_FLAGS_CONNECTED;
|
SCTP_PCB_FLAGS_CONNECTED;
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
so = SCTP_INP_SO(stcb->sctp_ep);
|
so = SCTP_INP_SO(stcb->sctp_ep);
|
||||||
atomic_add_int(&stcb->asoc.refcnt, 1);
|
atomic_add_int(&stcb->asoc.refcnt, 1);
|
||||||
SCTP_TCB_UNLOCK(stcb);
|
SCTP_TCB_UNLOCK(stcb);
|
||||||
@ -1817,7 +1817,7 @@ sctp_process_cookie_existing(struct mbuf *m, int iphlen, int offset,
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
soisconnected(stcb->sctp_socket);
|
soisconnected(stcb->sctp_socket);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
@ -2029,7 +2029,7 @@ sctp_process_cookie_new(struct mbuf *m, int iphlen, int offset,
|
|||||||
struct sockaddr_in6 *sin6;
|
struct sockaddr_in6 *sin6;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
struct socket *so;
|
struct socket *so;
|
||||||
|
|
||||||
so = SCTP_INP_SO(inp);
|
so = SCTP_INP_SO(inp);
|
||||||
@ -2133,14 +2133,14 @@ sctp_process_cookie_new(struct mbuf *m, int iphlen, int offset,
|
|||||||
sh, op_err,
|
sh, op_err,
|
||||||
use_mflowid, mflowid,
|
use_mflowid, mflowid,
|
||||||
vrf_id, port);
|
vrf_id, port);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_TCB_UNLOCK(stcb);
|
SCTP_TCB_UNLOCK(stcb);
|
||||||
SCTP_SOCKET_LOCK(so, 1);
|
SCTP_SOCKET_LOCK(so, 1);
|
||||||
SCTP_TCB_LOCK(stcb);
|
SCTP_TCB_LOCK(stcb);
|
||||||
#endif
|
#endif
|
||||||
(void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC,
|
(void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC,
|
||||||
SCTP_FROM_SCTP_INPUT + SCTP_LOC_16);
|
SCTP_FROM_SCTP_INPUT + SCTP_LOC_16);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
#endif
|
#endif
|
||||||
atomic_subtract_int(&stcb->asoc.refcnt, 1);
|
atomic_subtract_int(&stcb->asoc.refcnt, 1);
|
||||||
@ -2165,13 +2165,13 @@ sctp_process_cookie_new(struct mbuf *m, int iphlen, int offset,
|
|||||||
retval = 0;
|
retval = 0;
|
||||||
if (retval < 0) {
|
if (retval < 0) {
|
||||||
atomic_add_int(&stcb->asoc.refcnt, 1);
|
atomic_add_int(&stcb->asoc.refcnt, 1);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_TCB_UNLOCK(stcb);
|
SCTP_TCB_UNLOCK(stcb);
|
||||||
SCTP_SOCKET_LOCK(so, 1);
|
SCTP_SOCKET_LOCK(so, 1);
|
||||||
SCTP_TCB_LOCK(stcb);
|
SCTP_TCB_LOCK(stcb);
|
||||||
#endif
|
#endif
|
||||||
(void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTP_INPUT + SCTP_LOC_16);
|
(void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTP_INPUT + SCTP_LOC_16);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
#endif
|
#endif
|
||||||
atomic_subtract_int(&stcb->asoc.refcnt, 1);
|
atomic_subtract_int(&stcb->asoc.refcnt, 1);
|
||||||
@ -2182,13 +2182,13 @@ sctp_process_cookie_new(struct mbuf *m, int iphlen, int offset,
|
|||||||
init_offset + sizeof(struct sctp_init_chunk), initack_offset, sh,
|
init_offset + sizeof(struct sctp_init_chunk), initack_offset, sh,
|
||||||
init_src)) {
|
init_src)) {
|
||||||
atomic_add_int(&stcb->asoc.refcnt, 1);
|
atomic_add_int(&stcb->asoc.refcnt, 1);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_TCB_UNLOCK(stcb);
|
SCTP_TCB_UNLOCK(stcb);
|
||||||
SCTP_SOCKET_LOCK(so, 1);
|
SCTP_SOCKET_LOCK(so, 1);
|
||||||
SCTP_TCB_LOCK(stcb);
|
SCTP_TCB_LOCK(stcb);
|
||||||
#endif
|
#endif
|
||||||
(void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTP_INPUT + SCTP_LOC_17);
|
(void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTP_INPUT + SCTP_LOC_17);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
#endif
|
#endif
|
||||||
atomic_subtract_int(&stcb->asoc.refcnt, 1);
|
atomic_subtract_int(&stcb->asoc.refcnt, 1);
|
||||||
@ -2211,13 +2211,13 @@ sctp_process_cookie_new(struct mbuf *m, int iphlen, int offset,
|
|||||||
SCTPDBG(SCTP_DEBUG_AUTH1,
|
SCTPDBG(SCTP_DEBUG_AUTH1,
|
||||||
"COOKIE-ECHO: AUTH failed\n");
|
"COOKIE-ECHO: AUTH failed\n");
|
||||||
atomic_add_int(&stcb->asoc.refcnt, 1);
|
atomic_add_int(&stcb->asoc.refcnt, 1);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_TCB_UNLOCK(stcb);
|
SCTP_TCB_UNLOCK(stcb);
|
||||||
SCTP_SOCKET_LOCK(so, 1);
|
SCTP_SOCKET_LOCK(so, 1);
|
||||||
SCTP_TCB_LOCK(stcb);
|
SCTP_TCB_LOCK(stcb);
|
||||||
#endif
|
#endif
|
||||||
(void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTP_INPUT + SCTP_LOC_18);
|
(void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTP_INPUT + SCTP_LOC_18);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
#endif
|
#endif
|
||||||
atomic_subtract_int(&stcb->asoc.refcnt, 1);
|
atomic_subtract_int(&stcb->asoc.refcnt, 1);
|
||||||
@ -2274,13 +2274,13 @@ sctp_process_cookie_new(struct mbuf *m, int iphlen, int offset,
|
|||||||
#endif
|
#endif
|
||||||
default:
|
default:
|
||||||
atomic_add_int(&stcb->asoc.refcnt, 1);
|
atomic_add_int(&stcb->asoc.refcnt, 1);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_TCB_UNLOCK(stcb);
|
SCTP_TCB_UNLOCK(stcb);
|
||||||
SCTP_SOCKET_LOCK(so, 1);
|
SCTP_SOCKET_LOCK(so, 1);
|
||||||
SCTP_TCB_LOCK(stcb);
|
SCTP_TCB_LOCK(stcb);
|
||||||
#endif
|
#endif
|
||||||
(void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTP_INPUT + SCTP_LOC_19);
|
(void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTP_INPUT + SCTP_LOC_19);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
#endif
|
#endif
|
||||||
atomic_subtract_int(&stcb->asoc.refcnt, 1);
|
atomic_subtract_int(&stcb->asoc.refcnt, 1);
|
||||||
@ -2301,7 +2301,7 @@ sctp_process_cookie_new(struct mbuf *m, int iphlen, int offset,
|
|||||||
* a bit of protection is worth having..
|
* a bit of protection is worth having..
|
||||||
*/
|
*/
|
||||||
stcb->sctp_ep->sctp_flags |= SCTP_PCB_FLAGS_CONNECTED;
|
stcb->sctp_ep->sctp_flags |= SCTP_PCB_FLAGS_CONNECTED;
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
atomic_add_int(&stcb->asoc.refcnt, 1);
|
atomic_add_int(&stcb->asoc.refcnt, 1);
|
||||||
SCTP_TCB_UNLOCK(stcb);
|
SCTP_TCB_UNLOCK(stcb);
|
||||||
SCTP_SOCKET_LOCK(so, 1);
|
SCTP_SOCKET_LOCK(so, 1);
|
||||||
@ -2313,7 +2313,7 @@ sctp_process_cookie_new(struct mbuf *m, int iphlen, int offset,
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
soisconnected(stcb->sctp_socket);
|
soisconnected(stcb->sctp_socket);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
#endif
|
#endif
|
||||||
} else if ((stcb->sctp_ep->sctp_flags & SCTP_PCB_FLAGS_TCPTYPE) &&
|
} else if ((stcb->sctp_ep->sctp_flags & SCTP_PCB_FLAGS_TCPTYPE) &&
|
||||||
@ -2780,7 +2780,7 @@ sctp_handle_cookie_echo(struct mbuf *m, int iphlen, int offset,
|
|||||||
if (so == NULL) {
|
if (so == NULL) {
|
||||||
struct mbuf *op_err;
|
struct mbuf *op_err;
|
||||||
|
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
struct socket *pcb_so;
|
struct socket *pcb_so;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
@ -2791,7 +2791,7 @@ sctp_handle_cookie_echo(struct mbuf *m, int iphlen, int offset,
|
|||||||
sh, op_err,
|
sh, op_err,
|
||||||
use_mflowid, mflowid,
|
use_mflowid, mflowid,
|
||||||
vrf_id, port);
|
vrf_id, port);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
pcb_so = SCTP_INP_SO(*inp_p);
|
pcb_so = SCTP_INP_SO(*inp_p);
|
||||||
atomic_add_int(&(*stcb)->asoc.refcnt, 1);
|
atomic_add_int(&(*stcb)->asoc.refcnt, 1);
|
||||||
SCTP_TCB_UNLOCK((*stcb));
|
SCTP_TCB_UNLOCK((*stcb));
|
||||||
@ -2800,7 +2800,7 @@ sctp_handle_cookie_echo(struct mbuf *m, int iphlen, int offset,
|
|||||||
atomic_subtract_int(&(*stcb)->asoc.refcnt, 1);
|
atomic_subtract_int(&(*stcb)->asoc.refcnt, 1);
|
||||||
#endif
|
#endif
|
||||||
(void)sctp_free_assoc(*inp_p, *stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTP_INPUT + SCTP_LOC_20);
|
(void)sctp_free_assoc(*inp_p, *stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTP_INPUT + SCTP_LOC_20);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(pcb_so, 1);
|
SCTP_SOCKET_UNLOCK(pcb_so, 1);
|
||||||
#endif
|
#endif
|
||||||
return (NULL);
|
return (NULL);
|
||||||
@ -2890,13 +2890,13 @@ sctp_handle_cookie_echo(struct mbuf *m, int iphlen, int offset,
|
|||||||
* Pull it from the incomplete queue and wake the
|
* Pull it from the incomplete queue and wake the
|
||||||
* guy
|
* guy
|
||||||
*/
|
*/
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
atomic_add_int(&(*stcb)->asoc.refcnt, 1);
|
atomic_add_int(&(*stcb)->asoc.refcnt, 1);
|
||||||
SCTP_TCB_UNLOCK((*stcb));
|
SCTP_TCB_UNLOCK((*stcb));
|
||||||
SCTP_SOCKET_LOCK(so, 1);
|
SCTP_SOCKET_LOCK(so, 1);
|
||||||
#endif
|
#endif
|
||||||
soisconnected(so);
|
soisconnected(so);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_TCB_LOCK((*stcb));
|
SCTP_TCB_LOCK((*stcb));
|
||||||
atomic_subtract_int(&(*stcb)->asoc.refcnt, 1);
|
atomic_subtract_int(&(*stcb)->asoc.refcnt, 1);
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
@ -2954,12 +2954,12 @@ sctp_handle_cookie_ack(struct sctp_cookie_ack_chunk *cp SCTP_UNUSED,
|
|||||||
sctp_ulp_notify(SCTP_NOTIFY_ASSOC_UP, stcb, 0, NULL, SCTP_SO_NOT_LOCKED);
|
sctp_ulp_notify(SCTP_NOTIFY_ASSOC_UP, stcb, 0, NULL, SCTP_SO_NOT_LOCKED);
|
||||||
if ((stcb->sctp_ep->sctp_flags & SCTP_PCB_FLAGS_TCPTYPE) ||
|
if ((stcb->sctp_ep->sctp_flags & SCTP_PCB_FLAGS_TCPTYPE) ||
|
||||||
(stcb->sctp_ep->sctp_flags & SCTP_PCB_FLAGS_IN_TCPPOOL)) {
|
(stcb->sctp_ep->sctp_flags & SCTP_PCB_FLAGS_IN_TCPPOOL)) {
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
struct socket *so;
|
struct socket *so;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
stcb->sctp_ep->sctp_flags |= SCTP_PCB_FLAGS_CONNECTED;
|
stcb->sctp_ep->sctp_flags |= SCTP_PCB_FLAGS_CONNECTED;
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
so = SCTP_INP_SO(stcb->sctp_ep);
|
so = SCTP_INP_SO(stcb->sctp_ep);
|
||||||
atomic_add_int(&stcb->asoc.refcnt, 1);
|
atomic_add_int(&stcb->asoc.refcnt, 1);
|
||||||
SCTP_TCB_UNLOCK(stcb);
|
SCTP_TCB_UNLOCK(stcb);
|
||||||
@ -2970,7 +2970,7 @@ sctp_handle_cookie_ack(struct sctp_cookie_ack_chunk *cp SCTP_UNUSED,
|
|||||||
if ((stcb->asoc.state & SCTP_STATE_CLOSED_SOCKET) == 0) {
|
if ((stcb->asoc.state & SCTP_STATE_CLOSED_SOCKET) == 0) {
|
||||||
soisconnected(stcb->sctp_socket);
|
soisconnected(stcb->sctp_socket);
|
||||||
}
|
}
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
@ -3198,7 +3198,7 @@ sctp_handle_shutdown_complete(struct sctp_shutdown_complete_chunk *cp SCTP_UNUSE
|
|||||||
{
|
{
|
||||||
struct sctp_association *asoc;
|
struct sctp_association *asoc;
|
||||||
|
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
struct socket *so;
|
struct socket *so;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
@ -3233,7 +3233,7 @@ sctp_handle_shutdown_complete(struct sctp_shutdown_complete_chunk *cp SCTP_UNUSE
|
|||||||
/* free the TCB */
|
/* free the TCB */
|
||||||
SCTPDBG(SCTP_DEBUG_INPUT2,
|
SCTPDBG(SCTP_DEBUG_INPUT2,
|
||||||
"sctp_handle_shutdown_complete: calls free-asoc\n");
|
"sctp_handle_shutdown_complete: calls free-asoc\n");
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
so = SCTP_INP_SO(stcb->sctp_ep);
|
so = SCTP_INP_SO(stcb->sctp_ep);
|
||||||
atomic_add_int(&stcb->asoc.refcnt, 1);
|
atomic_add_int(&stcb->asoc.refcnt, 1);
|
||||||
SCTP_TCB_UNLOCK(stcb);
|
SCTP_TCB_UNLOCK(stcb);
|
||||||
@ -3242,7 +3242,7 @@ sctp_handle_shutdown_complete(struct sctp_shutdown_complete_chunk *cp SCTP_UNUSE
|
|||||||
atomic_subtract_int(&stcb->asoc.refcnt, 1);
|
atomic_subtract_int(&stcb->asoc.refcnt, 1);
|
||||||
#endif
|
#endif
|
||||||
(void)sctp_free_assoc(stcb->sctp_ep, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTP_INPUT + SCTP_LOC_23);
|
(void)sctp_free_assoc(stcb->sctp_ep, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTP_INPUT + SCTP_LOC_23);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
#endif
|
#endif
|
||||||
return;
|
return;
|
||||||
@ -4429,7 +4429,7 @@ __attribute__((noinline))
|
|||||||
int auth_skipped = 0;
|
int auth_skipped = 0;
|
||||||
int asconf_cnt = 0;
|
int asconf_cnt = 0;
|
||||||
|
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
struct socket *so;
|
struct socket *so;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
@ -4787,7 +4787,7 @@ __attribute__((noinline))
|
|||||||
}
|
}
|
||||||
*offset = length;
|
*offset = length;
|
||||||
if (stcb) {
|
if (stcb) {
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
so = SCTP_INP_SO(inp);
|
so = SCTP_INP_SO(inp);
|
||||||
atomic_add_int(&stcb->asoc.refcnt, 1);
|
atomic_add_int(&stcb->asoc.refcnt, 1);
|
||||||
SCTP_TCB_UNLOCK(stcb);
|
SCTP_TCB_UNLOCK(stcb);
|
||||||
@ -4796,7 +4796,7 @@ __attribute__((noinline))
|
|||||||
atomic_subtract_int(&stcb->asoc.refcnt, 1);
|
atomic_subtract_int(&stcb->asoc.refcnt, 1);
|
||||||
#endif
|
#endif
|
||||||
(void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTP_INPUT + SCTP_LOC_27);
|
(void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTP_INPUT + SCTP_LOC_27);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
@ -5207,7 +5207,7 @@ __attribute__((noinline))
|
|||||||
if ((stcb) && (stcb->asoc.total_output_queue_size)) {
|
if ((stcb) && (stcb->asoc.total_output_queue_size)) {
|
||||||
;
|
;
|
||||||
} else if (stcb) {
|
} else if (stcb) {
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
so = SCTP_INP_SO(inp);
|
so = SCTP_INP_SO(inp);
|
||||||
atomic_add_int(&stcb->asoc.refcnt, 1);
|
atomic_add_int(&stcb->asoc.refcnt, 1);
|
||||||
SCTP_TCB_UNLOCK(stcb);
|
SCTP_TCB_UNLOCK(stcb);
|
||||||
@ -5216,7 +5216,7 @@ __attribute__((noinline))
|
|||||||
atomic_subtract_int(&stcb->asoc.refcnt, 1);
|
atomic_subtract_int(&stcb->asoc.refcnt, 1);
|
||||||
#endif
|
#endif
|
||||||
(void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTP_INPUT + SCTP_LOC_27);
|
(void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTP_INPUT + SCTP_LOC_27);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
#endif
|
#endif
|
||||||
*offset = length;
|
*offset = length;
|
||||||
@ -5370,7 +5370,7 @@ __attribute__((noinline))
|
|||||||
*fwd_tsn_seen = 1;
|
*fwd_tsn_seen = 1;
|
||||||
if (inp->sctp_flags & SCTP_PCB_FLAGS_SOCKET_GONE) {
|
if (inp->sctp_flags & SCTP_PCB_FLAGS_SOCKET_GONE) {
|
||||||
/* We are not interested anymore */
|
/* We are not interested anymore */
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
so = SCTP_INP_SO(inp);
|
so = SCTP_INP_SO(inp);
|
||||||
atomic_add_int(&stcb->asoc.refcnt, 1);
|
atomic_add_int(&stcb->asoc.refcnt, 1);
|
||||||
SCTP_TCB_UNLOCK(stcb);
|
SCTP_TCB_UNLOCK(stcb);
|
||||||
@ -5379,7 +5379,7 @@ __attribute__((noinline))
|
|||||||
atomic_subtract_int(&stcb->asoc.refcnt, 1);
|
atomic_subtract_int(&stcb->asoc.refcnt, 1);
|
||||||
#endif
|
#endif
|
||||||
(void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTP_INPUT + SCTP_LOC_29);
|
(void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTP_INPUT + SCTP_LOC_29);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
#endif
|
#endif
|
||||||
*offset = length;
|
*offset = length;
|
||||||
@ -5415,7 +5415,7 @@ __attribute__((noinline))
|
|||||||
}
|
}
|
||||||
if (inp->sctp_flags & SCTP_PCB_FLAGS_SOCKET_GONE) {
|
if (inp->sctp_flags & SCTP_PCB_FLAGS_SOCKET_GONE) {
|
||||||
/* We are not interested anymore */
|
/* We are not interested anymore */
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
so = SCTP_INP_SO(inp);
|
so = SCTP_INP_SO(inp);
|
||||||
atomic_add_int(&stcb->asoc.refcnt, 1);
|
atomic_add_int(&stcb->asoc.refcnt, 1);
|
||||||
SCTP_TCB_UNLOCK(stcb);
|
SCTP_TCB_UNLOCK(stcb);
|
||||||
@ -5424,7 +5424,7 @@ __attribute__((noinline))
|
|||||||
atomic_subtract_int(&stcb->asoc.refcnt, 1);
|
atomic_subtract_int(&stcb->asoc.refcnt, 1);
|
||||||
#endif
|
#endif
|
||||||
(void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTP_INPUT + SCTP_LOC_30);
|
(void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTP_INPUT + SCTP_LOC_30);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
#endif
|
#endif
|
||||||
*offset = length;
|
*offset = length;
|
||||||
|
@ -3892,7 +3892,7 @@ sctp_lowlevel_chunk_output(struct sctp_inpcb *inp,
|
|||||||
struct udphdr *udp = NULL;
|
struct udphdr *udp = NULL;
|
||||||
uint8_t tos_value;
|
uint8_t tos_value;
|
||||||
|
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
struct socket *so = NULL;
|
struct socket *so = NULL;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
@ -4132,14 +4132,14 @@ sctp_lowlevel_chunk_output(struct sctp_inpcb *inp,
|
|||||||
sctp_packet_log(o_pak);
|
sctp_packet_log(o_pak);
|
||||||
#endif
|
#endif
|
||||||
/* send it out. table id is taken from stcb */
|
/* send it out. table id is taken from stcb */
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
if ((SCTP_BASE_SYSCTL(sctp_output_unlocked)) && (so_locked)) {
|
if ((SCTP_BASE_SYSCTL(sctp_output_unlocked)) && (so_locked)) {
|
||||||
so = SCTP_INP_SO(inp);
|
so = SCTP_INP_SO(inp);
|
||||||
SCTP_SOCKET_UNLOCK(so, 0);
|
SCTP_SOCKET_UNLOCK(so, 0);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
SCTP_IP_OUTPUT(ret, o_pak, ro, stcb, vrf_id);
|
SCTP_IP_OUTPUT(ret, o_pak, ro, stcb, vrf_id);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
if ((SCTP_BASE_SYSCTL(sctp_output_unlocked)) && (so_locked)) {
|
if ((SCTP_BASE_SYSCTL(sctp_output_unlocked)) && (so_locked)) {
|
||||||
atomic_add_int(&stcb->asoc.refcnt, 1);
|
atomic_add_int(&stcb->asoc.refcnt, 1);
|
||||||
SCTP_TCB_UNLOCK(stcb);
|
SCTP_TCB_UNLOCK(stcb);
|
||||||
@ -4480,7 +4480,7 @@ sctp_lowlevel_chunk_output(struct sctp_inpcb *inp,
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
/* send it out. table id is taken from stcb */
|
/* send it out. table id is taken from stcb */
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
if ((SCTP_BASE_SYSCTL(sctp_output_unlocked)) && (so_locked)) {
|
if ((SCTP_BASE_SYSCTL(sctp_output_unlocked)) && (so_locked)) {
|
||||||
so = SCTP_INP_SO(inp);
|
so = SCTP_INP_SO(inp);
|
||||||
SCTP_SOCKET_UNLOCK(so, 0);
|
SCTP_SOCKET_UNLOCK(so, 0);
|
||||||
@ -4491,7 +4491,7 @@ sctp_lowlevel_chunk_output(struct sctp_inpcb *inp,
|
|||||||
sctp_packet_log(o_pak);
|
sctp_packet_log(o_pak);
|
||||||
#endif
|
#endif
|
||||||
SCTP_IP6_OUTPUT(ret, o_pak, (struct route_in6 *)ro, &ifp, stcb, vrf_id);
|
SCTP_IP6_OUTPUT(ret, o_pak, (struct route_in6 *)ro, &ifp, stcb, vrf_id);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
if ((SCTP_BASE_SYSCTL(sctp_output_unlocked)) && (so_locked)) {
|
if ((SCTP_BASE_SYSCTL(sctp_output_unlocked)) && (so_locked)) {
|
||||||
atomic_add_int(&stcb->asoc.refcnt, 1);
|
atomic_add_int(&stcb->asoc.refcnt, 1);
|
||||||
SCTP_TCB_UNLOCK(stcb);
|
SCTP_TCB_UNLOCK(stcb);
|
||||||
|
@ -665,7 +665,7 @@ sysctl_sctp_check(SYSCTL_HANDLER_ARGS)
|
|||||||
#ifdef SCTP_DEBUG
|
#ifdef SCTP_DEBUG
|
||||||
RANGECHK(SCTP_BASE_SYSCTL(sctp_debug_on), SCTPCTL_DEBUG_MIN, SCTPCTL_DEBUG_MAX);
|
RANGECHK(SCTP_BASE_SYSCTL(sctp_debug_on), SCTPCTL_DEBUG_MIN, SCTPCTL_DEBUG_MAX);
|
||||||
#endif
|
#endif
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
RANGECHK(SCTP_BASE_SYSCTL(sctp_output_unlocked), SCTPCTL_OUTPUT_UNLOCKED_MIN, SCTPCTL_OUTPUT_UNLOCKED_MAX);
|
RANGECHK(SCTP_BASE_SYSCTL(sctp_output_unlocked), SCTPCTL_OUTPUT_UNLOCKED_MIN, SCTPCTL_OUTPUT_UNLOCKED_MAX);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
@ -1125,7 +1125,7 @@ SYSCTL_VNET_PROC(_net_inet_sctp, OID_AUTO, debug, CTLTYPE_UINT | CTLFLAG_RW,
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SYSCTL_VNET_PROC(_net_inet_sctp, OID_AUTO, output_unlocked, CTLTYPE_UINT | CTLFLAG_RW,
|
SYSCTL_VNET_PROC(_net_inet_sctp, OID_AUTO, output_unlocked, CTLTYPE_UINT | CTLFLAG_RW,
|
||||||
&SCTP_BASE_SYSCTL(sctp_output_unlocked), 0, sysctl_sctp_check, "IU",
|
&SCTP_BASE_SYSCTL(sctp_output_unlocked), 0, sysctl_sctp_check, "IU",
|
||||||
SCTPCTL_OUTPUT_UNLOCKED_DESC);
|
SCTPCTL_OUTPUT_UNLOCKED_DESC);
|
||||||
|
@ -531,7 +531,7 @@ struct sctp_sysctl {
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
#define SCTPCTL_OUTPUT_UNLOCKED_DESC "Unlock socket when sending packets down to IP."
|
#define SCTPCTL_OUTPUT_UNLOCKED_DESC "Unlock socket when sending packets down to IP."
|
||||||
#define SCTPCTL_OUTPUT_UNLOCKED_MIN 0
|
#define SCTPCTL_OUTPUT_UNLOCKED_MIN 0
|
||||||
#define SCTPCTL_OUTPUT_UNLOCKED_MAX 1
|
#define SCTPCTL_OUTPUT_UNLOCKED_MAX 1
|
||||||
|
@ -224,7 +224,7 @@ sctp_notify(struct sctp_inpcb *inp,
|
|||||||
struct sctp_tcb *stcb,
|
struct sctp_tcb *stcb,
|
||||||
struct sctp_nets *net)
|
struct sctp_nets *net)
|
||||||
{
|
{
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
struct socket *so;
|
struct socket *so;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
@ -283,7 +283,7 @@ sctp_notify(struct sctp_inpcb *inp,
|
|||||||
* with no TCB
|
* with no TCB
|
||||||
*/
|
*/
|
||||||
sctp_abort_notification(stcb, 1, 0, NULL, SCTP_SO_NOT_LOCKED);
|
sctp_abort_notification(stcb, 1, 0, NULL, SCTP_SO_NOT_LOCKED);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
so = SCTP_INP_SO(inp);
|
so = SCTP_INP_SO(inp);
|
||||||
atomic_add_int(&stcb->asoc.refcnt, 1);
|
atomic_add_int(&stcb->asoc.refcnt, 1);
|
||||||
SCTP_TCB_UNLOCK(stcb);
|
SCTP_TCB_UNLOCK(stcb);
|
||||||
@ -292,7 +292,7 @@ sctp_notify(struct sctp_inpcb *inp,
|
|||||||
atomic_subtract_int(&stcb->asoc.refcnt, 1);
|
atomic_subtract_int(&stcb->asoc.refcnt, 1);
|
||||||
#endif
|
#endif
|
||||||
(void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTP_USRREQ + SCTP_LOC_2);
|
(void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTP_USRREQ + SCTP_LOC_2);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
/* SCTP_TCB_UNLOCK(stcb); MT: I think this is not needed. */
|
/* SCTP_TCB_UNLOCK(stcb); MT: I think this is not needed. */
|
||||||
#endif
|
#endif
|
||||||
@ -5842,7 +5842,7 @@ sctp_ctloutput(struct socket *so, struct sockopt *sopt)
|
|||||||
if (INP_CHECK_SOCKAF(so, AF_INET6))
|
if (INP_CHECK_SOCKAF(so, AF_INET6))
|
||||||
error = ip6_ctloutput(so, sopt);
|
error = ip6_ctloutput(so, sopt);
|
||||||
#endif /* INET6 */
|
#endif /* INET6 */
|
||||||
#if defined(INET) && defined (INET6)
|
#if defined(INET) && defined(INET6)
|
||||||
else
|
else
|
||||||
#endif
|
#endif
|
||||||
#ifdef INET
|
#ifdef INET
|
||||||
|
@ -1412,7 +1412,7 @@ sctp_timeout_handler(void *t)
|
|||||||
struct sctp_nets *net;
|
struct sctp_nets *net;
|
||||||
struct sctp_timer *tmr;
|
struct sctp_timer *tmr;
|
||||||
|
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
struct socket *so;
|
struct socket *so;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
@ -1777,7 +1777,7 @@ sctp_timeout_handler(void *t)
|
|||||||
/* Can we free it yet? */
|
/* Can we free it yet? */
|
||||||
SCTP_INP_DECR_REF(inp);
|
SCTP_INP_DECR_REF(inp);
|
||||||
sctp_timer_stop(SCTP_TIMER_TYPE_ASOCKILL, inp, stcb, NULL, SCTP_FROM_SCTPUTIL + SCTP_LOC_1);
|
sctp_timer_stop(SCTP_TIMER_TYPE_ASOCKILL, inp, stcb, NULL, SCTP_FROM_SCTPUTIL + SCTP_LOC_1);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
so = SCTP_INP_SO(inp);
|
so = SCTP_INP_SO(inp);
|
||||||
atomic_add_int(&stcb->asoc.refcnt, 1);
|
atomic_add_int(&stcb->asoc.refcnt, 1);
|
||||||
SCTP_TCB_UNLOCK(stcb);
|
SCTP_TCB_UNLOCK(stcb);
|
||||||
@ -1786,7 +1786,7 @@ sctp_timeout_handler(void *t)
|
|||||||
atomic_subtract_int(&stcb->asoc.refcnt, 1);
|
atomic_subtract_int(&stcb->asoc.refcnt, 1);
|
||||||
#endif
|
#endif
|
||||||
(void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTPUTIL + SCTP_LOC_2);
|
(void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTPUTIL + SCTP_LOC_2);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
#endif
|
#endif
|
||||||
/*
|
/*
|
||||||
@ -2600,7 +2600,7 @@ sctp_notify_assoc_change(uint16_t state, struct sctp_tcb *stcb,
|
|||||||
size_t notif_len, abort_len;
|
size_t notif_len, abort_len;
|
||||||
unsigned int i;
|
unsigned int i;
|
||||||
|
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
struct socket *so;
|
struct socket *so;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
@ -2698,7 +2698,7 @@ sctp_notify_assoc_change(uint16_t state, struct sctp_tcb *stcb,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
/* Wake ANY sleepers */
|
/* Wake ANY sleepers */
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
so = SCTP_INP_SO(stcb->sctp_ep);
|
so = SCTP_INP_SO(stcb->sctp_ep);
|
||||||
if (!so_locked) {
|
if (!so_locked) {
|
||||||
atomic_add_int(&stcb->asoc.refcnt, 1);
|
atomic_add_int(&stcb->asoc.refcnt, 1);
|
||||||
@ -2719,7 +2719,7 @@ sctp_notify_assoc_change(uint16_t state, struct sctp_tcb *stcb,
|
|||||||
}
|
}
|
||||||
sorwakeup(stcb->sctp_socket);
|
sorwakeup(stcb->sctp_socket);
|
||||||
sowwakeup(stcb->sctp_socket);
|
sowwakeup(stcb->sctp_socket);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
if (!so_locked) {
|
if (!so_locked) {
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
}
|
}
|
||||||
@ -3134,7 +3134,7 @@ sctp_notify_partial_delivery_indication(struct sctp_tcb *stcb, uint32_t error,
|
|||||||
}
|
}
|
||||||
if (stcb->sctp_ep && stcb->sctp_socket) {
|
if (stcb->sctp_ep && stcb->sctp_socket) {
|
||||||
/* This should always be the case */
|
/* This should always be the case */
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
struct socket *so;
|
struct socket *so;
|
||||||
|
|
||||||
so = SCTP_INP_SO(stcb->sctp_ep);
|
so = SCTP_INP_SO(stcb->sctp_ep);
|
||||||
@ -3151,7 +3151,7 @@ sctp_notify_partial_delivery_indication(struct sctp_tcb *stcb, uint32_t error,
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
sctp_sorwakeup(stcb->sctp_ep, stcb->sctp_socket);
|
sctp_sorwakeup(stcb->sctp_ep, stcb->sctp_socket);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
if (!so_locked) {
|
if (!so_locked) {
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
}
|
}
|
||||||
@ -3173,7 +3173,7 @@ sctp_notify_shutdown_event(struct sctp_tcb *stcb)
|
|||||||
if ((stcb->sctp_ep->sctp_flags & SCTP_PCB_FLAGS_TCPTYPE) ||
|
if ((stcb->sctp_ep->sctp_flags & SCTP_PCB_FLAGS_TCPTYPE) ||
|
||||||
(stcb->sctp_ep->sctp_flags & SCTP_PCB_FLAGS_IN_TCPPOOL)) {
|
(stcb->sctp_ep->sctp_flags & SCTP_PCB_FLAGS_IN_TCPPOOL)) {
|
||||||
/* mark socket closed for read/write and wakeup! */
|
/* mark socket closed for read/write and wakeup! */
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
struct socket *so;
|
struct socket *so;
|
||||||
|
|
||||||
so = SCTP_INP_SO(stcb->sctp_ep);
|
so = SCTP_INP_SO(stcb->sctp_ep);
|
||||||
@ -3188,7 +3188,7 @@ sctp_notify_shutdown_event(struct sctp_tcb *stcb)
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
socantsendmore(stcb->sctp_socket);
|
socantsendmore(stcb->sctp_socket);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
@ -3830,7 +3830,7 @@ sctp_abort_association(struct sctp_inpcb *inp, struct sctp_tcb *stcb,
|
|||||||
{
|
{
|
||||||
uint32_t vtag;
|
uint32_t vtag;
|
||||||
|
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
struct socket *so;
|
struct socket *so;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
@ -3849,7 +3849,7 @@ sctp_abort_association(struct sctp_inpcb *inp, struct sctp_tcb *stcb,
|
|||||||
vrf_id, port);
|
vrf_id, port);
|
||||||
if (stcb != NULL) {
|
if (stcb != NULL) {
|
||||||
/* Ok, now lets free it */
|
/* Ok, now lets free it */
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
so = SCTP_INP_SO(inp);
|
so = SCTP_INP_SO(inp);
|
||||||
atomic_add_int(&stcb->asoc.refcnt, 1);
|
atomic_add_int(&stcb->asoc.refcnt, 1);
|
||||||
SCTP_TCB_UNLOCK(stcb);
|
SCTP_TCB_UNLOCK(stcb);
|
||||||
@ -3863,7 +3863,7 @@ sctp_abort_association(struct sctp_inpcb *inp, struct sctp_tcb *stcb,
|
|||||||
SCTP_STAT_DECR_GAUGE32(sctps_currestab);
|
SCTP_STAT_DECR_GAUGE32(sctps_currestab);
|
||||||
}
|
}
|
||||||
(void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTPUTIL + SCTP_LOC_4);
|
(void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTPUTIL + SCTP_LOC_4);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
@ -3942,12 +3942,12 @@ sctp_abort_an_association(struct sctp_inpcb *inp, struct sctp_tcb *stcb,
|
|||||||
#endif
|
#endif
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
struct socket *so;
|
struct socket *so;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
so = SCTP_INP_SO(inp);
|
so = SCTP_INP_SO(inp);
|
||||||
#endif
|
#endif
|
||||||
if (stcb == NULL) {
|
if (stcb == NULL) {
|
||||||
@ -3977,7 +3977,7 @@ sctp_abort_an_association(struct sctp_inpcb *inp, struct sctp_tcb *stcb,
|
|||||||
#ifdef SCTP_ASOCLOG_OF_TSNS
|
#ifdef SCTP_ASOCLOG_OF_TSNS
|
||||||
sctp_print_out_track_log(stcb);
|
sctp_print_out_track_log(stcb);
|
||||||
#endif
|
#endif
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
if (!so_locked) {
|
if (!so_locked) {
|
||||||
atomic_add_int(&stcb->asoc.refcnt, 1);
|
atomic_add_int(&stcb->asoc.refcnt, 1);
|
||||||
SCTP_TCB_UNLOCK(stcb);
|
SCTP_TCB_UNLOCK(stcb);
|
||||||
@ -3987,7 +3987,7 @@ sctp_abort_an_association(struct sctp_inpcb *inp, struct sctp_tcb *stcb,
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
(void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTPUTIL + SCTP_LOC_5);
|
(void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTPUTIL + SCTP_LOC_5);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
if (!so_locked) {
|
if (!so_locked) {
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
}
|
}
|
||||||
@ -4475,7 +4475,7 @@ sctp_add_to_readq(struct sctp_inpcb *inp,
|
|||||||
if (sctp_is_feature_on(inp, SCTP_PCB_FLAGS_ZERO_COPY_ACTIVE)) {
|
if (sctp_is_feature_on(inp, SCTP_PCB_FLAGS_ZERO_COPY_ACTIVE)) {
|
||||||
SCTP_ZERO_COPY_EVENT(inp, inp->sctp_socket);
|
SCTP_ZERO_COPY_EVENT(inp, inp->sctp_socket);
|
||||||
} else {
|
} else {
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
struct socket *so;
|
struct socket *so;
|
||||||
|
|
||||||
so = SCTP_INP_SO(inp);
|
so = SCTP_INP_SO(inp);
|
||||||
@ -4496,7 +4496,7 @@ sctp_add_to_readq(struct sctp_inpcb *inp,
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
sctp_sorwakeup(inp, inp->sctp_socket);
|
sctp_sorwakeup(inp, inp->sctp_socket);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
if (!so_locked) {
|
if (!so_locked) {
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
}
|
}
|
||||||
@ -4629,7 +4629,7 @@ sctp_append_to_readq(struct sctp_inpcb *inp,
|
|||||||
if (sctp_is_feature_on(inp, SCTP_PCB_FLAGS_ZERO_COPY_ACTIVE)) {
|
if (sctp_is_feature_on(inp, SCTP_PCB_FLAGS_ZERO_COPY_ACTIVE)) {
|
||||||
SCTP_ZERO_COPY_EVENT(inp, inp->sctp_socket);
|
SCTP_ZERO_COPY_EVENT(inp, inp->sctp_socket);
|
||||||
} else {
|
} else {
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
struct socket *so;
|
struct socket *so;
|
||||||
|
|
||||||
so = SCTP_INP_SO(inp);
|
so = SCTP_INP_SO(inp);
|
||||||
@ -4648,7 +4648,7 @@ sctp_append_to_readq(struct sctp_inpcb *inp,
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
sctp_sorwakeup(inp, inp->sctp_socket);
|
sctp_sorwakeup(inp, inp->sctp_socket);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
@ -4905,7 +4905,7 @@ sctp_release_pr_sctp_chunk(struct sctp_tcb *stcb, struct sctp_tmit_chunk *tp1,
|
|||||||
SCTP_TCB_SEND_UNLOCK(stcb);
|
SCTP_TCB_SEND_UNLOCK(stcb);
|
||||||
}
|
}
|
||||||
if (do_wakeup_routine) {
|
if (do_wakeup_routine) {
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
struct socket *so;
|
struct socket *so;
|
||||||
|
|
||||||
so = SCTP_INP_SO(stcb->sctp_ep);
|
so = SCTP_INP_SO(stcb->sctp_ep);
|
||||||
@ -4923,7 +4923,7 @@ sctp_release_pr_sctp_chunk(struct sctp_tcb *stcb, struct sctp_tmit_chunk *tp1,
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
sctp_sowwakeup(stcb->sctp_ep, stcb->sctp_socket);
|
sctp_sowwakeup(stcb->sctp_ep, stcb->sctp_socket);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
if (!so_locked) {
|
if (!so_locked) {
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
}
|
}
|
||||||
|
@ -395,7 +395,7 @@ sctp6_notify(struct sctp_inpcb *inp,
|
|||||||
struct sctp_tcb *stcb,
|
struct sctp_tcb *stcb,
|
||||||
struct sctp_nets *net)
|
struct sctp_nets *net)
|
||||||
{
|
{
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
struct socket *so;
|
struct socket *so;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
@ -450,7 +450,7 @@ sctp6_notify(struct sctp_inpcb *inp,
|
|||||||
* with no TCB
|
* with no TCB
|
||||||
*/
|
*/
|
||||||
sctp_abort_notification(stcb, 1, 0, NULL, SCTP_SO_NOT_LOCKED);
|
sctp_abort_notification(stcb, 1, 0, NULL, SCTP_SO_NOT_LOCKED);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
so = SCTP_INP_SO(inp);
|
so = SCTP_INP_SO(inp);
|
||||||
atomic_add_int(&stcb->asoc.refcnt, 1);
|
atomic_add_int(&stcb->asoc.refcnt, 1);
|
||||||
SCTP_TCB_UNLOCK(stcb);
|
SCTP_TCB_UNLOCK(stcb);
|
||||||
@ -459,7 +459,7 @@ sctp6_notify(struct sctp_inpcb *inp,
|
|||||||
atomic_subtract_int(&stcb->asoc.refcnt, 1);
|
atomic_subtract_int(&stcb->asoc.refcnt, 1);
|
||||||
#endif
|
#endif
|
||||||
(void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTP_USRREQ + SCTP_LOC_2);
|
(void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTP_USRREQ + SCTP_LOC_2);
|
||||||
#if defined (__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
|
||||||
SCTP_SOCKET_UNLOCK(so, 1);
|
SCTP_SOCKET_UNLOCK(so, 1);
|
||||||
/* SCTP_TCB_UNLOCK(stcb); MT: I think this is not needed. */
|
/* SCTP_TCB_UNLOCK(stcb); MT: I think this is not needed. */
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
Reference in New Issue
Block a user