On Wednesday 30 May 2007 22:17:22 Sam Varshavchik wrote:
> First, set the number of daemon processes to 1, then strace the child 
> authdaemond process.

Thanks Sam.

Apologies to everyone for the large strace dump but I still
can't pick why it's failing (probably in the last 20-30 lines
of interest). If I change authmodulelist="authpipe" back to
authmodulelist="authmysql" then everything works so I can
assume that authdaemond is otherwise working correctly. This
is a little suspect...

 [pid 17744] open("/etc/authlib/authProg", O_RDONLY|O_LARGEFILE) = 6
 [pid 17744] ioctl(6, SNDCTL_TMR_TIMEBASE or TCGETS, 0xbfe2d4c8) = -1 ENOTTY 
(Inappropriate ioctl for device)

This particular kernel is 2.6.21 with glibc 2.6-2, the other
debian servers have kernels 2.6.9 (a VPS) and 2.6.12. The
authProg script is calling bash 3.2.017.

# authtest -s imap [EMAIL PROTECTED] xxxxxx
Authentication FAILED: Input/output error

# strace -f -p 17607
Process 17607 attached - interrupt to quit
select(6, [3 5], NULL, NULL, {65, 712000}) = 1 (in [5], left {62, 252000})
accept(5, {sa_family=AF_FILE, [EMAIL PROTECTED], [2]) = 4
fcntl64(4, F_SETFL, O_RDONLY)           = 0
select(5, [4], NULL, NULL, {10, 0})     = 1 (in [4], left {10, 0})
read(4, "AUTH [EMAIL PROTECTED]"..., 8192) = 48
write(2, "DEBUG: received auth request, se"..., 59) = 59
write(2, "DEBUG: authpipe: trying this mod"..., 36) = 36
write(2, "DEBUG: closing pipe\n", 20)   = 20
write(2, "DEBUG: forking new one\n", 23) = 23
pipe([6, 7])                            = 0
pipe([8, 9])                            = 0
write(2, "DEBUG: attempting to fork\n", 26) = 26
clone(Process 17744 attached
child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, 
child_tidptr=0xb7e50708) = 17744
[pid 17607] write(2, "DEBUG: Pipe auth. started Pipe-p"..., 51) = 51

# some lines removed

[pid 17744] open("/usr/lib/locale/LC/LC_TIME", O_RDONLY) = -1 ENOENT (No such 
file or directory)
[pid 17744] rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
[pid 17744] open("/etc/authlib/authProg", O_RDONLY|O_LARGEFILE) = 6
[pid 17744] ioctl(6, SNDCTL_TMR_TIMEBASE or TCGETS, 0xbfe2d4c8) = -1 ENOTTY 
(Inappropriate ioctl for device)
[pid 17744] _llseek(6, 0, [0], SEEK_CUR) = 0
[pid 17744] read(6, "#!/bin/bash\n#set -e\n\nARGS=$(/bin"..., 80) = 80
[pid 17744] _llseek(6, 0, [0], SEEK_SET) = 0
[pid 17744] getrlimit(RLIMIT_NOFILE, {rlim_cur=1024, rlim_max=1024}) = 0
[pid 17744] dup2(6, 255)                = 255
[pid 17744] close(6)                    = 0
[pid 17744] fcntl64(255, F_SETFD, FD_CLOEXEC) = 0
[pid 17744] fcntl64(255, F_GETFL)       = 0x8000 (flags O_RDONLY|O_LARGEFILE)
[pid 17744] fstat64(255, {st_mode=S_IFREG|0700, st_size=475, ...}) = 0
[pid 17744] _llseek(255, 0, [0], SEEK_CUR) = 0
[pid 17744] rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
[pid 17744] read(255, "#!/bin/bash\n#set -e\n\nARGS=$(/bin"..., 475) = 475
[pid 17744] rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
[pid 17744] rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
[pid 17744] rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
[pid 17744] pipe([6, 7])                = 0
[pid 17744] rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
[pid 17744] rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
[pid 17744] rt_sigprocmask(SIG_BLOCK, [INT CHLD], [], 8) = 0
[pid 17744] _llseek(255, -435, [40], SEEK_CUR) = 0
[pid 17744] clone(Process 17745 attached
child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, 
child_tidptr=0xb7d88708) = 17745
[pid 17744] rt_sigprocmask(SIG_SETMASK, [],  <unfinished ...>
[pid 17745] close(255 <unfinished ...>

# more lines removed

[pid 17761] open("/tmp/sh-thd-1180567081", O_RDONLY|O_LARGEFILE) = 7
[pid 17761] close(6)                    = 0
[pid 17761] unlink("/tmp/sh-thd-1180567081") = 0
[pid 17761] dup2(7, 0)                  = 0
[pid 17761] close(7)                    = 0
[pid 17761] execve("/bin/cat", ["/bin/cat"], [/* 44 vars */]) = 0
[pid 17761] brk(0)                      = 0x804d000
[pid 17761] access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or 
directory)
[pid 17761] open("/etc/ld.so.cache", O_RDONLY) = 6
[pid 17761] fstat64(6, {st_mode=S_IFREG|0644, st_size=110072, ...}) = 0
[pid 17761] mmap2(NULL, 110072, PROT_READ, MAP_PRIVATE, 6, 0) = 0xb7f9a000
[pid 17761] close(6)                    = 0
[pid 17761] open("/lib/libc.so.6", O_RDONLY) = 6
[pid 17761] read(6, 
"\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\320Z\1"..., 512) = 512
[pid 17761] fstat64(6, {st_mode=S_IFREG|0755, st_size=1460471, ...}) = 0
[pid 17761] mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 
-1, 0) = 0xb7f99000
[pid 17761] mmap2(NULL, 1242568, PROT_READ|PROT_EXEC, 
MAP_PRIVATE|MAP_DENYWRITE, 6, 0) = 0xb7e69000
[pid 17761] mmap2(0xb7f93000, 12288, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 6, 0x12a) = 0xb7f93000
[pid 17761] mmap2(0xb7f96000, 9672, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7f96000
[pid 17761] close(6)                    = 0
[pid 17761] mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 
-1, 0) = 0xb7e68000
[pid 17761] set_thread_area({entry_number:-1 -> 6, base_addr:0xb7e686c0, 
limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, 
seg_not_present:0, useable:1}) = 0
[pid 17761] mprotect(0xb7f93000, 4096, PROT_READ) = 0
[pid 17761] mprotect(0xb7fd0000, 4096, PROT_READ) = 0
[pid 17761] munmap(0xb7f9a000, 110072)  = 0
[pid 17761] brk(0)                      = 0x804d000
[pid 17761] brk(0x806e000)              = 0x806e000
[pid 17761] open("/usr/lib/locale/locale-archive", O_RDONLY|O_LARGEFILE) = 6
[pid 17761] fstat64(6, {st_mode=S_IFREG|0644, st_size=1276800, ...}) = 0
[pid 17761] mmap2(NULL, 1276800, PROT_READ, MAP_PRIVATE, 6, 0) = 0xb7d30000
[pid 17761] close(6)                    = 0
[pid 17761] fstat64(1, {st_mode=S_IFIFO|0600, st_size=0, ...}) = 0
[pid 17761] fstat64(0, {st_mode=S_IFREG|0600, st_size=107, ...}) = 0
[pid 17761] read(0, "[EMAIL PROTECTED]"..., 4096) = 107
[pid 17761] write(1, "[EMAIL PROTECTED]"..., 107) = -1 EPIPE (Broken pipe)
[pid 17761] --- SIGPIPE (Broken pipe) @ 0 (0) ---
[pid 17761] open("/usr/share/locale/locale.alias", O_RDONLY) = 6
[pid 17761] fstat64(6, {st_mode=S_IFREG|0644, st_size=2586, ...}) = 0
[pid 17761] mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 
-1, 0) = 0xb7fb4000
[pid 17761] read(6, "# Locale name alias data base.\n#"..., 4096) = 2586
[pid 17761] read(6, "", 4096)           = 0
[pid 17761] close(6)                    = 0
[pid 17761] munmap(0xb7fb4000, 4096)    = 0
[pid 17761] write(2, "/bin/cat: ", 10)  = 10
[pid 17761] write(2, "write error", 11) = 11
[pid 17761] write(2, ": Broken pipe", 13) = 13
[pid 17761] write(2, "\n", 1)           = 1
[pid 17761] close(1)                    = 0
[pid 17761] close(2)                    = 0
[pid 17761] exit_group(1)               = ?
Process 17744 resumed
Process 17761 detached
[pid 17744] <... waitpid resumed> [{WIFEXITED(s) && WEXITSTATUS(s) == 1}], 0) = 
17761
[pid 17744] rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
[pid 17744] --- SIGCHLD (Child exited) @ 0 (0) ---
[pid 17744] waitpid(-1, 0xbfe2cd8c, WNOHANG) = -1 ECHILD (No child processes)
[pid 17744] sigreturn()                 = ? (mask now [])
[pid 17744] rt_sigaction(SIGINT, {SIG_DFL}, {0x80762e0, [], 0}, 8) = 0
[pid 17744] rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
[pid 17744] read(255, "\n#exit 0\n", 475) = 9
[pid 17744] rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
[pid 17744] rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
[pid 17744] read(255, "", 475)          = 0
[pid 17744] exit_group(1)               = ?
Process 17744 detached
<... nanosleep resumed> 0xbfe8c534)     = ? ERESTART_RESTARTBLOCK (To be 
restarted)
--- SIGCHLD (Child exited) @ 0 (0) ---
restart_syscall(<... resuming interrupted call ...>) = 0
waitpid(17744, NULL, WNOHANG)           = 17744
write(2, "DEBUG: authpipe: TEMPFAIL - no m"..., 58) = 58
close(4)                                = 0
select(6, [3 5], NULL, NULL, {300, 0}  

--markc

-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
courier-users mailing list
[email protected]
Unsubscribe: https://lists.sourceforge.net/lists/listinfo/courier-users

Reply via email to