================================================================= ==15354==ERROR: AddressSanitizer: stack-buffer-overflow on address 0x7f1df65337c0 at pc 0x56521d39cf18 bp 0x7f1df6533580 sp 0x7f1df6533570 READ of size 4 at 0x7f1df65337c0 thread T1 #0 0x56521d39cf17 in md5_process src/md5.c:205 #1 0x56521d39d1a6 in md5_append src/md5.c:339 #2 0x56521d3b2c84 in Util_getToken src/util.c:1456 #3 0x56521d3f7b26 in create_HttpResponse src/http/processor.c:582 #4 0x56521d3f7b26 in do_service src/http/processor.c:443 #5 0x56521d3f7b26 in http_processor src/http/processor.c:153 #6 0x56521d3f020c in Engine_start src/http/engine.c:507 #7 0x56521d399a4d in thread_wrapper src/http.c:141 #8 0x7f1df9b402d6 in start_thread /var/tmp/portage/sys-libs/glibc-2.30-r4/work/glibc-2.30/nptl/pthread_create.c:479 #9 0x7f1df94b9a2e in clone (/lib64/libc.so.6+0x106a2e) Address 0x7f1df65337c0 is located in stack of thread T1 at offset 208 in frame #0 0x56521d3b2b4f in Util_getToken src/util.c:1450 This frame has 3 object(s): [48, 136) 'ctx' (line 1451) [176, 208) 'buf' (line 1452) <== Memory access at offset 208 overflows this variable [240, 305) 'digest' (line 1453) HINT: this may be a false positive if your program uses some custom stack unwind mechanism, swapcontext or vfork (longjmp and C++ exceptions *are* supported) Thread T1 created by T0 here: #0 0x7f1df9d04211 in pthread_create (/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/libasan.so.5+0x3a211) #1 0x56521d399c5c in monit_http src/http.c:125 #2 0x7ffc8527e25d ([stack]+0x2025d) #3 0x4c45485300762cff () SUMMARY: AddressSanitizer: stack-buffer-overflow src/md5.c:205 in md5_process Shadow bytes around the buggy address: 0x0fe43ec9e6a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0x0fe43ec9e6b0: 00 00 00 00 00 00 00 00 00 00 f1 f1 f1 f1 00 00 0x0fe43ec9e6c0: 00 00 00 00 00 00 f3 f3 f3 f3 00 00 00 00 00 00 0x0fe43ec9e6d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f1 f1 0x0fe43ec9e6e0: f1 f1 f1 f1 00 00 00 00 00 00 00 00 00 00 00 f2 =>0x0fe43ec9e6f0: f2 f2 f2 f2 00 00 00 00[f2]f2 f2 f2 00 00 00 00 0x0fe43ec9e700: 00 00 00 00 01 f3 f3 f3 f3 f3 00 00 00 00 00 00 0x0fe43ec9e710: 00 00 00 00 00 00 f1 f1 f1 f1 00 f2 f2 f2 00 f2 0x0fe43ec9e720: f2 f2 00 f3 f3 f3 00 00 00 00 00 00 00 00 00 00 0x0fe43ec9e730: 00 00 00 00 00 00 00 00 00 00 f1 f1 f1 f1 f1 f1 0x0fe43ec9e740: 00 00 f2 f2 00 00 00 00 00 00 00 00 00 00 00 00 Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb Shadow gap: cc ==15354==ABORTING