summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikos Mavrogiannopoulos <nmav@gnutls.org>2018-01-21 11:36:20 +0100
committerNikos Mavrogiannopoulos <nmav@gnutls.org>2018-01-23 20:36:47 +0100
commitd6e26764281f8dff58eb11514e561232e7ac3373 (patch)
tree9bfcbc7983075cba74e4b92ada93b18f5ee2dbed
parent35aad4a8c5ce43bde6f55cdd50733581a858c4bd (diff)
downloadgnutls-d6e26764281f8dff58eb11514e561232e7ac3373.tar.gz
pk: document need for the generic BER decoder
Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
-rw-r--r--lib/pk.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/pk.c b/lib/pk.c
index e736242fd8..be1d8b6a85 100644
--- a/lib/pk.c
+++ b/lib/pk.c
@@ -189,6 +189,8 @@ _gnutls_decode_ber_rs(const gnutls_datum_t * sig_value, bigint_t * r,
return _gnutls_asn2err(result);
}
+ /* rfc3279 doesn't specify whether Dss-Sig-Value is encoded
+ * as DER or BER. As such we do not restrict to the DER subset. */
result =
asn1_der_decoding(&sig, sig_value->data, sig_value->size,
NULL);
@@ -262,6 +264,8 @@ _gnutls_decode_ber_rs_raw(const gnutls_datum_t * sig_value, gnutls_datum_t *r,
return _gnutls_asn2err(result);
}
+ /* rfc3279 doesn't specify whether Dss-Sig-Value is encoded
+ * as DER or BER. As such we do not restrict to the DER subset. */
result =
asn1_der_decoding(&sig, sig_value->data, sig_value->size,
NULL);
@@ -546,6 +550,8 @@ gnutls_decode_ber_digest_info(const gnutls_datum_t * info,
return _gnutls_asn2err(result);
}
+ /* rfc2313 required BER encoding of that field, thus
+ * we don't restrict libtasn1 to DER subset */
result = asn1_der_decoding(&dinfo, info->data, info->size, NULL);
if (result != ASN1_SUCCESS) {
gnutls_assert();