Make usage of pake input getters

Signed-off-by: Przemek Stekiel <przemyslaw.stekiel@mobica.com>
diff --git a/library/psa_crypto_pake.c b/library/psa_crypto_pake.c
index da10cdd..1a7725f 100644
--- a/library/psa_crypto_pake.c
+++ b/library/psa_crypto_pake.c
@@ -204,13 +204,25 @@
                                     const psa_crypto_driver_pake_inputs_t *inputs)
 {
     psa_status_t status = PSA_ERROR_CORRUPTION_DETECTED;
+    size_t password_len = 0;
+    psa_pake_role_t role = PSA_PAKE_ROLE_NONE;
+    psa_pake_cipher_suite_t cipher_suite = psa_pake_cipher_suite_init();
+    size_t actual_password_len = 0;
 
-    uint8_t *password = inputs->password;
-    size_t password_len = inputs->password_len;
-    psa_pake_role_t role = inputs->role;
-    psa_pake_cipher_suite_t cipher_suite = inputs->cipher_suite;
+    status = psa_crypto_driver_pake_get_password_len(inputs, &password_len);
+    if (status != PSA_SUCCESS) {
+        return status;
+    }
 
-    memset(operation, 0, sizeof(mbedtls_psa_pake_operation_t));
+    status = psa_crypto_driver_pake_get_role(inputs, &role);
+    if (status != PSA_SUCCESS) {
+        return status;
+    }
+
+    status = psa_crypto_driver_pake_get_cipher_suite(inputs, &cipher_suite);
+    if (status != PSA_SUCCESS) {
+        return status;
+    }
 
 #if defined(MBEDTLS_PSA_BUILTIN_ALG_JPAKE)
     if (cipher_suite.algorithm == PSA_ALG_JPAKE) {
@@ -236,8 +248,13 @@
             goto error;
         }
 
-        memcpy(operation->password, password, password_len);
-        operation->password_len = password_len;
+        status = psa_crypto_driver_pake_get_password(inputs, operation->password,
+                                                     password_len, &actual_password_len);
+        if (status != PSA_SUCCESS) {
+            goto error;
+        }
+
+        operation->password_len = actual_password_len;
         operation->role = role;
         operation->alg = cipher_suite.algorithm;