aboutsummaryrefslogtreecommitdiff
path: root/include/config_distro_bootcmd.h
diff options
context:
space:
mode:
authorAKASHI Takahiro <takahiro.akashi@linaro.org>2018-12-04 15:46:55 +0900
committerAlexander Graf <agraf@suse.de>2019-02-13 09:40:05 +0100
commit13dd6665ed18f72380ca596931d609bc108d4b82 (patch)
tree509996328021c5ba7165a3458035994a1aab699d /include/config_distro_bootcmd.h
parentd178836bd21ed1436ec612c8a8b5b4e1ca792087 (diff)
downloadu-boot-13dd6665ed18f72380ca596931d609bc108d4b82.zip
u-boot-13dd6665ed18f72380ca596931d609bc108d4b82.tar.gz
u-boot-13dd6665ed18f72380ca596931d609bc108d4b82.tar.bz2
distro: not taint environment variables if possible
The aim of this patch is not to have temporary variables used in distro_bootcmd left as environment variables after run something. See the discussion[1]. Without this patch, saveenv command also saves those variables, too. While they are apparently safe, scsi_need_init can be harmful. Please note that, in most cases, a variable should be converted to hush's local variable, while "devplist" cannot because it is created by "part" command as an environment variable. [1] https://lists.denx.de/pipermail/u-boot/2018-December/350209.html Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org> Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'include/config_distro_bootcmd.h')
-rw-r--r--include/config_distro_bootcmd.h13
1 files changed, 7 insertions, 6 deletions
diff --git a/include/config_distro_bootcmd.h b/include/config_distro_bootcmd.h
index fa0e017..4993303 100644
--- a/include/config_distro_bootcmd.h
+++ b/include/config_distro_bootcmd.h
@@ -27,7 +27,7 @@
#define BOOTENV_SHARED_BLKDEV_BODY(devtypel) \
"if " #devtypel " dev ${devnum}; then " \
- "setenv devtype " #devtypel "; " \
+ "devtype=" #devtypel "; " \
"run scan_dev_for_boot_part; " \
"fi\0"
@@ -37,7 +37,7 @@
#define BOOTENV_DEV_BLKDEV(devtypeu, devtypel, instance) \
"bootcmd_" #devtypel #instance "=" \
- "setenv devnum " #instance "; " \
+ "devnum=" #instance "; " \
"run " #devtypel "_boot\0"
#define BOOTENV_DEV_NAME_BLKDEV(devtypeu, devtypel, instance) \
@@ -77,7 +77,7 @@
"if ubi part ${bootubipart} && " \
"ubifsmount ubi${devnum}:${bootubivol}; " \
"then " \
- "setenv devtype ubi; " \
+ "devtype=ubi; " \
"run scan_dev_for_boot; " \
"fi\0"
#define BOOTENV_DEV_UBIFS BOOTENV_DEV_BLKDEV
@@ -205,11 +205,11 @@
#ifdef CONFIG_SCSI
#define BOOTENV_RUN_SCSI_INIT "run scsi_init; "
-#define BOOTENV_SET_SCSI_NEED_INIT "setenv scsi_need_init; "
+#define BOOTENV_SET_SCSI_NEED_INIT "scsi_need_init=; "
#define BOOTENV_SHARED_SCSI \
"scsi_init=" \
"if ${scsi_need_init}; then " \
- "setenv scsi_need_init false; " \
+ "scsi_need_init=false; " \
"scsi scan; " \
"fi\0" \
\
@@ -444,7 +444,8 @@
"bootfstype; then " \
"run scan_dev_for_boot; " \
"fi; " \
- "done\0" \
+ "done; " \
+ "setenv devplist\0" \
\
BOOT_TARGET_DEVICES(BOOTENV_DEV) \
\