Compile with -fsanitize=address unveils the following memory leak: ==1175==ERROR: LeakSanitizer: detected memory leaks
Direct leak of 216 byte(s) in 3 object(s) allocated from: #0 0x7f0881809b17 in calloc (/lib64/libasan.so.6+0xaeb17) #1 0x55b3f110bc78 in send_protocol /builddir/devel/dlm/dlm_controld/daemon_cpg.c:1872 SUMMARY: AddressSanitizer: 216 byte(s) leaked in 3 allocation(s). This patch free's the allocated buffer in send_protocol which should be copied in a different buffer by _send_message() already. --- dlm_controld/daemon_cpg.c | 1 + 1 file changed, 1 insertion(+) diff --git a/dlm_controld/daemon_cpg.c b/dlm_controld/daemon_cpg.c index f215edfd..e6a03a28 100644 --- a/dlm_controld/daemon_cpg.c +++ b/dlm_controld/daemon_cpg.c @@ -1886,6 +1886,7 @@ static void send_protocol(struct protocol *proto) protocol_out(pr); _send_message(cpg_handle_daemon, buf, len, DLM_MSG_PROTOCOL); + free(buf); } int set_protocol(void) -- 2.31.1