diff options
Diffstat (limited to 'source/d/binutils/patches/binutils-CVE-2019-1010204.patch')
-rw-r--r-- | source/d/binutils/patches/binutils-CVE-2019-1010204.patch | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/source/d/binutils/patches/binutils-CVE-2019-1010204.patch b/source/d/binutils/patches/binutils-CVE-2019-1010204.patch new file mode 100644 index 000000000..56434b10d --- /dev/null +++ b/source/d/binutils/patches/binutils-CVE-2019-1010204.patch @@ -0,0 +1,15 @@ +--- binutils.orig/gold/fileread.cc 2019-08-06 14:22:08.669313110 +0100 ++++ binutils-2.32/gold/fileread.cc 2019-08-06 14:22:28.799177543 +0100 +@@ -381,6 +381,12 @@ File_read::do_read(off_t start, section_ + ssize_t bytes; + if (this->whole_file_view_ != NULL) + { ++ // See PR 23765 for an example of a testcase that triggers this error. ++ if (((ssize_t) start) < 0) ++ gold_fatal(_("%s: read failed, starting offset (%#llx) less than zero"), ++ this->filename().c_str(), ++ static_cast<long long>(start)); ++ + bytes = this->size_ - start; + if (static_cast<section_size_type>(bytes) >= size) + { |