From b489b7ff7d4ba9f000f29c608515eb43059855ab Mon Sep 17 00:00:00 2001 From: Peter Wu Date: Thu, 10 Nov 2016 16:04:25 +0100 Subject: lsd: fix unaligned read Fixes UBsan complaint: epan/dissectors/packet-lsd.c:141:7: runtime error: load of misaligned address 0x61d00017029e for type 'const guint32', which requires 4 byte alignment Change-Id: I74034f3e0bc198b4b86ca6cd7559d8df7283377f Reviewed-on: https://code.wireshark.org/review/18733 Petri-Dish: Alexis La Goutte Tested-by: Petri Dish Buildbot Reviewed-by: Michael Mann --- epan/dissectors/packet-lsd.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'epan/dissectors/packet-lsd.c') diff --git a/epan/dissectors/packet-lsd.c b/epan/dissectors/packet-lsd.c index fa16c5d301..065d80b404 100644 --- a/epan/dissectors/packet-lsd.c +++ b/epan/dissectors/packet-lsd.c @@ -26,6 +26,7 @@ #include #include +#include #include void proto_register_lsd(void); @@ -138,7 +139,7 @@ dissect_lsd_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data if (pinfo->dst.type != AT_IPv4) return FALSE; - if (g_ntohl((*((const guint32 *)pinfo->dst.data))) != LSD_MULTICAST_ADDRESS) + if (pntoh32(pinfo->dst.data) != LSD_MULTICAST_ADDRESS) return FALSE; if (pinfo->destport != LSD_PORT) -- cgit v1.2.3