u-boot/cmd
Tom Rini 5749faa3d6 cmd/gpt: Address error cases during gpt rename more correctly
New analysis by the tool has shown that we have some cases where we
weren't handling the error exit condition correctly.  When we ran into
the ENOMEM case we wouldn't exit the function and thus incorrect things
could happen.  Rework the unwinding such that we don't need a helper
function now and free what we may have allocated.

Fixes: 18030d04d2 ("GPT: fix memory leaks identified by Coverity")
Reported-by: Coverity (CID: 275475, 275476)
Cc: Alison Chaiken <alison@she-devel.com>
Cc: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com>
Cc: Jordy <jordy@simplyhacker.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com>
2020-01-30 13:30:35 -05:00
..
arm cmd: add exception command 2019-04-22 12:06:39 -04:00
mvebu common: Move the image globals into image.h 2020-01-17 14:02:35 -05:00
riscv cmd: add exception command 2019-04-22 12:06:39 -04:00
ti common: Move RAM-sizing functions to init.h 2020-01-17 14:02:35 -05:00
x86 x86: Update the fsp command for FSP2 2019-12-15 11:44:19 +08:00
.gitignore cmd: rework "license" command 2017-02-08 15:56:28 -05:00
ab_select.c cmd: Add 'ab_select' command 2019-07-24 13:16:29 -04:00
adc.c cmd: adc: Use the sub-command infrastructure 2019-01-15 15:28:54 -05:00
adtimg.c cmd: adtimg: Refactor usage style 2020-01-10 14:18:26 -05:00
aes.c aes: add support of aes192 and aes256 2020-01-17 10:15:49 -05:00
armflash.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
avb.c cmd: avb: Support A/B slots 2019-10-31 07:22:53 -04:00
axi.c cmd: Add axi command 2018-08-11 09:16:08 +02:00
bcb.c cmd: bcb: Apply non-functional refinements 2019-07-24 13:16:29 -04:00
bdinfo.c bdinfo: show multi_dtb_fit 2020-01-07 11:13:26 -05:00
bedbug.c powerpc: remove 4xx support 2017-07-03 17:35:28 -04:00
bind.c cmd: Add bind/unbind commands to bind a device to a driver from the command line 2018-08-21 16:21:37 +02:00
binop.c env: Move env_set() to env.h 2019-08-11 16:43:41 -04:00
blk_common.c cmd/blk_common: clarify no partition error message 2020-01-16 09:39:45 -05:00
blkcache.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
blob.c env: Drop environment.h header file where not needed 2019-08-11 16:43:41 -04:00
bmp.c common: Move the image globals into image.h 2020-01-17 14:02:35 -05:00
boot.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
bootcount.c bootcount: Add bootcount command 2018-05-23 17:30:05 -04:00
bootefi.c efi_loader: free load options after execution 2020-01-07 18:08:20 +01:00
booti.c image: Rename load_addr, save_addr, save_size 2020-01-17 14:02:35 -05:00
bootm.c image: Rename load_addr, save_addr, save_size 2020-01-17 14:02:35 -05:00
bootmenu.c env: Move env_get() to env.h 2019-08-11 16:43:41 -04:00
bootstage.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
bootz.c common: Move the image globals into image.h 2020-01-17 14:02:35 -05:00
btrfs.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
cache.c common: Move some cache and MMU functions out of common.h 2019-12-02 18:23:55 -05:00
cbfs.c cbfs: Move result variable into the struct 2019-08-18 21:54:10 +08:00
clk.c clk: support clk tree dump 2019-08-22 00:10:09 +02:00
cls.c cmd: add clear screen 'cls' command 2018-12-04 19:44:57 +01:00
config.c common: Move gzip functions into a new gzip header 2019-08-11 16:43:41 -04:00
conitrace.c cmd: add conitrace command 2018-09-25 21:49:18 -04:00
console.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
cpu.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
cramfs.c common: Move the image globals into image.h 2020-01-17 14:02:35 -05:00
cros_ec.c cros_ec: Update cros_ec_read_hash() to specify the image 2018-10-09 04:40:27 -06:00
dataflash_mmc_mux.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
date.c cmd: date: Do not overwrite arguments 2019-02-19 08:55:43 -05:00
demo.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
dfu.c dfu: Add optional timeout parameter 2020-01-07 14:37:50 +01:00
diag.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
disk.c common: Move the image globals into image.h 2020-01-17 14:02:35 -05:00
dm.c cmd: Move the "dm" command from test/dm/ to cmd/ 2018-12-15 11:49:19 -05:00
echo.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
eeprom.c cmd/eeprom.c: prepend 0x to hex numbers in output message format 2020-01-10 14:18:26 -05:00
efi.c common: Move sorting functions to their own header file 2019-12-02 18:23:08 -05:00
efidebug.c cmd: efidebug: capitalize UEFI 2020-01-07 18:08:21 +01:00
elf.c common: Move the image globals into image.h 2020-01-17 14:02:35 -05:00
ethsw.c net: Always build the string_to_enetaddr() helper 2019-12-09 09:47:41 -06:00
exit.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
ext2.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
ext4.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
fastboot.c cmd: fastboot: handle watchdog while waiting for fastboot commands. 2019-03-16 13:29:43 +01:00
fat.c common: Move functions for loading from fat/ext2 to fs.h 2020-01-17 13:26:49 -05:00
fdt.c env: Move env_set_hex() to env.h 2019-08-11 16:43:41 -04:00
fitupd.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
flash.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
fpga.c env: Move env_get() to env.h 2019-08-11 16:43:41 -04:00
fpgad.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
fs.c fs: do_load: pass device path for efi payload 2019-06-20 22:26:20 +00:00
fs_uuid.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
fuse.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
gettime.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
gpio.c cmd: gpio: remove redundant assignment 2019-08-26 11:46:27 -04:00
gpt.c cmd/gpt: Address error cases during gpt rename more correctly 2020-01-30 13:30:35 -05:00
hash.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
help.c Drop linker-generated array creation when CONFIG_CMDLINE is disabled 2019-07-29 09:32:09 -04:00
host.c cmd: host: fix seg fault at "host info" 2019-10-06 15:20:53 -04:00
i2c.c crc32: Use the crc.h header for crc functions 2019-12-02 18:23:08 -05:00
ide.c Drop PCMCIA 2019-08-11 19:27:41 -04:00
ini.c env: Drop environment.h header file where not needed 2019-08-11 16:43:41 -04:00
io.c iod: Enhance to support display of multiple values 2019-10-08 13:57:44 +08:00
iotrace.c iotrace: fix behaviour when buffer is full 2018-06-18 14:02:04 -04:00
irq.c common: Move enable/disable_interrupts out of common.h 2019-12-02 18:25:01 -05:00
itest.c cmd: itest: add support for .q size specifier 2019-10-11 19:05:14 -04:00
jffs2.c common: Move the image globals into image.h 2020-01-17 14:02:35 -05:00
Kconfig cmd: add tlv_eeprom command 2020-01-21 15:56:15 +01:00
led.c cmd/led.c: fix typos in online help 2019-06-21 10:07:11 -04: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 SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
license.c common: Move gzip functions into a new gzip header 2019-08-11 16:43:41 -04:00
load.c common: Move the image globals into image.h 2020-01-17 14:02:35 -05:00
log.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
lzmadec.c env: Move env_set_hex() to env.h 2019-08-11 16:43:41 -04:00
mac.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
Makefile cmd: add tlv_eeprom command 2020-01-21 15:56:15 +01:00
md5sum.c env: Move env_set() to env.h 2019-08-11 16:43:41 -04:00
mdio.c net: mdio: Clarify code flow Covarity 244085 & 244090 2019-09-04 11:37:18 -05:00
mem.c common: Move and rename CONFIG_SYS_SUPPORT_64BIT_DATA 2020-01-17 17:53:52 -05:00
mfsl.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
mii.c cmd: mii: Add the standard 1000BASE-T registers 2019-07-15 13:32:25 -05:00
misc.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
mmc.c cmd: mmc: Make Mode: printout consistent 2019-05-04 19:26:49 +02:00
mp.c common: Move older CPU functions to their own header 2019-12-02 18:23:06 -05:00
mtd.c cmd: mtd: solve bad block support in erase command 2020-01-24 11:19:52 -05:00
mtdparts.c cmd: mtdparts: Fix build with option ..._SHOW_NET_SIZES 2019-11-07 18:01:13 -05:00
nand.c common: Move the image globals into image.h 2020-01-17 14:02:35 -05:00
net.c common: Move the image globals into image.h 2020-01-17 14:02:35 -05:00
nvedit.c net: Always build the string_to_enetaddr() helper 2019-12-09 09:47:41 -06:00
nvedit_efi.c cmd: env: extend "env [set|print] -e" to manage UEFI variables 2019-10-30 17:49:41 +01:00
nvme.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
onenand.c cmd/onenand.c: block align warning 2016-10-06 20:57:42 -04:00
osd.c cmd: Add osd commands 2018-09-28 18:27:33 +02:00
part.c cmd: part: number: return hexadecimal value 2019-10-04 12:21:23 -04:00
pcap.c net: introduce packet capture support 2019-09-04 11:37:19 -05:00
pci.c cmd: pci: Adjust display of digits for 64bit address and size 2019-08-26 11:46:28 -04:00
pinmux.c cmd: pinmux: Fix warnings when compiling with W=1 2019-07-12 11:50:57 +02:00
pmc.c x86: sandbox: Add a PMC emulator and test 2019-12-15 11:44:11 +08:00
pmic.c pmic: allow dump command for non contiguous register maps 2020-01-27 19:54:20 -05:00
pxe.c common: Move functions for loading from fat/ext2 to fs.h 2020-01-17 13:26:49 -05:00
pxe_utils.c cmd: pxe: execute the cls command only when supported 2020-01-22 17:49:25 -05:00
pxe_utils.h cmd: Prepare sysboot command independence 2019-12-06 16:44:18 -05:00
qfw.c env: Move env_set() to env.h 2019-08-11 16:43:41 -04:00
read.c cmd/read.c: Fix checking blk_dread return value 2017-08-20 09:54:30 -04:00
reginfo.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
regulator.c cmd: add missing line breaks for pr_err() 2018-06-07 20:06:29 -04:00
reiser.c image: Rename load_addr, save_addr, save_size 2020-01-17 14:02:35 -05:00
remoteproc.c cmd: remoteproc: Allow list command to print the probed devices 2019-07-26 21:49:24 -04:00
rng.c cmd: add rng command 2020-01-07 18:08:21 +01:00
rockusb.c rockchip: use 'arch-rockchip' as header file path 2019-05-01 00:00:05 +02:00
sata.c cmd: sata: Add block unbind device function 2020-01-27 19:54:20 -05:00
sb.c spl: Add support for passing handoff info to U-Boot proper 2018-11-26 08:25:37 -05:00
scsi.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
setexpr.c env: Move env_set_hex() to env.h 2019-08-11 16:43:41 -04:00
sf.c cmd: nand/sf: isolate legacy code 2019-12-04 17:10:51 -05:00
sha1sum.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
smccc.c arm64: Add SMC and HVC commands 2018-05-08 09:07:35 -04:00
sound.c dm: sound: Complete migration to driver model 2018-12-13 16:36:41 -07:00
source.c common: Rename and move source() 2020-01-17 14:02:35 -05:00
spi.c cmd: spi: Permit setting bus frequency 2020-01-27 22:27:21 +05:30
spl.c env: Move env_set_hex() to env.h 2019-08-11 16:43:41 -04:00
strings.c Remove the cmd_ prefix from command files 2016-01-25 10:39:43 -05:00
sysboot.c cmd: sysboot: Fix checkpatch WARNING/CHECK 2019-12-06 16:44:19 -05:00
terminal.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
test.c cmd: avoid decimal conversion 2019-10-11 15:33:27 -04:00
thordown.c thor: fix error path after g_dnl_register() failure 2019-10-31 12:12:31 +01:00
time.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
tlv_eeprom.c cmd: add tlv_eeprom command 2020-01-21 15:56:15 +01:00
tpm-common.c env: Move env_set_ulong() to env.h 2019-08-11 16:43:41 -04:00
tpm-user-utils.h tpm: disociate TPMv1.x specific and generic code 2018-05-25 20:12:55 -04:00
tpm-v1.c env: Move env_set_hex() to env.h 2019-08-11 16:43:41 -04:00
tpm-v2.c cmd: tpm-v2: use correct format code 2019-01-15 15:28:44 -05:00
tpm_test.c common: Move reset_cpu() to the CPU header 2020-01-17 14:02:31 -05:00
trace.c env: Move env_set_hex() to env.h 2019-08-11 16:43:41 -04:00
tsi148.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
ubi.c ubi: Add "skipcheck" command to set/clear this bit in the UBI volume hdr 2019-10-16 05:42:36 +02:00
ubifs.c cmd: ubifs: Factor out some checking codes into cmd_ubifs_mount() 2018-09-28 20:22:32 -04:00
ufs.c cmd: Add Support for UFS commands 2019-10-23 20:47:12 -04:00
universe.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
unzip.c env: Move env_set_hex() to env.h 2019-08-11 16:43:41 -04:00
usb.c usb: Make portspeed return a read-only string 2019-04-09 13:11:45 +02:00
usb_gadget_sdp.c usb: gadget: error out if g_dnl registration fails 2019-06-14 12:39:50 +02:00
usb_mass_storage.c usb: reload watchdog during ums command 2019-04-21 10:26:52 +02:00
version.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
virtio.c virtio: cmd: Add virtio command for virtio devices 2018-11-14 09:16:27 -08:00
w1.c w1: add command for onewire protocol 2018-09-28 20:22:36 -04:00
wdt.c cmd: add wdt command 2019-04-12 07:04:18 +02:00
wol.c net: Add new wol command - Wake on LAN 2018-07-02 14:14:20 -05:00
ximg.c image: Rename load_addr, save_addr, save_size 2020-01-17 14:02:35 -05:00
yaffs2.c Remove the cmd_ prefix from command files 2016-01-25 10:39:43 -05:00
zfs.c zfs: remove unused buf variable 2020-01-23 07:29:58 -05:00
zip.c env: Move env_set_hex() to env.h 2019-08-11 16:43:41 -04:00