View | Details | Raw Unified | Return to bug 29744
Collapse All | Expand All

(-)a/modules/proxy/mod_proxy_connect.c (-1 / +9 lines)
Lines 85-90 static int proxy_connect_transfer(request_rec *r, conn_rec *c_i, conn_rec *c_o, Link Here
85
        rv = ap_get_brigade(c_i->input_filters, bb, AP_MODE_READBYTES,
85
        rv = ap_get_brigade(c_i->input_filters, bb, AP_MODE_READBYTES,
86
                            APR_NONBLOCK_READ, CONN_BLKSZ);
86
                            APR_NONBLOCK_READ, CONN_BLKSZ);
87
        if (rv == APR_SUCCESS) {
87
        if (rv == APR_SUCCESS) {
88
            if (c_o->aborted)
89
                return APR_EPIPE;
88
            if (APR_BRIGADE_EMPTY(bb))
90
            if (APR_BRIGADE_EMPTY(bb))
89
                break;
91
                break;
90
#ifdef DEBUGGING
92
#ifdef DEBUGGING
Lines 133-138 static int proxy_connect_handler(request_rec *r, proxy_worker *worker, Link Here
133
    char buffer[HUGE_STRING_LEN];
135
    char buffer[HUGE_STRING_LEN];
134
    apr_socket_t *client_socket = ap_get_module_config(c->conn_config, &core_module);
136
    apr_socket_t *client_socket = ap_get_module_config(c->conn_config, &core_module);
135
    int failed, rc;
137
    int failed, rc;
138
    int client_error = 0;
136
    apr_pollset_t *pollset;
139
    apr_pollset_t *pollset;
137
    apr_pollfd_t pollfd;
140
    apr_pollfd_t pollfd;
138
    const apr_pollfd_t *signalled;
141
    const apr_pollfd_t *signalled;
Lines 397-402 static int proxy_connect_handler(request_rec *r, proxy_worker *worker, Link Here
397
                         ap_log_rerror(APLOG_MARK, APLOG_NOTICE, 0, r,
400
                         ap_log_rerror(APLOG_MARK, APLOG_NOTICE, 0, r,
398
                                       "proxy: CONNECT: err/hup on backconn");
401
                                       "proxy: CONNECT: err/hup on backconn");
399
                }
402
                }
403
                if (rv != APR_SUCCESS)
404
                    client_error = 1;
400
            }
405
            }
401
            else if (cur->desc.s == client_socket) {
406
            else if (cur->desc.s == client_socket) {
402
                pollevent = cur->rtnevents;
407
                pollevent = cur->rtnevents;
Lines 429-435 static int proxy_connect_handler(request_rec *r, proxy_worker *worker, Link Here
429
     * Close the socket and clean up
434
     * Close the socket and clean up
430
     */
435
     */
431
436
432
    ap_lingering_close(backconn);
437
    if (client_error)
438
        apr_socket_close(sock);
439
    else
440
        ap_lingering_close(backconn);
433
441
434
    c->aborted = 1;
442
    c->aborted = 1;
435
443

Return to bug 29744