Lines Matching defs:baton
45 static int proxy_wstunnel_pump(ws_baton_t *baton, apr_time_t timeout, int try_async) {
46 request_rec *r = baton->r;
48 proxy_conn_rec *conn = baton->proxy_connrec;
54 apr_pollset_t *pollset = baton->pollset;
55 apr_socket_t *client_socket = baton->client_soc;
57 apr_bucket_brigade *bb = baton->bb;
147 static void proxy_wstunnel_finish(ws_baton_t *baton) {
148 ap_log_rerror(APLOG_MARK, APLOG_TRACE1, 0, baton->r, "proxy_wstunnel_finish");
149 baton->proxy_connrec->close = 1; /* new handshake expected on each back-conn */
150 baton->r->connection->keepalive = AP_CONN_CLOSE;
151 ap_proxy_release_connection(baton->scheme, baton->proxy_connrec, baton->r->server);
152 ap_finalize_request_protocol(baton->r);
153 ap_lingering_close(baton->r->connection);
154 apr_socket_close(baton->client_soc);
155 ap_mpm_resume_suspended(baton->r->connection);
156 ap_process_request_after_handler(baton->r); /* don't touch baton or r after here */
165 ws_baton_t *baton = (ws_baton_t*)b;
166 ap_log_rerror(APLOG_MARK, APLOG_TRACE1, 0, baton->r, "proxy_wstunnel_cancel_callback, IO timed out");
167 proxy_wstunnel_finish(baton);
179 ws_baton_t *baton = (ws_baton_t*)b;
180 proxyws_dir_conf *dconf = ap_get_module_config(baton->r->per_dir_config, &proxy_wstunnel_module);
181 apr_pool_clear(baton->subpool);
182 status = proxy_wstunnel_pump(baton, dconf->async_delay, dconf->is_async);
184 sockets[0] = baton->client_soc;
185 sockets[1] = baton->server_soc;
186 ap_mpm_register_socket_callback_timeout(sockets, baton->subpool, 1,
189 baton,
191 ap_log_rerror(APLOG_MARK, APLOG_TRACE1, 0, baton->r, "proxy_wstunnel_callback suspend");
194 proxy_wstunnel_finish(baton);
350 ws_baton_t *baton = apr_pcalloc(r->pool, sizeof(ws_baton_t));
411 baton->r = r;
412 baton->pollset = pollset;
413 baton->client_soc = client_socket;
414 baton->server_soc = sock;
415 baton->proxy_connrec = conn;
416 baton->bb = bb;
417 baton->scheme = scheme;
418 apr_pool_create(&baton->subpool, r->pool);
421 status = proxy_wstunnel_pump(baton, dconf->idle_timeout, dconf->is_async);
424 status = proxy_wstunnel_pump(baton, dconf->async_delay, dconf->is_async);
425 apr_pool_clear(baton->subpool);
427 sockets[0] = baton->client_soc;
428 sockets[1] = baton->server_soc;
429 rv = ap_mpm_register_socket_callback_timeout(sockets, baton->subpool, 1,
432 baton,
439 status = proxy_wstunnel_pump(baton, dconf->idle_timeout, 0); /* force no async */