summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikos Mavrogiannopoulos <nmav@redhat.com>2014-09-04 10:18:34 +0200
committerNikos Mavrogiannopoulos <nmav@redhat.com>2014-09-04 10:26:04 +0200
commitfe75e285f0365cd87d836713fdb8b3a74c194ddb (patch)
tree9fecf3899371b81f603ff2850d61c1b73e23f6b2
parent426df66845aed01c12d5939dad8b7c41e59ac72a (diff)
downloadlibtasn1-fe75e285f0365cd87d836713fdb8b3a74c194ddb.tar.gz
corrected regression which caused the failure of octet string extraction
This affected octet strings placed at the end of the structure. Fixes issue with OCSP response parsing in gnutls.
-rw-r--r--lib/decoding.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/decoding.c b/lib/decoding.c
index 4fbbabb..3e6be91 100644
--- a/lib/decoding.c
+++ b/lib/decoding.c
@@ -720,6 +720,7 @@ _asn1_get_octet_string (asn1_node node, const unsigned char *der, int der_len, i
{
int len2, len3, counter, tot_len, indefinite;
int result;
+ int orig_der_len = der_len;
counter = 0;
@@ -777,7 +778,7 @@ _asn1_get_octet_string (asn1_node node, const unsigned char *der, int der_len, i
asn1_length_der (tot_len, temp, &len2);
_asn1_set_value (node, temp, len2);
- ret = _asn1_extract_der_octet (node, der, der_len);
+ ret = _asn1_extract_der_octet (node, der, orig_der_len);
if (ret != ASN1_SUCCESS)
return ret;