Added framework as a flattened directory
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
diff --git a/framework/psasim/test/client.c b/framework/psasim/test/client.c
new file mode 100644
index 0000000..c768a71
--- /dev/null
+++ b/framework/psasim/test/client.c
@@ -0,0 +1,48 @@
+/* psasim test client */
+
+/*
+ * Copyright The Mbed TLS Contributors
+ * SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
+ */
+
+#include <psa/client.h>
+#include "psa_manifest/sid.h"
+#include <stdio.h>
+#include <unistd.h>
+
+int main()
+{
+
+ const char *text = "FOOBARCOOL!!";
+
+ char output[100] = { 0 };
+ printf("My PID is %d\n", getpid());
+
+ printf("The version of the service is %u\n", psa_version(PSA_SID_SHA256_SID));
+ psa_handle_t h = psa_connect(PSA_SID_SHA256_SID, 1);
+
+ if (h < 0) {
+ printf("Couldn't connect %d\n", h);
+ return 1;
+ } else {
+ int type = 2;
+ puts("Calling!");
+ puts("Trying without invec");
+ printf("Answer to my call was %d (no invec)\n", psa_call(h, type, NULL, 0, NULL, 0));
+ psa_invec invecs[1];
+ psa_outvec outvecs[1];
+ invecs[0].base = text;
+ invecs[0].len = 24;
+ outvecs[0].base = output;
+ outvecs[0].len = 99;
+
+ printf("My iovec size should be %lu\n", invecs[0].len);
+ printf("Answer to my call was %d (with invec)\n", psa_call(h, type, invecs, 1, outvecs, 1));
+ printf("Here's the payload I recieved: %s\n", output);
+ printf("Apparently the server wrote %lu bytes in outvec %d\n", outvecs[0].len, 0);
+ puts("Closing handle");
+ psa_close(h);
+ }
+
+ return 0;
+}