summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorAngelos D. Keromytis <angelos@cvs.openbsd.org>2000-07-03 20:38:35 +0000
committerAngelos D. Keromytis <angelos@cvs.openbsd.org>2000-07-03 20:38:35 +0000
commit36f85d779a2de6d33c48908bf950c32ae88bf615 (patch)
tree5b9c29157fe691b20b47880ee2e655ea3424d51a /sys
parentd18437e4475f68e8e7c843f4ee2461458e82ebae (diff)
Fix tail queue leakage (zzlevo@dd.chalmers.se)
Diffstat (limited to 'sys')
-rw-r--r--sys/crypto/crypto.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/sys/crypto/crypto.c b/sys/crypto/crypto.c
index d080dbcd9f6..b09ece09ce6 100644
--- a/sys/crypto/crypto.c
+++ b/sys/crypto/crypto.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: crypto.c,v 1.11 2000/06/20 05:39:32 angelos Exp $ */
+/* $OpenBSD: crypto.c,v 1.12 2000/07/03 20:38:34 angelos Exp $ */
/*
* The author of this code is Angelos D. Keromytis (angelos@cis.upenn.edu)
@@ -289,7 +289,7 @@ crypto_dispatch(struct cryptop *crp)
if (crp_req_queue == NULL)
crp_req_queue = crp;
else
- crp->crp_next = NULL;
+ *crp_req_queue_tail = crp;
crp_req_queue_tail = &(crp->crp_next);
wakeup((caddr_t) &crp_req_queue);
@@ -476,11 +476,6 @@ crypto_thread(void)
/* Remove from the queue */
crp_req_queue = crp->crp_next;
- if (crp_req_queue)
- crp_req_queue_tail = &crp_req_queue->crp_next;
- else
- crp_req_queue_tail = NULL;
-
splx(s);
crypto_invoke(crp);