From: Yasushi SHOJI Date: Mon, 29 Nov 2021 13:33:27 +0000 (+0900) Subject: target/target: Check checksum_memory before call X-Git-Url: https://git.gag.com/?a=commitdiff_plain;h=d7142a57271079eca8e1c15034b74499ff4e3ef5;p=fw%2Fopenocd target/target: Check checksum_memory before call Make sure checksum_memory is present. Otherwise it'll segfault. Change-Id: If31123323bd8a03282da43505c9604fde735ad0e Signed-off-by: Yasushi SHOJI Reviewed-on: https://review.openocd.org/c/openocd/+/6758 Tested-by: jenkins Reviewed-by: Antonio Borneo --- diff --git a/src/target/target.c b/src/target/target.c index 27888a83e..e9cbe39b7 100644 --- a/src/target/target.c +++ b/src/target/target.c @@ -2530,6 +2530,10 @@ int target_checksum_memory(struct target *target, target_addr_t address, uint32_ LOG_ERROR("Target not examined yet"); return ERROR_FAIL; } + if (!target->type->checksum_memory) { + LOG_ERROR("Target %s doesn't support checksum_memory", target_name(target)); + return ERROR_FAIL; + } retval = target->type->checksum_memory(target, address, size, &checksum); if (retval != ERROR_OK) {