Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > gnu.bash.bug > #14383

Re: v4.4 segfault in 'decode_prompt_string' when processing special parameter

From Chet Ramey <chet.ramey@case.edu>
Newsgroups gnu.bash.bug
Subject Re: v4.4 segfault in 'decode_prompt_string' when processing special parameter
Date 2018-07-21 19:57 -0400
Organization ITS, Case Western Reserve University
Message-ID <mailman.4000.1532217489.1292.bug-bash@gnu.org> (permalink)
References <CAAnqJ08xXw8Ezq4mn_FGojcx6vi26d001foWFncUJt809XiS_w@mail.gmail.com>

Show all headers | View raw


On 7/21/18 2:47 PM, Chris Schoenberg wrote:
> This only works in 4.4; earlier versions throw a 'bad substitution' error. It
> causes an infinite loop of calls between 'expand_prompt_string' and
> 'decode_prompt_string',
> where calls to 'xmalloc' exhaust the heap:
> 
> $\{_@P};${_@P}
> 
> I decided to report this because it is not a user-defined recursive
> function and it exhausts the heap rather than the stack.

It's user-defined recursive parameter expansion. A string that undergoes
prompt expansion performs parameter expansion, as documented. If that
parameter expansion passes the same string to prompt expansion, which
performs parameter expansion, you've got user-defined recursion.

-- 
``The lyf so short, the craft so long to lerne.'' - Chaucer
		 ``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, UTech, CWRU    chet@case.edu    http://tiswww.cwru.edu/~chet/

Back to gnu.bash.bug | Previous | Next | Find similar | Unroll thread


Thread

Re: v4.4 segfault in 'decode_prompt_string' when processing special parameter Chet Ramey <chet.ramey@case.edu> - 2018-07-21 19:57 -0400

csiph-web