lmtp deliver failed

Dmitry P. Schegolev dmitry at dgap.mipt.ru
Fri Jan 16 10:10:52 EST 2004


В сообщении от Friday 16 January 2004 17:09 Dmitry P. Schegolev написал(a):
> > A backtrace of the core dump would be helpful.
>
> SEGFAULT in auth_krb5.c (from attached gdb):
>
> Program received signal SIGSEGV, Segmentation fault.
> 0x08084e85 in auth_memberof (auth_state=0x0, identifier=0x812c640 "test")
> at auth_krb5.c:77
> 77      auth_krb5.c: No such file or directory.
>         in auth_krb5.c

kenwood cyrus-imapd-2.2.3 # gdb /usr/cyrus/bin/lmtpd
GNU gdb 5.3
Copyright 2002 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu"...
(gdb) attach 11314
Attaching to program: /usr/cyrus/bin/lmtpd, process 11314
Reading symbols from /usr/lib/libsasl2.so.2...done.
Loaded symbols for /usr/lib/libsasl2.so.2
Reading symbols from /usr/lib/libgssapi_krb5.so.2...done.
Loaded symbols for /usr/lib/libgssapi_krb5.so.2
Reading symbols from /usr/lib/libkrb5.so.3...done.
Loaded symbols for /usr/lib/libkrb5.so.3
Reading symbols from /usr/lib/libk5crypto.so.3...done.
Loaded symbols for /usr/lib/libk5crypto.so.3
Reading symbols from /lib/libcom_err.so.2...done.
Loaded symbols for /lib/libcom_err.so.2
Reading symbols from /lib/libresolv.so.2...done.
Loaded symbols for /lib/libresolv.so.2
Reading symbols from /usr/lib/libssl.so.0.9.6...done.
Loaded symbols for /usr/lib/libssl.so.0.9.6
Reading symbols from /usr/lib/libcrypto.so.0.9.6...done.
Loaded symbols for /usr/lib/libcrypto.so.0.9.6
Reading symbols from /usr/lib/libdb-4.2.so...done.
Loaded symbols for /usr/lib/libdb-4.2.so
Reading symbols from /usr/lib/libwrap.so.0...done.
Loaded symbols for /usr/lib/libwrap.so.0
Reading symbols from /lib/libnsl.so.1...done.
Loaded symbols for /lib/libnsl.so.1
Reading symbols from /lib/libc.so.6...done.
Loaded symbols for /lib/libc.so.6
Reading symbols from /lib/libdl.so.2...done.
Loaded symbols for /lib/libdl.so.2
Reading symbols from /usr/lib/libcom_err.so.3...done.
Loaded symbols for /usr/lib/libcom_err.so.3
Reading symbols from /lib/ld-linux.so.2...done.
Loaded symbols for /lib/ld-linux.so.2
Reading symbols from /usr/lib/sasl2/libcrammd5.so.2...done.
Loaded symbols for /usr/lib/sasl2/libcrammd5.so.2
Reading symbols from /usr/lib/sasl2/libdigestmd5.so.2...done.
Loaded symbols for /usr/lib/sasl2/libdigestmd5.so.2
Reading symbols from /usr/lib/sasl2/libgssapiv2.so.2...done.
Loaded symbols for /usr/lib/sasl2/libgssapiv2.so.2
Reading symbols from /usr/lib/sasl2/libplain.so.2...done.
Loaded symbols for /usr/lib/sasl2/libplain.so.2
Reading symbols from /lib/libcrypt.so.1...done.
Loaded symbols for /lib/libcrypt.so.1
Reading symbols from /usr/lib/sasl2/libanonymous.so.2...done.
Loaded symbols for /usr/lib/sasl2/libanonymous.so.2
Reading symbols from /usr/lib/sasl2/liblogin.so.2...done.
Loaded symbols for /usr/lib/sasl2/liblogin.so.2
0x403ec8d6 in accept () from /lib/libc.so.6
(gdb) n
Single stepping until exit from function accept,
which has no line number information.
main (argc=1, argv=0x274, envp=0xbffff69c) at service.c:445
445                     if (fd < 0) {
(gdb) n
444                     fd = accept(LISTEN_FD, NULL, NULL);
(gdb) n
445                     if (fd < 0) {
(gdb)
491             unlockaccept();
(gdb)
493             if (fd < 0 && gotalrm) {
(gdb)
508             alarm(0);
(gdb)
509             gotalrm = 0;
(gdb)
512             if(soctype == SOCK_STREAM) {
(gdb)
509             gotalrm = 0;
(gdb)
512             if(soctype == SOCK_STREAM) {
(gdb)
513                 libwrap_init(&request, service);
(gdb)
515                 if (!libwrap_ask(&request, fd)) {
(gdb)
523             notify_master(STATUS_FD, MASTER_SERVICE_UNAVAILABLE);
(gdb)
524             syslog(LOG_DEBUG, "accepted connection");
(gdb)
526             if (fd != 0 && dup2(fd, 0) < 0) {
(gdb)
530             if (fd != 1 && dup2(fd, 1) < 0) {
(gdb)
534             if (fd != 2 && dup2(fd, 2) < 0) {
(gdb)
540             if(soctype == SOCK_STREAM) {
(gdb)
541                 if (fd > 2) close(fd);
(gdb)
544             notify_master(STATUS_FD, MASTER_SERVICE_CONNECTION);
(gdb)
546             service_main(newargc, newargv, envp);
(gdb)
545             use_count++;
(gdb)
546             service_main(newargc, newargv, envp);
(gdb)

Program received signal SIGSEGV, Segmentation fault.
0x08084f25 in auth_memberof (auth_state=0x0, identifier=0x812c700 "test") at 
auth_krb5.c:77
77          if (strcmp(identifier,auth_state->userid) == 0) return 3;
(gdb) bt
#0  0x08084f25 in auth_memberof (auth_state=0x0, identifier=0x812c700 "test") 
at auth_krb5.c:77
#1  0x4043caa0 in __libc_tsd_MALLOC_data () from /lib/libc.so.6
#2  0x08084bc2 in cyrus_acl_myrights (auth_state=0x0, acl=0x812c700 "test") at 
acl_afs.c:94
#3  0x0805847c in mailbox_open_header_path (name=0xbfffbc10 "user.test",
    path=0x8119c60 "/var/spool/imap/t/user/test", acl=0x0, auth_state=0x0, 
mailbox=0xbfffb900, suppresslog=0)
    at mailbox.c:450
#4  0x08058331 in mailbox_open_header (name=0xbfffb900 "\n", auth_state=0x0, 
mailbox=0x0) at mailbox.c:399
#5  0x08055dc9 in append_check (name=0xbfffbc10 "user.test", format=0, 
auth_state=0x0, aclcheck=0,
    quotacheck=0) at append.c:118
#6  0x0804f437 in verify_user (user=0x0, quotacheck=0, authstate=0x0) at 
lmtpd.c:1342
#7  0x08050929 in process_recipient (addr=0x812c605 "", ignorequota=0, 
verify_user=0x804f2c0 <verify_user>,
    msg=0x812bc70) at lmtpengine.c:816
#8  0x08051871 in lmtpmode (func=0x8116140, pin=0x812c178, pout=0x812c1e8, 
fd=0) at lmtpengine.c:1382
#9  0x0804cc07 in service_main (argc=135448064, argv=0xbfffce13, 
envp=0xbffff69c) at lmtpd.c:276
#10 0x0804c5c8 in main (argc=1, argv=0xbfffcdf0, envp=0xbffff69c) at 
service.c:546
#11 0x4032790c in __libc_start_main () from /lib/libc.so.6
(gdb)




More information about the Info-cyrus mailing list