[Dovecot] dovecot -n segfault
# uname -a Linux ns2 2.6.18-4-sparc64 #1 Mon Mar 26 11:16:07 UTC 2007 sparc64 GNU/Linux # dovecot -n # 1.0.1: /usr/local/etc/dovecot.conf Segmentation fault
uhu?
ciao
Luca
On Thu, 2007-06-21 at 01:25 +0300, Timo Sirainen wrote:
gdb dovecot r -n bt full
(gdb) r -n Starting program: /usr/local/sbin/dovecot -n # 1.0.1: /usr/local/etc/dovecot.conf
Program received signal SIGSEGV, Segmentation fault. 0xf7e1f51c in strcmp () from /lib/libc.so.6 (gdb) bt full #0 0xf7e1f51c in strcmp () from /lib/libc.so.6 No symbol table info available. #1 0x000190b4 in settings_dump (def=0x65766500, sets=0x2d980, set_names=0x1010101, count=2155905152, nondefaults=false, indent=1869873152) at master-settings.c:1531 same = /build/buildd/gdb-6.4.90.dfsg/gdb/regcache.c:175: internal-error: register_size: Assertion `regnum >= 0 && regnum < (NUM_REGS + NUM_PSEUDO_REGS)' failed. A problem internal to GDB has been detected, further debugging may prove unreliable. Quit this debugging session? (y or n) y
/build/buildd/gdb-6.4.90.dfsg/gdb/regcache.c:175: internal-error: register_size: Assertion `regnum >= 0 && regnum < (NUM_REGS + NUM_PSEUDO_REGS)' failed. A problem internal to GDB has been detected, further debugging may prove unreliable. Create a core file of GDB? (y or n) y Aborted
Do you need a gdb run with unstripped dovecot?
ciao
Luca
Luca Corti wrote:
On Thu, 2007-06-21 at 01:25 +0300, Timo Sirainen wrote:
gdb dovecot r -n bt full
#1 0x000190b4 in settings_dump (def=0x65766500, sets=0x2d980, set_names=0x1010101, count=2155905152, nondefaults=false, indent=1869873152) at master-settings.c:1531 Do you need a gdb run with unstripped dovecot?
ciao
Luca Are you applied "managesieve" patch? There is bug in "master_settings_dump" causing segfault with "dovecot -n" look for old posts; few month ago I posted patch here.
..or fix it yourself: ---------- @@ -1536,8 +1584,8 @@ void master_settings_dump(struct server_settings *set, bool nondefaults) { - const void *sets[4]; - const char *set_names[4]; + const void *sets[5]; + const char *set_names[5]; unsigned int count; sets[0] = &default_settings; ---------- Uldis
On Tue, 2007-06-26 at 22:46 +0300, Uldis Pakuls wrote:
Luca Are you applied "managesieve" patch? There is bug in "master_settings_dump" causing segfault with "dovecot -n" look for old posts; few month ago I posted patch here.
Forgot about patching managesieve into dovecot...
@@ -1536,8 +1584,8 @@ void master_settings_dump(struct server_settings *set, bool nondefaults) { - const void *sets[4]; - const char *set_names[4]; + const void *sets[5]; + const char *set_names[5]; unsigned int count; sets[0] = &default_settings;
This fixes the segfault... great, thanks a lot. I think this should go into the managesieve patchset. CCing its author. ciao Luca
participants (3)
-
Luca Corti
-
Timo Sirainen
-
Uldis Pakuls