diff options
| -rw-r--r-- | common/cmd_net.c | 7 | ||||
| -rw-r--r-- | drivers/net/e1000_spi.c | 5 |
2 files changed, 8 insertions, 4 deletions
diff --git a/common/cmd_net.c b/common/cmd_net.c index f89a24bfd..89519faad 100644 --- a/common/cmd_net.c +++ b/common/cmd_net.c @@ -221,8 +221,11 @@ static int netboot_common(enum proto_t proto, cmd_tbl_t *cmdtp, int argc, #ifdef CONFIG_CMD_TFTPPUT case 4: - save_addr = strict_strtoul(argv[1], NULL, 16); - save_size = strict_strtoul(argv[2], NULL, 16); + if (strict_strtoul(argv[1], 16, &save_addr) < 0 || + strict_strtoul(argv[2], 16, &save_size) < 0) { + printf("Invalid address/size\n"); + return cmd_usage(cmdtp); + } copy_filename(BootFile, argv[3], sizeof(BootFile)); break; #endif diff --git a/drivers/net/e1000_spi.c b/drivers/net/e1000_spi.c index 549178019..5f774f4d8 100644 --- a/drivers/net/e1000_spi.c +++ b/drivers/net/e1000_spi.c @@ -1,4 +1,5 @@ #include "e1000.h" +#include <linux/compiler.h> /*----------------------------------------------------------------------- * SPI transfer @@ -112,7 +113,7 @@ struct spi_slave *spi_setup_slave(unsigned int bus, unsigned int cs, void spi_free_slave(struct spi_slave *spi) { - struct e1000_hw *hw = e1000_hw_from_spi(spi); + __maybe_unused struct e1000_hw *hw = e1000_hw_from_spi(spi); E1000_DBG(hw->nic, "EEPROM SPI access released\n"); } @@ -469,7 +470,7 @@ static int do_e1000_spi_program(cmd_tbl_t *cmdtp, struct e1000_hw *hw, static int do_e1000_spi_checksum(cmd_tbl_t *cmdtp, struct e1000_hw *hw, int argc, char * const argv[]) { - uint16_t i, length, checksum, checksum_reg; + uint16_t i, length, checksum = 0, checksum_reg; uint16_t *buffer; boolean_t upd; |