summaryrefslogtreecommitdiffstats
path: root/server/mpm/winnt/mpm_winnt.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--server/mpm/winnt/mpm_winnt.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/server/mpm/winnt/mpm_winnt.c b/server/mpm/winnt/mpm_winnt.c
index 5a4b36e594..41f2c41833 100644
--- a/server/mpm/winnt/mpm_winnt.c
+++ b/server/mpm/winnt/mpm_winnt.c
@@ -1121,6 +1121,7 @@ static PCOMP_CONTEXT winnt_get_connection(PCOMP_CONTEXT context)
static void worker_main(int child_num)
{
PCOMP_CONTEXT context = NULL;
+ apr_os_sock_info_t sockinfo;
while (1) {
conn_rec *c;
@@ -1137,7 +1138,13 @@ static void worker_main(int child_num)
if (!context)
break;
sock_disable_nagle(context->accept_socket);
- apr_put_os_sock(&context->sock, &context->accept_socket, context->ptrans);
+
+ sockinfo.os_sock = &context->accept_socket;
+ sockinfo.local = context->sa_server;
+ sockinfo.remote = context->sa_client;
+ sockinfo.family = APR_INET;
+ sockinfo.type = SOCK_STREAM;
+ apr_make_os_sock(&context->sock, &sockinfo, context->ptrans);
c = ap_new_connection(context->ptrans, server_conf, context->sock,
(struct sockaddr_in *) context->sa_client,