Wireshark-dev: Re: [Wireshark-dev] Bug 15709: Segfault on MacOS; help wanted

From: Uli Heilmeier <zeugs@xxxxxxxxxxxx>
Date: Thu, 25 Apr 2019 21:32:43 +0200
Thanks a lot Peter for your help!

> Also if you have not already, build with cmake -DENABLE_ASAN=1. I
> suspect that it might blow up with a use-after-free warning before the
> NULL pointer dereference.

Yes, you're right. After compiling it with -DENABLE_ASAN=1 and -DCMAKE_BUILD_TYPE=Debug it fails at:

* thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x0)
    frame #0: 0x00007fff588c9d89 libsystem_platform.dylib`_platform_memmove$VARIANT$Haswell + 169
libsystem_platform.dylib`_platform_memmove$VARIANT$Haswell:
->  0x7fff588c9d89 <+169>: movq   (%rsi), %rcx
    0x7fff588c9d8c <+172>: movq   (%rsi,%rdx), %r8
    0x7fff588c9d90 <+176>: movq   %rcx, (%rdi)
    0x7fff588c9d93 <+179>: movq   %r8, (%rdi,%rdx)
Target 0: (Wireshark) stopped.

----
=================================================================
==18967==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000000 (pc 0x7fff588c9d89 bp 0x7ffee4d3a9c0 sp
0x7ffee4d3a9c0 T0)
==18967==The signal is caused by a READ memory access.
==18967==Hint: address points to the zero page.
    #0 0x7fff588c9d88 in _platform_memmove$VARIANT$Haswell (libsystem_platform.dylib:x86_64+0x1d88)
    #1 0x10e624854 in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x59854)
    #2 0x116c36936 in isakmp_init_protocol packet-isakmp.c:5866
    #3 0x118e76e4a in call_routine packet.c:247
    #4 0x10d8637ec in g_slist_foreach (libglib-2.0.0.dylib:x86_64+0x5c7ec)
    #5 0x118e76f59 in init_dissection packet.c:328
    ....

So I will have a look at the UAT part.

Cheers
Uli