Revert changes from 3.6.1..3.6.2
Signed-off-by: David Horstmann <david.horstmann@arm.com>
diff --git a/library/pkwrite.c b/library/pkwrite.c
index 2a69844..5e009c5 100644
--- a/library/pkwrite.c
+++ b/library/pkwrite.c
@@ -65,21 +65,17 @@
#if defined(MBEDTLS_USE_PSA_CRYPTO)
if (mbedtls_pk_get_type(pk) == MBEDTLS_PK_OPAQUE) {
uint8_t tmp[PSA_EXPORT_KEY_PAIR_MAX_SIZE];
- size_t tmp_len = 0;
+ size_t len = 0, tmp_len = 0;
if (psa_export_key(pk->priv_id, tmp, sizeof(tmp), &tmp_len) != PSA_SUCCESS) {
return MBEDTLS_ERR_PK_BAD_INPUT_DATA;
}
- /* Ensure there's enough space in the provided buffer before copying data into it. */
- if (tmp_len > (size_t) (*p - buf)) {
- mbedtls_platform_zeroize(tmp, sizeof(tmp));
- return MBEDTLS_ERR_ASN1_BUF_TOO_SMALL;
- }
*p -= tmp_len;
memcpy(*p, tmp, tmp_len);
+ len += tmp_len;
mbedtls_platform_zeroize(tmp, sizeof(tmp));
- return (int) tmp_len;
+ return (int) len;
}
#endif /* MBEDTLS_USE_PSA_CRYPTO */
return mbedtls_rsa_write_key(mbedtls_pk_rsa(*pk), buf, p);
@@ -129,10 +125,6 @@
if (psa_export_public_key(pk->priv_id, buf, sizeof(buf), &len) != PSA_SUCCESS) {
return MBEDTLS_ERR_PK_BAD_INPUT_DATA;
}
- /* Ensure there's enough space in the provided buffer before copying data into it. */
- if (len > (size_t) (*p - start)) {
- return MBEDTLS_ERR_ASN1_BUF_TOO_SMALL;
- }
*p -= len;
memcpy(*p, buf, len);
return (int) len;