From: Samuel Mendoza-Jonas Date: Mon, 21 Dec 2015 05:16:40 +0000 (+1100) Subject: lib/pb-protocol: Fix NULL dereference on non-powerpc X-Git-Tag: v1.0.0~31 X-Git-Url: http://git.ozlabs.org/?p=petitboot;a=commitdiff_plain;h=b3d51f6ec5d077e6a2068fde0631074a7302b1da;hp=f155a58a64c660e46e74123293482561b816a39a lib/pb-protocol: Fix NULL dereference on non-powerpc If not running on a powerpc platform the bmc_mac pointer remains NULL. If this is the case set an address of zero when serialising rather than dereferencing the pointer. Signed-off-by: Samuel Mendoza-Jonas --- diff --git a/lib/pb-protocol/pb-protocol.c b/lib/pb-protocol/pb-protocol.c index 9d07a58..42506e2 100644 --- a/lib/pb-protocol/pb-protocol.c +++ b/lib/pb-protocol/pb-protocol.c @@ -424,7 +424,10 @@ int pb_protocol_serialise_system_info(const struct system_info *sysinfo, pos += pb_protocol_serialise_string(pos, bd_info->mountpoint); } - memcpy(pos, sysinfo->bmc_mac, HWADDR_SIZE); + if (sysinfo->bmc_mac) + memcpy(pos, sysinfo->bmc_mac, HWADDR_SIZE); + else + memset(pos, 0, HWADDR_SIZE); pos += HWADDR_SIZE; assert(pos <= buf + buf_len);