pem: fix return values in pem_check_pkcs_padding()
Return MBEDTLS_ERR_PEM_PASSWORD_MISMATCH instead of
MBEDTLS_ERR_PEM_BAD_INPUT_DATA in case of errors.
This commit also fix related failures in test pkparse and
pem test suites.
Signed-off-by: Valerio Setti <valerio.setti@nordicsemi.no>
diff --git a/library/pem.c b/library/pem.c
index 48180ee..1b1edc0 100644
--- a/library/pem.c
+++ b/library/pem.c
@@ -248,14 +248,14 @@
size_t i;
if (pad_len > input_len) {
- return MBEDTLS_ERR_PEM_BAD_INPUT_DATA;
+ return MBEDTLS_ERR_PEM_PASSWORD_MISMATCH;
}
*data_len = input_len - pad_len;
for (i = *data_len; i < input_len; i++) {
if (input[i] != pad_len) {
- return MBEDTLS_ERR_PEM_BAD_INPUT_DATA;
+ return MBEDTLS_ERR_PEM_PASSWORD_MISMATCH;
}
}