[tpop3d-discuss] tpop3d hanging at prompt

Larry Chancy lchancy at onr.com
Tue, 11 Nov 2003 13:20:20 -0600


#gdb /usr/local/sbin/tpop3d 28200
GNU gdb Red Hat Linux (5.3post-0.20021129.18rh)
Copyright 2003 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 "i386-redhat-linux-gnu"...
Attaching to program: /usr/local/sbin/tpop3d, process 28200
Reading symbols from /lib/libcrypt.so.1...done.
Loaded symbols for /lib/libcrypt.so.1
Reading symbols from /lib/tls/libc.so.6...done.
Loaded symbols for /lib/tls/libc.so.6
Reading symbols from /lib/ld-linux.so.2...done.
Loaded symbols for /lib/ld-linux.so.2
Reading symbols from /lib/libnss_files.so.2...done.
Loaded symbols for /lib/libnss_files.so.2
0xffffe002 in ?? ()
(gdb) bt
#0  0xffffe002 in ?? ()
#1  0x420da75f in syslog () from /lib/tls/libc.so.6
#2  0x0804c6de in log_print (priority=3D9,
    fmt=3D0x8054380 "listeners_post_select: client %s: connected to =
local address
%s:%d") at logging.c:118
#3  0x0804e9d2 in listeners_post_select (readfds=3D0xbfffe1c0,
    writefds=3D0xbfffe140, exceptfds=3D0x0) at netloop.c:153
#4  0x0804f3cc in net_loop () at netloop.c:516
#5  0x0804de0c in main (argc=3D180, argv=3D0xbfffe344, =
envp=3D0xbfffe354)
    at main.c:546
#6  0x420156a4 in __libc_start_main () from /lib/tls/libc.so.6
(gdb) cont
Continuing.

Program received signal SIGINT, Interrupt.
0xffffe002 in ?? ()
(gdb) bt
#0  0xffffe002 in ?? ()
#1  0x420da75f in syslog () from /lib/tls/libc.so.6
#2  0x0804c6de in log_print (priority=3D9,
    fmt=3D0x8054600 "fork_child: %s: began session for `%s' with %s; =
child PID is
%d") at logging.c:118
#3  0x0804ee87 in fork_child (c=3D0x8060188) at netloop.c:310
#4  0x0804f172 in connections_post_select (readfds=3D0xbfffe1c0,
    writefds=3D0xbfffe140, exceptfds=3D0x0) at netloop.c:390
#5  0x0804f2c1 in net_loop () at netloop.c:499
#6  0x0804de0c in main (argc=3D180, argv=3D0xbfffe344, =
envp=3D0xbfffe354)
    at main.c:546
#7  0x420156a4 in __libc_start_main () from /lib/tls/libc.so.6
(gdb) cont
Continuing.

Program received signal SIGINT, Interrupt.
0xffffe002 in ?? ()
(gdb) bt
#0  0xffffe002 in ?? ()
#1  0x420da75f in syslog () from /lib/tls/libc.so.6
#2  0x0804c6de in log_print (priority=3D9,
    fmt=3D0x80523c0 "authcontext_new_user_pass: began session for `%s' =
with %s; ui
d %d, gid %d") at logging.c:118
#3  0x0804a0d5 in authcontext_new_user_pass (user=3D0x80604b0 "mnull",
    local_part=3D0x0, domain=3D0x805c018 "onr.com", pass=3D0x8060c20 =
"dallas1",
    clienthost=3D0x805fc50 "66.196.226.25", serverhost=3D0x8060918 =
"207.200.6.83")
    at authswitch.c:305
#4  0x080508ab in connection_do (c=3D0x805fbc8, p=3D0x805fd38) at =
pop3.c:448
#5  0x0804f0fb in connections_post_select (readfds=3D0xbfffe1c0,
    writefds=3D0xbfffe140, exceptfds=3D0x0) at netloop.c:377
#6  0x0804f2c1 in net_loop () at netloop.c:499
#7  0x0804de0c in main (argc=3D180, argv=3D0xbfffe344, =
envp=3D0xbfffe354)
    at main.c:546
#8  0x420156a4 in __libc_start_main () from /lib/tls/libc.so.6
(gdb) cont
Continuing.

Program received signal SIGINT, Interrupt.
0xffffe002 in ?? ()
(gdb) bt
#0  0xffffe002 in ?? ()
#1  0x420da75f in syslog () from /lib/tls/libc.so.6
#2  0x0804c6de in log_print (priority=3D9,
    fmt=3D0x8054600 "fork_child: %s: began session for `%s' with %s; =
child PID is
%d") at logging.c:118
#3  0x0804ee87 in fork_child (c=3D0x805c0d8) at netloop.c:310
#4  0x0804f172 in connections_post_select (readfds=3D0xbfffe1c0,
    writefds=3D0xbfffe140, exceptfds=3D0x0) at netloop.c:390
#5  0x0804f2c1 in net_loop () at netloop.c:499
#6  0x0804de0c in main (argc=3D180, argv=3D0xbfffe344, =
envp=3D0xbfffe354)
    at main.c:546
#7  0x420156a4 in __libc_start_main () from /lib/tls/libc.so.6
(gdb) detach
Detaching from program: /usr/local/sbin/tpop3d, process 28200
(gdb) quit

Thanks,
Larry=20


-----Original Message-----
From: Chris Lightfoot [mailto:chris@ex-parrot.com]
Sent: Tuesday, November 11, 2003 1:03 PM
To: Larry Chancy
Cc: tpop3d-discuss@lists.beasts.org
Subject: Re: [tpop3d-discuss] tpop3d hanging at prompt


On Tue, Nov 11, 2003 at 01:06:30PM -0600, Larry Chancy wrote:
> Right now I see 104 people with an established connection to port 110 =
but only 3 child processes. It looks like most of these are probably =
waiting for the initial +OK banner.


Can you try attaching to tpop3d with a debugger and
sending a stack trace:

$ gdb /path/to/tpop3d pid-of-tpop3d-parent-process
    [...]
(gdb) bt
    [ prints stack trace ]
(gdb) cont
    [ tpop3d continues to run ]
    [ wait a few seconds, then hit ^C ]
    [ do the bt thing again ]
            [ repeat a few times, see if the stack trace
            changes in any interesting way ]
(gdb) detach
(gdb) quit

-- I'd be interested to see the results.

--=20
You can check out any time you like... but you can never leave
(from `Hotel California', The Eagles)