summaryrefslogtreecommitdiffstats
path: root/sys/netinet/sctp_var.h
diff options
context:
space:
mode:
authortuexen <tuexen@FreeBSD.org>2011-05-08 09:11:59 +0000
committertuexen <tuexen@FreeBSD.org>2011-05-08 09:11:59 +0000
commitf237c9d1bd2c10286b14fbc7c53110782a9ec164 (patch)
tree66156b7445130d0f2286124ccd8bbde0ba209ba4 /sys/netinet/sctp_var.h
parentb5e32df2e047c30254644ec28a836794b00a4e48 (diff)
downloadFreeBSD-src-f237c9d1bd2c10286b14fbc7c53110782a9ec164.zip
FreeBSD-src-f237c9d1bd2c10286b14fbc7c53110782a9ec164.tar.gz
Fix a locking issue showing up on Mac OS X when subscribing to
authentication events. DTLS/SCTP renegotiations trigger the bug. MFC after: 2 weeks.
Diffstat (limited to 'sys/netinet/sctp_var.h')
-rw-r--r--sys/netinet/sctp_var.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/sys/netinet/sctp_var.h b/sys/netinet/sctp_var.h
index c972a16..1e17900 100644
--- a/sys/netinet/sctp_var.h
+++ b/sys/netinet/sctp_var.h
@@ -87,9 +87,9 @@ extern struct pr_usrreqs sctp_usrreqs;
} \
}
-#define sctp_free_a_strmoq(_stcb, _strmoq) { \
+#define sctp_free_a_strmoq(_stcb, _strmoq, _so_locked) { \
if ((_strmoq)->holds_key_ref) { \
- sctp_auth_key_release(stcb, sp->auth_keyid); \
+ sctp_auth_key_release(stcb, sp->auth_keyid, _so_locked); \
(_strmoq)->holds_key_ref = 0; \
} \
SCTP_ZONE_FREE(SCTP_BASE_INFO(ipi_zone_strmoq), (_strmoq)); \
@@ -105,9 +105,9 @@ extern struct pr_usrreqs sctp_usrreqs;
} \
}
-#define sctp_free_a_chunk(_stcb, _chk) { \
+#define sctp_free_a_chunk(_stcb, _chk, _so_locked) { \
if ((_chk)->holds_key_ref) {\
- sctp_auth_key_release((_stcb), (_chk)->auth_keyid); \
+ sctp_auth_key_release((_stcb), (_chk)->auth_keyid, _so_locked); \
(_chk)->holds_key_ref = 0; \
} \
if (_stcb) { \
OpenPOWER on IntegriCloud