summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikos Mavrogiannopoulos <nmav@redhat.com>2014-09-04 10:18:07 +0200
committerNikos Mavrogiannopoulos <nmav@redhat.com>2014-09-04 10:18:07 +0200
commit14a5a48f472064c4e9bb43b1b8292ff9dd9064f4 (patch)
treea62c3f456eac93c4155bced9d69ed8ce8d8170d4
parente91cb99ce0b2e01b0ea1ec9e57415f0e2064560c (diff)
downloadlibtasn1-14a5a48f472064c4e9bb43b1b8292ff9dd9064f4.tar.gz
added more warnings
-rw-r--r--lib/decoding.c20
1 files changed, 16 insertions, 4 deletions
diff --git a/lib/decoding.c b/lib/decoding.c
index 9622fda..0e79aad 100644
--- a/lib/decoding.c
+++ b/lib/decoding.c
@@ -814,13 +814,19 @@ _asn1_get_octet_string (asn1_node node, const unsigned char *der, int der_len,
DECR_LEN(der_len, 1);
if (der[counter] != ASN1_TAG_OCTET_STRING)
- return ASN1_DER_ERROR;
+ {
+ warn();
+ return ASN1_DER_ERROR;
+ }
counter++;
len2 = asn1_get_length_der (der + counter, der_len, &len3);
if (len2 <= 0)
- return ASN1_DER_ERROR;
+ {
+ warn();
+ return ASN1_DER_ERROR;
+ }
DECR_LEN(der_len, len3 + len2);
counter += len3 + len2;
@@ -841,7 +847,10 @@ _asn1_get_octet_string (asn1_node node, const unsigned char *der, int der_len,
ret = _asn1_extract_der_octet (node, der, der_len, flags);
if (ret != ASN1_SUCCESS)
- return ret;
+ {
+ warn();
+ return ret;
+ }
}
}
@@ -849,7 +858,10 @@ _asn1_get_octet_string (asn1_node node, const unsigned char *der, int der_len,
{ /* NOT STRUCTURED */
len2 = asn1_get_length_der (der, der_len, &len3);
if (len2 < 0)
- return ASN1_DER_ERROR;
+ {
+ warn();
+ return ASN1_DER_ERROR;
+ }
DECR_LEN(der_len, len3+len2);
counter = len3 + len2;