Merge pull request #9278 from valeriosetti/fix-psasim-logs

psa_sim: improve log prints
This commit is contained in:
Tom Cosgrove 2024-06-19 11:03:05 +01:00 committed by GitHub
commit 125440d344
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
7 changed files with 34 additions and 22 deletions

View File

@ -13,20 +13,18 @@
#if defined(DEBUG)
#define INFO(fmt, ...) \
fprintf(stdout, "Info (%s - %d): " fmt "\n", __FILE__, __LINE__, ##__VA_ARGS__)
#else /* !DEBUG */
#define INFO(...)
#endif /* DEBUG*/
#define ERROR(fmt, ...) \
fprintf(stdout, "Error (%s - %d): " fmt "\n", __FILE__, __LINE__, ##__VA_ARGS__)
fprintf(stderr, "Error (%s - %d): " fmt "\n", __FILE__, __LINE__, ##__VA_ARGS__)
#define FATAL(fmt, ...) \
{ \
fprintf(stdout, "Fatal (%s - %d): " fmt "\n", __FILE__, __LINE__, ##__VA_ARGS__); \
fprintf(stderr, "Fatal (%s - %d): " fmt "\n", __FILE__, __LINE__, ##__VA_ARGS__); \
abort(); \
}
#else /* DEBUG */
#define INFO(...)
#define ERROR(...)
#define FATAL(...)
#endif /* DEBUG*/
#define PROJECT_ID 'M'
#define PATHNAMESIZE 256

View File

@ -7,12 +7,14 @@
/* Includes from mbedtls */
#include "psa/crypto.h"
#include "util.h"
int main()
{
/* psa_crypto_init() connects to the server */
psa_status_t status = psa_crypto_init();
if (status != PSA_SUCCESS) {
ERROR("psa_crypto_init returned %d", status);
return 1;
}

View File

@ -199,7 +199,6 @@ static psa_status_t process_response(int rx_qid, vectors_t *vecs, int type,
default:
FATAL(" ERROR: unknown internal message type: %ld",
response.message_type);
return ret;
}
}
}
@ -301,10 +300,10 @@ psa_handle_t psa_connect(uint32_t sid, uint32_t minor_version)
handles[idx].valid = 1;
return idx;
} else {
INFO("Server didn't like you");
ERROR("Server didn't like you");
}
} else {
INFO("Couldn't contact RoT service. Does it exist?");
ERROR("Couldn't contact RoT service. Does it exist?");
if (__psa_ff_client_security_state == 0) {
ERROR("Invalid SID");
@ -339,7 +338,7 @@ uint32_t psa_version(uint32_t sid)
}
}
}
INFO("psa_version failed: does the service exist?");
ERROR("psa_version failed: does the service exist?");
return PSA_VERSION_NONE;
}

View File

@ -22,7 +22,7 @@
#include "psa/crypto.h"
#define CLIENT_PRINT(fmt, ...) \
PRINT("Client: " fmt, ##__VA_ARGS__)
INFO("Client: " fmt, ##__VA_ARGS__)
static psa_handle_t handle = -1;

View File

@ -302,7 +302,7 @@ sub client_calls_header
#include "psa/crypto.h"
#define CLIENT_PRINT(fmt, ...) \
PRINT("Client: " fmt, ##__VA_ARGS__)
INFO("Client: " fmt, ##__VA_ARGS__)
static psa_handle_t handle = -1;

View File

@ -10,6 +10,7 @@
*/
#include "psa_sim_serialise.h"
#include "util.h"
#include <stdlib.h>
#include <string.h>
@ -71,8 +72,7 @@ static ssize_t allocate_hash_operation_slot(void)
{
psasim_client_handle_t handle = next_hash_operation_handle++;
if (next_hash_operation_handle == 0) { /* wrapped around */
fprintf(stderr, "MAX HASH HANDLES REACHED\n");
exit(1);
FATAL("Hash operation handle wrapped");
}
for (ssize_t i = 0; i < MAX_LIVE_HANDLES_PER_CLASS; i++) {
@ -82,6 +82,8 @@ static ssize_t allocate_hash_operation_slot(void)
}
}
ERROR("All slots are currently used. Unable to allocate a new one.");
return -1; /* all in use */
}
@ -94,7 +96,9 @@ static ssize_t find_hash_slot_by_handle(psasim_client_handle_t handle)
}
}
return -1; /* all in use */
ERROR("Unable to find slot by handle %u", handle);
return -1; /* not found */
}
static psa_aead_operation_t aead_operations[MAX_LIVE_HANDLES_PER_CLASS];
@ -106,8 +110,7 @@ static ssize_t allocate_aead_operation_slot(void)
{
psasim_client_handle_t handle = next_aead_operation_handle++;
if (next_aead_operation_handle == 0) { /* wrapped around */
fprintf(stderr, "MAX HASH HANDLES REACHED\n");
exit(1);
FATAL("Aead operation handle wrapped");
}
for (ssize_t i = 0; i < MAX_LIVE_HANDLES_PER_CLASS; i++) {
@ -117,6 +120,8 @@ static ssize_t allocate_aead_operation_slot(void)
}
}
ERROR("All slots are currently used. Unable to allocate a new one.");
return -1; /* all in use */
}
@ -129,7 +134,9 @@ static ssize_t find_aead_slot_by_handle(psasim_client_handle_t handle)
}
}
return -1; /* all in use */
ERROR("Unable to find slot by handle %u", handle);
return -1; /* not found */
}
size_t psasim_serialise_begin_needs(void)

View File

@ -724,6 +724,7 @@ sub c_header
*/
#include "psa_sim_serialise.h"
#include "util.h"
#include <stdlib.h>
#include <string.h>
@ -788,6 +789,8 @@ sub define_operation_type_data_and_functions
{
my ($type) = @_; # e.g. 'hash' rather than 'psa_hash_operation_t'
my $utype = ucfirst($type);
return <<EOF;
static psa_${type}_operation_t ${type}_operations[MAX_LIVE_HANDLES_PER_CLASS];
@ -799,8 +802,7 @@ static ssize_t allocate_${type}_operation_slot(void)
{
psasim_client_handle_t handle = next_${type}_operation_handle++;
if (next_${type}_operation_handle == 0) { /* wrapped around */
fprintf(stderr, "MAX HASH HANDLES REACHED\\n");
exit(1);
FATAL("$utype operation handle wrapped");
}
for (ssize_t i = 0; i < MAX_LIVE_HANDLES_PER_CLASS; i++) {
@ -810,6 +812,8 @@ static ssize_t allocate_${type}_operation_slot(void)
}
}
ERROR("All slots are currently used. Unable to allocate a new one.");
return -1; /* all in use */
}
@ -822,7 +826,9 @@ static ssize_t find_${type}_slot_by_handle(psasim_client_handle_t handle)
}
}
return -1; /* all in use */
ERROR("Unable to find slot by handle %u", handle);
return -1; /* not found */
}
EOF
}