Use ctype(3) in a more standards-conformant way. Fixes build on NetBSD. Fixed: 483 Change-Id: I329eb327b67590828a3891f77a2cbbee5ec7affc Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/51705 Reviewed-by: David Benjamin <davidben@google.com> Reviewed-by: Adam Langley <agl@google.com> Commit-Queue: David Benjamin <davidben@google.com>
diff --git a/crypto/asn1/a_strex.c b/crypto/asn1/a_strex.c index 7829d67..3732894 100644 --- a/crypto/asn1/a_strex.c +++ b/crypto/asn1/a_strex.c
@@ -574,7 +574,8 @@ // their value, updates |v| and |len|, and returns one. Otherwise, returns // zero. static int consume_two_digits(int* out, const char **v, int *len) { - if (*len < 2|| !isdigit((*v)[0]) || !isdigit((*v)[1])) { + if (*len < 2 || !isdigit((unsigned char)((*v)[0])) || + !isdigit((unsigned char)((*v)[1]))) { return 0; } *out = ((*v)[0] - '0') * 10 + ((*v)[1] - '0');