char *headers_out = NULL;
int ctrlrawsock[2];
apr_socket_t *ctrlsock = NULL, *clientctrlsock = NULL;
+ apr_size_t wrlen;
if ((headers_out = calloc(8*1024, 1)) != NULL) {
apr_table_do(headers_builder, headers_out, r->headers_in, NULL);
"proxy: FD: send_socket failed:");
return HTTP_INTERNAL_SERVER_ERROR;
}
-
+ wrlen = strlen(headers_out);
+ rv = apr_socket_send(ctrlsock, headers_out, &wrlen);
+ if (rv != APR_SUCCESS) {
+ ap_log_rerror(APLOG_MARK, APLOG_ERR, rv, r,
+ "proxy: FD: send headers failed");
+ return HTTP_INTERNAL_SERVER_ERROR;
+ }
+ apr_socket_shutdown(ctrlsock, APR_SHUTDOWN_READWRITE);
{
apr_socket_t *dummy;
/* Create a dummy unconnected socket, and set it as the one we were