]> git.ipfire.org Git - thirdparty/FORT-validator.git/commitdiff
Prevent integer underflow on sarray_contains()
authorAlberto Leiva Popper <ydahhrk@gmail.com>
Mon, 11 Mar 2019 18:35:28 +0000 (12:35 -0600)
committerAlberto Leiva Popper <ydahhrk@gmail.com>
Mon, 11 Mar 2019 18:35:28 +0000 (12:35 -0600)
Was triggering a segfault during testing.

src/sorted_array.c

index 6c29b715c1d04d8a2af1a7a16320146935b8685d..35369ca9c31325e47aeefbca19f1980c526336c0 100644 (file)
@@ -150,6 +150,8 @@ sarray_contains(struct sorted_array *sarray, void *elem)
                switch (cmp) {
                case SACMP_LEFT:
                case SACMP_ADJACENT_LEFT:
+                       if (mid == 0) /* Prevents underflow */
+                               return false;
                        right = mid - 1;
                        continue;
                case SACMP_RIGHT: