summaryrefslogtreecommitdiffstats
path: root/crypto/algapi.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2009-09-05 14:51:45 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2009-09-05 14:51:45 -0700
commite9ee3a54a164c249a0a576c403eba367a6d97be5 (patch)
treebd1200f8d3c7481aa152cbb277fb79e181bb34fd /crypto/algapi.c
parent3bb314f01c189f0c48c0946424955c6d8ddce3d8 (diff)
parent0c7d400fafaeab6014504a6a6249f01bac7f7db4 (diff)
downloadlinux-e9ee3a54a164c249a0a576c403eba367a6d97be5.tar.bz2
Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: crypto: skcipher - Fix skcipher_dequeue_givcrypt NULL test
Diffstat (limited to 'crypto/algapi.c')
-rw-r--r--crypto/algapi.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/crypto/algapi.c b/crypto/algapi.c
index 56c62e2858d5..df0863d56995 100644
--- a/crypto/algapi.c
+++ b/crypto/algapi.c
@@ -692,7 +692,7 @@ out:
}
EXPORT_SYMBOL_GPL(crypto_enqueue_request);
-struct crypto_async_request *crypto_dequeue_request(struct crypto_queue *queue)
+void *__crypto_dequeue_request(struct crypto_queue *queue, unsigned int offset)
{
struct list_head *request;
@@ -707,7 +707,14 @@ struct crypto_async_request *crypto_dequeue_request(struct crypto_queue *queue)
request = queue->list.next;
list_del(request);
- return list_entry(request, struct crypto_async_request, list);
+ return (char *)list_entry(request, struct crypto_async_request, list) -
+ offset;
+}
+EXPORT_SYMBOL_GPL(__crypto_dequeue_request);
+
+struct crypto_async_request *crypto_dequeue_request(struct crypto_queue *queue)
+{
+ return __crypto_dequeue_request(queue, 0);
}
EXPORT_SYMBOL_GPL(crypto_dequeue_request);