From ed64732b73d604e5209b95d31f2b855b1a4d11f4 Mon Sep 17 00:00:00 2001 From: Michael Brown Date: Tue, 27 Mar 2012 14:58:45 +0100 Subject: [PATCH] [crypto] Add an explicit "RSA signature incorrect" error message Signed-off-by: Michael Brown --- src/crypto/rsa.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/crypto/rsa.c b/src/crypto/rsa.c index 62f52c95..be2696ba 100644 --- a/src/crypto/rsa.c +++ b/src/crypto/rsa.c @@ -39,6 +39,12 @@ FILE_LICENCE ( GPL2_OR_LATER ); * RSA is documented in RFC 3447. */ +/* Disambiguate the various error causes */ +#define EACCES_VERIFY \ + __einfo_error ( EINFO_EACCES_VERIFY ) +#define EINFO_EACCES_VERIFY \ + __einfo_uniqify ( EINFO_EACCES, 0x01, "RSA signature incorrect" ) + /** "rsaEncryption" object identifier */ static uint8_t oid_rsa_encryption[] = { ASN1_OID_RSAENCRYPTION }; @@ -610,7 +616,7 @@ static int rsa_verify ( void *ctx, struct digest_algorithm *digest, if ( memcmp ( actual, expected, context->max_len ) != 0 ) { DBGC ( context, "RSA %p signature verification failed\n", context ); - return -EACCES; + return -EACCES_VERIFY; } DBGC ( context, "RSA %p signature verified successfully\n", context );