From 84f38e6d7b4a33affbf18b1e04c09dbf8cef67f3 Mon Sep 17 00:00:00 2001
From: Fredrik Thulin <fredrik@thulin.net>
Date: Fri, 18 Jan 2013 16:51:40 +0100
Subject: [PATCH] Guard against NULL from byte buffers/arrays.

Two potential issues reported by clang.
---
 gck-rpc-dispatch.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/gck-rpc-dispatch.c b/gck-rpc-dispatch.c
index 624d9d0..9bf2fa1 100644
--- a/gck-rpc-dispatch.c
+++ b/gck-rpc-dispatch.c
@@ -861,6 +861,7 @@ static CK_RV rpc_C_Initialize(CallState * cs)
 
 		/* Check to make sure the header matches */
 		if (n_handshake != GCK_RPC_HANDSHAKE_LEN ||
+		    handshake == NULL_PTR ||
 		    memcmp(handshake, GCK_RPC_HANDSHAKE, n_handshake) != 0) {
 			gck_rpc_warn
 			    ("invalid handshake received from connecting module");
@@ -1978,6 +1979,9 @@ static CK_RV rpc_C_GenerateRandom(CallState * cs)
 	BEGIN_CALL(C_GenerateRandom);
 	IN_ULONG(session);
 	IN_BYTE_BUFFER(random_data, random_len);
+	if (random_len == NULL_PTR) {
+		_ret = PARSE_ERROR; goto _cleanup;
+	}
 	PROCESS_CALL((session, random_data, *random_len));
 	OUT_BYTE_ARRAY(random_data, random_len);
 	END_CALL;
-- 
GitLab