[Dovecot] Segfault with dovecot -n / dovecot 2.0
Hi all,
and while trying to get some environmental stuff via dovecot -n, I got a segfault (dovecot is not in system path):
/opt/dovecot-2.0/sbin/dovecot -c /etc/dovecot-2.0/sql/dovecot.conf -n # 2.0.UNSTABLE: /etc/dovecot-2.0/sql/dovecot.conf # OS: Linux 2.6.24-23-xen x86_64 Ubuntu 8.04.2 nfs Segmentation fault
stat("/home/dovecot/mail/", {st_mode=S_IFDIR|0777, st_size=4096, ...}) = 0 open("/etc/mtab", O_RDONLY) = 6 fstat(6, {st_mode=S_IFREG|0644, st_size=480, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7ff654983000 read(6, "/dev/sda2 / ext3 rw,noatime,nodi"..., 4096) = 480 stat("/", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 stat("/proc", {st_mode=S_IFDIR|0555, st_size=0, ...}) = 0 stat("/sys", {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0 stat("/var/run", {st_mode=S_IFDIR|0755, st_size=400, ...}) = 0 stat("/var/lock", {st_mode=S_IFDIR|S_ISVTX|0777, st_size=40, ...}) = 0 stat("/dev", {st_mode=S_IFDIR|0755, st_size=12820, ...}) = 0 stat("/dev/shm", {st_mode=S_IFDIR|S_ISVTX|0777, st_size=40, ...}) = 0 stat("/dev/pts", {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0 stat("/home/dovecot", {st_mode=S_IFDIR|0777, st_size=4096, ...}) = 0 close(6) = 0 munmap(0x7ff654983000, 4096) = 0 write(1, "# OS: Linux 2.6.24-23-xen x86_64"..., 51# OS: Linux 2.6.24-23-xen x86_64 Ubuntu 8.04.2 nfs ) = 51 lseek(1, 0, SEEK_CUR) = -1 ESPIPE (Illegal seek) getsockname(1, 0x7fff5c986f50, [18446744069414584348]) = -1 ENOTSOCK (Socket operation on non-socket) --- SIGSEGV (Segmentation fault) @ 0 (0) --- +++ killed by SIGSEGV +++ Process 30890 detached
Version is still dovecot 2.0 hg latest.
Regards, Sebastian
On Mon, 2009-05-25 at 16:32 +0000, ja nein wrote:
and while trying to get some environmental stuff via dovecot -n, I got a segfault (dovecot is not in system path):
/opt/dovecot-2.0/sbin/dovecot -c /etc/dovecot-2.0/sql/dovecot.conf -n
Could you get gdb backtrace?
gdb /opt/dovecot-2.0/bin/doveconf r -c /etc/dovecot-2.0/sql/dovecot.conf -n bt full
Note that with with gdb it's running doveconf. "dovecot -n" nowadays just execs "doveconf -n".
Timo Sirainen schrieb:
On Mon, 2009-05-25 at 16:32 +0000, ja nein wrote:
and while trying to get some environmental stuff via dovecot -n, I got a segfault (dovecot is not in system path):
/opt/dovecot-2.0/sbin/dovecot -c /etc/dovecot-2.0/sql/dovecot.conf -n
Could you get gdb backtrace?
gdb /opt/dovecot-2.0/bin/doveconf r -c /etc/dovecot-2.0/sql/dovecot.conf -n bt full
Note that with with gdb it's running doveconf. "dovecot -n" nowadays just execs "doveconf -n".
Here it goes:
(gdb) r -c /etc/dovecot-2.0/sql/dovecot.conf -n Starting program: /opt/dovecot-2.0/bin/doveconf -c /etc/dovecot-2.0/sql/dovecot.conf -n # 2.0.UNSTABLE: /etc/dovecot-2.0/sql/dovecot.conf # OS: Linux 2.6.24-23-xen x86_64 Ubuntu 8.04.2 nfs
Program received signal SIGSEGV, Segmentation fault.
0x0000000000403b24 in main (argc=26, argv=<value optimized out>) at
doveconf.c:139
139 skip_len = prefix_idx == -1U ? 0 :
strlen(prefixes[prefix_idx]);
(gdb) bt full
#0 0x0000000000403b24 in main (argc=26, argv=<value optimized out>) at
doveconf.c:139
info = <value optimized out>
flags = <value optimized out>
getopt_str = <value optimized out>
config_path = <value optimized out>
module = <value optimized out>
filter = {service = 0x0, local_net = {family = 0, u = {ip6 =
{in6_u = {
u6_addr8 = '\0'
Regards, Sebastian
participants (3)
-
ja nein
-
reg9009
-
Timo Sirainen