[Dovecot] dovecot crash on sendfilev64 on solaris 8 (32bit)
Hi,
i'm running dovecot on a SMP sparc 32bit server with solaris 8(latest patch installed).
Dovecot with ssl. Postfix+imap+maildrop .
Dovecot work fine with every email and folders delivered by maildrop, but now i'm trying to move all my local folders (i'm using mutt and i'm storing my emails locally on my pc) to the imap server .
The upload of an entire 12000 mails folders worked fine, when i try to access that folder i can see "fetching headers" and all it's ok but when i attempt to read a message dovecot imap process crash.
Dovecot crash even if i attempt to read one single email moved from my local inbox to remote imap INBOX maildir.
Dovecot work fine on every folder created by maildrop.
I made some debugging with truss and found that he die on sendfilev64 call:
5113: 0 7 O K S t a t u s c o m p l e t e d .\r\n 5113: poll(0x0008B450, 1, 204) = 0 5113: poll(0x0008B450, 1, 0) = 0 5113: poll(0x0008B450, 1, 999) = 1 5113: time() = 1075892017 5113: read(0, 0x000925AC, 3796) = 35 5113: a 0 0 0 8 U I D F E T C H 1 2 5 1 3 B O D Y . P E E K [ 5113: ]\r\n 5113: time() = 1075892017 5113: time() = 1075892017 5113: time() = 1075892017 5113: fcntl(4, F_SETLKW64, 0xDFFFF510) = 0 5113: open64("/mailboxes/pietrosanti.it/lists@pietrosanti.it/.Cyber-Rights/cur/1075891040.P3168Q12514M511660.supertolla.itapac.net:2,S", O_RDONLY) = 14 5113: fstat64(14, 0xDFFFF550) = 0 5113: time() = 1075892017 5113: write(1, 0x00093488, 40) = 40 5113: * 1 2 5 1 3 F E T C H ( U I D 1 2 5 1 3 B O D Y [ ] 5113: { 1 9 5 7 }\r\n 5113: sendfilev64(1, 1, 0xDFFFF3C0, 1, 0xDFFFF3BC) Err#124 EAFNOSUPPORT 5113: time() = 1075892017 5113: time() = 1075892017 5113: fcntl(4, F_SETLKW64, 0xDFFFF5F8) = 0 5113: close(14) = 0 5113: time() = 1075892017 5113: close(9) = 0 5113: munmap(0xDF230000, 1608) = 0 5113: munmap(0xDF220000, 10264) = 0 5113: close(10) = 0 5113: munmap(0xDF1A0000, 1560) = 0 5113: close(12) = 0 5113: munmap(0xDF190000, 2576) = 0 5113: close(13) = 0 5113: munmap(0xDF1B0000, 5) = 0 5113: close(11) = 0 5113: close(4) = 0 5113: munmap(0xDF4C0000, 330120) = 0 5113: munmap(0xDF240000, 2563740) = 0 5113: close(5) = 0 5113: munmap(0xDF1C0000, 330072) = 0 5113: close(7) = 0 5113: munmap(0xDF520000, 2576) = 0 5113: close(8) = 0 5113: munmap(0xDF790000, 5) = 0 5113: close(6) = 0 5113: fstat(3, 0xDFFFFAE0) = 0 5113: close(3) = 0 5113: alarm(0) = 16 5113: sigaction(SIGALRM, 0xDFFFFA48, 0x00000000) = 0 5113: llseek(0, 0, SEEK_CUR) Err#29 ESPIPE 5113: _exit(0)
I noticed that maildir files created by dovecot have the following file names format:
1075891040.P3168Q12514M511660.supertolla.itapac.net:2,S
and maildrop one are in this other format:
1075893689.M267966P5215V01540032I001B6706_0.supertolla.itapac.net,S=1381:2,S
I'm working on SPARC 32 bit architecture with the following compile options:
CC=gcc
CXX=gcc
CFLAGS="-O9 -msupersparc -mcpu=supersparc -mtune=supersparc -fno-omit-frame-pointer -m32"
CXXFLAGS="-O9 -msupersparc -mcpu=supersparc -mtune=supersparc -felide-constructors -fno-exceptions -fno-rtti -m32"
CPPFLAGS="-I/usr/local/ssl/include/ -I/data/chroot/mysql/mysql/include/mysql"
LDFLAGS="-L/data/chroot/mysql/mysql/lib/mysql -L/usr/local/ssl/lib"
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/ssl/lib:/data/chroot/mysql/mysql/lib/mysql
export CC CXX CFLAGS CXXFLAGS CPPFLAGS LDFLAGS LD_LIBRARY_PATH
./configure --prefix=/dovecot --without-passwd --without-passwd-file --without-shadow --without-pam \
--without-ldap --without-vpopmail --without-pgsql --without-cyrus-sasl2 --with-ssl=openssl \
--with-ssldir=/etc/ssl --without-pop3d --with-mysql --with-static-userdb
vi config.h
#define PASSDB_MYSQL 1
#define USERDB_MYSQL 1
vi src/auth/Makefile
add -lmysqlclient to LIBS
LIBS = -lsocket -lnsl -lrt -lsendfile -lmysqlclient
Regards
-- Fabio Pietrosanti ( naif ) - f.pietrosanti@inet.it I.NET SpA - ( Operation Group, Network Security )
Sede: Via Darwin, 85 20019 Settimo Milanese (MI), Italy Tel: +39 02 32863.1 - Fax: +39 02 32863.7709 PGP Key avaiable on request
Free advertising: www.openbsd.org - Multiplatform Ultra-secure OS
participants (1)
-
Fabio Pietrosanti (naif)