You need to sign in or sign up before continuing.
knsupdate, memory leak on TCP connection failure
knsupdate leaks some memory when the server is not available and TCP protocol is used for connection.
$ cat update.txt
server ::1 53002
key hmac-sha256 key0 Wg==
zone test.com.
update delete random.test.com. TXT
update add random.test.com. 60 TXT "19186"
show
send
$ knsupdate --version
knsupdate, version 2.0.1
$ knsupdate -v ./update.txt
Update query:
;; ->>HEADER<<- opcode: UPDATE; status: NOERROR; id: 23677
;; Flags: ; ZONE: 1; PREREQ: 0; UPDATE: 2; ADDITIONAL: 0
;; ZONE SECTION:
;; test.com. IN SOA
;; UPDATE SECTION:
random.test.com. 0 ANY TXT
random.test.com. 60 IN TXT "19186"
; Warning: can't connect to ::1@53002(TCP)
=================================================================
==25484==ERROR: LeakSanitizer: detected memory leaks
Direct leak of 76 byte(s) in 1 object(s) allocated from:
#0 0x4a01bb in __interceptor_malloc (/home/fcelda/devel/knot/src/knsupdate+0x4a01bb)
#1 0x7effc556c759 in gaih_inet (/lib64/libc.so.6+0xe7759)
#2 0x7effc5570275 in __GI_getaddrinfo (/lib64/libc.so.6+0xeb275)
#3 0x452e10 in __interceptor_getaddrinfo (/home/fcelda/devel/knot/src/knsupdate+0x452e10)
#4 0x51a37a in get_addr /home/fcelda/devel/knot/src/utils/common/netio.c:127:6
#5 0x519628 in net_init /home/fcelda/devel/knot/src/utils/common/netio.c:176:6
#6 0x4cd98e in pkt_sendrecv /home/fcelda/devel/knot/src/utils/knsupdate/knsupdate_exec.c:429:8
#7 0x4c3541 in cmd_send /home/fcelda/devel/knot/src/utils/knsupdate/knsupdate_exec.c:844:8
#8 0x4d0c04 in process_line /home/fcelda/devel/knot/src/utils/knsupdate/knsupdate_exec.c:488:8
#9 0x4c82c7 in process_lines /home/fcelda/devel/knot/src/utils/knsupdate/knsupdate_exec.c:514:18
#10 0x4c7972 in knsupdate_exec /home/fcelda/devel/knot/src/utils/knsupdate/knsupdate_exec.c:576:9
#11 0x4d12d1 in main /home/fcelda/devel/knot/src/utils/knsupdate/knsupdate_main.c:33:8
#12 0x7effc54a56ff in __libc_start_main (/lib64/libc.so.6+0x206ff)
Direct leak of 15 byte(s) in 1 object(s) allocated from:
#0 0x4a01bb in __interceptor_malloc (/home/fcelda/devel/knot/src/knsupdate+0x4a01bb)
#1 0x518c0e in get_addr_str /home/fcelda/devel/knot/src/utils/common/netio.c:151:9
#2 0x51aab0 in net_connect /home/fcelda/devel/knot/src/utils/common/netio.c:211:2
#3 0x4cda7d in pkt_sendrecv /home/fcelda/devel/knot/src/utils/knsupdate/knsupdate_exec.c:439:8
#4 0x4c3541 in cmd_send /home/fcelda/devel/knot/src/utils/knsupdate/knsupdate_exec.c:844:8
#5 0x4d0c04 in process_line /home/fcelda/devel/knot/src/utils/knsupdate/knsupdate_exec.c:488:8
#6 0x4c82c7 in process_lines /home/fcelda/devel/knot/src/utils/knsupdate/knsupdate_exec.c:514:18
#7 0x4c7972 in knsupdate_exec /home/fcelda/devel/knot/src/utils/knsupdate/knsupdate_exec.c:576:9
#8 0x4d12d1 in main /home/fcelda/devel/knot/src/utils/knsupdate/knsupdate_main.c:33:8
#9 0x7effc54a56ff in __libc_start_main (/lib64/libc.so.6+0x206ff)
SUMMARY: AddressSanitizer: 91 byte(s) leaked in 2 allocation(s).