diff options
Diffstat (limited to 'meta/recipes-devtools/binutils/binutils/CVE-2017-7224.patch')
-rw-r--r-- | meta/recipes-devtools/binutils/binutils/CVE-2017-7224.patch | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/meta/recipes-devtools/binutils/binutils/CVE-2017-7224.patch b/meta/recipes-devtools/binutils/binutils/CVE-2017-7224.patch new file mode 100644 index 0000000000..fb9ce90740 --- /dev/null +++ b/meta/recipes-devtools/binutils/binutils/CVE-2017-7224.patch @@ -0,0 +1,48 @@ +commit e82ab856bb4689330c29fb9f1c57a8555b26380e +Author: Nick Clifton <nickc@redhat.com> +Date: Thu Dec 1 10:49:39 2016 +0000 + + Fix a seg-fault disassembling a corrupt binary. + + PR binutils/20892 + * aoutx.h (find_nearest_line): Handle the case where the function + name is empty. + +Upstream-Status: Backport + +CVE: CVE-2017-7224 +Signed-off-by: Thiruvadi Rajaraman <trajaraman@mvista.com> + +Index: git/bfd/ChangeLog +=================================================================== +--- git.orig/bfd/ChangeLog 2017-09-04 12:54:37.513859864 +0530 ++++ git/bfd/ChangeLog 2017-09-04 13:00:22.891753836 +0530 +@@ -120,6 +120,10 @@ + * peicode.h (pe_ILF_object_p): Use strnlen to avoid running over + the end of the string buffer. + ++ PR binutils/20892 ++ * aoutx.h (find_nearest_line): Handle the case where the function ++ name is empty. ++ + 2016-08-02 Nick Clifton <nickc@redhat.com> + + PR ld/17739 +Index: git/bfd/aoutx.h +=================================================================== +--- git.orig/bfd/aoutx.h 2017-09-04 12:54:35.957851411 +0530 ++++ git/bfd/aoutx.h 2017-09-04 12:57:50.634902163 +0530 +@@ -2819,6 +2819,13 @@ + const char *function = func->name; + char *colon; + ++ if (buf == NULL) ++ { ++ /* PR binutils/20892: In a corrupt input file func can be empty. */ ++ * functionname_ptr = NULL; ++ return TRUE; ++ } ++ + /* The caller expects a symbol name. We actually have a + function name, without the leading underscore. Put the + underscore back in, so that the caller gets a symbol name. */ |