diff options
-rwxr-xr-x | lib/avb/fsl/fsl_bootctl.c | 7 | ||||
-rw-r--r-- | lib/avb/fsl/utils.c | 4 | ||||
-rw-r--r-- | net/net.c | 7 |
3 files changed, 13 insertions, 5 deletions
diff --git a/lib/avb/fsl/fsl_bootctl.c b/lib/avb/fsl/fsl_bootctl.c index 737be06250..9a57557e76 100755 --- a/lib/avb/fsl/fsl_bootctl.c +++ b/lib/avb/fsl/fsl_bootctl.c @@ -95,7 +95,8 @@ int get_slotvar_avb(AvbABOps *ab_ops, char *cmd, char *buffer, size_t size) { AvbABSlotData *slot_data; int slot; - assert(ab_ops != NULL && cmd != NULL && buffer != NULL); + if ((ab_ops == NULL) || (cmd == NULL) || (buffer == NULL)) + return -1; char *str = cmd; if (!strcmp_l1("has-slot:", cmd)) { @@ -182,7 +183,9 @@ char *select_slot(AvbABOps *ab_ops) { AvbABData ab_data; int curr; - assert(ab_ops != NULL); + if (ab_ops == NULL) { + return NULL; + } /* load ab meta */ if (ab_ops->read_ab_metadata == NULL || diff --git a/lib/avb/fsl/utils.c b/lib/avb/fsl/utils.c index 458ccea1a1..6416fa971e 100644 --- a/lib/avb/fsl/utils.c +++ b/lib/avb/fsl/utils.c @@ -14,7 +14,9 @@ int get_margin_pos(uint64_t part_start, uint64_t part_end, unsigned long blksz, margin_pos_t *margin, int64_t offset, size_t num_bytes, bool allow_partial) { long off; - assert(margin != NULL); + if (margin == NULL) + return -1; + if (blksz == 0 || part_start > part_end) return -1; @@ -215,8 +215,11 @@ static int on_bootfile(const char *name, const char *value, enum env_op op, switch (op) { case env_op_create: case env_op_overwrite: - copy_filename(net_boot_file_name, value, - sizeof(net_boot_file_name)); + if (value == NULL) + return -1; + else + copy_filename(net_boot_file_name, value, + sizeof(net_boot_file_name)); break; default: break; |