Merge pull request #279 from davidhuziji/master

Fix incorrect key derivation operation handle init
diff --git a/api-tests/dev_apis/crypto/test_c018/test_c018.c b/api-tests/dev_apis/crypto/test_c018/test_c018.c
index 39eaacd..cec27a8 100644
--- a/api-tests/dev_apis/crypto/test_c018/test_c018.c
+++ b/api-tests/dev_apis/crypto/test_c018/test_c018.c
@@ -144,7 +144,7 @@
     val->print(PRINT_TEST, "[Check %d] Test psa_cipher_decrypt_setup - Invalid key handle\n",
                                                                                g_test_count++);
 
-    memset(&operation, 0, sizeof(operation));
+    operation = psa_key_derivation_operation_init();
 
     /* Set up a key derivation operation */
     status = val->crypto_function(VAL_CRYPTO_KEY_DERIVATION_SETUP, &operation,
@@ -160,16 +160,16 @@
     status = val->crypto_function(VAL_CRYPTO_KEY_DERIVATION_ABORT, &operation);
     TEST_ASSERT_EQUAL(status, PSA_SUCCESS, TEST_CHECKPOINT_NUM(5));
 
+    val->print(PRINT_TEST, "[Check %d] Test psa_cipher_decrypt_setup - Zero as key handle\n",
+                                                                               g_test_count++);
+
+    operation = psa_key_derivation_operation_init();
+
     /* Set up a key derivation operation */
     status = val->crypto_function(VAL_CRYPTO_KEY_DERIVATION_SETUP, &operation,
              check1[valid_test_input_index].setup_alg);
     TEST_ASSERT_EQUAL(status, PSA_SUCCESS, TEST_CHECKPOINT_NUM(6));
 
-    val->print(PRINT_TEST, "[Check %d] Test psa_cipher_decrypt_setup - Zero as key handle\n",
-                                                                               g_test_count++);
-
-    memset(&operation, 0, sizeof(operation));
-
     /* Provide an input for key derivation or key agreement */
     status = val->crypto_function(VAL_CRYPTO_KEY_DERIVATION_INPUT_KEY, &operation,
              check1[valid_test_input_index].step, 0);