Package: dictd
Version: 1.13.0+dfsg-1
Severity: grave
Justification: renders package unusable

I get the following error:

$ dict foo
dict (client_read_status): Error reading from socket
 client_read_status: Connection reset by peer

A strace shows

[...]
connect(3, {sa_family=AF_INET, sin_port=htons(2628), 
sin_addr=inet_addr("127.0.0.1")}, 16) = 0
write(3, "client \"dict 1.13.0/rf on Linux "..., 65) = 65
read(3, 0x7fffc776e2f7, 1)              = -1 ECONNRESET (Connection reset by 
peer)
write(2, "dict (client_read_status): ", 27) = 27
write(2, "Error reading from socket\n", 26) = 26
write(2, " client_read_status: Connection "..., 46) = 46
exit_group(1)                           = ?

With telnet:

$ telnet localhost 2628
Trying ::1...
Connection failed: Connection refused
Trying 127.0.0.1...
flushoutput character is 'off'.
Connected to localhost.
Escape character is '^]'.
Connection closed by foreign host.

i.e. the connection to 127.0.0.1 succeeds, but is immediately closed.

$ ps -fC dictd
UID          PID    PPID  C STIME TTY          TIME CMD
dictd       5039       1  0 Aug08 ?        00:00:00 dictd 1.13.0: 1/12

The dictd version hasn't changed for 2 years. So I suspect that dictd
got broken by some library upgrade.

With telnet, a strace on the server gives

# strace -f -p 5039
strace: Process 5039 attached
accept(3, {sa_family=AF_INET, sin_port=htons(52874), 
sin_addr=inet_addr("127.0.0.1")}, [16]) = 6
clone(child_stack=NULL, 
flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLDstrace: Process 202087 
attached
, child_tidptr=0x7fa42f269e50) = 202087
[pid 202087] set_robust_list(0x7fa42f269e60, 24 <unfinished ...>
[pid  5039] close(6 <unfinished ...>
[pid 202087] <... set_robust_list resumed>) = 0
[pid  5039] <... close resumed>)        = 0
[pid  5039] accept(3,  <unfinished ...>
[pid 202087] alarm(0)                   = 0
[pid 202087] rt_sigaction(SIGALRM, {sa_handler=0x5631a9394d50, sa_mask=[], 
sa_flags=SA_RESTORER, sa_restorer=0x7fa42f2a3940}, NULL, 8) = 0
[pid 202087] alarm(600)                 = 0
[pid 202087] newfstatat(AT_FDCWD, "/etc/resolv.conf", {st_mode=S_IFREG|0644, 
st_size=137, ...}, 0) = 0
[pid 202087] openat(AT_FDCWD, "/etc/host.conf", O_RDONLY|O_CLOEXEC) = 7
[pid 202087] newfstatat(7, "", {st_mode=S_IFREG|0644, st_size=9, ...}, 
AT_EMPTY_PATH) = 0
[pid 202087] read(7, "multi on\n", 4096) = 9
[pid 202087] read(7, "", 4096)          = 0
[pid 202087] close(7)                   = 0
[pid 202087] futex(0x7fa42f43da8c, FUTEX_WAKE_PRIVATE, 2147483647) = 0
[pid 202087] openat(AT_FDCWD, "/etc/resolv.conf", O_RDONLY|O_CLOEXEC) = 7
[pid 202087] newfstatat(7, "", {st_mode=S_IFREG|0644, st_size=137, ...}, 
AT_EMPTY_PATH) = 0
[pid 202087] read(7, "# Generated by NetworkManager\nse"..., 4096) = 137
[pid 202087] read(7, "", 4096)          = 0
[pid 202087] newfstatat(7, "", {st_mode=S_IFREG|0644, st_size=137, ...}, 
AT_EMPTY_PATH) = 0
[pid 202087] close(7)                   = 0
[pid 202087] socket(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0) = 7
[pid 202087] connect(7, {sa_family=AF_UNIX, sun_path="/var/run/nscd/socket"}, 
110) = -1 ENOENT (No such file or directory)
[pid 202087] close(7)                   = 0
[pid 202087] socket(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0) = 7
[pid 202087] connect(7, {sa_family=AF_UNIX, sun_path="/var/run/nscd/socket"}, 
110) = -1 ENOENT (No such file or directory)
[pid 202087] close(7)                   = 0
[pid 202087] newfstatat(AT_FDCWD, "/etc/nsswitch.conf", {st_mode=S_IFREG|0644, 
st_size=545, ...}, 0) = 0
[pid 202087] openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 7
[pid 202087] newfstatat(7, "", {st_mode=S_IFREG|0644, st_size=120622, ...}, 
AT_EMPTY_PATH) = 0
[pid 202087] mmap(NULL, 120622, PROT_READ, MAP_PRIVATE, 7, 0) = 0x7fa42f483000
[pid 202087] close(7)                   = 0
[pid 202087] openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libnss_files.so.2", 
O_RDONLY|O_CLOEXEC) = 7
[pid 202087] read(7, 
"\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 832) = 832
[pid 202087] newfstatat(7, "", {st_mode=S_IFREG|0644, st_size=14328, ...}, 
AT_EMPTY_PATH) = 0
[pid 202087] mmap(NULL, 16400, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 7, 0) = 
0x7fa42c590000
[pid 202087] mmap(0x7fa42c591000, 4096, PROT_READ|PROT_EXEC, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 7, 0x1000) = 0x7fa42c591000
[pid 202087] mmap(0x7fa42c592000, 4096, PROT_READ, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 7, 0x2000) = 0x7fa42c592000
[pid 202087] mmap(0x7fa42c593000, 8192, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 7, 0x2000) = 0x7fa42c593000
[pid 202087] close(7)                   = 0
[pid 202087] mprotect(0x7fa42c593000, 4096, PROT_READ) = 0
[pid 202087] munmap(0x7fa42f483000, 120622) = 0
[pid 202087] openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 7
[pid 202087] newfstatat(7, "", {st_mode=S_IFREG|0644, st_size=120622, ...}, 
AT_EMPTY_PATH) = 0
[pid 202087] mmap(NULL, 120622, PROT_READ, MAP_PRIVATE, 7, 0) = 0x7fa42f483000
[pid 202087] close(7)                   = 0
[pid 202087] openat(AT_FDCWD, 
"/lib/x86_64-linux-gnu/libnss_mdns4_minimal.so.2", O_RDONLY|O_CLOEXEC) = 7
[pid 202087] read(7, 
"\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\20\22\0\0\0\0\0\0"..., 832) = 
832
[pid 202087] newfstatat(7, "", {st_mode=S_IFREG|0644, st_size=18504, ...}, 
AT_EMPTY_PATH) = 0
[pid 202087] mmap(NULL, 20496, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 7, 0) = 
0x7fa42c58a000
[pid 202087] mmap(0x7fa42c58b000, 8192, PROT_READ|PROT_EXEC, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 7, 0x1000) = 0x7fa42c58b000
[pid 202087] mmap(0x7fa42c58d000, 4096, PROT_READ, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 7, 0x3000) = 0x7fa42c58d000
[pid 202087] mmap(0x7fa42c58e000, 8192, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 7, 0x3000) = 0x7fa42c58e000
[pid 202087] close(7)                   = 0
[pid 202087] openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libresolv.so.2", 
O_RDONLY|O_CLOEXEC) = 7
[pid 202087] read(7, 
"\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 832) = 832
[pid 202087] newfstatat(7, "", {st_mode=S_IFREG|0644, st_size=64344, ...}, 
AT_EMPTY_PATH) = 0
[pid 202087] mmap(NULL, 76328, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 7, 0) = 
0x7fa42c577000
[pid 202087] mmap(0x7fa42c57a000, 36864, PROT_READ|PROT_EXEC, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 7, 0x3000) = 0x7fa42c57a000
[pid 202087] mmap(0x7fa42c583000, 12288, PROT_READ, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 7, 0xc000) = 0x7fa42c583000
[pid 202087] mmap(0x7fa42c586000, 8192, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 7, 0xe000) = 0x7fa42c586000
[pid 202087] mmap(0x7fa42c588000, 6696, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fa42c588000
[pid 202087] close(7)                   = 0
[pid 202087] munmap(0x7fa42f483000, 120622) = 0
[pid 202087] munmap(0x7fa42c58a000, 20496) = 0
[pid 202087] munmap(0x7fa42c577000, 76328) = 0
[pid 202087] openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 7
[pid 202087] newfstatat(7, "", {st_mode=S_IFREG|0644, st_size=120622, ...}, 
AT_EMPTY_PATH) = 0
[pid 202087] mmap(NULL, 120622, PROT_READ, MAP_PRIVATE, 7, 0) = 0x7fa42f483000
[pid 202087] close(7)                   = 0
[pid 202087] openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libnss_dns.so.2", 
O_RDONLY|O_CLOEXEC) = 7
[pid 202087] read(7, 
"\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 832) = 832
[pid 202087] newfstatat(7, "", {st_mode=S_IFREG|0644, st_size=14328, ...}, 
AT_EMPTY_PATH) = 0
[pid 202087] mmap(NULL, 16400, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 7, 0) = 
0x7fa42c58b000
[pid 202087] mmap(0x7fa42c58c000, 4096, PROT_READ|PROT_EXEC, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 7, 0x1000) = 0x7fa42c58c000
[pid 202087] mmap(0x7fa42c58d000, 4096, PROT_READ, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 7, 0x2000) = 0x7fa42c58d000
[pid 202087] mmap(0x7fa42c58e000, 8192, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 7, 0x2000) = 0x7fa42c58e000
[pid 202087] close(7)                   = 0
[pid 202087] mprotect(0x7fa42c58e000, 4096, PROT_READ) = 0
[pid 202087] munmap(0x7fa42f483000, 120622) = 0
[pid 202087] exit_group(1)              = ?
[pid 202087] +++ exited with 1 +++
<... accept resumed>0x7ffeb90c4160, [16]) = ? ERESTARTSYS (To be restarted if 
SA_RESTART is set)
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=202087, si_uid=113, 
si_status=1, si_utime=0, si_stime=0} ---
wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 1}], WNOHANG, NULL) = 202087
wait4(-1, 0x7ffeb90c3b44, WNOHANG, NULL) = -1 ECHILD (No child processes)
rt_sigreturn({mask=[]})                 = 43
accept(3, 

-- System Information:
Debian Release: bookworm/sid
  APT prefers unstable-debug
  APT policy: (500, 'unstable-debug'), (500, 'stable-updates'), (500, 
'stable-security'), (500, 'unstable'), (500, 'testing'), (500, 'stable'), (1, 
'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 5.18.0-3-amd64 (SMP w/8 CPU threads; PREEMPT)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE, 
TAINT_UNSIGNED_MODULE
Locale: LANG=POSIX, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages dictd depends on:
ii  adduser                3.123
ii  debconf [debconf-2.0]  1.5.79
ii  dictzip                1.13.0+dfsg-1
ii  init-system-helpers    1.64
ii  libc6                  2.34-3
ii  libmaa4                1.4.7-1
ii  lsb-base               11.2
ii  netbase                6.3
ii  ucf                    3.0043
ii  update-inetd           4.51
ii  zlib1g                 1:1.2.11.dfsg-4

Versions of packages dictd recommends:
ii  dict [dict-client]  1.13.0+dfsg-1

Versions of packages dictd suggests:
ii  dict-foldoc [dictd-dictionary]            20201018-1
ii  dict-freedict-eng-fra [dictd-dictionary]  2022.04.21-1
ii  dict-freedict-fra-eng [dictd-dictionary]  2022.04.21-1
ii  dict-gcide [dictd-dictionary]             0.48.5+nmu2
ii  dict-jargon [dictd-dictionary]            4.4.7-3.1
ii  dict-vera [dictd-dictionary]              1:1.24-1
ii  dict-wn [dictd-dictionary]                1:3.0-37

-- debconf information:
  dictd/run_mode: daemon

-- 
Vincent Lefèvre <vinc...@vinc17.net> - Web: <https://www.vinc17.net/>
100% accessible validated (X)HTML - Blog: <https://www.vinc17.net/blog/>
Work: CR INRIA - computer arithmetic / AriC project (LIP, ENS-Lyon)

Reply via email to