Skip to contentSkip to conversation

Parsing of multi-line env vars broken

U-Boot Wolfgang Denk 2 participants 2 messages Sep 26, 2014 – Oct 9, 2014

lore
Share & tools
lore
#0 lore raw

HI,

this is just a heads up: the handling of multi-line environment variables is broken in recent versions of U-Boot (and probably has been broken for some longer time - can't tell exactly as I have a bit of a problem to bisect across the MAKEALL / Kconfig changes):

Test case:

- Set multi-line var:

=> setenv foo 'echo line 1
> echo line 2
> echo line 3'

OK

- Print multi-line var:

=> print foo
foo=echo line 1
echo line 2
echo line 3

OK

- Run multi-line var:

=> run foo
line 1

ERROR. Only the first line gets executed, the rest is missing. Only the first line gets parded by the hush shell...

Best regards,

Wolfgang Denk

Signature · 5 lines
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
A good teacher will lead the horse to  water,  an  excellent  teacher
will make the horse thirsty first.                     - Mario Cortes
#1 lore raw

Hi,

Quoted 26 lines · Wolfgang Denk

HI,

this is just a heads up: the handling of multi-line environment variables is broken in recent versions of U-Boot (and probably has been broken for some longer time - can't tell exactly as I have a bit of a problem to bisect across the MAKEALL / Kconfig changes):

Test case:

- Set multi-line var:

=> setenv foo 'echo line 1
> echo line 2
> echo line 3'

OK

- Print multi-line var:

=> print foo
foo=echo line 1
echo line 2
echo line 3

OK

Quoted 7 lines

- Run multi-line var:

=> run foo
line 1

ERROR. Only the first line gets executed, the rest is missing. Only the first line gets parded by the hush shell...

As a follow-up, please see this potential patch:

http://patchwork.ozlabs.org/patch/397428/

Regards,
Simon