]> git.ipfire.org Git - thirdparty/unbound.git/commitdiff
- Fix for #637: fix integer overflow checks in sldns_str2period.
authorW.C.A. Wijngaards <wouter@nlnetlabs.nl>
Thu, 3 Mar 2022 15:24:46 +0000 (16:24 +0100)
committerW.C.A. Wijngaards <wouter@nlnetlabs.nl>
Thu, 3 Mar 2022 15:24:46 +0000 (16:24 +0100)
doc/Changelog
sldns/parseutil.c

index 2236e55506128a93dcef2c206e16c118bb89536a..3fa86ac3bc84b7d00a815f147a8e1c445a67f42b 100644 (file)
@@ -1,5 +1,6 @@
 3 March 2022: Wouter
        - Fix #637: Integer Overflow in sldns_str2period function.
+       - Fix for #637: fix integer overflow checks in sldns_str2period.
 
 2 March 2022: George
        - Merge PR #632 from scottrw93: Match cnames in ipset.
index e69c568db08a471a2acc1cf91e10927d9d2c499c..dd1f334846637bdbbe6bff2df9145b110bfea9d2 100644 (file)
@@ -291,7 +291,7 @@ sldns_str2period(const char *nptr, const char **endptr, int* overflow)
                        case '7':
                        case '8':
                        case '9':
-                               if(i > maxint/10 || i > maxint - (**endptr - '0')) {
+                               if(i > maxint/10 || i*10 > maxint - (**endptr - '0')) {
                                        *overflow = 1;
                                        return 0;
                                }