Blame SOURCES/binutils-CVE-2019-1010204.patch

0c89c8
diff -rupN --no-dereference binutils-2.37/gold/fileread.cc binutils-2.37-new/gold/fileread.cc
0c89c8
--- binutils-2.37/gold/fileread.cc	2021-07-08 13:37:20.000000000 +0200
0c89c8
+++ binutils-2.37-new/gold/fileread.cc	2021-07-24 21:59:22.937765719 +0200
0c89c8
@@ -385,6 +385,12 @@ File_read::do_read(off_t start, section_
0c89c8
   ssize_t bytes;
0c89c8
   if (this->whole_file_view_ != NULL)
0c89c8
     {
0c89c8
+      // See PR 23765 for an example of a testcase that triggers this error.
0c89c8
+      if (((ssize_t) start) < 0)
0c89c8
+	gold_fatal(_("%s: read failed, starting offset (%#llx) less than zero"),
0c89c8
+		   this->filename().c_str(),
0c89c8
+		   static_cast<long long>(start));
0c89c8
+	
0c89c8
       bytes = this->size_ - start;
0c89c8
       if (static_cast<section_size_type>(bytes) >= size)
0c89c8
 	{