diff options
-rw-r--r-- | binutils/ChangeLog | 5 | ||||
-rw-r--r-- | binutils/NEWS | 2 | ||||
-rw-r--r-- | binutils/doc/binutils.texi | 8 | ||||
-rw-r--r-- | include/ChangeLog | 5 | ||||
-rw-r--r-- | include/demangle.h | 2 |
5 files changed, 16 insertions, 6 deletions
diff --git a/binutils/ChangeLog b/binutils/ChangeLog index a5796a8cf90..a1fce1adc58 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,8 @@ +2018-12-11 Nick Clifton <nickc@redhat.com> + + * NEWS: Note that recursion limit has increased to 2048. + * doc/binutils.texi: Likewise. + 2018-12-08 Alan Modra <amodra@gmail.com> * strings.c (unget_part_char): New function. diff --git a/binutils/NEWS b/binutils/NEWS index ce9253411ac..6afa19db809 100644 --- a/binutils/NEWS +++ b/binutils/NEWS @@ -4,7 +4,7 @@ maximum amount of recursion that is allowed whilst demangling strings. The value for this limit is defined by the DEMANGLE_RECRUSE_LIMIT constant declared in the include/demangle.h header file. At the time - of writing this constant has the value of 1024. + of writing this constant has the value of 2048. The --no-recurse-limit option can be used to remove the limit, restoring the behaviour of earlier versions of these tools. This may be needed in diff --git a/binutils/doc/binutils.texi b/binutils/doc/binutils.texi index 7efda864830..34947d97ccb 100644 --- a/binutils/doc/binutils.texi +++ b/binutils/doc/binutils.texi @@ -950,7 +950,7 @@ whilst demangling strings. Since the name mangling formats allow for an inifinite level of recursion it is possible to create strings whose decoding will exhaust the amount of stack space available on the host machine, triggering a memory fault. The limit tries to prevent this -from happening by restricting recursion to 1024 levels of nesting. +from happening by restricting recursion to 2048 levels of nesting. The default is for this limit to be enabled, but disabling it may be necessary in order to demangle truly complicated names. Note however @@ -2202,7 +2202,7 @@ whilst demangling strings. Since the name mangling formats allow for an inifinite level of recursion it is possible to create strings whose decoding will exhaust the amount of stack space available on the host machine, triggering a memory fault. The limit tries to prevent this -from happening by restricting recursion to 1024 levels of nesting. +from happening by restricting recursion to 2048 levels of nesting. The default is for this limit to be enabled, but disabling it may be necessary in order to demangle truly complicated names. Note however @@ -3555,7 +3555,7 @@ whilst demangling strings. Since the name mangling formats allow for an inifinite level of recursion it is possible to create strings whose decoding will exhaust the amount of stack space available on the host machine, triggering a memory fault. The limit tries to prevent this -from happening by restricting recursion to 1024 levels of nesting. +from happening by restricting recursion to 2048 levels of nesting. The default is for this limit to be enabled, but disabling it may be necessary in order to demangle truly complicated names. Note however @@ -3778,7 +3778,7 @@ whilst demangling strings. Since the name mangling formats allow for an inifinite level of recursion it is possible to create strings whose decoding will exhaust the amount of stack space available on the host machine, triggering a memory fault. The limit tries to prevent this -from happening by restricting recursion to 1024 levels of nesting. +from happening by restricting recursion to 2048 levels of nesting. The default is for this limit to be enabled, but disabling it may be necessary in order to demangle truly complicated names. Note however diff --git a/include/ChangeLog b/include/ChangeLog index 7cae69810ac..6ac2dd13e65 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,3 +1,8 @@ +2018-12-11 Nick Clifton <nickc@redhat.com> + + PR 88409 + * demangle.h (DEMANGLE_RECURSION_LIMIT): Increase to 2048. + 2018-12-07 H.J. Lu <hongjiu.lu@intel.com> * bfdlink.h (bfd_link_info): Add has_map_file. diff --git a/include/demangle.h b/include/demangle.h index 1e67fe2fb34..fadf7082c05 100644 --- a/include/demangle.h +++ b/include/demangle.h @@ -77,7 +77,7 @@ extern "C" { /* If DMGL_NO_RECURSE_LIMIT is not enabled, then this is the value used as the maximum depth of recursion allowed. It should be enough for any real-world mangled name. */ -#define DEMANGLE_RECURSION_LIMIT 1024 +#define DEMANGLE_RECURSION_LIMIT 2048 /* Enumeration of possible demangling styles. |