diff options
| author | Mark Wielaard <[email protected]> | 2014-12-16 16:30:59 +0100 |
|---|---|---|
| committer | Mark Wielaard <[email protected]> | 2014-12-17 16:49:02 +0100 |
| commit | acb506998874b9e9e29040b224ebed0a5e6d8ffc (patch) | |
| tree | 788e92ed8d342a8e94cf52eace30d43b78571521 /src | |
| parent | ff1ce97525529bc4b68d0a48d0ae95a1f67f3779 (diff) | |
readelf: Correct overflow check for length in print_debug_aranges_section.
Signed-off-by: Mark Wielaard <[email protected]>
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 1 | ||||
| -rw-r--r-- | src/readelf.c | 2 |
2 files changed, 2 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 112af191..576ed83f 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -2,6 +2,7 @@ * readelf.c (print_debug_line_section): Correct overflow check for unit_length. + (print_debug_aranges_section): Correct overflow check for length. 2014-12-15 Mark Wielaard <[email protected]> diff --git a/src/readelf.c b/src/readelf.c index 3c686d5c..9c62853e 100644 --- a/src/readelf.c +++ b/src/readelf.c @@ -4711,7 +4711,7 @@ print_debug_aranges_section (Dwfl_Module *dwflmod __attribute__ ((unused)), printf (gettext ("\n Length: %6" PRIu64 "\n"), (uint64_t) length); - if (unlikely ((ptrdiff_t) length > readendp - readp)) + if (unlikely (length > (size_t) (readendp - readp))) goto invalid_data; if (length == 0) |
