Package: unbound Version: 1.17.1-2 Version: 1.18.0-2 Severity: normal Dear Maintainer,
-- >8 --
#include <unistd.h>
#include <limits.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/sendfile.h>
#include <sys/socket.h>
#include <sys/stat.h>
#include <sys/un.h>
int main(int argc, const char * const * argv) {
struct sockaddr_un unbound_ctl;
unbound_ctl.sun_family = AF_UNIX;
strncpy(unbound_ctl.sun_path, argv[1], sizeof(unbound_ctl.sun_path));
int local_datas = socket(AF_UNIX, SOCK_STREAM, 0);
connect(local_datas, &unbound_ctl, sizeof(unbound_ctl));
#define LOCAL_DATAS "UBCT1 local_datas\n"
write(local_datas, LOCAL_DATAS, sizeof(LOCAL_DATAS) - 1);
while(sendfile(local_datas, 0, 0, 128 * 1024 * 1024))
;
}
-- >8 --
-- >8 --
$ { printf '%s\n' 'UBCT1 local_datas' ';; a' 'abc.def. 3600 in txt testupa' ';;
b'; } > badzone
$ cc badzone.c -o badzone.run
$ sudo ./badzone.run /run/unbound.ctl < badzone
-- >8 --
(if you run badzone.run under strace it doesn't reliably reproduce;
attaching strace to unbound may also affect this).
This yields unbound pegging one CPU and sd-journald pegging the other.
strace capturing this attached.
The journal now consists of, exclusively
-- >8 --
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
2023-09-13T02:13:40+0200 tarta unbound[3955248]: [3955248:0] error: could not
send: Broken pipe
-- >8 --
.. okay? So close it. or whatever.
"Client hangup" isn't a valid excuse to behave like this,
especially for a network-native program.
Best,
наб
-- System Information:
Debian Release: 12.1
APT prefers stable-updates
APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500,
'stable-debug'), (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 6.1.0-9-amd64 (SMP w/24 CPU threads; PREEMPT)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_FIRMWARE_WORKAROUND,
TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8),
LANGUAGE=en_GB:en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
Versions of packages unbound depends on:
ii adduser 3.134
ii init-system-helpers 1.65.2
ii libc6 2.36-9+deb12u1
ii libevent-2.1-7 2.1.12-stable-8
ii libnghttp2-14 1.52.0-1
ii libprotobuf-c1 1.4.1-1+b1
ii libpython3.11 3.11.2-6
ii libssl3 3.0.9-1
ii libsystemd0 252.12-1~deb12u1
ii sysvinit-utils [lsb-base] 3.06-4
Versions of packages unbound recommends:
ii dns-root-data 2023010101
Versions of packages unbound suggests:
ii apparmor 3.0.8-3
ii openssl 3.0.9-1
-- no debconf information
ss.zst
Description: application/zstd
signature.asc
Description: PGP signature

