After saving errno clear it before calls to strtol et. al.
authorViktor Dukhovni <openssl-users@dukhovni.org>
Sun, 3 Apr 2016 19:21:34 +0000 (15:21 -0400)
committerViktor Dukhovni <openssl-users@dukhovni.org>
Sun, 3 Apr 2016 19:36:17 +0000 (15:36 -0400)
Reviewed-by: Richard Levitte <levitte@openssl.org>
apps/opt.c

index 462894a9380b5523b02d5568554f4bf356db7966..63d32150cc6375010a2809b6dd57c97feb9e0d00 100644 (file)
@@ -373,6 +373,7 @@ int opt_long(const char *value, long *result)
     long l;
     char *endp;
 
+    errno = 0;
     l = strtol(value, &endp, 0);
     if (*endp
             || endp == value
@@ -398,6 +399,7 @@ int opt_imax(const char *value, intmax_t *result)
     intmax_t m;
     char *endp;
 
+    errno = 0;
     m = strtoimax(value, &endp, 0);
     if (*endp
             || endp == value
@@ -420,6 +422,7 @@ int opt_umax(const char *value, uintmax_t *result)
     uintmax_t m;
     char *endp;
 
+    errno = 0;
     m = strtoumax(value, &endp, 0);
     if (*endp
             || endp == value
@@ -445,6 +448,7 @@ int opt_ulong(const char *value, unsigned long *result)
     char *endptr;
     unsigned long l;
 
+    errno = 0;
     l = strtoul(value, &endptr, 0);
     if (*endptr
             || endptr == value