summaryrefslogtreecommitdiff
path: root/usr/src/lib/pkcs11/pkcs11_kernel/common/kernelDigest.c
diff options
context:
space:
mode:
authorJason King <jason.king@joyent.com>2018-05-30 17:19:18 -0500
committerRichard Lowe <richlowe@richlowe.net>2018-08-07 19:46:09 +0000
commit0e986b9d87352cd82909c748e7f684afe0ed579f (patch)
treef22905e81904ef4d744b43e89d9d86c25b0c75d0 /usr/src/lib/pkcs11/pkcs11_kernel/common/kernelDigest.c
parentd8873b3136f0985c9e33ff8801644e1b4253b36c (diff)
downloadillumos-joyent-0e986b9d87352cd82909c748e7f684afe0ed579f.tar.gz
9698 pkcs11 C_Digest() is too restrictive in input
Reviewed by: Dan McDonald <danmcd@joyent.com> Reviewed by: Robert Mustacchi <rm@joyent.com> Reviewed by: Yuri Pankov <yuripv@yuripv.net> Reviewed by: Igor Kozhukhov <igor@dilos.org> Reviewed by: Matt Barden <matt.barden@nexenta.com> Approved by: Richard Lowe <richlowe@richlowe.net>
Diffstat (limited to 'usr/src/lib/pkcs11/pkcs11_kernel/common/kernelDigest.c')
-rw-r--r--usr/src/lib/pkcs11/pkcs11_kernel/common/kernelDigest.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/usr/src/lib/pkcs11/pkcs11_kernel/common/kernelDigest.c b/usr/src/lib/pkcs11/pkcs11_kernel/common/kernelDigest.c
index ec65a97caf..9b9ad981d5 100644
--- a/usr/src/lib/pkcs11/pkcs11_kernel/common/kernelDigest.c
+++ b/usr/src/lib/pkcs11/pkcs11_kernel/common/kernelDigest.c
@@ -22,6 +22,7 @@
/*
* Copyright 2009 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
+ * Copyright 2018, Joyent, Inc.
*/
#include <pthread.h>
@@ -158,7 +159,7 @@ C_Digest(CK_SESSION_HANDLE hSession, CK_BYTE_PTR pData, CK_ULONG ulDataLen,
if (rv != CKR_OK)
return (rv);
- if (pData == NULL || pulDigestLen == NULL) {
+ if ((pData == NULL && ulDataLen != 0) || pulDigestLen == NULL) {
rv = CKR_ARGUMENTS_BAD;
goto clean_exit;
}