diff options
author | ae <ae@FreeBSD.org> | 2014-12-07 06:47:00 +0000 |
---|---|---|
committer | ae <ae@FreeBSD.org> | 2014-12-07 06:47:00 +0000 |
commit | 9b3ccf0ab3f462a1a474a55cf53c880f31c4193d (patch) | |
tree | 74d7cb133e1e73ed7eea1ed6e7ca5520ace68b8d /sys/netipsec/key.c | |
parent | 990e36073f550cfaab1e2f8437e6aed2e7006ebc (diff) | |
download | FreeBSD-src-9b3ccf0ab3f462a1a474a55cf53c880f31c4193d.zip FreeBSD-src-9b3ccf0ab3f462a1a474a55cf53c880f31c4193d.tar.gz |
key_getspacq() returns holding the spacq_lock. Unlock it in all cases.
MFC after: 1 week
Sponsored by: Yandex LLC
Diffstat (limited to 'sys/netipsec/key.c')
-rw-r--r-- | sys/netipsec/key.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/netipsec/key.c b/sys/netipsec/key.c index 54d51ff..953f453 100644 --- a/sys/netipsec/key.c +++ b/sys/netipsec/key.c @@ -2313,7 +2313,8 @@ key_spdacquire(struct secpolicy *sp) } else { /* increment counter and do nothing. */ newspacq->count++; - return 0; + SPACQ_UNLOCK(); + return (0); } SPACQ_UNLOCK(); } else { |