summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/util/asn1.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/util/asn1.c b/lib/util/asn1.c
index 90f950a1491..9f4924c50c2 100644
--- a/lib/util/asn1.c
+++ b/lib/util/asn1.c
@@ -940,7 +940,9 @@ bool asn1_read_enumerated(struct asn1_data *data, int *v)
if (!asn1_start_tag(data, ASN1_ENUMERATED)) return false;
while (!data->has_error && asn1_tag_remaining(data)>0) {
uint8_t b;
- asn1_read_uint8(data, &b);
+ if (!asn1_read_uint8(data, &b)) {
+ return false;
+ }
*v = (*v << 8) + b;
}
return asn1_end_tag(data);