Extend PSA_USAGE_SIGN/VERIFY_HASH key policies

According to the PSA specification the PSA_USAGE_SIGN_HASH has the
permission to sign a message as PSA_USAGE_SIGN_MESSAGE. Similarly the
PSA_USAGE_VERIFY_HASH has the permission to verify a message as
PSA_USAGE_VERIFY_MESSAGE. These permission will also be present when
the application queries the usage flags of the key.

Signed-off-by: gabor-mezei-arm <gabor.mezei@arm.com>
diff --git a/include/psa/crypto_struct.h b/include/psa/crypto_struct.h
index 47012fd..aee4002 100644
--- a/include/psa/crypto_struct.h
+++ b/include/psa/crypto_struct.h
@@ -394,6 +394,12 @@
 static inline void psa_set_key_usage_flags(psa_key_attributes_t *attributes,
                                            psa_key_usage_t usage_flags)
 {
+    if( usage_flags & PSA_KEY_USAGE_SIGN_HASH )
+        usage_flags |= PSA_KEY_USAGE_SIGN_MESSAGE;
+
+    if( usage_flags & PSA_KEY_USAGE_VERIFY_HASH )
+        usage_flags |= PSA_KEY_USAGE_VERIFY_MESSAGE;
+
     attributes->core.policy.usage = usage_flags;
 }