summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbcook <>2015-07-18 17:19:56 +0000
committerbcook <>2015-07-18 17:19:56 +0000
commit8eaafeea61cafe968ce422dde5c0713e7c70cd0a (patch)
tree6d9e5d9752bfe8122f6cdddebdb596b76cf107de
parentfb4b9046bf049484f0a34a724bc5b6c7a17f967a (diff)
downloadopenbsd-8eaafeea61cafe968ce422dde5c0713e7c70cd0a.tar.gz
openbsd-8eaafeea61cafe968ce422dde5c0713e7c70cd0a.tar.bz2
openbsd-8eaafeea61cafe968ce422dde5c0713e7c70cd0a.zip
check sscanf conversion, fixes Coverity 21666
ok doug@, miod@, guenther@
-rw-r--r--src/regress/lib/libcrypto/evp/evptest.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/regress/lib/libcrypto/evp/evptest.c b/src/regress/lib/libcrypto/evp/evptest.c
index a71c1fb55a..bd5da475f1 100644
--- a/src/regress/lib/libcrypto/evp/evptest.c
+++ b/src/regress/lib/libcrypto/evp/evptest.c
@@ -81,10 +81,14 @@ convert(unsigned char *s)
81 unsigned int n; 81 unsigned int n;
82 82
83 if (!s[1]) { 83 if (!s[1]) {
84 fprintf(stderr, "Odd number of hex digits!"); 84 fprintf(stderr, "Odd number of hex digits!\n");
85 exit(4); 85 exit(4);
86 } 86 }
87 sscanf((char *)s, "%2x",&n); 87 if (sscanf((char *)s, "%2x", &n) != 1) {
88 fprintf(stderr, "Invalid hex value at %s\n", s);
89 exit(4);
90 }
91
88 *d = (unsigned char)n; 92 *d = (unsigned char)n;
89 } 93 }
90 return s - d; 94 return s - d;