u-boot/cmd
Eugeniu Rosca bafdf4caac cmd: bcb: Add support for processing const string literals in bcb_set()
On request/suggestion from Simon Glass back in May 22 2019 [1], the
'strsep' mechanism implemented in bcb_set() was set to work directly
with user-provided argv strings, to avoid duplicating memory and for
the sake of simpler implementation.

However, since we recently exposed bcb_write_reboot_reason() API to be
called by U-Boot fastboot, the idea is to be able to pass const string
literals to this new BCB API, carrying the reboot reason.

Since 'strsep' (just like its older/superseded sibling 'strtok')
modifies the input string passed as parameter, BCB command in its
current state would attempt to perform in-place modifications in a
readonly string, which might lead to unexpected results.

Fix the above with the cost of one dynamic memory allocation ('strdup').
This will also ensure no compiler warnings when passing string literals
to bcb_write_reboot_reason().

[1] http://u-boot.10912.n7.nabble.com/PATCH-v2-0-2-Add-bcb-command-to-read-modify-write-Android-BCB-td369934i20.html#a370456

Cc: Simon Glass <sjg@chromium.org>
Signed-off-by: Eugeniu Rosca <erosca@de.adit-jv.com>
Signed-off-by: Roman Kovalivskyi <roman.kovalivskyi@globallogic.com>
2021-01-31 14:08:56 +01:00
..
arm command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
broadcom cmd: broadcom: add command for chimp handshake 2020-09-09 16:57:35 -04:00
mvebu Convert CONFIG_SYS_MMC_ENV_DEV et al to Kconfig 2020-08-08 11:03:52 -04:00
riscv cmd: add more implementation IDs to sbi command 2021-01-29 10:36:49 -05:00
sandbox cmd: sandbox: implement exception command 2020-12-13 07:58:17 -07:00
ti common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
x86 x86: Add support for more than 8 MTRRs 2020-09-25 11:27:27 +08:00
.gitignore cmd: rework "license" command 2017-02-08 15:56:28 -05:00
ab_select.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
abootimg.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
acpi.c cmd: acpi: Print revisions in hex format 2020-09-21 16:41:35 +08:00
adc.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
adtimg.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
aes.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
armflash.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
avb.c cmd: avb: free partition buffer upon verify completion 2020-05-19 14:01:47 -04:00
axi.c cmd: Drop use of old sequence numbers in commands 2020-12-18 20:32:21 -07:00
bcb.c cmd: bcb: Add support for processing const string literals in bcb_set() 2021-01-31 14:08:56 +01:00
bdinfo.c x86: video: Show information about each video device 2020-09-25 11:27:27 +08:00
bedbug.c global: Move from bi_memstart/memsize -> gd->ram_base/ram_size 2020-08-26 09:19:34 +02:00
bind.c cmd: bind: allow to bind driver with driver data 2020-08-22 07:58:39 -06:00
binop.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
blk_common.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
blkcache.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
blob.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
bloblist.c bloblist: Add a command 2020-10-06 09:07:54 -06:00
bmp.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
boot.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
bootcount.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
bootefi.c efi_loader: make the UEFI boot manager configurable 2021-01-20 08:09:34 +01:00
booti.c cmd: booti: convert the debug print about image move to printf 2020-07-17 08:51:01 -04:00
bootm.c treewide: convert bd_t to struct bd_info manually 2020-07-17 10:46:44 -04:00
bootmenu.c bootmenu: Allow to quit it via ESC/CTRL+C 2021-01-16 14:49:09 -05:00
bootstage.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
bootz.c cmd: bootz: fix device-tree overlap test 2020-08-05 08:18:34 -04:00
btrfs.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
button.c dm: treewide: Rename 'platdata' variables to just 'plat' 2020-12-13 16:51:08 -07:00
cache.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
cbfs.c cbfs: Return the error code from file_cbfs_init() 2020-05-27 14:40:09 +08:00
clk.c cmd: clk: correctly handle depth for clk dump 2020-08-24 11:03:26 +02:00
clone.c cmd: fix clone coverity scan 2020-08-24 14:11:31 -04:00
cls.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
config.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
conitrace.c cmd: conitrace: increase wait for next key 2021-01-13 02:38:01 +01:00
console.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
cpu.c dm: Avoid accessing seq directly 2020-12-18 20:32:21 -07:00
cramfs.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
cros_ec.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
dataflash_mmc_mux.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
date.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
demo.c dm: treewide: Rename dev_get_platdata() to dev_get_plat() 2020-12-13 16:51:09 -07:00
dfu.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
diag.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
disk.c cmd: disk: Remove fit_print_contents API 2021-01-16 19:17:11 -05:00
dm.c cmd: dm: Fixed/Added DM driver listing subcommands 2020-07-07 15:37:13 -04:00
echo.c cmd: change suppress newline in echo command 2021-01-25 01:15:33 +01:00
eeprom.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
efi.c efi: clean up efi command 2020-09-06 21:21:41 +02:00
efidebug.c cmd: efidebug: always check return code from get_variable() 2021-01-23 07:56:53 +01:00
elf.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
ethsw.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
exit.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
ext2.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
ext4.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
fastboot.c common: Drop linux/stringify.h from common header 2020-05-18 21:19:23 -04:00
fat.c cmd: fat: Use do_save() for fatwrite 2020-10-23 13:33:07 -04:00
fdt.c cmd: fdt: remove CMD_FDT_MAX_DUMP 2020-07-09 18:57:22 -06:00
flash.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
fpga.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
fpgad.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
fs.c cmd: fs: Add command to list supported fs types 2020-07-07 15:36:59 -04:00
fs_uuid.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
fuse.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
gettime.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
gpio.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
gpt.c cmd: gpt: add eMMC and GPT support 2021-01-16 14:48:23 -05:00
hash.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
help.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
host.c dm: treewide: Rename dev_get_platdata() to dev_get_plat() 2020-12-13 16:51:09 -07:00
i2c.c cmd: Drop use of old sequence numbers in commands 2020-12-18 20:32:21 -07:00
ide.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
ini.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
io.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
iotrace.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
irq.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
itest.c command: Add constants for cmd_get_data_size string / error 2020-12-01 10:33:38 -05:00
jffs2.c common: Drop linux/bug.h from common header 2020-05-18 21:19:23 -04:00
Kconfig cmd: Add a pwm command 2021-01-18 15:23:06 -05:00
led.c dm: treewide: Rename 'platdata' variables to just 'plat' 2020-12-13 16:51:08 -07:00
legacy-mtd-utils.c cmd: nand/sf: isolate legacy code 2019-12-04 17:10:51 -05:00
legacy-mtd-utils.h cmd: nand/sf: isolate legacy code 2019-12-04 17:10:51 -05:00
legacy_led.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
license.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
load.c cmd: correct long text loadb, loadx, loady 2021-01-25 01:15:33 +01:00
log.c cmd: log: Add commands to manipulate filters 2020-10-30 10:56:11 -04:00
lsblk.c dm: treewide: Rename 'platdata' variables to just 'plat' 2020-12-13 16:51:08 -07:00
lzmadec.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
mac.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
Makefile cmd: Add a pwm command 2021-01-18 15:23:06 -05:00
mbr.c cmd: Add MBR partition layout control utility 2021-01-15 16:00:32 -05:00
md5sum.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
mdio.c net: Drop dm.h header file from phy.h 2020-08-03 22:19:54 -04:00
mem.c command: Add constants for cmd_get_data_size string / error 2020-12-01 10:33:38 -05:00
mfsl.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
mii.c net: Drop dm.h header file from phy.h 2020-08-03 22:19:54 -04:00
misc.c dm: Avoid accessing seq directly 2020-12-18 20:32:21 -07:00
mmc.c cmd: mmc: Cache-align extcsd read target 2020-06-24 09:51:22 +08:00
mp.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
mtd.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
mtdparts.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
mux.c cmd: Add a mux command 2020-10-28 11:49:31 -04:00
nand.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
net.c sntp: use udp framework 2020-09-30 16:55:03 -04:00
nvedit.c env: Allow returning errors from hdelete_r() 2020-12-04 16:09:06 -05:00
nvedit_efi.c efi_loader: use ':' as separator for setenv -i 2020-08-24 16:37:53 +02:00
nvme.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
onenand.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
optee_rpmb.c cmd: optee_rpmb command for read/write of rpmb from optee 2020-10-23 16:52:09 +05:30
osd.c cmd: Drop use of old sequence numbers in commands 2020-12-18 20:32:21 -07:00
panic.c cmd: add a panic command 2020-07-08 17:21:46 -04:00
part.c cmd: part: Add subcommand to list supported partition tables 2020-07-07 15:22:42 -04:00
pcap.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
pci.c dm: Avoid accessing seq directly 2020-12-18 20:32:21 -07:00
pinmux.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
pmc.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
pmic.c dm: Avoid accessing seq directly 2020-12-18 20:32:21 -07:00
pstore.c cmd: Fixup DT to pass PStore Ramoops parameters 2020-10-14 11:16:34 -04:00
pvblock.c xen: pvblock: Add initial support for para-virtualized block driver 2020-08-14 15:18:30 -04:00
pwm.c cmd: Add a pwm command 2021-01-18 15:23:06 -05:00
pxe.c cmd: pxe: Add relocation to pxe_sub cmds 2020-09-23 14:29:57 +02:00
pxe_utils.c cmd: pxe: add support for FDT overlays 2021-01-27 10:47:54 -05:00
pxe_utils.h cmd: pxe: add support for FDT overlays 2021-01-27 10:47:54 -05:00
qfw.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
read.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
reginfo.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
regulator.c dm: treewide: Rename ..._platdata variables to just ..._plat 2020-12-13 16:51:09 -07:00
reiser.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
remoteproc.c dm: core: Access device flags through functions 2021-01-05 12:24:41 -07:00
rng.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
rockusb.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
rtc.c rtc: add rtc command 2020-07-09 06:02:45 +02:00
sata.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
sb.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
scsi.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
setexpr.c setexpr: Add support for strings 2020-12-01 10:33:38 -05:00
sf.c spi: Convert CONFIG_DM_SPI* to CONFIG_$(SPL_TPL_)DM_SPI* 2020-06-29 13:34:43 -04:00
sha1sum.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
sleep.c cmd: misc: Fix return value for the sleep command 2021-01-27 17:07:48 -05:00
smccc.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
sound.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
source.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
spi.c spi: Convert CONFIG_DM_SPI* to CONFIG_$(SPL_TPL_)DM_SPI* 2020-06-29 13:34:43 -04:00
spl.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
sqfs.c fs/squashfs: add filesystem commands 2020-08-07 22:31:32 -04:00
strings.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
sysboot.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
terminal.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
test.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
thordown.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
time.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
timer.c cmd: Split out timer command from the sleep command 2020-10-23 13:33:07 -04:00
tlv_eeprom.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
tpm-common.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
tpm-user-utils.h command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
tpm-v1.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
tpm-v2.c tpm: use more than sha256 on pcr_extend 2020-12-03 21:22:40 +01:00
tpm_test.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
trace.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
tsi148.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
ubi.c cmd: ubi: don't allow to rename a volume to a name that already exist 2021-01-04 09:10:17 -05:00
ubifs.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
ufs.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
universe.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
unlz4.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
unzip.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
usb.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
usb_gadget_sdp.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
usb_mass_storage.c usb: gadget: Fix controller index in UMS 2020-09-01 14:47:43 +02:00
version.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
virtio.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
w1.c dm: Avoid accessing seq directly 2020-12-18 20:32:21 -07:00
wdt.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
wol.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
ximg.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
yaffs2.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
zfs.c command: Remove the cmd_tbl_t typedef 2020-05-18 18:36:55 -04:00
zip.c cmd: zip: fix implicit declaration warning 2020-05-25 11:54:53 -04:00