memory leak when the storage directory is not writable
% knotd -c knot.conf
2015-07-23T00:30:43 info: Knot DNS 2.1.0-dev starting
2015-07-23T00:30:43 info: binding to interface '127.0.0.1@53000'
2015-07-23T00:30:43 info: binding to interface '::@53000'
2015-07-23T00:30:43 info: configured 5 zones
2015-07-23T00:30:43 error: storage directory '/var/lib/knot/slaved' is not writable
2015-07-23T00:30:43 critical: failed to drop privileges
=================================================================
==16132==ERROR: LeakSanitizer: detected memory leaks
Direct leak of 40 byte(s) in 1 object(s) allocated from:
#0 0x7f97f0ed1f40 in calloc (/home/fcelda/devel/knot/src/knotd+0xf3f40)
#1 0x7f97f0fcced0 in server_init_handler /home/fcelda/devel/knot/src/knot/server/server.c:403:20
#2 0x7f97f0fc632b in reconfigure_threads /home/fcelda/devel/knot/src/knot/server/server.c:575:9
#3 0x7f97f0fc404c in server_reconfigure /home/fcelda/devel/knot/src/knot/server/server.c:649:13
#4 0x7f97f0ef0ecf in main /home/fcelda/devel/knot/src/knot/main.c:396:2
#5 0x7f97eeb4278f in __libc_start_main (/lib64/libc.so.6+0x2078f)
Direct leak of 40 byte(s) in 1 object(s) allocated from:
#0 0x7f97f0ed1f40 in calloc (/home/fcelda/devel/knot/src/knotd+0xf3f40)
#1 0x7f97f0fcd08d in server_init_handler /home/fcelda/devel/knot/src/knot/server/server.c:409:17
#2 0x7f97f0fc632b in reconfigure_threads /home/fcelda/devel/knot/src/knot/server/server.c:575:9
#3 0x7f97f0fc404c in server_reconfigure /home/fcelda/devel/knot/src/knot/server/server.c:649:13
#4 0x7f97f0ef0ecf in main /home/fcelda/devel/knot/src/knot/main.c:396:2
#5 0x7f97eeb4278f in __libc_start_main (/lib64/libc.so.6+0x2078f)
Direct leak of 16 byte(s) in 1 object(s) allocated from:
#0 0x7f97f0ed1f40 in calloc (/home/fcelda/devel/knot/src/knotd+0xf3f40)
#1 0x7f97f0fcd08d in server_init_handler /home/fcelda/devel/knot/src/knot/server/server.c:409:17
#2 0x7f97f0fc60dc in reconfigure_threads /home/fcelda/devel/knot/src/knot/server/server.c:565:9
#3 0x7f97f0fc404c in server_reconfigure /home/fcelda/devel/knot/src/knot/server/server.c:649:13
#4 0x7f97f0ef0ecf in main /home/fcelda/devel/knot/src/knot/main.c:396:2
#5 0x7f97eeb4278f in __libc_start_main (/lib64/libc.so.6+0x2078f)
Direct leak of 16 byte(s) in 1 object(s) allocated from:
#0 0x7f97f0ed1f40 in calloc (/home/fcelda/devel/knot/src/knotd+0xf3f40)
#1 0x7f97f0fcced0 in server_init_handler /home/fcelda/devel/knot/src/knot/server/server.c:403:20
#2 0x7f97f0fc60dc in reconfigure_threads /home/fcelda/devel/knot/src/knot/server/server.c:565:9
#3 0x7f97f0fc404c in server_reconfigure /home/fcelda/devel/knot/src/knot/server/server.c:649:13
#4 0x7f97f0ef0ecf in main /home/fcelda/devel/knot/src/knot/main.c:396:2
#5 0x7f97eeb4278f in __libc_start_main (/lib64/libc.so.6+0x2078f)
Indirect leak of 1520 byte(s) in 10 object(s) allocated from:
#0 0x7f97f0ed1deb in __interceptor_malloc (/home/fcelda/devel/knot/src/knotd+0xf3deb)
#1 0x7f97f0fb1d02 in dt_create_thread /home/fcelda/devel/knot/src/knot/server/dthreads.c:236:22
#2 0x7f97f0fa8865 in dt_create_unit /home/fcelda/devel/knot/src/knot/server/dthreads.c:349:22
#3 0x7f97f0fa71f4 in dt_create /home/fcelda/devel/knot/src/knot/server/dthreads.c:386:20
#4 0x7f97f0fccd53 in server_init_handler /home/fcelda/devel/knot/src/knot/server/server.c:398:12
#5 0x7f97f0fc632b in reconfigure_threads /home/fcelda/devel/knot/src/knot/server/server.c:575:9
#6 0x7f97f0fc404c in server_reconfigure /home/fcelda/devel/knot/src/knot/server/server.c:649:13
#7 0x7f97f0ef0ecf in main /home/fcelda/devel/knot/src/knot/main.c:396:2
#8 0x7f97eeb4278f in __libc_start_main (/lib64/libc.so.6+0x2078f)
Indirect leak of 608 byte(s) in 4 object(s) allocated from:
#0 0x7f97f0ed1deb in __interceptor_malloc (/home/fcelda/devel/knot/src/knotd+0xf3deb)
#1 0x7f97f0fb1d02 in dt_create_thread /home/fcelda/devel/knot/src/knot/server/dthreads.c:236:22
#2 0x7f97f0fa8865 in dt_create_unit /home/fcelda/devel/knot/src/knot/server/dthreads.c:349:22
#3 0x7f97f0fa71f4 in dt_create /home/fcelda/devel/knot/src/knot/server/dthreads.c:386:20
#4 0x7f97f0fccd53 in server_init_handler /home/fcelda/devel/knot/src/knot/server/server.c:398:12
#5 0x7f97f0fc60dc in reconfigure_threads /home/fcelda/devel/knot/src/knot/server/server.c:565:9
#6 0x7f97f0fc404c in server_reconfigure /home/fcelda/devel/knot/src/knot/server/server.c:649:13
#7 0x7f97f0ef0ecf in main /home/fcelda/devel/knot/src/knot/main.c:396:2
#8 0x7f97eeb4278f in __libc_start_main (/lib64/libc.so.6+0x2078f)
Indirect leak of 232 byte(s) in 1 object(s) allocated from:
#0 0x7f97f0ed1deb in __interceptor_malloc (/home/fcelda/devel/knot/src/knotd+0xf3deb)
#1 0x7f97f0fa7ba5 in dt_create_unit /home/fcelda/devel/knot/src/knot/server/dthreads.c:292:20
#2 0x7f97f0fa71f4 in dt_create /home/fcelda/devel/knot/src/knot/server/dthreads.c:386:20
#3 0x7f97f0fccd53 in server_init_handler /home/fcelda/devel/knot/src/knot/server/server.c:398:12
#4 0x7f97f0fc60dc in reconfigure_threads /home/fcelda/devel/knot/src/knot/server/server.c:565:9
#5 0x7f97f0fc404c in server_reconfigure /home/fcelda/devel/knot/src/knot/server/server.c:649:13
#6 0x7f97f0ef0ecf in main /home/fcelda/devel/knot/src/knot/main.c:396:2
#7 0x7f97eeb4278f in __libc_start_main (/lib64/libc.so.6+0x2078f)
Indirect leak of 232 byte(s) in 1 object(s) allocated from:
#0 0x7f97f0ed1deb in __interceptor_malloc (/home/fcelda/devel/knot/src/knotd+0xf3deb)
#1 0x7f97f0fa7ba5 in dt_create_unit /home/fcelda/devel/knot/src/knot/server/dthreads.c:292:20
#2 0x7f97f0fa71f4 in dt_create /home/fcelda/devel/knot/src/knot/server/dthreads.c:386:20
#3 0x7f97f0fccd53 in server_init_handler /home/fcelda/devel/knot/src/knot/server/server.c:398:12
#4 0x7f97f0fc632b in reconfigure_threads /home/fcelda/devel/knot/src/knot/server/server.c:575:9
#5 0x7f97f0fc404c in server_reconfigure /home/fcelda/devel/knot/src/knot/server/server.c:649:13
#6 0x7f97f0ef0ecf in main /home/fcelda/devel/knot/src/knot/main.c:396:2
#7 0x7f97eeb4278f in __libc_start_main (/lib64/libc.so.6+0x2078f)
Indirect leak of 80 byte(s) in 1 object(s) allocated from:
#0 0x7f97f0ed1f40 in calloc (/home/fcelda/devel/knot/src/knotd+0xf3f40)
#1 0x7f97f0fa83f6 in dt_create_unit /home/fcelda/devel/knot/src/knot/server/dthreads.c:335:18
#2 0x7f97f0fa71f4 in dt_create /home/fcelda/devel/knot/src/knot/server/dthreads.c:386:20
#3 0x7f97f0fccd53 in server_init_handler /home/fcelda/devel/knot/src/knot/server/server.c:398:12
#4 0x7f97f0fc632b in reconfigure_threads /home/fcelda/devel/knot/src/knot/server/server.c:575:9
#5 0x7f97f0fc404c in server_reconfigure /home/fcelda/devel/knot/src/knot/server/server.c:649:13
#6 0x7f97f0ef0ecf in main /home/fcelda/devel/knot/src/knot/main.c:396:2
#7 0x7f97eeb4278f in __libc_start_main (/lib64/libc.so.6+0x2078f)
Indirect leak of 32 byte(s) in 1 object(s) allocated from:
#0 0x7f97f0ed1f40 in calloc (/home/fcelda/devel/knot/src/knotd+0xf3f40)
#1 0x7f97f0fa83f6 in dt_create_unit /home/fcelda/devel/knot/src/knot/server/dthreads.c:335:18
#2 0x7f97f0fa71f4 in dt_create /home/fcelda/devel/knot/src/knot/server/dthreads.c:386:20
#3 0x7f97f0fccd53 in server_init_handler /home/fcelda/devel/knot/src/knot/server/server.c:398:12
#4 0x7f97f0fc60dc in reconfigure_threads /home/fcelda/devel/knot/src/knot/server/server.c:565:9
#5 0x7f97f0fc404c in server_reconfigure /home/fcelda/devel/knot/src/knot/server/server.c:649:13
#6 0x7f97f0ef0ecf in main /home/fcelda/devel/knot/src/knot/main.c:396:2
#7 0x7f97eeb4278f in __libc_start_main (/lib64/libc.so.6+0x2078f)
SUMMARY: AddressSanitizer: 2816 byte(s) leaked in 22 allocation(s).