Lines Matching refs:ccfg

70 static void extend_timeout(reqtimeout_con_cfg *ccfg, apr_bucket_brigade *bb)
78 new_timeout_at = ccfg->timeout_at + len * ccfg->rate_factor;
79 if (ccfg->max_timeout_at > 0 && new_timeout_at > ccfg->max_timeout_at) {
80 ccfg->timeout_at = ccfg->max_timeout_at;
83 ccfg->timeout_at = new_timeout_at;
87 static apr_status_t check_time_left(reqtimeout_con_cfg *ccfg,
93 *time_left_p = ccfg->timeout_at - now;
178 reqtimeout_con_cfg *ccfg = f->ctx;
180 if (ccfg->in_keep_alive) {
182 ccfg->in_keep_alive = 0;
196 if (ccfg->new_timeout > 0) {
199 ccfg->timeout_at = now + apr_time_from_sec(ccfg->new_timeout);
200 ccfg->new_timeout = 0;
201 if (ccfg->new_max_timeout > 0) {
202 ccfg->max_timeout_at = now + apr_time_from_sec(ccfg->new_max_timeout);
203 ccfg->new_max_timeout = 0;
206 else if (ccfg->timeout_at == 0) {
211 if (!ccfg->socket) {
212 ccfg->socket = ap_get_conn_socket(f->c);
215 rv = check_time_left(ccfg, &time_left, now);
222 if (ccfg->min_rate > 0 && rv == APR_SUCCESS) {
223 extend_timeout(ccfg, bb);
228 rv = apr_socket_timeout_get(ccfg->socket, &saved_sock_timeout);
231 rv = apr_socket_timeout_set(ccfg->socket, MIN(time_left, saved_sock_timeout));
256 if (ccfg->min_rate > 0) {
257 extend_timeout(ccfg, bb);
275 if (!ccfg->tmpbb) {
276 ccfg->tmpbb = apr_brigade_create(f->c->pool, f->c->bucket_alloc);
278 rv = brigade_append(ccfg->tmpbb, bb);
288 pollset.desc.s = ccfg->socket;
289 apr_socket_timeout_get(ccfg->socket, &poll_timeout);
292 rv = apr_socket_wait(ccfg->socket, APR_WAIT_READ);
297 rv = check_time_left(ccfg, &time_left, 0);
301 rv = apr_socket_timeout_set(ccfg->socket,
307 if (ccfg->tmpbb)
308 APR_BRIGADE_PREPEND(bb, ccfg->tmpbb);
318 if (ccfg->min_rate > 0 && rv == APR_SUCCESS
320 extend_timeout(ccfg, bb);
324 apr_socket_timeout_set(ccfg->socket, saved_sock_timeout);
329 "Request %s read timeout", ccfg->type);
350 reqtimeout_con_cfg *ccfg;
361 ccfg = ap_get_module_config(c->conn_config, &reqtimeout_module);
362 if (ccfg == NULL) {
363 ccfg = apr_pcalloc(c->pool, sizeof(reqtimeout_con_cfg));
364 ap_set_module_config(c->conn_config, &reqtimeout_module, ccfg);
365 ap_add_input_filter(reqtimeout_filter_name, ccfg, NULL, c);
369 memset(ccfg, 0, sizeof(reqtimeout_con_cfg));
372 ccfg->type = "header";
374 ccfg->new_timeout = cfg->header_timeout;
375 ccfg->new_max_timeout = cfg->header_max_timeout;
376 ccfg->min_rate = cfg->header_min_rate;
377 ccfg->rate_factor = cfg->header_rate_factor;
380 ccfg->new_timeout = MRT_DEFAULT_HEADER_TIMEOUT;
381 ccfg->new_max_timeout = MRT_DEFAULT_HEADER_MAX_TIMEOUT;
382 ccfg->min_rate = MRT_DEFAULT_HEADER_MIN_RATE;
383 ccfg->rate_factor = default_header_rate_factor;
393 reqtimeout_con_cfg *ccfg =
396 if (ccfg == NULL || r->method_number == M_CONNECT) {
404 ccfg->timeout_at = 0;
405 ccfg->max_timeout_at = 0;
406 ccfg->type = "body";
408 ccfg->new_timeout = cfg->body_timeout;
409 ccfg->new_max_timeout = cfg->body_max_timeout;
410 ccfg->min_rate = cfg->body_min_rate;
411 ccfg->rate_factor = cfg->body_rate_factor;
414 ccfg->new_timeout = MRT_DEFAULT_BODY_TIMEOUT;
415 ccfg->new_max_timeout = MRT_DEFAULT_BODY_MAX_TIMEOUT;
416 ccfg->min_rate = MRT_DEFAULT_BODY_MIN_RATE;
417 ccfg->rate_factor = default_body_rate_factor;
425 reqtimeout_con_cfg *ccfg =
428 if (ccfg == NULL) {
437 ccfg->timeout_at = 0;
438 ccfg->max_timeout_at = 0;
439 ccfg->in_keep_alive = 1;
440 ccfg->type = "header";
441 if (ccfg->new_timeout != UNSET) {
442 ccfg->new_timeout = cfg->header_timeout;
443 ccfg->new_max_timeout = cfg->header_max_timeout;
444 ccfg->min_rate = cfg->header_min_rate;
445 ccfg->rate_factor = cfg->header_rate_factor;
448 ccfg->new_timeout = MRT_DEFAULT_HEADER_TIMEOUT;
449 ccfg->new_max_timeout = MRT_DEFAULT_HEADER_MAX_TIMEOUT;
450 ccfg->min_rate = MRT_DEFAULT_HEADER_MIN_RATE;
451 ccfg->rate_factor = default_header_rate_factor;