Allow NULL as data in storage client if length is 0

NULL data should not be treated as an invalid input if the length is
also 0 in set/get calls of the secure storage client. This can be used
to create an empty storage or check the existence of a storage uid.

Signed-off-by: Imre Kis <imre.kis@arm.com>
Change-Id: I21c3a261913d5c28ca11cf12755d8b1b5570ed7f
diff --git a/components/service/secure_storage/backend/secure_storage_client/secure_storage_client.c b/components/service/secure_storage/backend/secure_storage_client/secure_storage_client.c
index 555a866..9f200bc 100644
--- a/components/service/secure_storage/backend/secure_storage_client/secure_storage_client.c
+++ b/components/service/secure_storage/backend/secure_storage_client/secure_storage_client.c
@@ -32,7 +32,7 @@
 	(void)client_id;
 
 	/* Validating input parameters */
-	if (p_data == NULL)
+	if (p_data == NULL && data_length != 0)
 		return PSA_ERROR_INVALID_ARGUMENT;
 
 	request_length = sizeof(*request_desc) + data_length;
@@ -92,7 +92,7 @@
 	(void)client_id;
 
 	/* Validating input parameters */
-	if (p_data == NULL)
+	if (p_data == NULL && data_size != 0)
 		return PSA_ERROR_INVALID_ARGUMENT;
 
 	handle = rpc_caller_begin(this_context->client.caller, &request, sizeof(*request_desc));