Worker MPM, built from the CVS head earlier today, on Solaris...
(gdb) where
#0 apr_sockaddr_ip_get (addr=0xe3a78, sockaddr=0x0) at
../unix/sa_common.c:139
#1 0x4a3e0 in core_create_conn (ptrans=0xe3a78, server=0x7ce08,
csd=0xe3aa8,
conn_id=1) at core.c:3347
#2 0x406d8 in ap_run_create_connection (p=0xe3a78, server=0x7ce08,
csd=0xe3aa8,
conn_id=1) at connection.c:86
#3 0x328ec in process_socket (p=0xe3a78, sock=0xe3aa8, my_child_num=1,
my_thread_num=1) at worker.c:500
#4 0x32f14 in worker_thread (thd=0xd7c20, dummy=0x724f8) at worker.c:715
#5 0xff352c20 in dummy_worker (opaque=0xd7c20) at thread.c:122
The client socket descriptor popped from the worker queue looks
corrupted:
(gdb) print *csd
$10 = {cntxt = 0xe3a78, socketdes = 932536, type = 0, local_addr = 0x0,
remote_addr = 0xe3a78, timeout = 0, local_port_unknown = 0,
local_interface_unknown = 0, netmask = 0, inherit = 0}
(gdb)
I'm not sure whether the corruption happened before or after it was
popped from the queue. Does anybody more familiar with the worker
MPM have any ideas?
--Brian