Subject: bug#561: claws-mail: Segfault on selecting empty 'X-Face' custom header

From: Florian Zieboll <[email-masked]>
Date: Mon, 01 Mar 2021 12:28:41 +0100

Package: claws-mail
Version: 3.17.3-2
Severity: normal
Tags: upstream

Hello,

when selecting an empty 'X-Face' custom header with mouse or keyboard (tab /
arrow down) under "Current custom headers" ("Configuration" -> "Edit accounts"
-> select account and "Edit" -> "Send" -> check "Add user-defined header" ->
"Edit"), claws-mail segfaults immediately.

related lines of 'strace -f' output:

[pid  5951] recvmsg(3, {msg_name=NULL, msg_namelen=0,
msg_iov=[{iov_base="\2\27\rP1\256\233\0h\1\0\0\250\2\240\2\0\0\0\0\362\3g\2\21\1w\0\20\0\1\0",
iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 32
[pid  5951] recvmsg(3, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily
unavailable)
[pid  5951] poll([{fd=3, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=3,
revents=POLLOUT}])
[pid  5951] writev(3,
[{iov_base="\24\0\6\0h\1\0\0g\1\0\0!\0\0\0\0\0\0\0\377\377\377\377",
iov_len=24}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 24
[pid  5951] poll([{fd=3, events=POLLIN}], 1, -1) = 1 ([{fd=3, revents=POLLIN}])
[pid  5951] recvmsg(3, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\1
\16P\1\0\0\0!\0\0\0\0\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"...,
iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 36
[pid  5951] poll([{fd=3, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=3,
revents=POLLOUT}])
[pid  5951] writev(3, [{iov_base="\22\0\7\0\247\2\240\2Z\1\0\0\6\0\0\0
\0\0\0\1\0\0\0001\256\233\0\26\0\4\0"..., iov_len=52}, {iov_base=NULL,
iov_len=0}, {iov_base="", iov_len=0}], 3) = 52
[pid  5951] poll([{fd=3, events=POLLIN}], 1, -1) = 1 ([{fd=3, revents=POLLIN}])
[pid  5951] recvmsg(3, {msg_name=NULL, msg_namelen=0,
msg_iov=[{iov_base="\34\0\17P\247\2\240\2Z\1\0\0004\256\233\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"...,
iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 64
[pid  5951] poll([{fd=3, events=POLLIN}], 1, -1) = 1 ([{fd=3, revents=POLLIN}])
[pid  5951] recvmsg(3, {msg_name=NULL, msg_namelen=0,
msg_iov=[{iov_base="W\0\20P\1\0\240\2\0\0\0\0\1\0\0\0004\256\233\0001\256\233\0\0\0\0\0\0\0\0\0"...,
iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 64
[pid  5951] --- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=NULL}
---
[pid  5952] <... poll resumed> <unfinished ...>) = ?
[pid  5953] <... poll resumed> <unfinished ...>) = ?
[pid  5953] +++ killed by SIGSEGV +++
[pid  5952] +++ killed by SIGSEGV +++
+++ killed by SIGSEGV +++
Segmentation fault

-- System Information:
Distributor ID:	Devuan
Description:	Devuan GNU/Linux 3 (beowulf)
Release:	3
Codename:	beowulf
Architecture: x86_64

Kernel: Linux 4.19.0-14-amd64 (SMP w/8 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)
LSM: AppArmor: enabled

Versions of packages claws-mail depends on:
ii  libatk1.0-0          2.30.0-2
ii  libc6                2.28-10
ii  libcairo2            1.16.0-4+deb10u1
ii  libcompfaceg1        1:1.5.2-5+b2
ii  libcurl3-gnutls      7.64.0-4+deb10u1
ii  libdb5.3             5.3.28+dfsg1-0.5
ii  libenchant1c2a       1.6.0-11.1+b1
ii  libetpan20           1.9.3-2
ii  libexpat1            2.2.6-2+deb10u1
ii  libfontconfig1       2.13.1-2
ii  libfreetype6         2.9.1-3+deb10u2
ii  libgdk-pixbuf2.0-0   2.38.1+dfsg-1
ii  libglib2.0-0         2.58.3-2+deb10u2
ii  libgnutls30          3.6.7-4+deb10u6
ii  libgtk2.0-0          2.24.32-3
ii  libice6              2:1.0.9-2
ii  libldap-2.4-2        2.4.47+dfsg-3+deb10u6
ii  liblockfile1         1.14-1.1
ii  libnettle6           3.4.1-1
ii  libpango-1.0-0       1.42.4-8~deb10u1
ii  libpangocairo-1.0-0  1.42.4-8~deb10u1
ii  libpangoft2-1.0-0    1.42.4-8~deb10u1
ii  librsvg2-2           2.44.10-2.1+deb10u3
ii  libsasl2-2           2.1.27+dfsg-1+deb10u1
ii  libsm6               2:1.2.3-1
ii  xdg-utils            1.1.3-1+deb10u1

Versions of packages claws-mail recommends:
ii  aspell-de [aspell-dictionary]  20161207-7
ii  aspell-en [aspell-dictionary]  2018.04.16-0-1
ii  claws-mail-i18n                3.17.3-2
ii  xfonts-100dpi                  1:1.0.4+nmu1
ii  xfonts-75dpi                   1:1.0.4+nmu1

Versions of packages claws-mail suggests:
ii  chromium [www-browser]             88.0.4324.182-1~deb10u1
pn  claws-mail-doc                     <none>
ii  claws-mail-tools                   3.17.3-2
ii  dillo [www-browser]                3.0.5-5
ii  edbrowse [www-browser]             3.7.4-3
ii  firefox-esr [www-browser]          78.8.0esr-1~deb10u1
pn  gedit | kwrite | mousepad | nedit  <none>
ii  links2 [www-browser]               2.18-2
ii  lynx [www-browser]                 2.8.9rel.1-3
ii  w3m [www-browser]                  0.5.3-37

-- no debconf information