binutils-CVE-2019-1010204.patch 626 B

12345678910111213141516
  1. --- binutils.orig/gold/fileread.cc 2019-08-06 14:22:08.669313110 +0100
  2. +++ binutils-2.32/gold/fileread.cc 2019-08-06 14:22:28.799177543 +0100
  3. @@ -381,6 +381,12 @@ File_read::do_read(off_t start, section_
  4. ssize_t bytes;
  5. if (this->whole_file_view_ != NULL)
  6. {
  7. + // See PR 23765 for an example of a testcase that triggers this error.
  8. + if (((ssize_t) start) < 0)
  9. + gold_fatal(_("%s: read failed, starting offset (%#llx) less than zero"),
  10. + this->filename().c_str(),
  11. + static_cast<long long>(start));
  12. +
  13. bytes = this->size_ - start;
  14. if (static_cast<section_size_type>(bytes) >= size)
  15. {