r 54 core/ngx_resolver.c static void ngx_resolver_cleanup_tree(ngx_resolver_t *r, ngx_rbtree_t *tree); r 55 core/ngx_resolver.c static ngx_int_t ngx_resolve_name_locked(ngx_resolver_t *r, r 57 core/ngx_resolver.c static void ngx_resolver_expire(ngx_resolver_t *r, ngx_rbtree_t *tree, r 59 core/ngx_resolver.c static ngx_int_t ngx_resolver_send_query(ngx_resolver_t *r, r 66 core/ngx_resolver.c static time_t ngx_resolver_resend(ngx_resolver_t *r, ngx_rbtree_t *tree, r 69 core/ngx_resolver.c static void ngx_resolver_process_response(ngx_resolver_t *r, u_char *buf, r 71 core/ngx_resolver.c static void ngx_resolver_process_a(ngx_resolver_t *r, u_char *buf, size_t n, r 73 core/ngx_resolver.c static void ngx_resolver_process_ptr(ngx_resolver_t *r, u_char *buf, size_t n, r 75 core/ngx_resolver.c static ngx_resolver_node_t *ngx_resolver_lookup_name(ngx_resolver_t *r, r 77 core/ngx_resolver.c static ngx_resolver_node_t *ngx_resolver_lookup_addr(ngx_resolver_t *r, r 81 core/ngx_resolver.c static ngx_int_t ngx_resolver_copy(ngx_resolver_t *r, ngx_str_t *name, r 84 core/ngx_resolver.c static void ngx_resolver_free_node(ngx_resolver_t *r, ngx_resolver_node_t *rn); r 85 core/ngx_resolver.c static void *ngx_resolver_alloc(ngx_resolver_t *r, size_t size); r 86 core/ngx_resolver.c static void *ngx_resolver_calloc(ngx_resolver_t *r, size_t size); r 87 core/ngx_resolver.c static void ngx_resolver_free(ngx_resolver_t *r, void *p); r 88 core/ngx_resolver.c static void ngx_resolver_free_locked(ngx_resolver_t *r, void *p); r 89 core/ngx_resolver.c static void *ngx_resolver_dup(ngx_resolver_t *r, void *src, size_t size); r 96 core/ngx_resolver.c ngx_resolver_t *r; r 107 core/ngx_resolver.c r = ngx_calloc(sizeof(ngx_resolver_t), cf->log); r 108 core/ngx_resolver.c if (r == NULL) { r 112 core/ngx_resolver.c cln->data = r; r 114 core/ngx_resolver.c r->event = ngx_calloc(sizeof(ngx_event_t), cf->log); r 115 core/ngx_resolver.c if (r->event == NULL) { r 119 core/ngx_resolver.c ngx_rbtree_init(&r->name_rbtree, &r->name_sentinel, r 122 core/ngx_resolver.c ngx_rbtree_init(&r->addr_rbtree, &r->addr_sentinel, r 125 core/ngx_resolver.c ngx_queue_init(&r->name_resend_queue); r 126 core/ngx_resolver.c ngx_queue_init(&r->addr_resend_queue); r 128 core/ngx_resolver.c ngx_queue_init(&r->name_expire_queue); r 129 core/ngx_resolver.c ngx_queue_init(&r->addr_expire_queue); r 131 core/ngx_resolver.c r->event->handler = ngx_resolver_resend_handler; r 132 core/ngx_resolver.c r->event->data = r; r 133 core/ngx_resolver.c r->event->log = &cf->cycle->new_log; r 134 core/ngx_resolver.c r->ident = -1; r 136 core/ngx_resolver.c r->resend_timeout = 5; r 137 core/ngx_resolver.c r->expire = 30; r 138 core/ngx_resolver.c r->valid = 300; r 140 core/ngx_resolver.c r->log = &cf->cycle->new_log; r 141 core/ngx_resolver.c r->log_level = NGX_LOG_ERR; r 149 core/ngx_resolver.c r->udp_connection = uc; r 161 core/ngx_resolver.c return r; r 168 core/ngx_resolver.c ngx_resolver_t *r = data; r 170 core/ngx_resolver.c if (r) { r 174 core/ngx_resolver.c ngx_resolver_cleanup_tree(r, &r->name_rbtree); r 176 core/ngx_resolver.c ngx_resolver_cleanup_tree(r, &r->addr_rbtree); r 178 core/ngx_resolver.c if (r->event) { r 179 core/ngx_resolver.c ngx_free(r->event); r 182 core/ngx_resolver.c if (r->udp_connection) { r 183 core/ngx_resolver.c if (r->udp_connection->connection) { r 184 core/ngx_resolver.c ngx_close_connection(r->udp_connection->connection); r 187 core/ngx_resolver.c ngx_free(r->udp_connection); r 190 core/ngx_resolver.c ngx_free(r); r 196 core/ngx_resolver.c ngx_resolver_cleanup_tree(ngx_resolver_t *r, ngx_rbtree_t *tree) r 211 core/ngx_resolver.c ngx_resolver_free(r, ctx->event); r 214 core/ngx_resolver.c ngx_resolver_free(r, ctx); r 219 core/ngx_resolver.c ngx_resolver_free_node(r, rn); r 225 core/ngx_resolver.c ngx_resolve_start(ngx_resolver_t *r, ngx_resolver_ctx_t *temp) r 234 core/ngx_resolver.c temp->resolver = r; r 245 core/ngx_resolver.c if (r->udp_connection == NULL) { r 249 core/ngx_resolver.c ctx = ngx_resolver_calloc(r, sizeof(ngx_resolver_ctx_t)); r 252 core/ngx_resolver.c ctx->resolver = r; r 263 core/ngx_resolver.c ngx_resolver_t *r; r 265 core/ngx_resolver.c r = ctx->resolver; r 267 core/ngx_resolver.c ngx_log_debug1(NGX_LOG_DEBUG_CORE, r->log, 0, r 277 core/ngx_resolver.c rc = ngx_resolve_name_locked(r, ctx); r 292 core/ngx_resolver.c ngx_resolver_free(r, ctx->event); r 295 core/ngx_resolver.c ngx_resolver_free(r, ctx); r 305 core/ngx_resolver.c ngx_resolver_t *r; r 309 core/ngx_resolver.c r = ctx->resolver; r 311 core/ngx_resolver.c ngx_log_debug1(NGX_LOG_DEBUG_CORE, r->log, 0, r 328 core/ngx_resolver.c rn = ngx_resolver_lookup_name(r, &ctx->name, hash); r 346 core/ngx_resolver.c ngx_log_error(NGX_LOG_ALERT, r->log, 0, r 352 core/ngx_resolver.c ngx_resolver_expire(r, &r->name_rbtree, &r->name_expire_queue); r 359 core/ngx_resolver.c ngx_resolver_free_locked(r, ctx->event); r 362 core/ngx_resolver.c ngx_resolver_free_locked(r, ctx); r 371 core/ngx_resolver.c ngx_resolve_name_locked(ngx_resolver_t *r, ngx_resolver_ctx_t *ctx) r 382 core/ngx_resolver.c rn = ngx_resolver_lookup_name(r, &ctx->name, hash); r 388 core/ngx_resolver.c ngx_log_debug0(NGX_LOG_DEBUG_CORE, r->log, 0, "resolve cached"); r 392 core/ngx_resolver.c rn->expire = ngx_time() + r->expire; r 394 core/ngx_resolver.c ngx_queue_insert_head(&r->name_expire_queue, &rn->queue); r 404 core/ngx_resolver.c addrs = ngx_resolver_dup(r, rn->u.addrs, r 433 core/ngx_resolver.c ngx_resolver_free(r, addrs); r 446 core/ngx_resolver.c return ngx_resolve_name_locked(r, ctx); r 479 core/ngx_resolver.c ngx_resolver_free_locked(r, rn->query); r 483 core/ngx_resolver.c ngx_resolver_free_locked(r, rn->u.cname); r 487 core/ngx_resolver.c ngx_resolver_free_locked(r, rn->u.addrs); r 494 core/ngx_resolver.c rn = ngx_resolver_alloc(r, sizeof(ngx_resolver_node_t)); r 499 core/ngx_resolver.c rn->name = ngx_resolver_dup(r, ctx->name.data, ctx->name.len); r 501 core/ngx_resolver.c ngx_resolver_free(r, rn); r 509 core/ngx_resolver.c ngx_rbtree_insert(&r->name_rbtree, &rn->node); r 519 core/ngx_resolver.c ngx_rbtree_delete(&r->name_rbtree, &rn->node); r 521 core/ngx_resolver.c ngx_resolver_free(r, rn->query); r 522 core/ngx_resolver.c ngx_resolver_free(r, rn->name); r 523 core/ngx_resolver.c ngx_resolver_free(r, rn); r 531 core/ngx_resolver.c if (ngx_resolver_send_query(r, rn) != NGX_OK) { r 536 core/ngx_resolver.c ctx->event = ngx_resolver_calloc(r, sizeof(ngx_event_t)); r 543 core/ngx_resolver.c ctx->event->log = r->log; r 549 core/ngx_resolver.c if (ngx_queue_empty(&r->name_resend_queue)) { r 550 core/ngx_resolver.c ngx_add_timer(r->event, (ngx_msec_t) (r->resend_timeout * 1000)); r 553 core/ngx_resolver.c rn->expire = ngx_time() + r->resend_timeout; r 555 core/ngx_resolver.c ngx_queue_insert_head(&r->name_resend_queue, &rn->queue); r 568 core/ngx_resolver.c ngx_rbtree_delete(&r->name_rbtree, &rn->node); r 571 core/ngx_resolver.c ngx_resolver_free(r, rn->query); r 574 core/ngx_resolver.c ngx_resolver_free(r, rn->name); r 576 core/ngx_resolver.c ngx_resolver_free(r, rn); r 586 core/ngx_resolver.c ngx_resolver_t *r; r 589 core/ngx_resolver.c r = ctx->resolver; r 595 core/ngx_resolver.c rn = ngx_resolver_lookup_addr(r, ctx->addr); r 601 core/ngx_resolver.c ngx_log_debug0(NGX_LOG_DEBUG_CORE, r->log, 0, "resolve cached"); r 605 core/ngx_resolver.c rn->expire = ngx_time() + r->expire; r 607 core/ngx_resolver.c ngx_queue_insert_head(&r->addr_expire_queue, &rn->queue); r 609 core/ngx_resolver.c name = ngx_resolver_dup(r, rn->name, rn->nlen); r 623 core/ngx_resolver.c ngx_resolver_free(r, name); r 641 core/ngx_resolver.c ngx_resolver_free(r, rn->query); r 645 core/ngx_resolver.c rn = ngx_resolver_alloc(r, sizeof(ngx_resolver_node_t)); r 653 core/ngx_resolver.c ngx_rbtree_insert(&r->addr_rbtree, &rn->node); r 660 core/ngx_resolver.c if (ngx_resolver_send_query(r, rn) != NGX_OK) { r 664 core/ngx_resolver.c ctx->event = ngx_resolver_calloc(r, sizeof(ngx_event_t)); r 671 core/ngx_resolver.c ctx->event->log = r->log; r 676 core/ngx_resolver.c if (ngx_queue_empty(&r->addr_resend_queue)) { r 677 core/ngx_resolver.c ngx_add_timer(r->event, (ngx_msec_t) (r->resend_timeout * 1000)); r 680 core/ngx_resolver.c rn->expire = ngx_time() + r->resend_timeout; r 682 core/ngx_resolver.c ngx_queue_insert_head(&r->addr_resend_queue, &rn->queue); r 700 core/ngx_resolver.c ngx_rbtree_delete(&r->addr_rbtree, &rn->node); r 703 core/ngx_resolver.c ngx_resolver_free(r, rn->query); r 706 core/ngx_resolver.c ngx_resolver_free(r, rn); r 712 core/ngx_resolver.c ngx_resolver_free(r, ctx->event); r 715 core/ngx_resolver.c ngx_resolver_free(r, ctx); r 725 core/ngx_resolver.c ngx_resolver_t *r; r 729 core/ngx_resolver.c r = ctx->resolver; r 731 core/ngx_resolver.c ngx_log_debug1(NGX_LOG_DEBUG_CORE, r->log, 0, r 742 core/ngx_resolver.c rn = ngx_resolver_lookup_addr(r, ctx->addr); r 762 core/ngx_resolver.c ngx_log_error(NGX_LOG_ALERT, r->log, 0, r 770 core/ngx_resolver.c ngx_resolver_expire(r, &r->addr_rbtree, &r->addr_expire_queue); r 777 core/ngx_resolver.c ngx_resolver_free_locked(r, ctx->event); r 780 core/ngx_resolver.c ngx_resolver_free_locked(r, ctx); r 787 core/ngx_resolver.c ngx_resolver_expire(ngx_resolver_t *r, ngx_rbtree_t *tree, ngx_queue_t *queue) r 794 core/ngx_resolver.c ngx_log_debug0(NGX_LOG_DEBUG_CORE, r->log, 0, "resolver expire"); r 811 core/ngx_resolver.c ngx_log_debug2(NGX_LOG_DEBUG_CORE, r->log, 0, r 818 core/ngx_resolver.c ngx_resolver_free_node(r, rn); r 824 core/ngx_resolver.c ngx_resolver_send_query(ngx_resolver_t *r, ngx_resolver_node_t *rn) r 829 core/ngx_resolver.c uc = r->udp_connection; r 836 core/ngx_resolver.c uc->connection->data = r; r 860 core/ngx_resolver.c ngx_resolver_t *r; r 862 core/ngx_resolver.c r = ev->data; r 864 core/ngx_resolver.c ngx_log_debug0(NGX_LOG_DEBUG_CORE, r->log, 0, r 869 core/ngx_resolver.c ntimer = ngx_resolver_resend(r, &r->name_rbtree, &r->name_resend_queue); r 875 core/ngx_resolver.c atimer = ngx_resolver_resend(r, &r->addr_rbtree, &r->addr_resend_queue); r 890 core/ngx_resolver.c ngx_add_timer(r->event, (ngx_msec_t) (timer * 1000)); r 896 core/ngx_resolver.c ngx_resolver_resend(ngx_resolver_t *r, ngx_rbtree_t *tree, ngx_queue_t *queue) r 917 core/ngx_resolver.c ngx_log_debug3(NGX_LOG_DEBUG_CORE, r->log, 0, r 925 core/ngx_resolver.c if (ngx_resolver_send_query(r, rn) == NGX_OK) { r 927 core/ngx_resolver.c rn->expire = now + r->resend_timeout; r 937 core/ngx_resolver.c ngx_resolver_free_node(r, rn); r 965 core/ngx_resolver.c ngx_resolver_process_response(ngx_resolver_t *r, u_char *buf, size_t n) r 987 core/ngx_resolver.c ngx_log_debug6(NGX_LOG_DEBUG_CORE, r->log, 0, r 994 core/ngx_resolver.c ngx_log_error(r->log_level, r->log, 0, r 1005 core/ngx_resolver.c for (q = ngx_queue_head(&r->name_resend_queue); r 1006 core/ngx_resolver.c q != ngx_queue_sentinel(&r->name_resend_queue) || times++ < 100; r 1013 core/ngx_resolver.c ngx_log_error(r->log_level, r->log, 0, r 1064 core/ngx_resolver.c ngx_log_debug2(NGX_LOG_DEBUG_CORE, r->log, 0, r 1068 core/ngx_resolver.c ngx_log_error(r->log_level, r->log, 0, r 1077 core/ngx_resolver.c ngx_resolver_process_a(r, buf, n, ident, code, nan, r 1084 core/ngx_resolver.c ngx_resolver_process_ptr(r, buf, n, ident, code, nan); r 1089 core/ngx_resolver.c ngx_log_error(r->log_level, r->log, 0, r 1102 core/ngx_resolver.c ngx_log_error(r->log_level, r->log, 0, err); r 1108 core/ngx_resolver.c ngx_log_error(r->log_level, r->log, 0, r 1116 core/ngx_resolver.c ngx_resolver_process_a(ngx_resolver_t *r, u_char *buf, size_t last, r 1130 core/ngx_resolver.c if (ngx_resolver_copy(r, &name, buf, &buf[12], &buf[last]) != NGX_OK) { r 1134 core/ngx_resolver.c ngx_log_debug1(NGX_LOG_DEBUG_CORE, r->log, 0, "resolver qs:%V", &name); r 1140 core/ngx_resolver.c rn = ngx_resolver_lookup_name(r, &name, hash); r 1143 core/ngx_resolver.c ngx_log_error(r->log_level, r->log, 0, r 1151 core/ngx_resolver.c ngx_log_error(r->log_level, r->log, 0, r 1157 core/ngx_resolver.c ngx_resolver_free(r, name.data); r 1169 core/ngx_resolver.c ngx_rbtree_delete(&r->name_rbtree, &rn->node); r 1171 core/ngx_resolver.c ngx_resolver_free_node(r, rn); r 1255 core/ngx_resolver.c ngx_log_error(r->log_level, r->log, 0, r 1260 core/ngx_resolver.c ngx_log_debug2(NGX_LOG_DEBUG_CORE, r->log, 0, r 1270 core/ngx_resolver.c addrs = ngx_resolver_alloc(r, naddrs * sizeof(in_addr_t)); r 1319 core/ngx_resolver.c addrs = ngx_resolver_dup(r, rn->u.addrs, r 1330 core/ngx_resolver.c rn->valid = ngx_time() + r->valid; r 1331 core/ngx_resolver.c rn->expire = ngx_time() + r->expire; r 1333 core/ngx_resolver.c ngx_queue_insert_head(&r->name_expire_queue, &rn->queue); r 1352 core/ngx_resolver.c ngx_resolver_free(r, addrs); r 1361 core/ngx_resolver.c if (ngx_resolver_copy(r, &name, buf, cname, &buf[last]) != NGX_OK) { r 1365 core/ngx_resolver.c ngx_log_debug1(NGX_LOG_DEBUG_CORE, r->log, 0, r 1372 core/ngx_resolver.c rn->valid = ngx_time() + r->valid; r 1373 core/ngx_resolver.c rn->expire = ngx_time() + r->expire; r 1375 core/ngx_resolver.c ngx_queue_insert_head(&r->name_expire_queue, &rn->queue); r 1383 core/ngx_resolver.c (void) ngx_resolve_name_locked(r, ctx); r 1389 core/ngx_resolver.c ngx_log_error(r->log_level, r->log, 0, r 1402 core/ngx_resolver.c ngx_log_error(r->log_level, r->log, 0, err); r 1410 core/ngx_resolver.c ngx_resolver_free(r, name.data); r 1417 core/ngx_resolver.c ngx_resolver_process_ptr(ngx_resolver_t *r, u_char *buf, size_t n, r 1430 core/ngx_resolver.c if (ngx_resolver_copy(r, NULL, buf, &buf[12], &buf[n]) != NGX_OK) { r 1455 core/ngx_resolver.c rn = ngx_resolver_lookup_addr(r, addr); r 1458 core/ngx_resolver.c ngx_log_error(r->log_level, r->log, 0, r 1468 core/ngx_resolver.c ngx_log_error(r->log_level, r->log, 0, r 1485 core/ngx_resolver.c ngx_rbtree_delete(&r->addr_rbtree, &rn->node); r 1487 core/ngx_resolver.c ngx_resolver_free_node(r, rn); r 1521 core/ngx_resolver.c ngx_log_debug3(NGX_LOG_DEBUG_CORE, r->log, 0, r 1530 core/ngx_resolver.c if (ngx_resolver_copy(r, &name, buf, &buf[i], &buf[n]) != NGX_OK) { r 1534 core/ngx_resolver.c ngx_log_debug1(NGX_LOG_DEBUG_CORE, r->log, 0, "resolver an:%V", &name); r 1540 core/ngx_resolver.c ngx_resolver_free(r, rn->name); r 1546 core/ngx_resolver.c name.data = ngx_resolver_dup(r, rn->name, name.len); r 1554 core/ngx_resolver.c rn->valid = ngx_time() + r->valid; r 1555 core/ngx_resolver.c rn->expire = ngx_time() + r->expire; r 1557 core/ngx_resolver.c ngx_queue_insert_head(&r->addr_expire_queue, &rn->queue); r 1573 core/ngx_resolver.c ngx_resolver_free(r, name.data); r 1579 core/ngx_resolver.c ngx_log_error(r->log_level, r->log, 0, r 1591 core/ngx_resolver.c ngx_log_error(r->log_level, r->log, 0, err); r 1604 core/ngx_resolver.c ngx_resolver_lookup_name(ngx_resolver_t *r, ngx_str_t *name, uint32_t hash) r 1610 core/ngx_resolver.c node = r->name_rbtree.root; r 1611 core/ngx_resolver.c sentinel = r->name_rbtree.sentinel; r 1650 core/ngx_resolver.c ngx_resolver_lookup_addr(ngx_resolver_t *r, in_addr_t addr) r 1654 core/ngx_resolver.c node = r->addr_rbtree.root; r 1655 core/ngx_resolver.c sentinel = r->addr_rbtree.sentinel; r 1857 core/ngx_resolver.c ngx_resolver_copy(ngx_resolver_t *r, ngx_str_t *name, u_char *buf, u_char *src, r 1899 core/ngx_resolver.c ngx_log_error(r->log_level, r->log, 0, err); r 1915 core/ngx_resolver.c dst = ngx_resolver_alloc(r, len); r 1965 core/ngx_resolver.c ngx_resolver_free_node(ngx_resolver_t *r, ngx_resolver_node_t *rn) r 1970 core/ngx_resolver.c ngx_resolver_free_locked(r, rn->query); r 1974 core/ngx_resolver.c ngx_resolver_free_locked(r, rn->name); r 1978 core/ngx_resolver.c ngx_resolver_free_locked(r, rn->u.cname); r 1982 core/ngx_resolver.c ngx_resolver_free_locked(r, rn->u.addrs); r 1985 core/ngx_resolver.c ngx_resolver_free_locked(r, rn); r 1992 core/ngx_resolver.c ngx_resolver_alloc(ngx_resolver_t *r, size_t size) r 1998 core/ngx_resolver.c p = ngx_alloc(size, r->log); r 2007 core/ngx_resolver.c ngx_resolver_calloc(ngx_resolver_t *r, size_t size) r 2011 core/ngx_resolver.c p = ngx_resolver_alloc(r, size); r 2022 core/ngx_resolver.c ngx_resolver_free(ngx_resolver_t *r, void *p) r 2033 core/ngx_resolver.c ngx_resolver_free_locked(ngx_resolver_t *r, void *p) r 2040 core/ngx_resolver.c ngx_resolver_dup(ngx_resolver_t *r, void *src, size_t size) r 2044 core/ngx_resolver.c dst = ngx_resolver_alloc(r, size); r 139 core/ngx_resolver.h ngx_resolver_ctx_t *ngx_resolve_start(ngx_resolver_t *r, r 36 http/modules/ngx_http_access_module.c static ngx_int_t ngx_http_access_handler(ngx_http_request_t *r); r 37 http/modules/ngx_http_access_module.c static ngx_int_t ngx_http_access_inet(ngx_http_request_t *r, r 40 http/modules/ngx_http_access_module.c static ngx_int_t ngx_http_access_inet6(ngx_http_request_t *r, r 43 http/modules/ngx_http_access_module.c static ngx_int_t ngx_http_access_found(ngx_http_request_t *r, ngx_uint_t deny); r 107 http/modules/ngx_http_access_module.c ngx_http_access_handler(ngx_http_request_t *r) r 112 http/modules/ngx_http_access_module.c alcf = ngx_http_get_module_loc_conf(r, ngx_http_access_module); r 116 http/modules/ngx_http_access_module.c if (alcf->rules6 && r->connection->sockaddr->sa_family == AF_INET6) { r 121 http/modules/ngx_http_access_module.c sin6 = (struct sockaddr_in6 *) r->connection->sockaddr; r 129 http/modules/ngx_http_access_module.c return ngx_http_access_inet(r, alcf, htonl(addr)); r 132 http/modules/ngx_http_access_module.c return ngx_http_access_inet6(r, alcf, p); r 137 http/modules/ngx_http_access_module.c if (alcf->rules && r->connection->sockaddr->sa_family == AF_INET) { r 138 http/modules/ngx_http_access_module.c sin = (struct sockaddr_in *) r->connection->sockaddr; r 139 http/modules/ngx_http_access_module.c return ngx_http_access_inet(r, alcf, sin->sin_addr.s_addr); r 147 http/modules/ngx_http_access_module.c ngx_http_access_inet(ngx_http_request_t *r, ngx_http_access_loc_conf_t *alcf, r 156 http/modules/ngx_http_access_module.c ngx_log_debug3(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 161 http/modules/ngx_http_access_module.c return ngx_http_access_found(r, rule[i].deny); r 172 http/modules/ngx_http_access_module.c ngx_http_access_inet6(ngx_http_request_t *r, ngx_http_access_loc_conf_t *alcf, r 193 http/modules/ngx_http_access_module.c ngx_log_debug6(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 204 http/modules/ngx_http_access_module.c return ngx_http_access_found(r, rule6[i].deny); r 217 http/modules/ngx_http_access_module.c ngx_http_access_found(ngx_http_request_t *r, ngx_uint_t deny) r 222 http/modules/ngx_http_access_module.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 225 http/modules/ngx_http_access_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 95 http/modules/ngx_http_addition_filter_module.c ngx_http_addition_header_filter(ngx_http_request_t *r) r 100 http/modules/ngx_http_addition_filter_module.c if (r->headers_out.status != NGX_HTTP_OK || r != r->main) { r 101 http/modules/ngx_http_addition_filter_module.c return ngx_http_next_header_filter(r); r 104 http/modules/ngx_http_addition_filter_module.c conf = ngx_http_get_module_loc_conf(r, ngx_http_addition_filter_module); r 107 http/modules/ngx_http_addition_filter_module.c return ngx_http_next_header_filter(r); r 110 http/modules/ngx_http_addition_filter_module.c if (ngx_http_test_content_type(r, &conf->types) == NULL) { r 111 http/modules/ngx_http_addition_filter_module.c return ngx_http_next_header_filter(r); r 114 http/modules/ngx_http_addition_filter_module.c ctx = ngx_pcalloc(r->pool, sizeof(ngx_http_addition_ctx_t)); r 119 http/modules/ngx_http_addition_filter_module.c ngx_http_set_ctx(r, ctx, ngx_http_addition_filter_module); r 121 http/modules/ngx_http_addition_filter_module.c ngx_http_clear_content_length(r); r 122 http/modules/ngx_http_addition_filter_module.c ngx_http_clear_accept_ranges(r); r 124 http/modules/ngx_http_addition_filter_module.c return ngx_http_next_header_filter(r); r 129 http/modules/ngx_http_addition_filter_module.c ngx_http_addition_body_filter(ngx_http_request_t *r, ngx_chain_t *in) r 138 http/modules/ngx_http_addition_filter_module.c if (in == NULL || r->header_only) { r 139 http/modules/ngx_http_addition_filter_module.c return ngx_http_next_body_filter(r, in); r 142 http/modules/ngx_http_addition_filter_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_addition_filter_module); r 145 http/modules/ngx_http_addition_filter_module.c return ngx_http_next_body_filter(r, in); r 148 http/modules/ngx_http_addition_filter_module.c conf = ngx_http_get_module_loc_conf(r, ngx_http_addition_filter_module); r 154 http/modules/ngx_http_addition_filter_module.c if (ngx_http_subrequest(r, &conf->before_body, NULL, &sr, NULL, 0) r 163 http/modules/ngx_http_addition_filter_module.c ngx_http_set_ctx(r, NULL, ngx_http_addition_filter_module); r 164 http/modules/ngx_http_addition_filter_module.c return ngx_http_next_body_filter(r, in); r 177 http/modules/ngx_http_addition_filter_module.c rc = ngx_http_next_body_filter(r, in); r 183 http/modules/ngx_http_addition_filter_module.c if (ngx_http_subrequest(r, &conf->after_body, NULL, &sr, NULL, 0) r 189 http/modules/ngx_http_addition_filter_module.c ngx_http_set_ctx(r, NULL, ngx_http_addition_filter_module); r 191 http/modules/ngx_http_addition_filter_module.c return ngx_http_send_special(r, NGX_HTTP_LAST); r 26 http/modules/ngx_http_auth_basic_module.c static ngx_int_t ngx_http_auth_basic_handler(ngx_http_request_t *r); r 27 http/modules/ngx_http_auth_basic_module.c static ngx_int_t ngx_http_auth_basic_crypt_handler(ngx_http_request_t *r, r 29 http/modules/ngx_http_auth_basic_module.c static ngx_int_t ngx_http_auth_basic_set_realm(ngx_http_request_t *r, r 97 http/modules/ngx_http_auth_basic_module.c ngx_http_auth_basic_handler(ngx_http_request_t *r) r 116 http/modules/ngx_http_auth_basic_module.c alcf = ngx_http_get_module_loc_conf(r, ngx_http_auth_basic_module); r 122 http/modules/ngx_http_auth_basic_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_auth_basic_module); r 125 http/modules/ngx_http_auth_basic_module.c return ngx_http_auth_basic_crypt_handler(r, ctx, &ctx->passwd, r 129 http/modules/ngx_http_auth_basic_module.c rc = ngx_http_auth_basic_user(r); r 133 http/modules/ngx_http_auth_basic_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 136 http/modules/ngx_http_auth_basic_module.c return ngx_http_auth_basic_set_realm(r, &alcf->realm); r 143 http/modules/ngx_http_auth_basic_module.c if (ngx_http_complex_value(r, &alcf->user_file, &user_file) != NGX_OK) { r 161 http/modules/ngx_http_auth_basic_module.c ngx_log_error(level, r->connection->log, err, r 171 http/modules/ngx_http_auth_basic_module.c file.log = r->connection->log; r 210 http/modules/ngx_http_auth_basic_module.c if (buf[i] != r->headers_in.user.data[login]) { r 215 http/modules/ngx_http_auth_basic_module.c if (login == r->headers_in.user.len) { r 233 http/modules/ngx_http_auth_basic_module.c return ngx_http_auth_basic_crypt_handler(r, NULL, &pwd, r 265 http/modules/ngx_http_auth_basic_module.c pwd.data = ngx_pnalloc(r->pool, pwd.len + 1); r 272 http/modules/ngx_http_auth_basic_module.c return ngx_http_auth_basic_crypt_handler(r, NULL, &pwd, &alcf->realm); r 275 http/modules/ngx_http_auth_basic_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 277 http/modules/ngx_http_auth_basic_module.c &r->headers_in.user, &user_file); r 279 http/modules/ngx_http_auth_basic_module.c return ngx_http_auth_basic_set_realm(r, &alcf->realm); r 284 http/modules/ngx_http_auth_basic_module.c ngx_http_auth_basic_crypt_handler(ngx_http_request_t *r, r 290 http/modules/ngx_http_auth_basic_module.c rc = ngx_crypt(r->pool, r->headers_in.passwd.data, passwd->data, r 293 http/modules/ngx_http_auth_basic_module.c ngx_log_debug3(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 295 http/modules/ngx_http_auth_basic_module.c rc, &r->headers_in.user, passwd->data); r 302 http/modules/ngx_http_auth_basic_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 305 http/modules/ngx_http_auth_basic_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 307 http/modules/ngx_http_auth_basic_module.c &r->headers_in.user); r 309 http/modules/ngx_http_auth_basic_module.c return ngx_http_auth_basic_set_realm(r, realm); r 319 http/modules/ngx_http_auth_basic_module.c ctx = ngx_palloc(r->pool, sizeof(ngx_http_auth_basic_ctx_t)); r 324 http/modules/ngx_http_auth_basic_module.c ngx_http_set_ctx(r, ctx, ngx_http_auth_basic_module); r 329 http/modules/ngx_http_auth_basic_module.c ctx->passwd.data = ngx_pstrdup(r->pool, passwd); r 343 http/modules/ngx_http_auth_basic_module.c ngx_http_auth_basic_set_realm(ngx_http_request_t *r, ngx_str_t *realm) r 345 http/modules/ngx_http_auth_basic_module.c r->headers_out.www_authenticate = ngx_list_push(&r->headers_out.headers); r 346 http/modules/ngx_http_auth_basic_module.c if (r->headers_out.www_authenticate == NULL) { r 350 http/modules/ngx_http_auth_basic_module.c r->headers_out.www_authenticate->hash = 1; r 351 http/modules/ngx_http_auth_basic_module.c ngx_str_set(&r->headers_out.www_authenticate->key, "WWW-Authenticate"); r 352 http/modules/ngx_http_auth_basic_module.c r->headers_out.www_authenticate->value = *realm; r 52 http/modules/ngx_http_autoindex_module.c static ngx_int_t ngx_http_autoindex_error(ngx_http_request_t *r, r 137 http/modules/ngx_http_autoindex_module.c ngx_http_autoindex_handler(ngx_http_request_t *r) r 159 http/modules/ngx_http_autoindex_module.c if (r->uri.data[r->uri.len - 1] != '/') { r 163 http/modules/ngx_http_autoindex_module.c if (!(r->method & (NGX_HTTP_GET|NGX_HTTP_HEAD))) { r 167 http/modules/ngx_http_autoindex_module.c alcf = ngx_http_get_module_loc_conf(r, ngx_http_autoindex_module); r 175 http/modules/ngx_http_autoindex_module.c last = ngx_http_map_uri_to_path(r, &path, &root, r 188 http/modules/ngx_http_autoindex_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 210 http/modules/ngx_http_autoindex_module.c ngx_log_error(level, r->connection->log, err, r 224 http/modules/ngx_http_autoindex_module.c pool = r->pool; r 229 http/modules/ngx_http_autoindex_module.c return ngx_http_autoindex_error(r, &dir, &path); r 232 http/modules/ngx_http_autoindex_module.c r->headers_out.status = NGX_HTTP_OK; r 233 http/modules/ngx_http_autoindex_module.c r->headers_out.content_type_len = sizeof("text/html") - 1; r 234 http/modules/ngx_http_autoindex_module.c ngx_str_set(&r->headers_out.content_type, "text/html"); r 236 http/modules/ngx_http_autoindex_module.c rc = ngx_http_send_header(r); r 238 http/modules/ngx_http_autoindex_module.c if (rc == NGX_ERROR || rc > NGX_OK || r->header_only) { r 240 http/modules/ngx_http_autoindex_module.c ngx_log_error(NGX_LOG_ALERT, r->connection->log, ngx_errno, r 250 http/modules/ngx_http_autoindex_module.c if (r->headers_out.charset.len == 5 r 251 http/modules/ngx_http_autoindex_module.c && ngx_strncasecmp(r->headers_out.charset.data, (u_char *) "utf-8", 5) r 267 http/modules/ngx_http_autoindex_module.c ngx_log_error(NGX_LOG_CRIT, r->connection->log, err, r 269 http/modules/ngx_http_autoindex_module.c return ngx_http_autoindex_error(r, &dir, &path); r 275 http/modules/ngx_http_autoindex_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 294 http/modules/ngx_http_autoindex_module.c return ngx_http_autoindex_error(r, &dir, &path); r 307 http/modules/ngx_http_autoindex_module.c ngx_log_error(NGX_LOG_CRIT, r->connection->log, err, r 314 http/modules/ngx_http_autoindex_module.c return ngx_http_autoindex_error(r, &dir, &path); r 318 http/modules/ngx_http_autoindex_module.c ngx_log_error(NGX_LOG_CRIT, r->connection->log, ngx_errno, r 321 http/modules/ngx_http_autoindex_module.c return ngx_http_autoindex_error(r, &dir, &path); r 328 http/modules/ngx_http_autoindex_module.c return ngx_http_autoindex_error(r, &dir, &path); r 335 http/modules/ngx_http_autoindex_module.c return ngx_http_autoindex_error(r, &dir, &path); r 357 http/modules/ngx_http_autoindex_module.c ngx_log_error(NGX_LOG_ALERT, r->connection->log, ngx_errno, r 362 http/modules/ngx_http_autoindex_module.c + r->uri.len r 364 http/modules/ngx_http_autoindex_module.c + r->uri.len r 384 http/modules/ngx_http_autoindex_module.c b = ngx_create_temp_buf(r->pool, len); r 396 http/modules/ngx_http_autoindex_module.c b->last = ngx_cpymem(b->last, r->uri.data, r->uri.len); r 398 http/modules/ngx_http_autoindex_module.c b->last = ngx_cpymem(b->last, r->uri.data, r->uri.len); r 540 http/modules/ngx_http_autoindex_module.c if (r == r->main) { r 549 http/modules/ngx_http_autoindex_module.c return ngx_http_output_filter(r, &out); r 612 http/modules/ngx_http_autoindex_module.c ngx_http_autoindex_error(ngx_http_request_t *r, ngx_dir_t *dir, ngx_str_t *name) r 615 http/modules/ngx_http_autoindex_module.c ngx_log_error(NGX_LOG_ALERT, r->connection->log, ngx_errno, r 57 http/modules/ngx_http_browser_module.c static ngx_int_t ngx_http_msie_variable(ngx_http_request_t *r, r 59 http/modules/ngx_http_browser_module.c static ngx_int_t ngx_http_browser_variable(ngx_http_request_t *r, r 62 http/modules/ngx_http_browser_module.c static ngx_uint_t ngx_http_browser(ngx_http_request_t *r, r 231 http/modules/ngx_http_browser_module.c ngx_http_browser_variable(ngx_http_request_t *r, ngx_http_variable_value_t *v, r 237 http/modules/ngx_http_browser_module.c cf = ngx_http_get_module_loc_conf(r, ngx_http_browser_module); r 239 http/modules/ngx_http_browser_module.c rc = ngx_http_browser(r, cf); r 257 http/modules/ngx_http_browser_module.c ngx_http_browser(ngx_http_request_t *r, ngx_http_browser_conf_t *cf) r 265 http/modules/ngx_http_browser_module.c if (r->headers_in.user_agent == NULL) { r 273 http/modules/ngx_http_browser_module.c ua = r->headers_in.user_agent->value.data; r 274 http/modules/ngx_http_browser_module.c len = r->headers_in.user_agent->value.len; r 293 http/modules/ngx_http_browser_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 302 http/modules/ngx_http_browser_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 321 http/modules/ngx_http_browser_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 339 http/modules/ngx_http_browser_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 385 http/modules/ngx_http_browser_module.c ngx_http_msie_variable(ngx_http_request_t *r, ngx_http_variable_value_t *v, r 388 http/modules/ngx_http_browser_module.c if (r->headers_in.msie) { r 87 http/modules/ngx_http_charset_filter_module.c static ngx_int_t ngx_http_destination_charset(ngx_http_request_t *r, r 89 http/modules/ngx_http_charset_filter_module.c static ngx_int_t ngx_http_main_request_charset(ngx_http_request_t *r, r 91 http/modules/ngx_http_charset_filter_module.c static ngx_int_t ngx_http_source_charset(ngx_http_request_t *r, r 93 http/modules/ngx_http_charset_filter_module.c static ngx_int_t ngx_http_get_charset(ngx_http_request_t *r, ngx_str_t *name); r 94 http/modules/ngx_http_charset_filter_module.c static ngx_inline void ngx_http_set_charset(ngx_http_request_t *r, r 96 http/modules/ngx_http_charset_filter_module.c static ngx_int_t ngx_http_charset_ctx(ngx_http_request_t *r, r 216 http/modules/ngx_http_charset_filter_module.c ngx_http_charset_header_filter(ngx_http_request_t *r) r 223 http/modules/ngx_http_charset_filter_module.c if (r == r->main) { r 224 http/modules/ngx_http_charset_filter_module.c charset = ngx_http_destination_charset(r, &dst); r 227 http/modules/ngx_http_charset_filter_module.c charset = ngx_http_main_request_charset(r, &dst); r 235 http/modules/ngx_http_charset_filter_module.c return ngx_http_next_header_filter(r); r 240 http/modules/ngx_http_charset_filter_module.c source_charset = ngx_http_source_charset(r, &src); r 251 http/modules/ngx_http_charset_filter_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 255 http/modules/ngx_http_charset_filter_module.c ngx_http_set_charset(r, &dst); r 257 http/modules/ngx_http_charset_filter_module.c return ngx_http_next_header_filter(r); r 269 http/modules/ngx_http_charset_filter_module.c ngx_http_set_charset(r, &dst); r 271 http/modules/ngx_http_charset_filter_module.c return ngx_http_next_header_filter(r); r 274 http/modules/ngx_http_charset_filter_module.c mcf = ngx_http_get_module_main_conf(r, ngx_http_charset_filter_module); r 284 http/modules/ngx_http_charset_filter_module.c r->headers_out.content_type.len = r->headers_out.content_type_len; r 286 http/modules/ngx_http_charset_filter_module.c ngx_http_set_charset(r, &dst); r 289 http/modules/ngx_http_charset_filter_module.c return ngx_http_charset_ctx(r, charsets, charset, source_charset); r 292 http/modules/ngx_http_charset_filter_module.c return ngx_http_next_header_filter(r); r 296 http/modules/ngx_http_charset_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 300 http/modules/ngx_http_charset_filter_module.c return ngx_http_next_header_filter(r); r 305 http/modules/ngx_http_charset_filter_module.c ngx_http_destination_charset(ngx_http_request_t *r, ngx_str_t *name) r 313 http/modules/ngx_http_charset_filter_module.c if (!r->ignore_content_encoding r 314 http/modules/ngx_http_charset_filter_module.c && r->headers_out.content_encoding r 315 http/modules/ngx_http_charset_filter_module.c && r->headers_out.content_encoding->value.len) r 320 http/modules/ngx_http_charset_filter_module.c if (r->headers_out.content_type.len == 0) { r 324 http/modules/ngx_http_charset_filter_module.c if (r->headers_out.override_charset r 325 http/modules/ngx_http_charset_filter_module.c && r->headers_out.override_charset->len) r 327 http/modules/ngx_http_charset_filter_module.c *name = *r->headers_out.override_charset; r 329 http/modules/ngx_http_charset_filter_module.c charset = ngx_http_get_charset(r, name); r 335 http/modules/ngx_http_charset_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 341 http/modules/ngx_http_charset_filter_module.c mlcf = ngx_http_get_module_loc_conf(r, ngx_http_charset_filter_module); r 348 http/modules/ngx_http_charset_filter_module.c if (r->headers_out.charset.len) { r 354 http/modules/ngx_http_charset_filter_module.c if (ngx_http_test_content_type(r, &mlcf->types) == NULL) { r 360 http/modules/ngx_http_charset_filter_module.c mcf = ngx_http_get_module_main_conf(r, ngx_http_charset_filter_module); r 366 http/modules/ngx_http_charset_filter_module.c vv = ngx_http_get_indexed_variable(r, charset - NGX_HTTP_CHARSET_VAR); r 375 http/modules/ngx_http_charset_filter_module.c return ngx_http_get_charset(r, name); r 380 http/modules/ngx_http_charset_filter_module.c ngx_http_main_request_charset(ngx_http_request_t *r, ngx_str_t *src) r 386 http/modules/ngx_http_charset_filter_module.c ctx = ngx_http_get_module_ctx(r->main, ngx_http_charset_filter_module); r 393 http/modules/ngx_http_charset_filter_module.c main_charset = &r->main->headers_out.charset; r 399 http/modules/ngx_http_charset_filter_module.c ctx = ngx_pcalloc(r->pool, sizeof(ngx_http_charset_ctx_t)); r 404 http/modules/ngx_http_charset_filter_module.c ngx_http_set_ctx(r->main, ctx, ngx_http_charset_filter_module); r 406 http/modules/ngx_http_charset_filter_module.c charset = ngx_http_get_charset(r, main_charset); r 417 http/modules/ngx_http_charset_filter_module.c ngx_http_source_charset(ngx_http_request_t *r, ngx_str_t *name) r 425 http/modules/ngx_http_charset_filter_module.c if (r->headers_out.charset.len) { r 426 http/modules/ngx_http_charset_filter_module.c *name = r->headers_out.charset; r 427 http/modules/ngx_http_charset_filter_module.c return ngx_http_get_charset(r, name); r 430 http/modules/ngx_http_charset_filter_module.c lcf = ngx_http_get_module_loc_conf(r, ngx_http_charset_filter_module); r 440 http/modules/ngx_http_charset_filter_module.c mcf = ngx_http_get_module_main_conf(r, ngx_http_charset_filter_module); r 446 http/modules/ngx_http_charset_filter_module.c vv = ngx_http_get_indexed_variable(r, charset - NGX_HTTP_CHARSET_VAR); r 455 http/modules/ngx_http_charset_filter_module.c return ngx_http_get_charset(r, name); r 460 http/modules/ngx_http_charset_filter_module.c ngx_http_get_charset(ngx_http_request_t *r, ngx_str_t *name) r 466 http/modules/ngx_http_charset_filter_module.c mcf = ngx_http_get_module_main_conf(r, ngx_http_charset_filter_module); r 486 http/modules/ngx_http_charset_filter_module.c ngx_http_set_charset(ngx_http_request_t *r, ngx_str_t *charset) r 488 http/modules/ngx_http_charset_filter_module.c if (r != r->main) { r 492 http/modules/ngx_http_charset_filter_module.c if (r->headers_out.status == NGX_HTTP_MOVED_PERMANENTLY r 493 http/modules/ngx_http_charset_filter_module.c || r->headers_out.status == NGX_HTTP_MOVED_TEMPORARILY) r 500 http/modules/ngx_http_charset_filter_module.c r->headers_out.charset.len = 0; r 504 http/modules/ngx_http_charset_filter_module.c r->headers_out.charset = *charset; r 509 http/modules/ngx_http_charset_filter_module.c ngx_http_charset_ctx(ngx_http_request_t *r, ngx_http_charset_t *charsets, r 514 http/modules/ngx_http_charset_filter_module.c ctx = ngx_pcalloc(r->pool, sizeof(ngx_http_charset_ctx_t)); r 519 http/modules/ngx_http_charset_filter_module.c ngx_http_set_ctx(r, ctx, ngx_http_charset_filter_module); r 528 http/modules/ngx_http_charset_filter_module.c r->filter_need_in_memory = 1; r 530 http/modules/ngx_http_charset_filter_module.c if ((ctx->to_utf8 || ctx->from_utf8) && r == r->main) { r 531 http/modules/ngx_http_charset_filter_module.c ngx_http_clear_content_length(r); r 534 http/modules/ngx_http_charset_filter_module.c r->filter_need_temporary = 1; r 537 http/modules/ngx_http_charset_filter_module.c return ngx_http_next_header_filter(r); r 542 http/modules/ngx_http_charset_filter_module.c ngx_http_charset_body_filter(ngx_http_request_t *r, ngx_chain_t *in) r 549 http/modules/ngx_http_charset_filter_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_charset_filter_module); r 552 http/modules/ngx_http_charset_filter_module.c return ngx_http_next_body_filter(r, in); r 565 http/modules/ngx_http_charset_filter_module.c *ll = ngx_alloc_chain_link(r->pool); r 579 http/modules/ngx_http_charset_filter_module.c *ll = ngx_http_charset_recode_to_utf8(r->pool, b, ctx); r 582 http/modules/ngx_http_charset_filter_module.c *ll = ngx_http_charset_recode_from_utf8(r->pool, b, ctx); r 594 http/modules/ngx_http_charset_filter_module.c rc = ngx_http_next_body_filter(r, out); r 642 http/modules/ngx_http_charset_filter_module.c return ngx_http_next_body_filter(r, in); r 51 http/modules/ngx_http_chunked_filter_module.c ngx_http_chunked_header_filter(ngx_http_request_t *r) r 55 http/modules/ngx_http_chunked_filter_module.c if (r->headers_out.status == NGX_HTTP_NOT_MODIFIED r 56 http/modules/ngx_http_chunked_filter_module.c || r->headers_out.status == NGX_HTTP_NO_CONTENT r 57 http/modules/ngx_http_chunked_filter_module.c || r != r->main r 58 http/modules/ngx_http_chunked_filter_module.c || (r->method & NGX_HTTP_HEAD)) r 60 http/modules/ngx_http_chunked_filter_module.c return ngx_http_next_header_filter(r); r 63 http/modules/ngx_http_chunked_filter_module.c if (r->headers_out.content_length_n == -1) { r 64 http/modules/ngx_http_chunked_filter_module.c if (r->http_version < NGX_HTTP_VERSION_11) { r 65 http/modules/ngx_http_chunked_filter_module.c r->keepalive = 0; r 68 http/modules/ngx_http_chunked_filter_module.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 71 http/modules/ngx_http_chunked_filter_module.c r->chunked = 1; r 74 http/modules/ngx_http_chunked_filter_module.c r->keepalive = 0; r 79 http/modules/ngx_http_chunked_filter_module.c return ngx_http_next_header_filter(r); r 84 http/modules/ngx_http_chunked_filter_module.c ngx_http_chunked_body_filter(ngx_http_request_t *r, ngx_chain_t *in) r 91 http/modules/ngx_http_chunked_filter_module.c if (in == NULL || !r->chunked || r->header_only) { r 92 http/modules/ngx_http_chunked_filter_module.c return ngx_http_next_body_filter(r, in); r 102 http/modules/ngx_http_chunked_filter_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 112 http/modules/ngx_http_chunked_filter_module.c tl = ngx_alloc_chain_link(r->pool); r 130 http/modules/ngx_http_chunked_filter_module.c b = ngx_calloc_buf(r->pool); r 137 http/modules/ngx_http_chunked_filter_module.c chunk = ngx_palloc(r->pool, sizeof("0000000000000000" CRLF) - 1); r 150 http/modules/ngx_http_chunked_filter_module.c b = ngx_calloc_buf(r->pool); r 167 http/modules/ngx_http_chunked_filter_module.c return ngx_http_next_body_filter(r, &out); r 173 http/modules/ngx_http_chunked_filter_module.c return ngx_http_next_body_filter(r, out.next); r 176 http/modules/ngx_http_chunked_filter_module.c b = ngx_calloc_buf(r->pool); r 190 http/modules/ngx_http_chunked_filter_module.c return ngx_http_next_body_filter(r, &out); r 36 http/modules/ngx_http_dav_module.c static ngx_int_t ngx_http_dav_handler(ngx_http_request_t *r); r 38 http/modules/ngx_http_dav_module.c static void ngx_http_dav_put_handler(ngx_http_request_t *r); r 40 http/modules/ngx_http_dav_module.c static ngx_int_t ngx_http_dav_delete_handler(ngx_http_request_t *r); r 41 http/modules/ngx_http_dav_module.c static ngx_int_t ngx_http_dav_delete_path(ngx_http_request_t *r, r 47 http/modules/ngx_http_dav_module.c static ngx_int_t ngx_http_dav_mkcol_handler(ngx_http_request_t *r, r 50 http/modules/ngx_http_dav_module.c static ngx_int_t ngx_http_dav_copy_move_handler(ngx_http_request_t *r); r 57 http/modules/ngx_http_dav_module.c static ngx_int_t ngx_http_dav_depth(ngx_http_request_t *r, ngx_int_t dflt); r 60 http/modules/ngx_http_dav_module.c static ngx_int_t ngx_http_dav_location(ngx_http_request_t *r, u_char *path); r 144 http/modules/ngx_http_dav_module.c ngx_http_dav_handler(ngx_http_request_t *r) r 149 http/modules/ngx_http_dav_module.c dlcf = ngx_http_get_module_loc_conf(r, ngx_http_dav_module); r 151 http/modules/ngx_http_dav_module.c if (!(r->method & dlcf->methods)) { r 155 http/modules/ngx_http_dav_module.c switch (r->method) { r 159 http/modules/ngx_http_dav_module.c if (r->uri.data[r->uri.len - 1] == '/') { r 160 http/modules/ngx_http_dav_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 165 http/modules/ngx_http_dav_module.c r->request_body_in_file_only = 1; r 166 http/modules/ngx_http_dav_module.c r->request_body_in_persistent_file = 1; r 167 http/modules/ngx_http_dav_module.c r->request_body_in_clean_file = 1; r 168 http/modules/ngx_http_dav_module.c r->request_body_file_group_access = 1; r 169 http/modules/ngx_http_dav_module.c r->request_body_file_log_level = 0; r 171 http/modules/ngx_http_dav_module.c rc = ngx_http_read_client_request_body(r, ngx_http_dav_put_handler); r 181 http/modules/ngx_http_dav_module.c return ngx_http_dav_delete_handler(r); r 185 http/modules/ngx_http_dav_module.c return ngx_http_dav_mkcol_handler(r, dlcf); r 189 http/modules/ngx_http_dav_module.c return ngx_http_dav_copy_move_handler(r); r 193 http/modules/ngx_http_dav_module.c return ngx_http_dav_copy_move_handler(r); r 201 http/modules/ngx_http_dav_module.c ngx_http_dav_put_handler(ngx_http_request_t *r) r 211 http/modules/ngx_http_dav_module.c ngx_http_map_uri_to_path(r, &path, &root, 0); r 215 http/modules/ngx_http_dav_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 218 http/modules/ngx_http_dav_module.c temp = &r->request_body->temp_file->file.name; r 227 http/modules/ngx_http_dav_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, NGX_EISDIR, r 231 http/modules/ngx_http_dav_module.c ngx_log_error(NGX_LOG_CRIT, r->connection->log, ngx_errno, r 236 http/modules/ngx_http_dav_module.c ngx_http_finalize_request(r, NGX_HTTP_CONFLICT); r 241 http/modules/ngx_http_dav_module.c dlcf = ngx_http_get_module_loc_conf(r, ngx_http_dav_module); r 248 http/modules/ngx_http_dav_module.c ext.log = r->connection->log; r 250 http/modules/ngx_http_dav_module.c if (r->headers_in.date) { r 251 http/modules/ngx_http_dav_module.c date = ngx_http_parse_time(r->headers_in.date->value.data, r 252 http/modules/ngx_http_dav_module.c r->headers_in.date->value.len); r 256 http/modules/ngx_http_dav_module.c ext.fd = r->request_body->temp_file->file.fd; r 261 http/modules/ngx_http_dav_module.c ngx_http_finalize_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 266 http/modules/ngx_http_dav_module.c if (ngx_http_dav_location(r, path.data) != NGX_OK) { r 267 http/modules/ngx_http_dav_module.c ngx_http_finalize_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 271 http/modules/ngx_http_dav_module.c r->headers_out.content_length_n = 0; r 274 http/modules/ngx_http_dav_module.c r->headers_out.status = status; r 275 http/modules/ngx_http_dav_module.c r->header_only = 1; r 277 http/modules/ngx_http_dav_module.c ngx_http_finalize_request(r, ngx_http_send_header(r)); r 283 http/modules/ngx_http_dav_module.c ngx_http_dav_delete_handler(ngx_http_request_t *r) r 293 http/modules/ngx_http_dav_module.c if (r->headers_in.content_length_n > 0) { r 294 http/modules/ngx_http_dav_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 299 http/modules/ngx_http_dav_module.c dlcf = ngx_http_get_module_loc_conf(r, ngx_http_dav_module); r 304 http/modules/ngx_http_dav_module.c for (i = 0; i < r->uri.len; /* void */) { r 305 http/modules/ngx_http_dav_module.c if (r->uri.data[i++] == '/') { r 306 http/modules/ngx_http_dav_module.c if (++d >= dlcf->min_delete_depth && i < r->uri.len) { r 312 http/modules/ngx_http_dav_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 319 http/modules/ngx_http_dav_module.c ngx_http_map_uri_to_path(r, &path, &root, 0); r 321 http/modules/ngx_http_dav_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 329 http/modules/ngx_http_dav_module.c return ngx_http_dav_error(r->connection->log, err, r 335 http/modules/ngx_http_dav_module.c if (r->uri.data[r->uri.len - 1] != '/') { r 336 http/modules/ngx_http_dav_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, NGX_EISDIR, r 341 http/modules/ngx_http_dav_module.c depth = ngx_http_dav_depth(r, NGX_HTTP_DAV_INFINITY_DEPTH); r 344 http/modules/ngx_http_dav_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 360 http/modules/ngx_http_dav_module.c depth = ngx_http_dav_depth(r, 0); r 363 http/modules/ngx_http_dav_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 371 http/modules/ngx_http_dav_module.c rc = ngx_http_dav_delete_path(r, &path, dir); r 382 http/modules/ngx_http_dav_module.c ngx_http_dav_delete_path(ngx_http_request_t *r, ngx_str_t *path, ngx_uint_t dir) r 396 http/modules/ngx_http_dav_module.c tree.log = r->connection->log; r 419 http/modules/ngx_http_dav_module.c return ngx_http_dav_error(r->connection->log, ngx_errno, r 468 http/modules/ngx_http_dav_module.c ngx_http_dav_mkcol_handler(ngx_http_request_t *r, ngx_http_dav_loc_conf_t *dlcf) r 474 http/modules/ngx_http_dav_module.c if (r->headers_in.content_length_n > 0) { r 475 http/modules/ngx_http_dav_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 480 http/modules/ngx_http_dav_module.c if (r->uri.data[r->uri.len - 1] != '/') { r 481 http/modules/ngx_http_dav_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 486 http/modules/ngx_http_dav_module.c p = ngx_http_map_uri_to_path(r, &path, &root, 0); r 489 http/modules/ngx_http_dav_module.c r->uri.len--; r 491 http/modules/ngx_http_dav_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 497 http/modules/ngx_http_dav_module.c if (ngx_http_dav_location(r, path.data) != NGX_OK) { r 504 http/modules/ngx_http_dav_module.c return ngx_http_dav_error(r->connection->log, ngx_errno, r 510 http/modules/ngx_http_dav_module.c ngx_http_dav_copy_move_handler(ngx_http_request_t *r) r 526 http/modules/ngx_http_dav_module.c if (r->headers_in.content_length_n > 0) { r 530 http/modules/ngx_http_dav_module.c dest = r->headers_in.destination; r 533 http/modules/ngx_http_dav_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 545 http/modules/ngx_http_dav_module.c len = r->headers_in.server.len; r 548 http/modules/ngx_http_dav_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 555 http/modules/ngx_http_dav_module.c if (r->connection->ssl) { r 576 http/modules/ngx_http_dav_module.c if (ngx_strncmp(host, r->headers_in.server.data, len) != 0) { r 577 http/modules/ngx_http_dav_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 594 http/modules/ngx_http_dav_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 605 http/modules/ngx_http_dav_module.c if (ngx_http_parse_unsafe_uri(r, &duri, &args, &flags) != NGX_OK) { r 609 http/modules/ngx_http_dav_module.c if ((r->uri.data[r->uri.len - 1] == '/' && *(last - 1) != '/') r 610 http/modules/ngx_http_dav_module.c || (r->uri.data[r->uri.len - 1] != '/' && *(last - 1) == '/')) r 612 http/modules/ngx_http_dav_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 615 http/modules/ngx_http_dav_module.c &r->uri, &dest->value); r 619 http/modules/ngx_http_dav_module.c depth = ngx_http_dav_depth(r, NGX_HTTP_DAV_INFINITY_DEPTH); r 623 http/modules/ngx_http_dav_module.c if (r->method == NGX_HTTP_COPY) { r 625 http/modules/ngx_http_dav_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 631 http/modules/ngx_http_dav_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 637 http/modules/ngx_http_dav_module.c over = r->headers_in.overwrite; r 655 http/modules/ngx_http_dav_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 665 http/modules/ngx_http_dav_module.c ngx_http_map_uri_to_path(r, &path, &root, 0); r 667 http/modules/ngx_http_dav_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 670 http/modules/ngx_http_dav_module.c uri = r->uri; r 671 http/modules/ngx_http_dav_module.c r->uri = duri; r 673 http/modules/ngx_http_dav_module.c ngx_http_map_uri_to_path(r, ©.path, &root, 0); r 675 http/modules/ngx_http_dav_module.c r->uri = uri; r 688 http/modules/ngx_http_dav_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 695 http/modules/ngx_http_dav_module.c return ngx_http_dav_error(r->connection->log, err, r 710 http/modules/ngx_http_dav_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 712 http/modules/ngx_http_dav_module.c &r->uri, &r->method_name, &dest->value); r 717 http/modules/ngx_http_dav_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, NGX_EEXIST, r 726 http/modules/ngx_http_dav_module.c return ngx_http_dav_error(r->connection->log, ngx_errno, r 733 http/modules/ngx_http_dav_module.c if (r->uri.data[r->uri.len - 1] != '/') { r 734 http/modules/ngx_http_dav_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 735 http/modules/ngx_http_dav_module.c "\"%V\" is collection", &r->uri); r 740 http/modules/ngx_http_dav_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 743 http/modules/ngx_http_dav_module.c rc = ngx_http_dav_delete_path(r, ©.path, dir); r 755 http/modules/ngx_http_dav_module.c if (r->method == NGX_HTTP_MOVE) { r 764 http/modules/ngx_http_dav_module.c return ngx_http_dav_error(r->connection->log, ngx_errno, r 778 http/modules/ngx_http_dav_module.c tree.log = r->connection->log; r 782 http/modules/ngx_http_dav_module.c if (r->method == NGX_HTTP_MOVE) { r 783 http/modules/ngx_http_dav_module.c rc = ngx_http_dav_delete_path(r, &path, 1); r 795 http/modules/ngx_http_dav_module.c if (r->method == NGX_HTTP_MOVE) { r 797 http/modules/ngx_http_dav_module.c dlcf = ngx_http_get_module_loc_conf(r, ngx_http_dav_module); r 804 http/modules/ngx_http_dav_module.c ext.log = r->connection->log; r 813 http/modules/ngx_http_dav_module.c dlcf = ngx_http_get_module_loc_conf(r, ngx_http_dav_module); r 819 http/modules/ngx_http_dav_module.c cf.log = r->connection->log; r 971 http/modules/ngx_http_dav_module.c ngx_http_dav_depth(ngx_http_request_t *r, ngx_int_t dflt) r 975 http/modules/ngx_http_dav_module.c depth = r->headers_in.depth; r 1000 http/modules/ngx_http_dav_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1043 http/modules/ngx_http_dav_module.c ngx_http_dav_location(ngx_http_request_t *r, u_char *path) r 1048 http/modules/ngx_http_dav_module.c r->headers_out.location = ngx_palloc(r->pool, sizeof(ngx_table_elt_t)); r 1049 http/modules/ngx_http_dav_module.c if (r->headers_out.location == NULL) { r 1053 http/modules/ngx_http_dav_module.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 1059 http/modules/ngx_http_dav_module.c location = ngx_pnalloc(r->pool, r->uri.len); r 1064 http/modules/ngx_http_dav_module.c ngx_memcpy(location, r->uri.data, r->uri.len); r 1072 http/modules/ngx_http_dav_module.c r->headers_out.location->value.len = r->uri.len; r 1073 http/modules/ngx_http_dav_module.c r->headers_out.location->value.data = location; r 90 http/modules/ngx_http_degradation_module.c ngx_http_degradation_handler(ngx_http_request_t *r) r 94 http/modules/ngx_http_degradation_module.c dlcf = ngx_http_get_module_loc_conf(r, ngx_http_degradation_module); r 96 http/modules/ngx_http_degradation_module.c if (dlcf->degrade && ngx_http_degraded(r)) { r 105 http/modules/ngx_http_degradation_module.c ngx_http_degraded(ngx_http_request_t *r) r 113 http/modules/ngx_http_degradation_module.c dmcf = ngx_http_get_module_main_conf(r, ngx_http_degradation_module); r 140 http/modules/ngx_http_degradation_module.c ngx_log_error(NGX_LOG_NOTICE, r->connection->log, 0, r 112 http/modules/ngx_http_empty_gif_module.c ngx_http_empty_gif_handler(ngx_http_request_t *r) r 117 http/modules/ngx_http_empty_gif_module.c if (!(r->method & (NGX_HTTP_GET|NGX_HTTP_HEAD))) { r 121 http/modules/ngx_http_empty_gif_module.c rc = ngx_http_discard_request_body(r); r 131 http/modules/ngx_http_empty_gif_module.c r->headers_out.last_modified_time = 23349600; r 133 http/modules/ngx_http_empty_gif_module.c return ngx_http_send_response(r, NGX_HTTP_OK, &ngx_http_gif_type, &cv); r 125 http/modules/ngx_http_fastcgi_module.c static ngx_int_t ngx_http_fastcgi_eval(ngx_http_request_t *r, r 128 http/modules/ngx_http_fastcgi_module.c static ngx_int_t ngx_http_fastcgi_create_key(ngx_http_request_t *r); r 130 http/modules/ngx_http_fastcgi_module.c static ngx_int_t ngx_http_fastcgi_create_request(ngx_http_request_t *r); r 131 http/modules/ngx_http_fastcgi_module.c static ngx_int_t ngx_http_fastcgi_reinit_request(ngx_http_request_t *r); r 132 http/modules/ngx_http_fastcgi_module.c static ngx_int_t ngx_http_fastcgi_process_header(ngx_http_request_t *r); r 135 http/modules/ngx_http_fastcgi_module.c static ngx_int_t ngx_http_fastcgi_process_record(ngx_http_request_t *r, r 137 http/modules/ngx_http_fastcgi_module.c static void ngx_http_fastcgi_abort_request(ngx_http_request_t *r); r 138 http/modules/ngx_http_fastcgi_module.c static void ngx_http_fastcgi_finalize_request(ngx_http_request_t *r, r 145 http/modules/ngx_http_fastcgi_module.c static ngx_int_t ngx_http_fastcgi_script_name_variable(ngx_http_request_t *r, r 147 http/modules/ngx_http_fastcgi_module.c static ngx_int_t ngx_http_fastcgi_path_info_variable(ngx_http_request_t *r, r 149 http/modules/ngx_http_fastcgi_module.c static ngx_http_fastcgi_ctx_t *ngx_http_fastcgi_split(ngx_http_request_t *r, r 544 http/modules/ngx_http_fastcgi_module.c ngx_http_fastcgi_handler(ngx_http_request_t *r) r 551 http/modules/ngx_http_fastcgi_module.c if (r->subrequest_in_memory) { r 552 http/modules/ngx_http_fastcgi_module.c ngx_log_error(NGX_LOG_ALERT, r->connection->log, 0, r 558 http/modules/ngx_http_fastcgi_module.c if (ngx_http_upstream_create(r) != NGX_OK) { r 562 http/modules/ngx_http_fastcgi_module.c f = ngx_pcalloc(r->pool, sizeof(ngx_http_fastcgi_ctx_t)); r 567 http/modules/ngx_http_fastcgi_module.c ngx_http_set_ctx(r, f, ngx_http_fastcgi_module); r 569 http/modules/ngx_http_fastcgi_module.c flcf = ngx_http_get_module_loc_conf(r, ngx_http_fastcgi_module); r 572 http/modules/ngx_http_fastcgi_module.c if (ngx_http_fastcgi_eval(r, flcf) != NGX_OK) { r 577 http/modules/ngx_http_fastcgi_module.c u = r->upstream; r 595 http/modules/ngx_http_fastcgi_module.c u->pipe = ngx_pcalloc(r->pool, sizeof(ngx_event_pipe_t)); r 601 http/modules/ngx_http_fastcgi_module.c u->pipe->input_ctx = r; r 603 http/modules/ngx_http_fastcgi_module.c rc = ngx_http_read_client_request_body(r, ngx_http_upstream_init); r 614 http/modules/ngx_http_fastcgi_module.c ngx_http_fastcgi_eval(ngx_http_request_t *r, ngx_http_fastcgi_loc_conf_t *flcf) r 621 http/modules/ngx_http_fastcgi_module.c if (ngx_http_script_run(r, &url.url, flcf->fastcgi_lengths->elts, 0, r 630 http/modules/ngx_http_fastcgi_module.c if (ngx_parse_url(r->pool, &url) != NGX_OK) { r 632 http/modules/ngx_http_fastcgi_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 639 http/modules/ngx_http_fastcgi_module.c u = r->upstream; r 641 http/modules/ngx_http_fastcgi_module.c u->resolved = ngx_pcalloc(r->pool, sizeof(ngx_http_upstream_resolved_t)); r 665 http/modules/ngx_http_fastcgi_module.c ngx_http_fastcgi_create_key(ngx_http_request_t *r) r 670 http/modules/ngx_http_fastcgi_module.c key = ngx_array_push(&r->cache->keys); r 675 http/modules/ngx_http_fastcgi_module.c flcf = ngx_http_get_module_loc_conf(r, ngx_http_fastcgi_module); r 677 http/modules/ngx_http_fastcgi_module.c if (ngx_http_complex_value(r, &flcf->cache_key, key) != NGX_OK) { r 688 http/modules/ngx_http_fastcgi_module.c ngx_http_fastcgi_create_request(ngx_http_request_t *r) r 709 http/modules/ngx_http_fastcgi_module.c flcf = ngx_http_get_module_loc_conf(r, ngx_http_fastcgi_module); r 714 http/modules/ngx_http_fastcgi_module.c ngx_http_script_flush_no_cacheable_variables(r, flcf->flushes); r 718 http/modules/ngx_http_fastcgi_module.c le.request = r; r 740 http/modules/ngx_http_fastcgi_module.c ignored = ngx_palloc(r->pool, flcf->header_params * sizeof(void *)); r 746 http/modules/ngx_http_fastcgi_module.c part = &r->headers_in.headers.part; r 764 http/modules/ngx_http_fastcgi_module.c lowcase_key = ngx_pnalloc(r->pool, allocated); r 804 http/modules/ngx_http_fastcgi_module.c ngx_log_error(NGX_LOG_ALERT, r->connection->log, 0, r 824 http/modules/ngx_http_fastcgi_module.c b = ngx_create_temp_buf(r->pool, size); r 829 http/modules/ngx_http_fastcgi_module.c cl = ngx_alloc_chain_link(r->pool); r 858 http/modules/ngx_http_fastcgi_module.c e.request = r; r 891 http/modules/ngx_http_fastcgi_module.c ngx_log_debug4(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 903 http/modules/ngx_http_fastcgi_module.c part = &r->headers_in.headers.part; r 963 http/modules/ngx_http_fastcgi_module.c ngx_log_debug4(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 996 http/modules/ngx_http_fastcgi_module.c body = r->upstream->request_bufs; r 997 http/modules/ngx_http_fastcgi_module.c r->upstream->request_bufs = cl; r 1016 http/modules/ngx_http_fastcgi_module.c b = ngx_alloc_buf(r->pool); r 1060 http/modules/ngx_http_fastcgi_module.c cl->next = ngx_alloc_chain_link(r->pool); r 1068 http/modules/ngx_http_fastcgi_module.c b = ngx_create_temp_buf(r->pool, r 1083 http/modules/ngx_http_fastcgi_module.c cl->next = ngx_alloc_chain_link(r->pool); r 1097 http/modules/ngx_http_fastcgi_module.c r->upstream->request_bufs = cl; r 1116 http/modules/ngx_http_fastcgi_module.c ngx_http_fastcgi_reinit_request(ngx_http_request_t *r) r 1120 http/modules/ngx_http_fastcgi_module.c f = ngx_http_get_module_ctx(r, ngx_http_fastcgi_module); r 1135 http/modules/ngx_http_fastcgi_module.c ngx_http_fastcgi_process_header(ngx_http_request_t *r) r 1152 http/modules/ngx_http_fastcgi_module.c f = ngx_http_get_module_ctx(r, ngx_http_fastcgi_module); r 1154 http/modules/ngx_http_fastcgi_module.c umcf = ngx_http_get_module_main_conf(r, ngx_http_upstream_module); r 1156 http/modules/ngx_http_fastcgi_module.c u = r->upstream; r 1165 http/modules/ngx_http_fastcgi_module.c rc = ngx_http_fastcgi_process_record(r, f); r 1181 http/modules/ngx_http_fastcgi_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1189 http/modules/ngx_http_fastcgi_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1244 http/modules/ngx_http_fastcgi_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1247 http/modules/ngx_http_fastcgi_module.c flcf = ngx_http_get_module_loc_conf(r, ngx_http_fastcgi_module); r 1272 http/modules/ngx_http_fastcgi_module.c if (r->cache) { r 1274 http/modules/ngx_http_fastcgi_module.c + r->cache->header_start; r 1300 http/modules/ngx_http_fastcgi_module.c if (f->large_stderr && r->cache) { r 1305 http/modules/ngx_http_fastcgi_module.c start = u->buffer.start + r->cache->header_start; r 1329 http/modules/ngx_http_fastcgi_module.c r->cache->header_start += u->buffer.pos - start r 1361 http/modules/ngx_http_fastcgi_module.c rc = ngx_http_parse_header_line(r, &u->buffer, 1); r 1363 http/modules/ngx_http_fastcgi_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1388 http/modules/ngx_http_fastcgi_module.c p = ngx_pnalloc(r->pool, size); r 1406 http/modules/ngx_http_fastcgi_module.c rc = ngx_http_parse_header_line(r, &buf, 1); r 1408 http/modules/ngx_http_fastcgi_module.c h->key.len = r->header_name_end - r->header_name_start; r 1409 http/modules/ngx_http_fastcgi_module.c h->key.data = r->header_name_start; r 1412 http/modules/ngx_http_fastcgi_module.c h->value.len = r->header_end - r->header_start; r 1413 http/modules/ngx_http_fastcgi_module.c h->value.data = r->header_start; r 1416 http/modules/ngx_http_fastcgi_module.c h->lowcase_key = ngx_pnalloc(r->pool, h->key.len); r 1423 http/modules/ngx_http_fastcgi_module.c h->key.len = r->header_name_end - r->header_name_start; r 1424 http/modules/ngx_http_fastcgi_module.c h->value.len = r->header_end - r->header_start; r 1426 http/modules/ngx_http_fastcgi_module.c h->key.data = ngx_pnalloc(r->pool, r 1437 http/modules/ngx_http_fastcgi_module.c ngx_cpystrn(h->key.data, r->header_name_start, r 1439 http/modules/ngx_http_fastcgi_module.c ngx_cpystrn(h->value.data, r->header_start, r 1443 http/modules/ngx_http_fastcgi_module.c h->hash = r->header_hash; r 1445 http/modules/ngx_http_fastcgi_module.c if (h->key.len == r->lowcase_index) { r 1446 http/modules/ngx_http_fastcgi_module.c ngx_memcpy(h->lowcase_key, r->lowcase_header, h->key.len); r 1455 http/modules/ngx_http_fastcgi_module.c if (hh && hh->handler(r, h, hh->offset) != NGX_OK) { r 1459 http/modules/ngx_http_fastcgi_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1476 http/modules/ngx_http_fastcgi_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1485 http/modules/ngx_http_fastcgi_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1513 http/modules/ngx_http_fastcgi_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1543 http/modules/ngx_http_fastcgi_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1547 http/modules/ngx_http_fastcgi_module.c f->split_parts = ngx_array_create(r->pool, 1, r 1575 http/modules/ngx_http_fastcgi_module.c ngx_http_request_t *r; r 1582 http/modules/ngx_http_fastcgi_module.c r = p->input_ctx; r 1583 http/modules/ngx_http_fastcgi_module.c f = ngx_http_get_module_ctx(r, ngx_http_fastcgi_module); r 1594 http/modules/ngx_http_fastcgi_module.c rc = ngx_http_fastcgi_process_record(r, f); r 1797 http/modules/ngx_http_fastcgi_module.c ngx_http_fastcgi_process_record(ngx_http_request_t *r, r 1809 http/modules/ngx_http_fastcgi_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1816 http/modules/ngx_http_fastcgi_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1832 http/modules/ngx_http_fastcgi_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1845 http/modules/ngx_http_fastcgi_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1855 http/modules/ngx_http_fastcgi_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1881 http/modules/ngx_http_fastcgi_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1903 http/modules/ngx_http_fastcgi_module.c ngx_http_fastcgi_abort_request(ngx_http_request_t *r) r 1905 http/modules/ngx_http_fastcgi_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1913 http/modules/ngx_http_fastcgi_module.c ngx_http_fastcgi_finalize_request(ngx_http_request_t *r, ngx_int_t rc) r 1915 http/modules/ngx_http_fastcgi_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2467 http/modules/ngx_http_fastcgi_module.c ngx_http_fastcgi_script_name_variable(ngx_http_request_t *r, r 2474 http/modules/ngx_http_fastcgi_module.c flcf = ngx_http_get_module_loc_conf(r, ngx_http_fastcgi_module); r 2476 http/modules/ngx_http_fastcgi_module.c f = ngx_http_fastcgi_split(r, flcf); r 2496 http/modules/ngx_http_fastcgi_module.c v->data = ngx_pnalloc(r->pool, v->len); r 2509 http/modules/ngx_http_fastcgi_module.c ngx_http_fastcgi_path_info_variable(ngx_http_request_t *r, r 2515 http/modules/ngx_http_fastcgi_module.c flcf = ngx_http_get_module_loc_conf(r, ngx_http_fastcgi_module); r 2517 http/modules/ngx_http_fastcgi_module.c f = ngx_http_fastcgi_split(r, flcf); r 2534 http/modules/ngx_http_fastcgi_module.c ngx_http_fastcgi_split(ngx_http_request_t *r, ngx_http_fastcgi_loc_conf_t *flcf) r 2541 http/modules/ngx_http_fastcgi_module.c f = ngx_http_get_module_ctx(r, ngx_http_fastcgi_module); r 2544 http/modules/ngx_http_fastcgi_module.c f = ngx_pcalloc(r->pool, sizeof(ngx_http_fastcgi_ctx_t)); r 2549 http/modules/ngx_http_fastcgi_module.c ngx_http_set_ctx(r, f, ngx_http_fastcgi_module); r 2557 http/modules/ngx_http_fastcgi_module.c f->script_name = r->uri; r 2561 http/modules/ngx_http_fastcgi_module.c n = ngx_regex_exec(flcf->split_regex, &r->uri, captures, (1 + 2) * 3); r 2565 http/modules/ngx_http_fastcgi_module.c f->script_name.data = r->uri.data + captures[2]; r 2568 http/modules/ngx_http_fastcgi_module.c f->path_info.data = r->uri.data + captures[4]; r 2574 http/modules/ngx_http_fastcgi_module.c f->script_name = r->uri; r 2578 http/modules/ngx_http_fastcgi_module.c ngx_log_error(NGX_LOG_ALERT, r->connection->log, 0, r 2580 http/modules/ngx_http_fastcgi_module.c n, &r->uri, &flcf->split_name); r 2585 http/modules/ngx_http_fastcgi_module.c f = ngx_http_get_module_ctx(r, ngx_http_fastcgi_module); r 2588 http/modules/ngx_http_fastcgi_module.c f = ngx_pcalloc(r->pool, sizeof(ngx_http_fastcgi_ctx_t)); r 2593 http/modules/ngx_http_fastcgi_module.c ngx_http_set_ctx(r, f, ngx_http_fastcgi_module); r 2596 http/modules/ngx_http_fastcgi_module.c f->script_name = r->uri; r 61 http/modules/ngx_http_flv_module.c ngx_http_flv_handler(ngx_http_request_t *r) r 75 http/modules/ngx_http_flv_module.c if (!(r->method & (NGX_HTTP_GET|NGX_HTTP_HEAD))) { r 79 http/modules/ngx_http_flv_module.c if (r->uri.data[r->uri.len - 1] == '/') { r 83 http/modules/ngx_http_flv_module.c rc = ngx_http_discard_request_body(r); r 89 http/modules/ngx_http_flv_module.c last = ngx_http_map_uri_to_path(r, &path, &root, 0); r 94 http/modules/ngx_http_flv_module.c log = r->connection->log; r 101 http/modules/ngx_http_flv_module.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 112 http/modules/ngx_http_flv_module.c if (ngx_open_cached_file(clcf->open_file_cache, &path, &of, r->pool) r 159 http/modules/ngx_http_flv_module.c r->root_tested = !r->error_page; r 165 http/modules/ngx_http_flv_module.c if (r->args.len) { r 167 http/modules/ngx_http_flv_module.c if (ngx_http_arg(r, (u_char *) "start", 5, &value) == NGX_OK) { r 184 http/modules/ngx_http_flv_module.c r->headers_out.status = NGX_HTTP_OK; r 185 http/modules/ngx_http_flv_module.c r->headers_out.content_length_n = len; r 186 http/modules/ngx_http_flv_module.c r->headers_out.last_modified_time = of.mtime; r 188 http/modules/ngx_http_flv_module.c if (ngx_http_set_content_type(r) != NGX_OK) { r 193 http/modules/ngx_http_flv_module.c b = ngx_pcalloc(r->pool, sizeof(ngx_buf_t)); r 207 http/modules/ngx_http_flv_module.c b = ngx_pcalloc(r->pool, sizeof(ngx_buf_t)); r 212 http/modules/ngx_http_flv_module.c b->file = ngx_pcalloc(r->pool, sizeof(ngx_file_t)); r 217 http/modules/ngx_http_flv_module.c r->allow_ranges = 1; r 219 http/modules/ngx_http_flv_module.c rc = ngx_http_send_header(r); r 221 http/modules/ngx_http_flv_module.c if (rc == NGX_ERROR || rc > NGX_OK || r->header_only) { r 240 http/modules/ngx_http_flv_module.c return ngx_http_output_filter(r, &out[i]); r 68 http/modules/ngx_http_geo_module.c static in_addr_t ngx_http_geo_addr(ngx_http_request_t *r, r 70 http/modules/ngx_http_geo_module.c static in_addr_t ngx_http_geo_real_addr(ngx_http_request_t *r, r 158 http/modules/ngx_http_geo_module.c ngx_http_geo_cidr_variable(ngx_http_request_t *r, ngx_http_variable_value_t *v, r 166 http/modules/ngx_http_geo_module.c ngx_radix32tree_find(ctx->u.tree, ngx_http_geo_addr(r, ctx)); r 170 http/modules/ngx_http_geo_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 178 http/modules/ngx_http_geo_module.c ngx_http_geo_range_variable(ngx_http_request_t *r, ngx_http_variable_value_t *v, r 189 http/modules/ngx_http_geo_module.c addr = ngx_http_geo_addr(r, ctx); r 204 http/modules/ngx_http_geo_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 212 http/modules/ngx_http_geo_module.c ngx_http_geo_addr(ngx_http_request_t *r, ngx_http_geo_ctx_t *ctx) r 221 http/modules/ngx_http_geo_module.c addr = ngx_http_geo_real_addr(r, ctx); r 223 http/modules/ngx_http_geo_module.c xfwd = r->headers_in.x_forwarded_for; r 256 http/modules/ngx_http_geo_module.c ngx_http_geo_real_addr(ngx_http_request_t *r, ngx_http_geo_ctx_t *ctx) r 262 http/modules/ngx_http_geo_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 263 http/modules/ngx_http_geo_module.c "http geo started: %V", &r->connection->addr_text); r 265 http/modules/ngx_http_geo_module.c if (r->connection->sockaddr->sa_family != AF_INET) { r 269 http/modules/ngx_http_geo_module.c sin = (struct sockaddr_in *) r->connection->sockaddr; r 273 http/modules/ngx_http_geo_module.c v = ngx_http_get_flushed_variable(r, ctx->index); r 276 http/modules/ngx_http_geo_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 282 http/modules/ngx_http_geo_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1320 http/modules/ngx_http_geo_module.c ngx_http_geo_range_t *r, *range, **ranges; r 1354 http/modules/ngx_http_geo_module.c r = ctx->high.low[i]; r 1355 http/modules/ngx_http_geo_module.c if (r == NULL) { r 1363 http/modules/ngx_http_geo_module.c s.len = r->value->len; r 1364 http/modules/ngx_http_geo_module.c s.data = r->value->data; r 1370 http/modules/ngx_http_geo_module.c range->start = r->start; r 1371 http/modules/ngx_http_geo_module.c range->end = r->end; r 1374 http/modules/ngx_http_geo_module.c } while ((++r)->value); r 29 http/modules/ngx_http_geoip_module.c static ngx_int_t ngx_http_geoip_country_variable(ngx_http_request_t *r, r 31 http/modules/ngx_http_geoip_module.c static ngx_int_t ngx_http_geoip_city_variable(ngx_http_request_t *r, r 33 http/modules/ngx_http_geoip_module.c static ngx_int_t ngx_http_geoip_region_name_variable(ngx_http_request_t *r, r 35 http/modules/ngx_http_geoip_module.c static ngx_int_t ngx_http_geoip_city_float_variable(ngx_http_request_t *r, r 37 http/modules/ngx_http_geoip_module.c static ngx_int_t ngx_http_geoip_city_int_variable(ngx_http_request_t *r, r 39 http/modules/ngx_http_geoip_module.c static GeoIPRecord *ngx_http_geoip_get_city_record(ngx_http_request_t *r); r 168 http/modules/ngx_http_geoip_module.c ngx_http_geoip_country_variable(ngx_http_request_t *r, r 179 http/modules/ngx_http_geoip_module.c gcf = ngx_http_get_module_main_conf(r, ngx_http_geoip_module); r 185 http/modules/ngx_http_geoip_module.c if (r->connection->sockaddr->sa_family != AF_INET) { r 189 http/modules/ngx_http_geoip_module.c sin = (struct sockaddr_in *) r->connection->sockaddr; r 215 http/modules/ngx_http_geoip_module.c ngx_http_geoip_city_variable(ngx_http_request_t *r, r 222 http/modules/ngx_http_geoip_module.c gr = ngx_http_geoip_get_city_record(r); r 233 http/modules/ngx_http_geoip_module.c v->data = ngx_pnalloc(r->pool, len); r 263 http/modules/ngx_http_geoip_module.c ngx_http_geoip_region_name_variable(ngx_http_request_t *r, r 270 http/modules/ngx_http_geoip_module.c gr = ngx_http_geoip_get_city_record(r); r 284 http/modules/ngx_http_geoip_module.c v->data = ngx_pnalloc(r->pool, len); r 307 http/modules/ngx_http_geoip_module.c ngx_http_geoip_city_float_variable(ngx_http_request_t *r, r 313 http/modules/ngx_http_geoip_module.c gr = ngx_http_geoip_get_city_record(r); r 319 http/modules/ngx_http_geoip_module.c v->data = ngx_pnalloc(r->pool, NGX_INT64_LEN + 5); r 336 http/modules/ngx_http_geoip_module.c ngx_http_geoip_city_int_variable(ngx_http_request_t *r, r 342 http/modules/ngx_http_geoip_module.c gr = ngx_http_geoip_get_city_record(r); r 348 http/modules/ngx_http_geoip_module.c v->data = ngx_pnalloc(r->pool, NGX_INT64_LEN); r 365 http/modules/ngx_http_geoip_module.c ngx_http_geoip_get_city_record(ngx_http_request_t *r) r 371 http/modules/ngx_http_geoip_module.c gcf = ngx_http_get_module_main_conf(r, ngx_http_geoip_module); r 373 http/modules/ngx_http_geoip_module.c if (gcf->city && r->connection->sockaddr->sa_family == AF_INET) { r 375 http/modules/ngx_http_geoip_module.c sin = (struct sockaddr_in *) r->connection->sockaddr; r 86 http/modules/ngx_http_gzip_filter_module.c static void ngx_http_gzip_filter_memory(ngx_http_request_t *r, r 90 http/modules/ngx_http_gzip_filter_module.c static ngx_int_t ngx_http_gzip_filter_deflate_start(ngx_http_request_t *r, r 92 http/modules/ngx_http_gzip_filter_module.c static ngx_int_t ngx_http_gzip_filter_gzheader(ngx_http_request_t *r, r 94 http/modules/ngx_http_gzip_filter_module.c static ngx_int_t ngx_http_gzip_filter_add_data(ngx_http_request_t *r, r 96 http/modules/ngx_http_gzip_filter_module.c static ngx_int_t ngx_http_gzip_filter_get_buf(ngx_http_request_t *r, r 98 http/modules/ngx_http_gzip_filter_module.c static ngx_int_t ngx_http_gzip_filter_deflate(ngx_http_request_t *r, r 100 http/modules/ngx_http_gzip_filter_module.c static ngx_int_t ngx_http_gzip_filter_deflate_end(ngx_http_request_t *r, r 106 http/modules/ngx_http_gzip_filter_module.c static void ngx_http_gzip_filter_free_copy_buf(ngx_http_request_t *r, r 110 http/modules/ngx_http_gzip_filter_module.c static ngx_int_t ngx_http_gzip_ratio_variable(ngx_http_request_t *r, r 237 http/modules/ngx_http_gzip_filter_module.c ngx_http_gzip_header_filter(ngx_http_request_t *r) r 243 http/modules/ngx_http_gzip_filter_module.c conf = ngx_http_get_module_loc_conf(r, ngx_http_gzip_filter_module); r 246 http/modules/ngx_http_gzip_filter_module.c || (r->headers_out.status != NGX_HTTP_OK r 247 http/modules/ngx_http_gzip_filter_module.c && r->headers_out.status != NGX_HTTP_FORBIDDEN r 248 http/modules/ngx_http_gzip_filter_module.c && r->headers_out.status != NGX_HTTP_NOT_FOUND) r 249 http/modules/ngx_http_gzip_filter_module.c || (r->headers_out.content_encoding r 250 http/modules/ngx_http_gzip_filter_module.c && r->headers_out.content_encoding->value.len) r 251 http/modules/ngx_http_gzip_filter_module.c || (r->headers_out.content_length_n != -1 r 252 http/modules/ngx_http_gzip_filter_module.c && r->headers_out.content_length_n < conf->min_length) r 253 http/modules/ngx_http_gzip_filter_module.c || ngx_http_test_content_type(r, &conf->types) == NULL r 254 http/modules/ngx_http_gzip_filter_module.c || r->header_only) r 256 http/modules/ngx_http_gzip_filter_module.c return ngx_http_next_header_filter(r); r 259 http/modules/ngx_http_gzip_filter_module.c r->gzip_vary = 1; r 265 http/modules/ngx_http_gzip_filter_module.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 267 http/modules/ngx_http_gzip_filter_module.c if (clcf->gzip_disable_degradation && ngx_http_degraded(r)) { r 268 http/modules/ngx_http_gzip_filter_module.c return ngx_http_next_header_filter(r); r 273 http/modules/ngx_http_gzip_filter_module.c if (!r->gzip_tested) { r 274 http/modules/ngx_http_gzip_filter_module.c if (ngx_http_gzip_ok(r) != NGX_OK) { r 275 http/modules/ngx_http_gzip_filter_module.c return ngx_http_next_header_filter(r); r 278 http/modules/ngx_http_gzip_filter_module.c } else if (!r->gzip_ok) { r 279 http/modules/ngx_http_gzip_filter_module.c return ngx_http_next_header_filter(r); r 282 http/modules/ngx_http_gzip_filter_module.c ctx = ngx_pcalloc(r->pool, sizeof(ngx_http_gzip_ctx_t)); r 287 http/modules/ngx_http_gzip_filter_module.c ngx_http_set_ctx(r, ctx, ngx_http_gzip_filter_module); r 289 http/modules/ngx_http_gzip_filter_module.c ctx->request = r; r 292 http/modules/ngx_http_gzip_filter_module.c ngx_http_gzip_filter_memory(r, ctx); r 294 http/modules/ngx_http_gzip_filter_module.c h = ngx_list_push(&r->headers_out.headers); r 302 http/modules/ngx_http_gzip_filter_module.c r->headers_out.content_encoding = h; r 304 http/modules/ngx_http_gzip_filter_module.c r->main_filter_need_in_memory = 1; r 306 http/modules/ngx_http_gzip_filter_module.c ngx_http_clear_content_length(r); r 307 http/modules/ngx_http_gzip_filter_module.c ngx_http_clear_accept_ranges(r); r 309 http/modules/ngx_http_gzip_filter_module.c return ngx_http_next_header_filter(r); r 314 http/modules/ngx_http_gzip_filter_module.c ngx_http_gzip_body_filter(ngx_http_request_t *r, ngx_chain_t *in) r 320 http/modules/ngx_http_gzip_filter_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_gzip_filter_module); r 323 http/modules/ngx_http_gzip_filter_module.c return ngx_http_next_body_filter(r, in); r 326 http/modules/ngx_http_gzip_filter_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 360 http/modules/ngx_http_gzip_filter_module.c if (ngx_http_gzip_filter_deflate_start(r, ctx) != NGX_OK) { r 366 http/modules/ngx_http_gzip_filter_module.c if (ngx_chain_add_copy(r->pool, &ctx->in, in) != NGX_OK) { r 375 http/modules/ngx_http_gzip_filter_module.c if (ngx_http_next_body_filter(r, NULL) == NGX_ERROR) { r 394 http/modules/ngx_http_gzip_filter_module.c rc = ngx_http_gzip_filter_add_data(r, ctx); r 407 http/modules/ngx_http_gzip_filter_module.c rc = ngx_http_gzip_filter_get_buf(r, ctx); r 418 http/modules/ngx_http_gzip_filter_module.c rc = ngx_http_gzip_filter_deflate(r, ctx); r 432 http/modules/ngx_http_gzip_filter_module.c ngx_http_gzip_filter_free_copy_buf(r, ctx); r 438 http/modules/ngx_http_gzip_filter_module.c if (ngx_http_gzip_filter_gzheader(r, ctx) != NGX_OK) { r 443 http/modules/ngx_http_gzip_filter_module.c rc = ngx_http_next_body_filter(r, ctx->out); r 449 http/modules/ngx_http_gzip_filter_module.c ngx_http_gzip_filter_free_copy_buf(r, ctx); r 471 http/modules/ngx_http_gzip_filter_module.c ngx_pfree(r->pool, ctx->preallocated); r 474 http/modules/ngx_http_gzip_filter_module.c ngx_http_gzip_filter_free_copy_buf(r, ctx); r 481 http/modules/ngx_http_gzip_filter_module.c ngx_http_gzip_filter_memory(ngx_http_request_t *r, ngx_http_gzip_ctx_t *ctx) r 486 http/modules/ngx_http_gzip_filter_module.c conf = ngx_http_get_module_loc_conf(r, ngx_http_gzip_filter_module); r 491 http/modules/ngx_http_gzip_filter_module.c if (r->headers_out.content_length_n > 0) { r 495 http/modules/ngx_http_gzip_filter_module.c while (r->headers_out.content_length_n < ((1 << (wbits - 1)) - 262)) { r 526 http/modules/ngx_http_gzip_filter_module.c ngx_http_request_t *r; r 529 http/modules/ngx_http_gzip_filter_module.c r = ctx->request; r 531 http/modules/ngx_http_gzip_filter_module.c r->connection->buffered |= NGX_HTTP_GZIP_BUFFERED; r 541 http/modules/ngx_http_gzip_filter_module.c conf = ngx_http_get_module_loc_conf(r, ngx_http_gzip_filter_module); r 544 http/modules/ngx_http_gzip_filter_module.c cl = ngx_alloc_chain_link(r->pool); r 560 http/modules/ngx_http_gzip_filter_module.c buf = ngx_create_temp_buf(r->pool, size); r 589 http/modules/ngx_http_gzip_filter_module.c ngx_http_gzip_filter_deflate_start(ngx_http_request_t *r, r 595 http/modules/ngx_http_gzip_filter_module.c conf = ngx_http_get_module_loc_conf(r, ngx_http_gzip_filter_module); r 597 http/modules/ngx_http_gzip_filter_module.c ctx->preallocated = ngx_palloc(r->pool, ctx->allocated); r 612 http/modules/ngx_http_gzip_filter_module.c ngx_log_error(NGX_LOG_ALERT, r->connection->log, 0, r 626 http/modules/ngx_http_gzip_filter_module.c ngx_http_gzip_filter_gzheader(ngx_http_request_t *r, ngx_http_gzip_ctx_t *ctx) r 633 http/modules/ngx_http_gzip_filter_module.c b = ngx_pcalloc(r->pool, sizeof(ngx_buf_t)); r 642 http/modules/ngx_http_gzip_filter_module.c cl = ngx_alloc_chain_link(r->pool); r 658 http/modules/ngx_http_gzip_filter_module.c ngx_http_gzip_filter_add_data(ngx_http_request_t *r, ngx_http_gzip_ctx_t *ctx) r 664 http/modules/ngx_http_gzip_filter_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 694 http/modules/ngx_http_gzip_filter_module.c ngx_log_debug3(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 720 http/modules/ngx_http_gzip_filter_module.c ngx_http_gzip_filter_get_buf(ngx_http_request_t *r, ngx_http_gzip_ctx_t *ctx) r 728 http/modules/ngx_http_gzip_filter_module.c conf = ngx_http_get_module_loc_conf(r, ngx_http_gzip_filter_module); r 736 http/modules/ngx_http_gzip_filter_module.c ctx->out_buf = ngx_create_temp_buf(r->pool, conf->bufs.size); r 758 http/modules/ngx_http_gzip_filter_module.c ngx_http_gzip_filter_deflate(ngx_http_request_t *r, ngx_http_gzip_ctx_t *ctx) r 764 http/modules/ngx_http_gzip_filter_module.c ngx_log_debug6(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 773 http/modules/ngx_http_gzip_filter_module.c ngx_log_error(NGX_LOG_ALERT, r->connection->log, 0, r 778 http/modules/ngx_http_gzip_filter_module.c ngx_log_debug5(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 784 http/modules/ngx_http_gzip_filter_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 802 http/modules/ngx_http_gzip_filter_module.c cl = ngx_alloc_chain_link(r->pool); r 825 http/modules/ngx_http_gzip_filter_module.c cl = ngx_alloc_chain_link(r->pool); r 840 http/modules/ngx_http_gzip_filter_module.c if (ngx_http_gzip_filter_deflate_end(r, ctx) != NGX_OK) { r 847 http/modules/ngx_http_gzip_filter_module.c conf = ngx_http_get_module_loc_conf(r, ngx_http_gzip_filter_module); r 851 http/modules/ngx_http_gzip_filter_module.c cl = ngx_alloc_chain_link(r->pool); r 869 http/modules/ngx_http_gzip_filter_module.c ngx_http_gzip_filter_deflate_end(ngx_http_request_t *r, r 883 http/modules/ngx_http_gzip_filter_module.c ngx_log_error(NGX_LOG_ALERT, r->connection->log, 0, r 888 http/modules/ngx_http_gzip_filter_module.c ngx_pfree(r->pool, ctx->preallocated); r 890 http/modules/ngx_http_gzip_filter_module.c cl = ngx_alloc_chain_link(r->pool); r 906 http/modules/ngx_http_gzip_filter_module.c b = ngx_create_temp_buf(r->pool, 8); r 913 http/modules/ngx_http_gzip_filter_module.c cl = ngx_alloc_chain_link(r->pool); r 950 http/modules/ngx_http_gzip_filter_module.c r->connection->buffered &= ~NGX_HTTP_GZIP_BUFFERED; r 1011 http/modules/ngx_http_gzip_filter_module.c ngx_http_gzip_filter_free_copy_buf(ngx_http_request_t *r, r 1017 http/modules/ngx_http_gzip_filter_module.c ngx_pfree(r->pool, cl->buf->start); r 1041 http/modules/ngx_http_gzip_filter_module.c ngx_http_gzip_ratio_variable(ngx_http_request_t *r, r 1051 http/modules/ngx_http_gzip_filter_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_gzip_filter_module); r 1058 http/modules/ngx_http_gzip_filter_module.c v->data = ngx_pnalloc(r->pool, NGX_INT32_LEN + 3); r 17 http/modules/ngx_http_gzip_static_module.c static ngx_int_t ngx_http_gzip_static_handler(ngx_http_request_t *r); r 69 http/modules/ngx_http_gzip_static_module.c ngx_http_gzip_static_handler(ngx_http_request_t *r) r 84 http/modules/ngx_http_gzip_static_module.c if (!(r->method & (NGX_HTTP_GET|NGX_HTTP_HEAD))) { r 88 http/modules/ngx_http_gzip_static_module.c if (r->uri.data[r->uri.len - 1] == '/') { r 92 http/modules/ngx_http_gzip_static_module.c gzcf = ngx_http_get_module_loc_conf(r, ngx_http_gzip_static_module); r 98 http/modules/ngx_http_gzip_static_module.c rc = ngx_http_gzip_ok(r); r 100 http/modules/ngx_http_gzip_static_module.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 106 http/modules/ngx_http_gzip_static_module.c log = r->connection->log; r 108 http/modules/ngx_http_gzip_static_module.c p = ngx_http_map_uri_to_path(r, &path, &root, sizeof(".gz") - 1); r 132 http/modules/ngx_http_gzip_static_module.c if (ngx_open_cached_file(clcf->open_file_cache, &path, &of, r->pool) r 163 http/modules/ngx_http_gzip_static_module.c r->gzip_vary = 1; r 187 http/modules/ngx_http_gzip_static_module.c r->root_tested = !r->error_page; r 189 http/modules/ngx_http_gzip_static_module.c rc = ngx_http_discard_request_body(r); r 197 http/modules/ngx_http_gzip_static_module.c r->headers_out.status = NGX_HTTP_OK; r 198 http/modules/ngx_http_gzip_static_module.c r->headers_out.content_length_n = of.size; r 199 http/modules/ngx_http_gzip_static_module.c r->headers_out.last_modified_time = of.mtime; r 201 http/modules/ngx_http_gzip_static_module.c if (ngx_http_set_content_type(r) != NGX_OK) { r 205 http/modules/ngx_http_gzip_static_module.c h = ngx_list_push(&r->headers_out.headers); r 213 http/modules/ngx_http_gzip_static_module.c r->headers_out.content_encoding = h; r 215 http/modules/ngx_http_gzip_static_module.c r->ignore_content_encoding = 1; r 219 http/modules/ngx_http_gzip_static_module.c b = ngx_pcalloc(r->pool, sizeof(ngx_buf_t)); r 224 http/modules/ngx_http_gzip_static_module.c b->file = ngx_pcalloc(r->pool, sizeof(ngx_file_t)); r 229 http/modules/ngx_http_gzip_static_module.c rc = ngx_http_send_header(r); r 231 http/modules/ngx_http_gzip_static_module.c if (rc == NGX_ERROR || rc > NGX_OK || r->header_only) { r 250 http/modules/ngx_http_gzip_static_module.c return ngx_http_output_filter(r, &out); r 14 http/modules/ngx_http_headers_filter_module.c typedef ngx_int_t (*ngx_http_set_header_pt)(ngx_http_request_t *r, r 49 http/modules/ngx_http_headers_filter_module.c static ngx_int_t ngx_http_set_expires(ngx_http_request_t *r, r 51 http/modules/ngx_http_headers_filter_module.c static ngx_int_t ngx_http_add_cache_control(ngx_http_request_t *r, r 53 http/modules/ngx_http_headers_filter_module.c static ngx_int_t ngx_http_set_last_modified(ngx_http_request_t *r, r 135 http/modules/ngx_http_headers_filter_module.c ngx_http_headers_filter(ngx_http_request_t *r) r 142 http/modules/ngx_http_headers_filter_module.c conf = ngx_http_get_module_loc_conf(r, ngx_http_headers_filter_module); r 145 http/modules/ngx_http_headers_filter_module.c || r != r->main r 146 http/modules/ngx_http_headers_filter_module.c || (r->headers_out.status != NGX_HTTP_OK r 147 http/modules/ngx_http_headers_filter_module.c && r->headers_out.status != NGX_HTTP_NO_CONTENT r 148 http/modules/ngx_http_headers_filter_module.c && r->headers_out.status != NGX_HTTP_MOVED_PERMANENTLY r 149 http/modules/ngx_http_headers_filter_module.c && r->headers_out.status != NGX_HTTP_MOVED_TEMPORARILY r 150 http/modules/ngx_http_headers_filter_module.c && r->headers_out.status != NGX_HTTP_NOT_MODIFIED)) r 152 http/modules/ngx_http_headers_filter_module.c return ngx_http_next_header_filter(r); r 156 http/modules/ngx_http_headers_filter_module.c if (ngx_http_set_expires(r, conf) != NGX_OK) { r 165 http/modules/ngx_http_headers_filter_module.c if (ngx_http_complex_value(r, &h[i].value, &value) != NGX_OK) { r 169 http/modules/ngx_http_headers_filter_module.c if (h[i].handler(r, &h[i], &value) != NGX_OK) { r 175 http/modules/ngx_http_headers_filter_module.c return ngx_http_next_header_filter(r); r 180 http/modules/ngx_http_headers_filter_module.c ngx_http_set_expires(ngx_http_request_t *r, ngx_http_headers_conf_t *conf) r 187 http/modules/ngx_http_headers_filter_module.c expires = r->headers_out.expires; r 191 http/modules/ngx_http_headers_filter_module.c expires = ngx_list_push(&r->headers_out.headers); r 196 http/modules/ngx_http_headers_filter_module.c r->headers_out.expires = expires; r 205 http/modules/ngx_http_headers_filter_module.c ccp = r->headers_out.cache_control.elts; r 209 http/modules/ngx_http_headers_filter_module.c if (ngx_array_init(&r->headers_out.cache_control, r->pool, r 216 http/modules/ngx_http_headers_filter_module.c ccp = ngx_array_push(&r->headers_out.cache_control); r 221 http/modules/ngx_http_headers_filter_module.c cc = ngx_list_push(&r->headers_out.headers); r 231 http/modules/ngx_http_headers_filter_module.c for (i = 1; i < r->headers_out.cache_control.nelts; i++) { r 251 http/modules/ngx_http_headers_filter_module.c expires->value.data = ngx_pnalloc(r->pool, len); r 266 http/modules/ngx_http_headers_filter_module.c || r->headers_out.last_modified_time == -1) r 276 http/modules/ngx_http_headers_filter_module.c expires_time = r->headers_out.last_modified_time + conf->expires_time; r 287 http/modules/ngx_http_headers_filter_module.c cc->value.data = ngx_pnalloc(r->pool, r 301 http/modules/ngx_http_headers_filter_module.c ngx_http_add_header(ngx_http_request_t *r, ngx_http_header_val_t *hv, r 307 http/modules/ngx_http_headers_filter_module.c h = ngx_list_push(&r->headers_out.headers); r 322 http/modules/ngx_http_headers_filter_module.c ngx_http_add_cache_control(ngx_http_request_t *r, ngx_http_header_val_t *hv, r 327 http/modules/ngx_http_headers_filter_module.c ccp = r->headers_out.cache_control.elts; r 331 http/modules/ngx_http_headers_filter_module.c if (ngx_array_init(&r->headers_out.cache_control, r->pool, r 339 http/modules/ngx_http_headers_filter_module.c ccp = ngx_array_push(&r->headers_out.cache_control); r 344 http/modules/ngx_http_headers_filter_module.c cc = ngx_list_push(&r->headers_out.headers); r 360 http/modules/ngx_http_headers_filter_module.c ngx_http_set_last_modified(ngx_http_request_t *r, ngx_http_header_val_t *hv, r 366 http/modules/ngx_http_headers_filter_module.c old = (ngx_table_elt_t **) ((char *) &r->headers_out + hv->offset); r 372 http/modules/ngx_http_headers_filter_module.c r->headers_out.last_modified_time = -1; r 380 http/modules/ngx_http_headers_filter_module.c h = ngx_list_push(&r->headers_out.headers); r 74 http/modules/ngx_http_image_filter_module.c static ngx_int_t ngx_http_image_send(ngx_http_request_t *r, r 76 http/modules/ngx_http_image_filter_module.c static ngx_uint_t ngx_http_image_test(ngx_http_request_t *r, ngx_chain_t *in); r 77 http/modules/ngx_http_image_filter_module.c static ngx_int_t ngx_http_image_read(ngx_http_request_t *r, ngx_chain_t *in); r 78 http/modules/ngx_http_image_filter_module.c static ngx_buf_t *ngx_http_image_process(ngx_http_request_t *r); r 79 http/modules/ngx_http_image_filter_module.c static ngx_buf_t *ngx_http_image_json(ngx_http_request_t *r, r 81 http/modules/ngx_http_image_filter_module.c static ngx_buf_t *ngx_http_image_asis(ngx_http_request_t *r, r 83 http/modules/ngx_http_image_filter_module.c static void ngx_http_image_length(ngx_http_request_t *r, ngx_buf_t *b); r 84 http/modules/ngx_http_image_filter_module.c static ngx_int_t ngx_http_image_size(ngx_http_request_t *r, r 87 http/modules/ngx_http_image_filter_module.c static ngx_buf_t *ngx_http_image_resize(ngx_http_request_t *r, r 89 http/modules/ngx_http_image_filter_module.c static gdImagePtr ngx_http_image_source(ngx_http_request_t *r, r 91 http/modules/ngx_http_image_filter_module.c static gdImagePtr ngx_http_image_new(ngx_http_request_t *r, int w, int h, r 93 http/modules/ngx_http_image_filter_module.c static u_char *ngx_http_image_out(ngx_http_request_t *r, ngx_uint_t type, r 96 http/modules/ngx_http_image_filter_module.c static ngx_uint_t ngx_http_image_filter_get_value(ngx_http_request_t *r, r 188 http/modules/ngx_http_image_filter_module.c ngx_http_image_header_filter(ngx_http_request_t *r) r 194 http/modules/ngx_http_image_filter_module.c if (r->headers_out.status == NGX_HTTP_NOT_MODIFIED) { r 195 http/modules/ngx_http_image_filter_module.c return ngx_http_next_header_filter(r); r 198 http/modules/ngx_http_image_filter_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_image_filter_module); r 201 http/modules/ngx_http_image_filter_module.c ngx_http_set_ctx(r, NULL, ngx_http_image_filter_module); r 202 http/modules/ngx_http_image_filter_module.c return ngx_http_next_header_filter(r); r 205 http/modules/ngx_http_image_filter_module.c conf = ngx_http_get_module_loc_conf(r, ngx_http_image_filter_module); r 208 http/modules/ngx_http_image_filter_module.c return ngx_http_next_header_filter(r); r 211 http/modules/ngx_http_image_filter_module.c if (r->headers_out.content_type.len r 213 http/modules/ngx_http_image_filter_module.c && ngx_strncasecmp(r->headers_out.content_type.data, r 218 http/modules/ngx_http_image_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 224 http/modules/ngx_http_image_filter_module.c ctx = ngx_pcalloc(r->pool, sizeof(ngx_http_image_filter_ctx_t)); r 229 http/modules/ngx_http_image_filter_module.c ngx_http_set_ctx(r, ctx, ngx_http_image_filter_module); r 231 http/modules/ngx_http_image_filter_module.c len = r->headers_out.content_length_n; r 234 http/modules/ngx_http_image_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 247 http/modules/ngx_http_image_filter_module.c if (r->headers_out.refresh) { r 248 http/modules/ngx_http_image_filter_module.c r->headers_out.refresh->hash = 0; r 251 http/modules/ngx_http_image_filter_module.c r->main_filter_need_in_memory = 1; r 252 http/modules/ngx_http_image_filter_module.c r->allow_ranges = 0; r 259 http/modules/ngx_http_image_filter_module.c ngx_http_image_body_filter(ngx_http_request_t *r, ngx_chain_t *in) r 267 http/modules/ngx_http_image_filter_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, "image filter"); r 270 http/modules/ngx_http_image_filter_module.c return ngx_http_next_body_filter(r, in); r 273 http/modules/ngx_http_image_filter_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_image_filter_module); r 276 http/modules/ngx_http_image_filter_module.c return ngx_http_next_body_filter(r, in); r 283 http/modules/ngx_http_image_filter_module.c ctx->type = ngx_http_image_test(r, in); r 285 http/modules/ngx_http_image_filter_module.c conf = ngx_http_get_module_loc_conf(r, ngx_http_image_filter_module); r 290 http/modules/ngx_http_image_filter_module.c out.buf = ngx_http_image_json(r, NULL); r 296 http/modules/ngx_http_image_filter_module.c return ngx_http_image_send(r, ctx, &out); r 300 http/modules/ngx_http_image_filter_module.c return ngx_http_filter_finalize_request(r, r 308 http/modules/ngx_http_image_filter_module.c r->headers_out.content_type_len = ct->len; r 309 http/modules/ngx_http_image_filter_module.c r->headers_out.content_type = *ct; r 310 http/modules/ngx_http_image_filter_module.c r->headers_out.content_type_lowcase = NULL; r 315 http/modules/ngx_http_image_filter_module.c return ngx_http_image_send(r, ctx, in); r 324 http/modules/ngx_http_image_filter_module.c rc = ngx_http_image_read(r, in); r 331 http/modules/ngx_http_image_filter_module.c return ngx_http_filter_finalize_request(r, r 340 http/modules/ngx_http_image_filter_module.c out.buf = ngx_http_image_process(r); r 343 http/modules/ngx_http_image_filter_module.c return ngx_http_filter_finalize_request(r, r 351 http/modules/ngx_http_image_filter_module.c return ngx_http_image_send(r, ctx, &out); r 355 http/modules/ngx_http_image_filter_module.c return ngx_http_next_body_filter(r, in); r 359 http/modules/ngx_http_image_filter_module.c rc = ngx_http_next_body_filter(r, NULL); r 368 http/modules/ngx_http_image_filter_module.c ngx_http_image_send(ngx_http_request_t *r, ngx_http_image_filter_ctx_t *ctx, r 373 http/modules/ngx_http_image_filter_module.c rc = ngx_http_next_header_filter(r); r 375 http/modules/ngx_http_image_filter_module.c if (rc == NGX_ERROR || rc > NGX_OK || r->header_only) { r 379 http/modules/ngx_http_image_filter_module.c rc = ngx_http_next_body_filter(r, in); r 391 http/modules/ngx_http_image_filter_module.c ngx_http_image_test(ngx_http_request_t *r, ngx_chain_t *in) r 401 http/modules/ngx_http_image_filter_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 431 http/modules/ngx_http_image_filter_module.c ngx_http_image_read(ngx_http_request_t *r, ngx_chain_t *in) r 439 http/modules/ngx_http_image_filter_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_image_filter_module); r 442 http/modules/ngx_http_image_filter_module.c ctx->image = ngx_palloc(r->pool, ctx->length); r 457 http/modules/ngx_http_image_filter_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 473 http/modules/ngx_http_image_filter_module.c r->connection->buffered |= NGX_HTTP_IMAGE_BUFFERED; r 480 http/modules/ngx_http_image_filter_module.c ngx_http_image_process(ngx_http_request_t *r) r 486 http/modules/ngx_http_image_filter_module.c r->connection->buffered &= ~NGX_HTTP_IMAGE_BUFFERED; r 488 http/modules/ngx_http_image_filter_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_image_filter_module); r 490 http/modules/ngx_http_image_filter_module.c rc = ngx_http_image_size(r, ctx); r 492 http/modules/ngx_http_image_filter_module.c conf = ngx_http_get_module_loc_conf(r, ngx_http_image_filter_module); r 495 http/modules/ngx_http_image_filter_module.c return ngx_http_image_json(r, rc == NGX_OK ? ctx : NULL); r 498 http/modules/ngx_http_image_filter_module.c ctx->angle = ngx_http_image_filter_get_value(r, conf->acv, conf->angle); r 506 http/modules/ngx_http_image_filter_module.c return ngx_http_image_resize(r, ctx); r 509 http/modules/ngx_http_image_filter_module.c ctx->max_width = ngx_http_image_filter_get_value(r, conf->wcv, conf->width); r 514 http/modules/ngx_http_image_filter_module.c ctx->max_height = ngx_http_image_filter_get_value(r, conf->hcv, r 526 http/modules/ngx_http_image_filter_module.c return ngx_http_image_asis(r, ctx); r 529 http/modules/ngx_http_image_filter_module.c return ngx_http_image_resize(r, ctx); r 534 http/modules/ngx_http_image_filter_module.c ngx_http_image_json(ngx_http_request_t *r, ngx_http_image_filter_ctx_t *ctx) r 539 http/modules/ngx_http_image_filter_module.c b = ngx_pcalloc(r->pool, sizeof(ngx_buf_t)); r 547 http/modules/ngx_http_image_filter_module.c ngx_http_clean_header(r); r 549 http/modules/ngx_http_image_filter_module.c r->headers_out.status = NGX_HTTP_OK; r 550 http/modules/ngx_http_image_filter_module.c ngx_str_set(&r->headers_out.content_type, "text/plain"); r 551 http/modules/ngx_http_image_filter_module.c r->headers_out.content_type_lowcase = NULL; r 557 http/modules/ngx_http_image_filter_module.c ngx_http_image_length(r, b); r 566 http/modules/ngx_http_image_filter_module.c b->pos = ngx_pnalloc(r->pool, len); r 579 http/modules/ngx_http_image_filter_module.c ngx_http_image_length(r, b); r 586 http/modules/ngx_http_image_filter_module.c ngx_http_image_asis(ngx_http_request_t *r, ngx_http_image_filter_ctx_t *ctx) r 590 http/modules/ngx_http_image_filter_module.c b = ngx_pcalloc(r->pool, sizeof(ngx_buf_t)); r 600 http/modules/ngx_http_image_filter_module.c ngx_http_image_length(r, b); r 607 http/modules/ngx_http_image_filter_module.c ngx_http_image_length(ngx_http_request_t *r, ngx_buf_t *b) r 609 http/modules/ngx_http_image_filter_module.c r->headers_out.content_length_n = b->last - b->pos; r 611 http/modules/ngx_http_image_filter_module.c if (r->headers_out.content_length) { r 612 http/modules/ngx_http_image_filter_module.c r->headers_out.content_length->hash = 0; r 615 http/modules/ngx_http_image_filter_module.c r->headers_out.content_length = NULL; r 620 http/modules/ngx_http_image_filter_module.c ngx_http_image_size(ngx_http_request_t *r, ngx_http_image_filter_ctx_t *ctx) r 642 http/modules/ngx_http_image_filter_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 655 http/modules/ngx_http_image_filter_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 680 http/modules/ngx_http_image_filter_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 713 http/modules/ngx_http_image_filter_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 724 http/modules/ngx_http_image_filter_module.c ngx_http_image_resize(ngx_http_request_t *r, ngx_http_image_filter_ctx_t *ctx) r 736 http/modules/ngx_http_image_filter_module.c src = ngx_http_image_source(r, ctx); r 745 http/modules/ngx_http_image_filter_module.c conf = ngx_http_get_module_loc_conf(r, ngx_http_image_filter_module); r 753 http/modules/ngx_http_image_filter_module.c return ngx_http_image_asis(r, ctx); r 829 http/modules/ngx_http_image_filter_module.c dst = ngx_http_image_new(r, dx, dy, palette); r 859 http/modules/ngx_http_image_filter_module.c dst = ngx_http_image_new(r, dy, dx, palette); r 873 http/modules/ngx_http_image_filter_module.c dst = ngx_http_image_new(r, dx, dy, palette); r 904 http/modules/ngx_http_image_filter_module.c dst = ngx_http_image_new(r, dx - ox, dy - oy, colors); r 914 http/modules/ngx_http_image_filter_module.c ngx_log_debug4(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 937 http/modules/ngx_http_image_filter_module.c out = ngx_http_image_out(r, ctx->type, dst, &size); r 939 http/modules/ngx_http_image_filter_module.c ngx_log_debug3(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 943 http/modules/ngx_http_image_filter_module.c ngx_pfree(r->pool, ctx->image); r 949 http/modules/ngx_http_image_filter_module.c cln = ngx_pool_cleanup_add(r->pool, 0); r 955 http/modules/ngx_http_image_filter_module.c b = ngx_pcalloc(r->pool, sizeof(ngx_buf_t)); r 969 http/modules/ngx_http_image_filter_module.c ngx_http_image_length(r, b); r 976 http/modules/ngx_http_image_filter_module.c ngx_http_image_source(ngx_http_request_t *r, ngx_http_image_filter_ctx_t *ctx) r 1006 http/modules/ngx_http_image_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, failed); r 1014 http/modules/ngx_http_image_filter_module.c ngx_http_image_new(ngx_http_request_t *r, int w, int h, int colors) r 1022 http/modules/ngx_http_image_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1031 http/modules/ngx_http_image_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1042 http/modules/ngx_http_image_filter_module.c ngx_http_image_out(ngx_http_request_t *r, ngx_uint_t type, gdImagePtr img, r 1055 http/modules/ngx_http_image_filter_module.c conf = ngx_http_get_module_loc_conf(r, ngx_http_image_filter_module); r 1057 http/modules/ngx_http_image_filter_module.c jq = ngx_http_image_filter_get_value(r, conf->jqcv, conf->jpeg_quality); r 1082 http/modules/ngx_http_image_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, failed); r 1097 http/modules/ngx_http_image_filter_module.c ngx_http_image_filter_get_value(ngx_http_request_t *r, r 1106 http/modules/ngx_http_image_filter_module.c if (ngx_http_complex_value(r, cv, &val) != NGX_OK) { r 28 http/modules/ngx_http_index_module.c static ngx_int_t ngx_http_index_test_dir(ngx_http_request_t *r, r 30 http/modules/ngx_http_index_module.c static ngx_int_t ngx_http_index_error(ngx_http_request_t *r, r 96 http/modules/ngx_http_index_module.c ngx_http_index_handler(ngx_http_request_t *r) r 111 http/modules/ngx_http_index_module.c if (r->uri.data[r->uri.len - 1] != '/') { r 115 http/modules/ngx_http_index_module.c if (!(r->method & (NGX_HTTP_GET|NGX_HTTP_HEAD|NGX_HTTP_POST))) { r 119 http/modules/ngx_http_index_module.c ilcf = ngx_http_get_module_loc_conf(r, ngx_http_index_module); r 120 http/modules/ngx_http_index_module.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 135 http/modules/ngx_http_index_module.c return ngx_http_internal_redirect(r, &index[i].name, &r->args); r 145 http/modules/ngx_http_index_module.c e.request = r; r 163 http/modules/ngx_http_index_module.c name = ngx_http_map_uri_to_path(r, &path, &root, reserve); r 191 http/modules/ngx_http_index_module.c return ngx_http_internal_redirect(r, &uri, &r->args); r 199 http/modules/ngx_http_index_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 212 http/modules/ngx_http_index_module.c if (ngx_open_cached_file(clcf->open_file_cache, &path, &of, r->pool) r 215 http/modules/ngx_http_index_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, of.err, r 226 http/modules/ngx_http_index_module.c return ngx_http_index_error(r, clcf, path.data, of.err); r 230 http/modules/ngx_http_index_module.c rc = ngx_http_index_test_dir(r, clcf, path.data, name - 1); r 243 http/modules/ngx_http_index_module.c ngx_log_error(NGX_LOG_CRIT, r->connection->log, of.err, r 249 http/modules/ngx_http_index_module.c uri.len = r->uri.len + len - 1; r 255 http/modules/ngx_http_index_module.c uri.data = ngx_pnalloc(r->pool, uri.len); r 260 http/modules/ngx_http_index_module.c p = ngx_copy(uri.data, r->uri.data, r->uri.len); r 264 http/modules/ngx_http_index_module.c return ngx_http_internal_redirect(r, &uri, &r->args); r 272 http/modules/ngx_http_index_module.c ngx_http_index_test_dir(ngx_http_request_t *r, ngx_http_core_loc_conf_t *clcf, r 289 http/modules/ngx_http_index_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 299 http/modules/ngx_http_index_module.c if (ngx_open_cached_file(clcf->open_file_cache, &dir, &of, r->pool) r 306 http/modules/ngx_http_index_module.c return ngx_http_index_error(r, clcf, dir.data, NGX_ENOENT); r 322 http/modules/ngx_http_index_module.c ngx_log_error(NGX_LOG_CRIT, r->connection->log, of.err, r 335 http/modules/ngx_http_index_module.c ngx_log_error(NGX_LOG_ALERT, r->connection->log, 0, r 343 http/modules/ngx_http_index_module.c ngx_http_index_error(ngx_http_request_t *r, ngx_http_core_loc_conf_t *clcf, r 347 http/modules/ngx_http_index_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, err, r 354 http/modules/ngx_http_index_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, err, r 52 http/modules/ngx_http_limit_req_module.c static void ngx_http_limit_req_delay(ngx_http_request_t *r); r 136 http/modules/ngx_http_limit_req_module.c ngx_http_limit_req_handler(ngx_http_request_t *r) r 149 http/modules/ngx_http_limit_req_module.c if (r->main->limit_req_set) { r 153 http/modules/ngx_http_limit_req_module.c lrcf = ngx_http_get_module_loc_conf(r, ngx_http_limit_req_module); r 161 http/modules/ngx_http_limit_req_module.c vv = ngx_http_get_indexed_variable(r, ctx->index); r 174 http/modules/ngx_http_limit_req_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 181 http/modules/ngx_http_limit_req_module.c r->main->limit_req_set = 1; r 191 http/modules/ngx_http_limit_req_module.c ngx_log_debug3(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 239 http/modules/ngx_http_limit_req_module.c ngx_log_error(lrcf->limit_log_level, r->connection->log, 0, r 252 http/modules/ngx_http_limit_req_module.c ngx_log_error(lrcf->delay_log_level, r->connection->log, 0, r 256 http/modules/ngx_http_limit_req_module.c if (ngx_handle_read_event(r->connection->read, 0) != NGX_OK) { r 260 http/modules/ngx_http_limit_req_module.c r->read_event_handler = ngx_http_test_reading; r 261 http/modules/ngx_http_limit_req_module.c r->write_event_handler = ngx_http_limit_req_delay; r 262 http/modules/ngx_http_limit_req_module.c ngx_add_timer(r->connection->write, r 270 http/modules/ngx_http_limit_req_module.c ngx_http_limit_req_delay(ngx_http_request_t *r) r 274 http/modules/ngx_http_limit_req_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 277 http/modules/ngx_http_limit_req_module.c wev = r->connection->write; r 282 http/modules/ngx_http_limit_req_module.c ngx_http_finalize_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 290 http/modules/ngx_http_limit_req_module.c if (ngx_handle_read_event(r->connection->read, 0) != NGX_OK) { r 291 http/modules/ngx_http_limit_req_module.c ngx_http_finalize_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 295 http/modules/ngx_http_limit_req_module.c r->read_event_handler = ngx_http_block_reading; r 296 http/modules/ngx_http_limit_req_module.c r->write_event_handler = ngx_http_core_run_phases; r 298 http/modules/ngx_http_limit_req_module.c ngx_http_core_run_phases(r); r 120 http/modules/ngx_http_limit_zone_module.c ngx_http_limit_zone_handler(ngx_http_request_t *r) r 134 http/modules/ngx_http_limit_zone_module.c if (r->main->limit_zone_set) { r 138 http/modules/ngx_http_limit_zone_module.c lzcf = ngx_http_get_module_loc_conf(r, ngx_http_limit_zone_module); r 146 http/modules/ngx_http_limit_zone_module.c vv = ngx_http_get_indexed_variable(r, ctx->index); r 159 http/modules/ngx_http_limit_zone_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 166 http/modules/ngx_http_limit_zone_module.c r->main->limit_zone_set = 1; r 170 http/modules/ngx_http_limit_zone_module.c cln = ngx_pool_cleanup_add(r->pool, sizeof(ngx_http_limit_zone_cleanup_t)); r 209 http/modules/ngx_http_limit_zone_module.c ngx_log_error(lzcf->log_level, r->connection->log, 0, r 244 http/modules/ngx_http_limit_zone_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 14 http/modules/ngx_http_log_module.c typedef u_char *(*ngx_http_log_op_run_pt) (ngx_http_request_t *r, u_char *buf, r 17 http/modules/ngx_http_log_module.c typedef size_t (*ngx_http_log_op_getlen_pt) (ngx_http_request_t *r, r 75 http/modules/ngx_http_log_module.c static void ngx_http_log_write(ngx_http_request_t *r, ngx_http_log_t *log, r 77 http/modules/ngx_http_log_module.c static ssize_t ngx_http_log_script_write(ngx_http_request_t *r, r 80 http/modules/ngx_http_log_module.c static u_char *ngx_http_log_connection(ngx_http_request_t *r, u_char *buf, r 82 http/modules/ngx_http_log_module.c static u_char *ngx_http_log_pipe(ngx_http_request_t *r, u_char *buf, r 84 http/modules/ngx_http_log_module.c static u_char *ngx_http_log_time(ngx_http_request_t *r, u_char *buf, r 86 http/modules/ngx_http_log_module.c static u_char *ngx_http_log_iso8601(ngx_http_request_t *r, u_char *buf, r 88 http/modules/ngx_http_log_module.c static u_char *ngx_http_log_msec(ngx_http_request_t *r, u_char *buf, r 90 http/modules/ngx_http_log_module.c static u_char *ngx_http_log_request_time(ngx_http_request_t *r, u_char *buf, r 92 http/modules/ngx_http_log_module.c static u_char *ngx_http_log_status(ngx_http_request_t *r, u_char *buf, r 94 http/modules/ngx_http_log_module.c static u_char *ngx_http_log_bytes_sent(ngx_http_request_t *r, u_char *buf, r 96 http/modules/ngx_http_log_module.c static u_char *ngx_http_log_body_bytes_sent(ngx_http_request_t *r, r 98 http/modules/ngx_http_log_module.c static u_char *ngx_http_log_request_length(ngx_http_request_t *r, u_char *buf, r 103 http/modules/ngx_http_log_module.c static size_t ngx_http_log_variable_getlen(ngx_http_request_t *r, r 105 http/modules/ngx_http_log_module.c static u_char *ngx_http_log_variable(ngx_http_request_t *r, u_char *buf, r 217 http/modules/ngx_http_log_module.c ngx_http_log_handler(ngx_http_request_t *r) r 227 http/modules/ngx_http_log_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 230 http/modules/ngx_http_log_module.c lcf = ngx_http_get_module_loc_conf(r, ngx_http_log_module); r 250 http/modules/ngx_http_log_module.c ngx_http_script_flush_no_cacheable_variables(r, log[l].format->flushes); r 256 http/modules/ngx_http_log_module.c len += op[i].getlen(r, op[i].data); r 271 http/modules/ngx_http_log_module.c ngx_http_log_write(r, &log[l], file->buffer, r 282 http/modules/ngx_http_log_module.c p = op[i].run(r, p, &op[i]); r 293 http/modules/ngx_http_log_module.c line = ngx_pnalloc(r->pool, len); r 301 http/modules/ngx_http_log_module.c p = op[i].run(r, p, &op[i]); r 306 http/modules/ngx_http_log_module.c ngx_http_log_write(r, &log[l], line, p - line); r 314 http/modules/ngx_http_log_module.c ngx_http_log_write(ngx_http_request_t *r, ngx_http_log_t *log, u_char *buf, r 328 http/modules/ngx_http_log_module.c n = ngx_http_log_script_write(r, log->script, &name, buf, len); r 345 http/modules/ngx_http_log_module.c ngx_log_error(NGX_LOG_ALERT, r->connection->log, err, r 355 http/modules/ngx_http_log_module.c ngx_log_error(NGX_LOG_ALERT, r->connection->log, 0, r 365 http/modules/ngx_http_log_module.c ngx_http_log_script_write(ngx_http_request_t *r, ngx_http_log_script_t *script, r 375 http/modules/ngx_http_log_module.c if (!r->root_tested) { r 379 http/modules/ngx_http_log_module.c if (ngx_http_map_uri_to_path(r, &path, &root, 0) == NULL) { r 386 http/modules/ngx_http_log_module.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 397 http/modules/ngx_http_log_module.c if (ngx_open_cached_file(clcf->open_file_cache, &path, &of, r->pool) r 405 http/modules/ngx_http_log_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, of.err, r 413 http/modules/ngx_http_log_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, NGX_ENOTDIR, r 421 http/modules/ngx_http_log_module.c if (ngx_http_script_run(r, &log, script->lengths->elts, 1, r 432 http/modules/ngx_http_log_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 435 http/modules/ngx_http_log_module.c llcf = ngx_http_get_module_loc_conf(r, ngx_http_log_module); r 444 http/modules/ngx_http_log_module.c if (ngx_open_cached_file(llcf->open_file_cache, &log, &of, r->pool) r 447 http/modules/ngx_http_log_module.c ngx_log_error(NGX_LOG_CRIT, r->connection->log, ngx_errno, r 453 http/modules/ngx_http_log_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 463 http/modules/ngx_http_log_module.c ngx_http_log_copy_short(ngx_http_request_t *r, u_char *buf, r 482 http/modules/ngx_http_log_module.c ngx_http_log_copy_long(ngx_http_request_t *r, u_char *buf, r 490 http/modules/ngx_http_log_module.c ngx_http_log_connection(ngx_http_request_t *r, u_char *buf, r 493 http/modules/ngx_http_log_module.c return ngx_sprintf(buf, "%ui", r->connection->number); r 498 http/modules/ngx_http_log_module.c ngx_http_log_pipe(ngx_http_request_t *r, u_char *buf, ngx_http_log_op_t *op) r 500 http/modules/ngx_http_log_module.c if (r->pipeline) { r 511 http/modules/ngx_http_log_module.c ngx_http_log_time(ngx_http_request_t *r, u_char *buf, ngx_http_log_op_t *op) r 518 http/modules/ngx_http_log_module.c ngx_http_log_iso8601(ngx_http_request_t *r, u_char *buf, ngx_http_log_op_t *op) r 525 http/modules/ngx_http_log_module.c ngx_http_log_msec(ngx_http_request_t *r, u_char *buf, ngx_http_log_op_t *op) r 536 http/modules/ngx_http_log_module.c ngx_http_log_request_time(ngx_http_request_t *r, u_char *buf, r 545 http/modules/ngx_http_log_module.c ((tp->sec - r->start_sec) * 1000 + (tp->msec - r->start_msec)); r 553 http/modules/ngx_http_log_module.c ngx_http_log_status(ngx_http_request_t *r, u_char *buf, ngx_http_log_op_t *op) r 557 http/modules/ngx_http_log_module.c if (r->err_status) { r 558 http/modules/ngx_http_log_module.c status = r->err_status; r 560 http/modules/ngx_http_log_module.c } else if (r->headers_out.status) { r 561 http/modules/ngx_http_log_module.c status = r->headers_out.status; r 563 http/modules/ngx_http_log_module.c } else if (r->http_version == NGX_HTTP_VERSION_9) { r 578 http/modules/ngx_http_log_module.c ngx_http_log_bytes_sent(ngx_http_request_t *r, u_char *buf, r 581 http/modules/ngx_http_log_module.c return ngx_sprintf(buf, "%O", r->connection->sent); r 591 http/modules/ngx_http_log_module.c ngx_http_log_body_bytes_sent(ngx_http_request_t *r, u_char *buf, r 596 http/modules/ngx_http_log_module.c length = r->connection->sent - r->header_size; r 609 http/modules/ngx_http_log_module.c ngx_http_log_request_length(ngx_http_request_t *r, u_char *buf, r 612 http/modules/ngx_http_log_module.c return ngx_sprintf(buf, "%O", r->request_length); r 637 http/modules/ngx_http_log_module.c ngx_http_log_variable_getlen(ngx_http_request_t *r, uintptr_t data) r 642 http/modules/ngx_http_log_module.c value = ngx_http_get_indexed_variable(r, data); r 657 http/modules/ngx_http_log_module.c ngx_http_log_variable(ngx_http_request_t *r, u_char *buf, ngx_http_log_op_t *op) r 661 http/modules/ngx_http_log_module.c value = ngx_http_get_indexed_variable(r, op->data); r 107 http/modules/ngx_http_map_module.c ngx_http_map_variable(ngx_http_request_t *r, ngx_http_variable_value_t *v, r 117 http/modules/ngx_http_map_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 120 http/modules/ngx_http_map_module.c if (ngx_http_complex_value(r, &map->value, &val) != NGX_OK) { r 132 http/modules/ngx_http_map_module.c value = ngx_http_map_find(r, &map->map, key, val.data, len, &val); r 139 http/modules/ngx_http_map_module.c value = ngx_http_get_flushed_variable(r, (ngx_uint_t) value->data); r 148 http/modules/ngx_http_map_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 25 http/modules/ngx_http_memcached_module.c static ngx_int_t ngx_http_memcached_create_request(ngx_http_request_t *r); r 26 http/modules/ngx_http_memcached_module.c static ngx_int_t ngx_http_memcached_reinit_request(ngx_http_request_t *r); r 27 http/modules/ngx_http_memcached_module.c static ngx_int_t ngx_http_memcached_process_header(ngx_http_request_t *r); r 30 http/modules/ngx_http_memcached_module.c static void ngx_http_memcached_abort_request(ngx_http_request_t *r); r 31 http/modules/ngx_http_memcached_module.c static void ngx_http_memcached_finalize_request(ngx_http_request_t *r, r 146 http/modules/ngx_http_memcached_module.c ngx_http_memcached_handler(ngx_http_request_t *r) r 153 http/modules/ngx_http_memcached_module.c if (!(r->method & (NGX_HTTP_GET|NGX_HTTP_HEAD))) { r 157 http/modules/ngx_http_memcached_module.c rc = ngx_http_discard_request_body(r); r 163 http/modules/ngx_http_memcached_module.c if (ngx_http_set_content_type(r) != NGX_OK) { r 167 http/modules/ngx_http_memcached_module.c if (ngx_http_upstream_create(r) != NGX_OK) { r 171 http/modules/ngx_http_memcached_module.c u = r->upstream; r 176 http/modules/ngx_http_memcached_module.c mlcf = ngx_http_get_module_loc_conf(r, ngx_http_memcached_module); r 186 http/modules/ngx_http_memcached_module.c ctx = ngx_palloc(r->pool, sizeof(ngx_http_memcached_ctx_t)); r 192 http/modules/ngx_http_memcached_module.c ctx->request = r; r 194 http/modules/ngx_http_memcached_module.c ngx_http_set_ctx(r, ctx, ngx_http_memcached_module); r 200 http/modules/ngx_http_memcached_module.c r->main->count++; r 202 http/modules/ngx_http_memcached_module.c ngx_http_upstream_init(r); r 209 http/modules/ngx_http_memcached_module.c ngx_http_memcached_create_request(ngx_http_request_t *r) r 219 http/modules/ngx_http_memcached_module.c mlcf = ngx_http_get_module_loc_conf(r, ngx_http_memcached_module); r 221 http/modules/ngx_http_memcached_module.c vv = ngx_http_get_indexed_variable(r, mlcf->index); r 224 http/modules/ngx_http_memcached_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 233 http/modules/ngx_http_memcached_module.c b = ngx_create_temp_buf(r->pool, len); r 238 http/modules/ngx_http_memcached_module.c cl = ngx_alloc_chain_link(r->pool); r 246 http/modules/ngx_http_memcached_module.c r->upstream->request_bufs = cl; r 250 http/modules/ngx_http_memcached_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_memcached_module); r 264 http/modules/ngx_http_memcached_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 274 http/modules/ngx_http_memcached_module.c ngx_http_memcached_reinit_request(ngx_http_request_t *r) r 281 http/modules/ngx_http_memcached_module.c ngx_http_memcached_process_header(ngx_http_request_t *r) r 288 http/modules/ngx_http_memcached_module.c u = r->upstream; r 305 http/modules/ngx_http_memcached_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 310 http/modules/ngx_http_memcached_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_memcached_module); r 317 http/modules/ngx_http_memcached_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 347 http/modules/ngx_http_memcached_module.c r->headers_out.content_length_n = ngx_atoof(len, p - len - 1); r 348 http/modules/ngx_http_memcached_module.c if (r->headers_out.content_length_n == -1) { r 349 http/modules/ngx_http_memcached_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 364 http/modules/ngx_http_memcached_module.c ngx_log_error(NGX_LOG_INFO, r->connection->log, 0, r 375 http/modules/ngx_http_memcached_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 478 http/modules/ngx_http_memcached_module.c ngx_http_memcached_abort_request(ngx_http_request_t *r) r 480 http/modules/ngx_http_memcached_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 487 http/modules/ngx_http_memcached_module.c ngx_http_memcached_finalize_request(ngx_http_request_t *r, ngx_int_t rc) r 489 http/modules/ngx_http_memcached_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 12 http/modules/ngx_http_not_modified_filter_module.c static ngx_int_t ngx_http_test_precondition(ngx_http_request_t *r); r 13 http/modules/ngx_http_not_modified_filter_module.c static ngx_int_t ngx_http_test_not_modified(ngx_http_request_t *r); r 52 http/modules/ngx_http_not_modified_filter_module.c ngx_http_not_modified_header_filter(ngx_http_request_t *r) r 54 http/modules/ngx_http_not_modified_filter_module.c if (r->headers_out.status != NGX_HTTP_OK r 55 http/modules/ngx_http_not_modified_filter_module.c || r != r->main r 56 http/modules/ngx_http_not_modified_filter_module.c || r->headers_out.last_modified_time == -1) r 58 http/modules/ngx_http_not_modified_filter_module.c return ngx_http_next_header_filter(r); r 61 http/modules/ngx_http_not_modified_filter_module.c if (r->headers_in.if_unmodified_since) { r 62 http/modules/ngx_http_not_modified_filter_module.c return ngx_http_test_precondition(r); r 65 http/modules/ngx_http_not_modified_filter_module.c if (r->headers_in.if_modified_since) { r 66 http/modules/ngx_http_not_modified_filter_module.c return ngx_http_test_not_modified(r); r 69 http/modules/ngx_http_not_modified_filter_module.c return ngx_http_next_header_filter(r); r 74 http/modules/ngx_http_not_modified_filter_module.c ngx_http_test_precondition(ngx_http_request_t *r) r 78 http/modules/ngx_http_not_modified_filter_module.c iums = ngx_http_parse_time(r->headers_in.if_unmodified_since->value.data, r 79 http/modules/ngx_http_not_modified_filter_module.c r->headers_in.if_unmodified_since->value.len); r 81 http/modules/ngx_http_not_modified_filter_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 82 http/modules/ngx_http_not_modified_filter_module.c "http iums:%d lm:%d", iums, r->headers_out.last_modified_time); r 84 http/modules/ngx_http_not_modified_filter_module.c if (iums >= r->headers_out.last_modified_time) { r 85 http/modules/ngx_http_not_modified_filter_module.c return ngx_http_next_header_filter(r); r 88 http/modules/ngx_http_not_modified_filter_module.c return ngx_http_filter_finalize_request(r, NULL, r 94 http/modules/ngx_http_not_modified_filter_module.c ngx_http_test_not_modified(ngx_http_request_t *r) r 99 http/modules/ngx_http_not_modified_filter_module.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 102 http/modules/ngx_http_not_modified_filter_module.c return ngx_http_next_header_filter(r); r 105 http/modules/ngx_http_not_modified_filter_module.c ims = ngx_http_parse_time(r->headers_in.if_modified_since->value.data, r 106 http/modules/ngx_http_not_modified_filter_module.c r->headers_in.if_modified_since->value.len); r 108 http/modules/ngx_http_not_modified_filter_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 109 http/modules/ngx_http_not_modified_filter_module.c "http ims:%d lm:%d", ims, r->headers_out.last_modified_time); r 111 http/modules/ngx_http_not_modified_filter_module.c if (ims != r->headers_out.last_modified_time) { r 114 http/modules/ngx_http_not_modified_filter_module.c || ims < r->headers_out.last_modified_time) r 116 http/modules/ngx_http_not_modified_filter_module.c return ngx_http_next_header_filter(r); r 120 http/modules/ngx_http_not_modified_filter_module.c r->headers_out.status = NGX_HTTP_NOT_MODIFIED; r 121 http/modules/ngx_http_not_modified_filter_module.c r->headers_out.status_line.len = 0; r 122 http/modules/ngx_http_not_modified_filter_module.c r->headers_out.content_type.len = 0; r 123 http/modules/ngx_http_not_modified_filter_module.c ngx_http_clear_content_length(r); r 124 http/modules/ngx_http_not_modified_filter_module.c ngx_http_clear_accept_ranges(r); r 126 http/modules/ngx_http_not_modified_filter_module.c if (r->headers_out.content_encoding) { r 127 http/modules/ngx_http_not_modified_filter_module.c r->headers_out.content_encoding->hash = 0; r 128 http/modules/ngx_http_not_modified_filter_module.c r->headers_out.content_encoding = NULL; r 131 http/modules/ngx_http_not_modified_filter_module.c return ngx_http_next_header_filter(r); r 14 http/modules/ngx_http_proxy_module.c typedef ngx_int_t (*ngx_http_proxy_redirect_pt)(ngx_http_request_t *r, r 86 http/modules/ngx_http_proxy_module.c static ngx_int_t ngx_http_proxy_eval(ngx_http_request_t *r, r 89 http/modules/ngx_http_proxy_module.c static ngx_int_t ngx_http_proxy_create_key(ngx_http_request_t *r); r 91 http/modules/ngx_http_proxy_module.c static ngx_int_t ngx_http_proxy_create_request(ngx_http_request_t *r); r 92 http/modules/ngx_http_proxy_module.c static ngx_int_t ngx_http_proxy_reinit_request(ngx_http_request_t *r); r 93 http/modules/ngx_http_proxy_module.c static ngx_int_t ngx_http_proxy_process_status_line(ngx_http_request_t *r); r 94 http/modules/ngx_http_proxy_module.c static ngx_int_t ngx_http_proxy_process_header(ngx_http_request_t *r); r 95 http/modules/ngx_http_proxy_module.c static void ngx_http_proxy_abort_request(ngx_http_request_t *r); r 96 http/modules/ngx_http_proxy_module.c static void ngx_http_proxy_finalize_request(ngx_http_request_t *r, r 99 http/modules/ngx_http_proxy_module.c static ngx_int_t ngx_http_proxy_host_variable(ngx_http_request_t *r, r 101 http/modules/ngx_http_proxy_module.c static ngx_int_t ngx_http_proxy_port_variable(ngx_http_request_t *r, r 104 http/modules/ngx_http_proxy_module.c ngx_http_proxy_add_x_forwarded_for_variable(ngx_http_request_t *r, r 107 http/modules/ngx_http_proxy_module.c ngx_http_proxy_internal_body_length_variable(ngx_http_request_t *r, r 109 http/modules/ngx_http_proxy_module.c static ngx_int_t ngx_http_proxy_rewrite_redirect(ngx_http_request_t *r, r 553 http/modules/ngx_http_proxy_module.c ngx_http_proxy_handler(ngx_http_request_t *r) r 560 http/modules/ngx_http_proxy_module.c if (ngx_http_upstream_create(r) != NGX_OK) { r 564 http/modules/ngx_http_proxy_module.c ctx = ngx_pcalloc(r->pool, sizeof(ngx_http_proxy_ctx_t)); r 569 http/modules/ngx_http_proxy_module.c ngx_http_set_ctx(r, ctx, ngx_http_proxy_module); r 571 http/modules/ngx_http_proxy_module.c plcf = ngx_http_get_module_loc_conf(r, ngx_http_proxy_module); r 573 http/modules/ngx_http_proxy_module.c u = r->upstream; r 583 http/modules/ngx_http_proxy_module.c if (ngx_http_proxy_eval(r, ctx, plcf) != NGX_OK) { r 600 http/modules/ngx_http_proxy_module.c r->state = 0; r 608 http/modules/ngx_http_proxy_module.c u->pipe = ngx_pcalloc(r->pool, sizeof(ngx_event_pipe_t)); r 617 http/modules/ngx_http_proxy_module.c rc = ngx_http_read_client_request_body(r, ngx_http_upstream_init); r 628 http/modules/ngx_http_proxy_module.c ngx_http_proxy_eval(ngx_http_request_t *r, ngx_http_proxy_ctx_t *ctx, r 638 http/modules/ngx_http_proxy_module.c if (ngx_http_script_run(r, &proxy, plcf->proxy_lengths->elts, 0, r 656 http/modules/ngx_http_proxy_module.c r->upstream->ssl = 1; r 661 http/modules/ngx_http_proxy_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 666 http/modules/ngx_http_proxy_module.c u = r->upstream; r 679 http/modules/ngx_http_proxy_module.c if (ngx_parse_url(r->pool, &url) != NGX_OK) { r 681 http/modules/ngx_http_proxy_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 690 http/modules/ngx_http_proxy_module.c p = ngx_pnalloc(r->pool, url.uri.len + 1); r 703 http/modules/ngx_http_proxy_module.c url.uri = r->unparsed_uri; r 710 http/modules/ngx_http_proxy_module.c u->resolved = ngx_pcalloc(r->pool, sizeof(ngx_http_upstream_resolved_t)); r 734 http/modules/ngx_http_proxy_module.c ngx_http_proxy_create_key(ngx_http_request_t *r) r 744 http/modules/ngx_http_proxy_module.c u = r->upstream; r 746 http/modules/ngx_http_proxy_module.c plcf = ngx_http_get_module_loc_conf(r, ngx_http_proxy_module); r 748 http/modules/ngx_http_proxy_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_proxy_module); r 750 http/modules/ngx_http_proxy_module.c key = ngx_array_push(&r->cache->keys); r 757 http/modules/ngx_http_proxy_module.c if (ngx_http_complex_value(r, &plcf->cache_key, key) != NGX_OK) { r 766 http/modules/ngx_http_proxy_module.c key = ngx_array_push(&r->cache->keys); r 778 http/modules/ngx_http_proxy_module.c } else if (ctx->vars.uri.len == 0 && r->valid_unparsed_uri && r == r->main) r 780 http/modules/ngx_http_proxy_module.c *key = r->unparsed_uri; r 781 http/modules/ngx_http_proxy_module.c u->uri = r->unparsed_uri; r 786 http/modules/ngx_http_proxy_module.c loc_len = (r->valid_location && ctx->vars.uri.len) ? plcf->location.len : 0; r 788 http/modules/ngx_http_proxy_module.c if (r->quoted_uri || r->internal) { r 789 http/modules/ngx_http_proxy_module.c escape = 2 * ngx_escape_uri(NULL, r->uri.data + loc_len, r 790 http/modules/ngx_http_proxy_module.c r->uri.len - loc_len, NGX_ESCAPE_URI); r 795 http/modules/ngx_http_proxy_module.c len = ctx->vars.uri.len + r->uri.len - loc_len + escape r 796 http/modules/ngx_http_proxy_module.c + sizeof("?") - 1 + r->args.len; r 798 http/modules/ngx_http_proxy_module.c p = ngx_pnalloc(r->pool, len); r 805 http/modules/ngx_http_proxy_module.c if (r->valid_location) { r 810 http/modules/ngx_http_proxy_module.c ngx_escape_uri(p, r->uri.data + loc_len, r 811 http/modules/ngx_http_proxy_module.c r->uri.len - loc_len, NGX_ESCAPE_URI); r 812 http/modules/ngx_http_proxy_module.c p += r->uri.len - loc_len + escape; r 815 http/modules/ngx_http_proxy_module.c p = ngx_copy(p, r->uri.data + loc_len, r->uri.len - loc_len); r 818 http/modules/ngx_http_proxy_module.c if (r->args.len > 0) { r 820 http/modules/ngx_http_proxy_module.c p = ngx_copy(p, r->args.data, r->args.len); r 833 http/modules/ngx_http_proxy_module.c ngx_http_proxy_create_request(ngx_http_request_t *r) r 850 http/modules/ngx_http_proxy_module.c u = r->upstream; r 852 http/modules/ngx_http_proxy_module.c plcf = ngx_http_get_module_loc_conf(r, ngx_http_proxy_module); r 863 http/modules/ngx_http_proxy_module.c method = r->method_name; r 873 http/modules/ngx_http_proxy_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_proxy_module); r 878 http/modules/ngx_http_proxy_module.c } else if (ctx->vars.uri.len == 0 && r->valid_unparsed_uri && r == r->main) r 881 http/modules/ngx_http_proxy_module.c uri_len = r->unparsed_uri.len; r 884 http/modules/ngx_http_proxy_module.c loc_len = (r->valid_location && ctx->vars.uri.len) ? r 887 http/modules/ngx_http_proxy_module.c if (r->quoted_uri || r->space_in_uri || r->internal) { r 888 http/modules/ngx_http_proxy_module.c escape = 2 * ngx_escape_uri(NULL, r->uri.data + loc_len, r 889 http/modules/ngx_http_proxy_module.c r->uri.len - loc_len, NGX_ESCAPE_URI); r 892 http/modules/ngx_http_proxy_module.c uri_len = ctx->vars.uri.len + r->uri.len - loc_len + escape r 893 http/modules/ngx_http_proxy_module.c + sizeof("?") - 1 + r->args.len; r 897 http/modules/ngx_http_proxy_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 904 http/modules/ngx_http_proxy_module.c ngx_http_script_flush_no_cacheable_variables(r, plcf->flushes); r 908 http/modules/ngx_http_proxy_module.c le.request = r; r 922 http/modules/ngx_http_proxy_module.c le.request = r; r 935 http/modules/ngx_http_proxy_module.c part = &r->headers_in.headers.part; r 962 http/modules/ngx_http_proxy_module.c b = ngx_create_temp_buf(r->pool, len); r 967 http/modules/ngx_http_proxy_module.c cl = ngx_alloc_chain_link(r->pool); r 985 http/modules/ngx_http_proxy_module.c b->last = ngx_copy(b->last, r->unparsed_uri.data, r->unparsed_uri.len); r 988 http/modules/ngx_http_proxy_module.c if (r->valid_location) { r 993 http/modules/ngx_http_proxy_module.c ngx_escape_uri(b->last, r->uri.data + loc_len, r 994 http/modules/ngx_http_proxy_module.c r->uri.len - loc_len, NGX_ESCAPE_URI); r 995 http/modules/ngx_http_proxy_module.c b->last += r->uri.len - loc_len + escape; r 998 http/modules/ngx_http_proxy_module.c b->last = ngx_copy(b->last, r->uri.data + loc_len, r 999 http/modules/ngx_http_proxy_module.c r->uri.len - loc_len); r 1002 http/modules/ngx_http_proxy_module.c if (r->args.len > 0) { r 1004 http/modules/ngx_http_proxy_module.c b->last = ngx_copy(b->last, r->args.data, r->args.len); r 1017 http/modules/ngx_http_proxy_module.c e.request = r; r 1053 http/modules/ngx_http_proxy_module.c part = &r->headers_in.headers.part; r 1083 http/modules/ngx_http_proxy_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1105 http/modules/ngx_http_proxy_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1115 http/modules/ngx_http_proxy_module.c b = ngx_alloc_buf(r->pool); r 1122 http/modules/ngx_http_proxy_module.c cl->next = ngx_alloc_chain_link(r->pool); r 1146 http/modules/ngx_http_proxy_module.c ngx_http_proxy_reinit_request(ngx_http_request_t *r) r 1150 http/modules/ngx_http_proxy_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_proxy_module); r 1161 http/modules/ngx_http_proxy_module.c r->upstream->process_header = ngx_http_proxy_process_status_line; r 1162 http/modules/ngx_http_proxy_module.c r->state = 0; r 1169 http/modules/ngx_http_proxy_module.c ngx_http_proxy_process_status_line(ngx_http_request_t *r) r 1176 http/modules/ngx_http_proxy_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_proxy_module); r 1182 http/modules/ngx_http_proxy_module.c u = r->upstream; r 1184 http/modules/ngx_http_proxy_module.c rc = ngx_http_parse_status_line(r, &u->buffer, &ctx->status); r 1194 http/modules/ngx_http_proxy_module.c if (r->cache) { r 1195 http/modules/ngx_http_proxy_module.c r->http_version = NGX_HTTP_VERSION_9; r 1201 http/modules/ngx_http_proxy_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1210 http/modules/ngx_http_proxy_module.c r->http_version = NGX_HTTP_VERSION_9; r 1225 http/modules/ngx_http_proxy_module.c u->headers_in.status_line.data = ngx_pnalloc(r->pool, len); r 1232 http/modules/ngx_http_proxy_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1238 http/modules/ngx_http_proxy_module.c return ngx_http_proxy_process_header(r); r 1243 http/modules/ngx_http_proxy_module.c ngx_http_proxy_process_header(ngx_http_request_t *r) r 1250 http/modules/ngx_http_proxy_module.c umcf = ngx_http_get_module_main_conf(r, ngx_http_upstream_module); r 1254 http/modules/ngx_http_proxy_module.c rc = ngx_http_parse_header_line(r, &r->upstream->buffer, 1); r 1260 http/modules/ngx_http_proxy_module.c h = ngx_list_push(&r->upstream->headers_in.headers); r 1265 http/modules/ngx_http_proxy_module.c h->hash = r->header_hash; r 1267 http/modules/ngx_http_proxy_module.c h->key.len = r->header_name_end - r->header_name_start; r 1268 http/modules/ngx_http_proxy_module.c h->value.len = r->header_end - r->header_start; r 1270 http/modules/ngx_http_proxy_module.c h->key.data = ngx_pnalloc(r->pool, r 1279 http/modules/ngx_http_proxy_module.c ngx_cpystrn(h->key.data, r->header_name_start, h->key.len + 1); r 1280 http/modules/ngx_http_proxy_module.c ngx_cpystrn(h->value.data, r->header_start, h->value.len + 1); r 1282 http/modules/ngx_http_proxy_module.c if (h->key.len == r->lowcase_index) { r 1283 http/modules/ngx_http_proxy_module.c ngx_memcpy(h->lowcase_key, r->lowcase_header, h->key.len); r 1292 http/modules/ngx_http_proxy_module.c if (hh && hh->handler(r, h, hh->offset) != NGX_OK) { r 1296 http/modules/ngx_http_proxy_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1307 http/modules/ngx_http_proxy_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1315 http/modules/ngx_http_proxy_module.c if (r->upstream->headers_in.server == NULL) { r 1316 http/modules/ngx_http_proxy_module.c h = ngx_list_push(&r->upstream->headers_in.headers); r 1329 http/modules/ngx_http_proxy_module.c if (r->upstream->headers_in.date == NULL) { r 1330 http/modules/ngx_http_proxy_module.c h = ngx_list_push(&r->upstream->headers_in.headers); r 1351 http/modules/ngx_http_proxy_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1360 http/modules/ngx_http_proxy_module.c ngx_http_proxy_abort_request(ngx_http_request_t *r) r 1362 http/modules/ngx_http_proxy_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1370 http/modules/ngx_http_proxy_module.c ngx_http_proxy_finalize_request(ngx_http_request_t *r, ngx_int_t rc) r 1372 http/modules/ngx_http_proxy_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1380 http/modules/ngx_http_proxy_module.c ngx_http_proxy_host_variable(ngx_http_request_t *r, r 1385 http/modules/ngx_http_proxy_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_proxy_module); r 1403 http/modules/ngx_http_proxy_module.c ngx_http_proxy_port_variable(ngx_http_request_t *r, r 1408 http/modules/ngx_http_proxy_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_proxy_module); r 1426 http/modules/ngx_http_proxy_module.c ngx_http_proxy_add_x_forwarded_for_variable(ngx_http_request_t *r, r 1435 http/modules/ngx_http_proxy_module.c if (r->headers_in.x_forwarded_for == NULL) { r 1436 http/modules/ngx_http_proxy_module.c v->len = r->connection->addr_text.len; r 1437 http/modules/ngx_http_proxy_module.c v->data = r->connection->addr_text.data; r 1441 http/modules/ngx_http_proxy_module.c v->len = r->headers_in.x_forwarded_for->value.len r 1442 http/modules/ngx_http_proxy_module.c + sizeof(", ") - 1 + r->connection->addr_text.len; r 1444 http/modules/ngx_http_proxy_module.c p = ngx_pnalloc(r->pool, v->len); r 1451 http/modules/ngx_http_proxy_module.c p = ngx_copy(p, r->headers_in.x_forwarded_for->value.data, r 1452 http/modules/ngx_http_proxy_module.c r->headers_in.x_forwarded_for->value.len); r 1456 http/modules/ngx_http_proxy_module.c ngx_memcpy(p, r->connection->addr_text.data, r->connection->addr_text.len); r 1463 http/modules/ngx_http_proxy_module.c ngx_http_proxy_internal_body_length_variable(ngx_http_request_t *r, r 1468 http/modules/ngx_http_proxy_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_proxy_module); r 1479 http/modules/ngx_http_proxy_module.c v->data = ngx_pnalloc(r->connection->pool, NGX_SIZE_T_LEN); r 1492 http/modules/ngx_http_proxy_module.c ngx_http_proxy_rewrite_redirect(ngx_http_request_t *r, ngx_table_elt_t *h, r 1500 http/modules/ngx_http_proxy_module.c plcf = ngx_http_get_module_loc_conf(r, ngx_http_proxy_module); r 1509 http/modules/ngx_http_proxy_module.c rc = pr[i].handler(r, h, prefix, &pr[i]); r 1521 http/modules/ngx_http_proxy_module.c ngx_http_proxy_rewrite_redirect_text(ngx_http_request_t *r, ngx_table_elt_t *h, r 1536 http/modules/ngx_http_proxy_module.c data = ngx_pnalloc(r->pool, len); r 1558 http/modules/ngx_http_proxy_module.c ngx_http_proxy_rewrite_redirect_vars(ngx_http_request_t *r, ngx_table_elt_t *h, r 1577 http/modules/ngx_http_proxy_module.c e.request = r; r 1586 http/modules/ngx_http_proxy_module.c data = ngx_pnalloc(r->pool, len); r 20 http/modules/ngx_http_random_index_module.c static ngx_int_t ngx_http_random_index_error(ngx_http_request_t *r, r 73 http/modules/ngx_http_random_index_module.c ngx_http_random_index_handler(ngx_http_request_t *r) r 85 http/modules/ngx_http_random_index_module.c if (r->uri.data[r->uri.len - 1] != '/') { r 89 http/modules/ngx_http_random_index_module.c if (!(r->method & (NGX_HTTP_GET|NGX_HTTP_HEAD|NGX_HTTP_POST))) { r 93 http/modules/ngx_http_random_index_module.c rlcf = ngx_http_get_module_loc_conf(r, ngx_http_random_index_module); r 105 http/modules/ngx_http_random_index_module.c last = ngx_http_map_uri_to_path(r, &path, &root, len); r 115 http/modules/ngx_http_random_index_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 137 http/modules/ngx_http_random_index_module.c ngx_log_error(level, r->connection->log, err, r 143 http/modules/ngx_http_random_index_module.c if (ngx_array_init(&names, r->pool, 32, sizeof(ngx_str_t)) != NGX_OK) { r 144 http/modules/ngx_http_random_index_module.c return ngx_http_random_index_error(r, &dir, &path); r 157 http/modules/ngx_http_random_index_module.c ngx_log_error(NGX_LOG_CRIT, r->connection->log, err, r 159 http/modules/ngx_http_random_index_module.c return ngx_http_random_index_error(r, &dir, &path); r 165 http/modules/ngx_http_random_index_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 182 http/modules/ngx_http_random_index_module.c filename = ngx_pnalloc(r->pool, allocated); r 184 http/modules/ngx_http_random_index_module.c return ngx_http_random_index_error(r, &dir, &path); r 197 http/modules/ngx_http_random_index_module.c ngx_log_error(NGX_LOG_CRIT, r->connection->log, err, r 199 http/modules/ngx_http_random_index_module.c return ngx_http_random_index_error(r, &dir, &path); r 203 http/modules/ngx_http_random_index_module.c ngx_log_error(NGX_LOG_CRIT, r->connection->log, ngx_errno, r 206 http/modules/ngx_http_random_index_module.c return ngx_http_random_index_error(r, &dir, &path); r 217 http/modules/ngx_http_random_index_module.c return ngx_http_random_index_error(r, &dir, &path); r 222 http/modules/ngx_http_random_index_module.c name->data = ngx_pnalloc(r->pool, len); r 224 http/modules/ngx_http_random_index_module.c return ngx_http_random_index_error(r, &dir, &path); r 231 http/modules/ngx_http_random_index_module.c ngx_log_error(NGX_LOG_ALERT, r->connection->log, ngx_errno, r 245 http/modules/ngx_http_random_index_module.c uri.len = r->uri.len + name[n].len; r 247 http/modules/ngx_http_random_index_module.c uri.data = ngx_pnalloc(r->pool, uri.len); r 252 http/modules/ngx_http_random_index_module.c last = ngx_copy(uri.data, r->uri.data, r->uri.len); r 255 http/modules/ngx_http_random_index_module.c return ngx_http_internal_redirect(r, &uri, &r->args); r 260 http/modules/ngx_http_random_index_module.c ngx_http_random_index_error(ngx_http_request_t *r, ngx_dir_t *dir, r 264 http/modules/ngx_http_random_index_module.c ngx_log_error(NGX_LOG_ALERT, r->connection->log, ngx_errno, r 61 http/modules/ngx_http_range_filter_module.c ngx_int_t ngx_http_range_parse(ngx_http_request_t *r, r 63 http/modules/ngx_http_range_filter_module.c static ngx_int_t ngx_http_range_singlepart_header(ngx_http_request_t *r, r 65 http/modules/ngx_http_range_filter_module.c static ngx_int_t ngx_http_range_multipart_header(ngx_http_request_t *r, r 67 http/modules/ngx_http_range_filter_module.c static ngx_int_t ngx_http_range_not_satisfiable(ngx_http_request_t *r); r 68 http/modules/ngx_http_range_filter_module.c static ngx_int_t ngx_http_range_test_overlapped(ngx_http_request_t *r, r 70 http/modules/ngx_http_range_filter_module.c static ngx_int_t ngx_http_range_singlepart_body(ngx_http_request_t *r, r 72 http/modules/ngx_http_range_filter_module.c static ngx_int_t ngx_http_range_multipart_body(ngx_http_request_t *r, r 146 http/modules/ngx_http_range_filter_module.c ngx_http_range_header_filter(ngx_http_request_t *r) r 152 http/modules/ngx_http_range_filter_module.c if (r->http_version < NGX_HTTP_VERSION_10 r 153 http/modules/ngx_http_range_filter_module.c || r->headers_out.status != NGX_HTTP_OK r 154 http/modules/ngx_http_range_filter_module.c || r != r->main r 155 http/modules/ngx_http_range_filter_module.c || r->headers_out.content_length_n == -1 r 156 http/modules/ngx_http_range_filter_module.c || !r->allow_ranges) r 158 http/modules/ngx_http_range_filter_module.c return ngx_http_next_header_filter(r); r 161 http/modules/ngx_http_range_filter_module.c if (r->headers_in.range == NULL r 162 http/modules/ngx_http_range_filter_module.c || r->headers_in.range->value.len < 7 r 163 http/modules/ngx_http_range_filter_module.c || ngx_strncasecmp(r->headers_in.range->value.data, r 170 http/modules/ngx_http_range_filter_module.c if (r->headers_in.if_range && r->headers_out.last_modified_time != -1) { r 172 http/modules/ngx_http_range_filter_module.c if_range = ngx_http_parse_time(r->headers_in.if_range->value.data, r 173 http/modules/ngx_http_range_filter_module.c r->headers_in.if_range->value.len); r 175 http/modules/ngx_http_range_filter_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 177 http/modules/ngx_http_range_filter_module.c if_range, r->headers_out.last_modified_time); r 179 http/modules/ngx_http_range_filter_module.c if (if_range != r->headers_out.last_modified_time) { r 184 http/modules/ngx_http_range_filter_module.c ctx = ngx_pcalloc(r->pool, sizeof(ngx_http_range_filter_ctx_t)); r 189 http/modules/ngx_http_range_filter_module.c if (ngx_array_init(&ctx->ranges, r->pool, 1, sizeof(ngx_http_range_t)) r 195 http/modules/ngx_http_range_filter_module.c rc = ngx_http_range_parse(r, ctx); r 199 http/modules/ngx_http_range_filter_module.c ngx_http_set_ctx(r, ctx, ngx_http_range_body_filter_module); r 201 http/modules/ngx_http_range_filter_module.c r->headers_out.status = NGX_HTTP_PARTIAL_CONTENT; r 202 http/modules/ngx_http_range_filter_module.c r->headers_out.status_line.len = 0; r 205 http/modules/ngx_http_range_filter_module.c return ngx_http_range_singlepart_header(r, ctx); r 208 http/modules/ngx_http_range_filter_module.c return ngx_http_range_multipart_header(r, ctx); r 212 http/modules/ngx_http_range_filter_module.c return ngx_http_range_not_satisfiable(r); r 221 http/modules/ngx_http_range_filter_module.c r->headers_out.accept_ranges = ngx_list_push(&r->headers_out.headers); r 222 http/modules/ngx_http_range_filter_module.c if (r->headers_out.accept_ranges == NULL) { r 226 http/modules/ngx_http_range_filter_module.c r->headers_out.accept_ranges->hash = 1; r 227 http/modules/ngx_http_range_filter_module.c ngx_str_set(&r->headers_out.accept_ranges->key, "Accept-Ranges"); r 228 http/modules/ngx_http_range_filter_module.c ngx_str_set(&r->headers_out.accept_ranges->value, "bytes"); r 230 http/modules/ngx_http_range_filter_module.c return ngx_http_next_header_filter(r); r 235 http/modules/ngx_http_range_filter_module.c ngx_http_range_parse(ngx_http_request_t *r, ngx_http_range_filter_ctx_t *ctx) r 242 http/modules/ngx_http_range_filter_module.c p = r->headers_in.range->value.data + 6; r 266 http/modules/ngx_http_range_filter_module.c if (start >= r->headers_out.content_length_n) { r 279 http/modules/ngx_http_range_filter_module.c range->end = r->headers_out.content_length_n; r 308 http/modules/ngx_http_range_filter_module.c start = r->headers_out.content_length_n - end; r 309 http/modules/ngx_http_range_filter_module.c end = r->headers_out.content_length_n - 1; r 323 http/modules/ngx_http_range_filter_module.c if (end >= r->headers_out.content_length_n) { r 328 http/modules/ngx_http_range_filter_module.c range->end = r->headers_out.content_length_n; r 342 http/modules/ngx_http_range_filter_module.c ngx_http_range_singlepart_header(ngx_http_request_t *r, r 348 http/modules/ngx_http_range_filter_module.c content_range = ngx_list_push(&r->headers_out.headers); r 353 http/modules/ngx_http_range_filter_module.c r->headers_out.content_range = content_range; r 358 http/modules/ngx_http_range_filter_module.c content_range->value.data = ngx_pnalloc(r->pool, r 371 http/modules/ngx_http_range_filter_module.c r->headers_out.content_length_n) r 374 http/modules/ngx_http_range_filter_module.c r->headers_out.content_length_n = range->end - range->start; r 376 http/modules/ngx_http_range_filter_module.c if (r->headers_out.content_length) { r 377 http/modules/ngx_http_range_filter_module.c r->headers_out.content_length->hash = 0; r 378 http/modules/ngx_http_range_filter_module.c r->headers_out.content_length = NULL; r 381 http/modules/ngx_http_range_filter_module.c return ngx_http_next_header_filter(r); r 386 http/modules/ngx_http_range_filter_module.c ngx_http_range_multipart_header(ngx_http_request_t *r, r 396 http/modules/ngx_http_range_filter_module.c + r->headers_out.content_type.len r 399 http/modules/ngx_http_range_filter_module.c if (r->headers_out.charset.len) { r 400 http/modules/ngx_http_range_filter_module.c len += sizeof("; charset=") - 1 + r->headers_out.charset.len; r 403 http/modules/ngx_http_range_filter_module.c ctx->boundary_header.data = ngx_pnalloc(r->pool, len); r 418 http/modules/ngx_http_range_filter_module.c if (r->headers_out.charset.len) { r 424 http/modules/ngx_http_range_filter_module.c &r->headers_out.content_type, r 425 http/modules/ngx_http_range_filter_module.c &r->headers_out.charset) r 428 http/modules/ngx_http_range_filter_module.c r->headers_out.charset.len = 0; r 430 http/modules/ngx_http_range_filter_module.c } else if (r->headers_out.content_type.len) { r 436 http/modules/ngx_http_range_filter_module.c &r->headers_out.content_type) r 447 http/modules/ngx_http_range_filter_module.c r->headers_out.content_type.data = r 448 http/modules/ngx_http_range_filter_module.c ngx_pnalloc(r->pool, r 452 http/modules/ngx_http_range_filter_module.c if (r->headers_out.content_type.data == NULL) { r 456 http/modules/ngx_http_range_filter_module.c r->headers_out.content_type_lowcase = NULL; r 460 http/modules/ngx_http_range_filter_module.c r->headers_out.content_type.len = r 461 http/modules/ngx_http_range_filter_module.c ngx_sprintf(r->headers_out.content_type.data, r 464 http/modules/ngx_http_range_filter_module.c - r->headers_out.content_type.data; r 466 http/modules/ngx_http_range_filter_module.c r->headers_out.content_type_len = r->headers_out.content_type.len; r 478 http/modules/ngx_http_range_filter_module.c ngx_pnalloc(r->pool, 3 * NGX_OFF_T_LEN + 2 + 4); r 487 http/modules/ngx_http_range_filter_module.c r->headers_out.content_length_n) r 494 http/modules/ngx_http_range_filter_module.c r->headers_out.content_length_n = len; r 496 http/modules/ngx_http_range_filter_module.c if (r->headers_out.content_length) { r 497 http/modules/ngx_http_range_filter_module.c r->headers_out.content_length->hash = 0; r 498 http/modules/ngx_http_range_filter_module.c r->headers_out.content_length = NULL; r 501 http/modules/ngx_http_range_filter_module.c return ngx_http_next_header_filter(r); r 506 http/modules/ngx_http_range_filter_module.c ngx_http_range_not_satisfiable(ngx_http_request_t *r) r 510 http/modules/ngx_http_range_filter_module.c r->headers_out.status = NGX_HTTP_RANGE_NOT_SATISFIABLE; r 512 http/modules/ngx_http_range_filter_module.c content_range = ngx_list_push(&r->headers_out.headers); r 517 http/modules/ngx_http_range_filter_module.c r->headers_out.content_range = content_range; r 522 http/modules/ngx_http_range_filter_module.c content_range->value.data = ngx_pnalloc(r->pool, r 530 http/modules/ngx_http_range_filter_module.c r->headers_out.content_length_n) r 533 http/modules/ngx_http_range_filter_module.c ngx_http_clear_content_length(r); r 540 http/modules/ngx_http_range_filter_module.c ngx_http_range_body_filter(ngx_http_request_t *r, ngx_chain_t *in) r 545 http/modules/ngx_http_range_filter_module.c return ngx_http_next_body_filter(r, in); r 548 http/modules/ngx_http_range_filter_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_range_body_filter_module); r 551 http/modules/ngx_http_range_filter_module.c return ngx_http_next_body_filter(r, in); r 555 http/modules/ngx_http_range_filter_module.c return ngx_http_range_singlepart_body(r, ctx, in); r 563 http/modules/ngx_http_range_filter_module.c return ngx_http_next_body_filter(r, in); r 566 http/modules/ngx_http_range_filter_module.c if (ngx_http_range_test_overlapped(r, ctx, in) != NGX_OK) { r 570 http/modules/ngx_http_range_filter_module.c return ngx_http_range_multipart_body(r, ctx, in); r 575 http/modules/ngx_http_range_filter_module.c ngx_http_range_test_overlapped(ngx_http_request_t *r, r 614 http/modules/ngx_http_range_filter_module.c ngx_log_error(NGX_LOG_ALERT, r->connection->log, 0, r 622 http/modules/ngx_http_range_filter_module.c ngx_http_range_singlepart_body(ngx_http_request_t *r, r 643 http/modules/ngx_http_range_filter_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 654 http/modules/ngx_http_range_filter_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 703 http/modules/ngx_http_range_filter_module.c return ngx_http_next_body_filter(r, out); r 708 http/modules/ngx_http_range_filter_module.c ngx_http_range_multipart_body(ngx_http_request_t *r, r 722 http/modules/ngx_http_range_filter_module.c body_start = r->cached ? r->cache->body_start : 0; r 737 http/modules/ngx_http_range_filter_module.c b = ngx_calloc_buf(r->pool); r 746 http/modules/ngx_http_range_filter_module.c hcl = ngx_alloc_chain_link(r->pool); r 756 http/modules/ngx_http_range_filter_module.c b = ngx_calloc_buf(r->pool); r 765 http/modules/ngx_http_range_filter_module.c rcl = ngx_alloc_chain_link(r->pool); r 775 http/modules/ngx_http_range_filter_module.c b = ngx_calloc_buf(r->pool); r 796 http/modules/ngx_http_range_filter_module.c dcl = ngx_alloc_chain_link(r->pool); r 811 http/modules/ngx_http_range_filter_module.c b = ngx_calloc_buf(r->pool); r 819 http/modules/ngx_http_range_filter_module.c b->pos = ngx_pnalloc(r->pool, sizeof(CRLF "--") - 1 + NGX_ATOMIC_T_LEN r 830 http/modules/ngx_http_range_filter_module.c hcl = ngx_alloc_chain_link(r->pool); r 840 http/modules/ngx_http_range_filter_module.c return ngx_http_next_body_filter(r, out); r 42 http/modules/ngx_http_realip_module.c static ngx_int_t ngx_http_realip_handler(ngx_http_request_t *r); r 43 http/modules/ngx_http_realip_module.c static ngx_int_t ngx_http_realip_set_addr(ngx_http_request_t *r, u_char *ip, r 108 http/modules/ngx_http_realip_module.c ngx_http_realip_handler(ngx_http_request_t *r) r 121 http/modules/ngx_http_realip_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_realip_module); r 127 http/modules/ngx_http_realip_module.c rlcf = ngx_http_get_module_loc_conf(r, ngx_http_realip_module); r 142 http/modules/ngx_http_realip_module.c if (r->headers_in.x_real_ip == NULL) { r 146 http/modules/ngx_http_realip_module.c len = r->headers_in.x_real_ip->value.len; r 147 http/modules/ngx_http_realip_module.c ip = r->headers_in.x_real_ip->value.data; r 153 http/modules/ngx_http_realip_module.c if (r->headers_in.x_forwarded_for == NULL) { r 157 http/modules/ngx_http_realip_module.c len = r->headers_in.x_forwarded_for->value.len; r 158 http/modules/ngx_http_realip_module.c ip = r->headers_in.x_forwarded_for->value.data; r 173 http/modules/ngx_http_realip_module.c part = &r->headers_in.headers.part; r 208 http/modules/ngx_http_realip_module.c c = r->connection; r 225 http/modules/ngx_http_realip_module.c return ngx_http_realip_set_addr(r, ip, len); r 233 http/modules/ngx_http_realip_module.c return ngx_http_realip_set_addr(r, ip, len); r 243 http/modules/ngx_http_realip_module.c ngx_http_realip_set_addr(ngx_http_request_t *r, u_char *ip, size_t len) r 252 http/modules/ngx_http_realip_module.c cln = ngx_pool_cleanup_add(r->pool, sizeof(ngx_http_realip_ctx_t)); r 258 http/modules/ngx_http_realip_module.c ngx_http_set_ctx(r, ctx, ngx_http_realip_module); r 260 http/modules/ngx_http_realip_module.c c = r->connection; r 93 http/modules/ngx_http_referer_module.c ngx_http_referer_variable(ngx_http_request_t *r, ngx_http_variable_value_t *v, r 103 http/modules/ngx_http_referer_module.c rlcf = ngx_http_get_module_loc_conf(r, ngx_http_referer_module); r 116 http/modules/ngx_http_referer_module.c if (r->headers_in.referer == NULL) { r 124 http/modules/ngx_http_referer_module.c len = r->headers_in.referer->value.len; r 125 http/modules/ngx_http_referer_module.c ref = r->headers_in.referer->value.data; r 179 http/modules/ngx_http_referer_module.c rc = ngx_regex_exec_array(rlcf->regex, &referer, r->connection->log); r 136 http/modules/ngx_http_rewrite_module.c ngx_http_rewrite_handler(ngx_http_request_t *r) r 142 http/modules/ngx_http_rewrite_module.c rlcf = ngx_http_get_module_loc_conf(r, ngx_http_rewrite_module); r 148 http/modules/ngx_http_rewrite_module.c e = ngx_pcalloc(r->pool, sizeof(ngx_http_script_engine_t)); r 153 http/modules/ngx_http_rewrite_module.c e->sp = ngx_pcalloc(r->pool, r 160 http/modules/ngx_http_rewrite_module.c e->request = r; r 174 http/modules/ngx_http_rewrite_module.c if (r->err_status == 0) { r 178 http/modules/ngx_http_rewrite_module.c return r->err_status; r 183 http/modules/ngx_http_rewrite_module.c ngx_http_rewrite_var(ngx_http_request_t *r, ngx_http_variable_value_t *v, r 190 http/modules/ngx_http_rewrite_module.c rlcf = ngx_http_get_module_loc_conf(r, ngx_http_rewrite_module); r 197 http/modules/ngx_http_rewrite_module.c cmcf = ngx_http_get_module_main_conf(r, ngx_http_core_module); r 207 http/modules/ngx_http_rewrite_module.c ngx_log_error(NGX_LOG_WARN, r->connection->log, 0, r 33 http/modules/ngx_http_scgi_module.c static ngx_int_t ngx_http_scgi_eval(ngx_http_request_t *r, r 35 http/modules/ngx_http_scgi_module.c static ngx_int_t ngx_http_scgi_create_request(ngx_http_request_t *r); r 36 http/modules/ngx_http_scgi_module.c static ngx_int_t ngx_http_scgi_reinit_request(ngx_http_request_t *r); r 37 http/modules/ngx_http_scgi_module.c static ngx_int_t ngx_http_scgi_process_status_line(ngx_http_request_t *r); r 38 http/modules/ngx_http_scgi_module.c static ngx_int_t ngx_http_scgi_process_header(ngx_http_request_t *r); r 39 http/modules/ngx_http_scgi_module.c static ngx_int_t ngx_http_scgi_process_header(ngx_http_request_t *r); r 40 http/modules/ngx_http_scgi_module.c static void ngx_http_scgi_abort_request(ngx_http_request_t *r); r 41 http/modules/ngx_http_scgi_module.c static void ngx_http_scgi_finalize_request(ngx_http_request_t *r, ngx_int_t rc); r 52 http/modules/ngx_http_scgi_module.c static ngx_int_t ngx_http_scgi_create_key(ngx_http_request_t *r); r 366 http/modules/ngx_http_scgi_module.c ngx_http_scgi_handler(ngx_http_request_t *r) r 373 http/modules/ngx_http_scgi_module.c if (r->subrequest_in_memory) { r 374 http/modules/ngx_http_scgi_module.c ngx_log_error(NGX_LOG_ALERT, r->connection->log, 0, r 380 http/modules/ngx_http_scgi_module.c if (ngx_http_upstream_create(r) != NGX_OK) { r 384 http/modules/ngx_http_scgi_module.c status = ngx_pcalloc(r->pool, sizeof(ngx_http_status_t)); r 389 http/modules/ngx_http_scgi_module.c ngx_http_set_ctx(r, status, ngx_http_scgi_module); r 391 http/modules/ngx_http_scgi_module.c scf = ngx_http_get_module_loc_conf(r, ngx_http_scgi_module); r 394 http/modules/ngx_http_scgi_module.c if (ngx_http_scgi_eval(r, scf) != NGX_OK) { r 399 http/modules/ngx_http_scgi_module.c u = r->upstream; r 417 http/modules/ngx_http_scgi_module.c u->pipe = ngx_pcalloc(r->pool, sizeof(ngx_event_pipe_t)); r 423 http/modules/ngx_http_scgi_module.c u->pipe->input_ctx = r; r 425 http/modules/ngx_http_scgi_module.c rc = ngx_http_read_client_request_body(r, ngx_http_upstream_init); r 436 http/modules/ngx_http_scgi_module.c ngx_http_scgi_eval(ngx_http_request_t *r, ngx_http_scgi_loc_conf_t * scf) r 443 http/modules/ngx_http_scgi_module.c if (ngx_http_script_run(r, &url.url, scf->scgi_lengths->elts, 0, r 452 http/modules/ngx_http_scgi_module.c if (ngx_parse_url(r->pool, &url) != NGX_OK) { r 454 http/modules/ngx_http_scgi_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 461 http/modules/ngx_http_scgi_module.c u = r->upstream; r 463 http/modules/ngx_http_scgi_module.c u->resolved = ngx_pcalloc(r->pool, sizeof(ngx_http_upstream_resolved_t)); r 487 http/modules/ngx_http_scgi_module.c ngx_http_scgi_create_key(ngx_http_request_t *r) r 492 http/modules/ngx_http_scgi_module.c key = ngx_array_push(&r->cache->keys); r 497 http/modules/ngx_http_scgi_module.c scf = ngx_http_get_module_loc_conf(r, ngx_http_scgi_module); r 499 http/modules/ngx_http_scgi_module.c if (ngx_http_complex_value(r, &scf->cache_key, key) != NGX_OK) { r 510 http/modules/ngx_http_scgi_module.c ngx_http_scgi_create_request(ngx_http_request_t *r) r 526 http/modules/ngx_http_scgi_module.c content_length = r->headers_in.content_length ? r 527 http/modules/ngx_http_scgi_module.c &r->headers_in.content_length->value : &zero; r 534 http/modules/ngx_http_scgi_module.c scf = ngx_http_get_module_loc_conf(r, ngx_http_scgi_module); r 539 http/modules/ngx_http_scgi_module.c ngx_http_script_flush_no_cacheable_variables(r, scf->flushes); r 543 http/modules/ngx_http_scgi_module.c le.request = r; r 564 http/modules/ngx_http_scgi_module.c ignored = ngx_palloc(r->pool, scf->header_params * sizeof(void *)); r 570 http/modules/ngx_http_scgi_module.c part = &r->headers_in.headers.part; r 588 http/modules/ngx_http_scgi_module.c lowcase_key = ngx_pnalloc(r->pool, allocated); r 623 http/modules/ngx_http_scgi_module.c b = ngx_create_temp_buf(r->pool, NGX_SIZE_T_LEN + 1 + len + 1); r 628 http/modules/ngx_http_scgi_module.c cl = ngx_alloc_chain_link(r->pool); r 646 http/modules/ngx_http_scgi_module.c e.request = r; r 667 http/modules/ngx_http_scgi_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 676 http/modules/ngx_http_scgi_module.c part = &r->headers_in.headers.part; r 719 http/modules/ngx_http_scgi_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 731 http/modules/ngx_http_scgi_module.c body = r->upstream->request_bufs; r 732 http/modules/ngx_http_scgi_module.c r->upstream->request_bufs = cl; r 735 http/modules/ngx_http_scgi_module.c b = ngx_alloc_buf(r->pool); r 742 http/modules/ngx_http_scgi_module.c cl->next = ngx_alloc_chain_link(r->pool); r 754 http/modules/ngx_http_scgi_module.c r->upstream->request_bufs = cl; r 764 http/modules/ngx_http_scgi_module.c ngx_http_scgi_reinit_request(ngx_http_request_t *r) r 768 http/modules/ngx_http_scgi_module.c status = ngx_http_get_module_ctx(r, ngx_http_scgi_module); r 779 http/modules/ngx_http_scgi_module.c r->upstream->process_header = ngx_http_scgi_process_status_line; r 786 http/modules/ngx_http_scgi_module.c ngx_http_scgi_process_status_line(ngx_http_request_t *r) r 793 http/modules/ngx_http_scgi_module.c status = ngx_http_get_module_ctx(r, ngx_http_scgi_module); r 799 http/modules/ngx_http_scgi_module.c u = r->upstream; r 801 http/modules/ngx_http_scgi_module.c rc = ngx_http_parse_status_line(r, &u->buffer, status); r 809 http/modules/ngx_http_scgi_module.c r->http_version = NGX_HTTP_VERSION_9; r 813 http/modules/ngx_http_scgi_module.c return ngx_http_scgi_process_header(r); r 825 http/modules/ngx_http_scgi_module.c u->headers_in.status_line.data = ngx_pnalloc(r->pool, len); r 832 http/modules/ngx_http_scgi_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 838 http/modules/ngx_http_scgi_module.c return ngx_http_scgi_process_header(r); r 843 http/modules/ngx_http_scgi_module.c ngx_http_scgi_process_header(ngx_http_request_t *r) r 852 http/modules/ngx_http_scgi_module.c umcf = ngx_http_get_module_main_conf(r, ngx_http_upstream_module); r 856 http/modules/ngx_http_scgi_module.c rc = ngx_http_parse_header_line(r, &r->upstream->buffer, 1); r 862 http/modules/ngx_http_scgi_module.c h = ngx_list_push(&r->upstream->headers_in.headers); r 867 http/modules/ngx_http_scgi_module.c h->hash = r->header_hash; r 869 http/modules/ngx_http_scgi_module.c h->key.len = r->header_name_end - r->header_name_start; r 870 http/modules/ngx_http_scgi_module.c h->value.len = r->header_end - r->header_start; r 872 http/modules/ngx_http_scgi_module.c h->key.data = ngx_pnalloc(r->pool, r 882 http/modules/ngx_http_scgi_module.c ngx_cpystrn(h->key.data, r->header_name_start, h->key.len + 1); r 883 http/modules/ngx_http_scgi_module.c ngx_cpystrn(h->value.data, r->header_start, h->value.len + 1); r 885 http/modules/ngx_http_scgi_module.c if (h->key.len == r->lowcase_index) { r 886 http/modules/ngx_http_scgi_module.c ngx_memcpy(h->lowcase_key, r->lowcase_header, h->key.len); r 895 http/modules/ngx_http_scgi_module.c if (hh && hh->handler(r, h, hh->offset) != NGX_OK) { r 899 http/modules/ngx_http_scgi_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 909 http/modules/ngx_http_scgi_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 912 http/modules/ngx_http_scgi_module.c if (r->http_version > NGX_HTTP_VERSION_9) { r 916 http/modules/ngx_http_scgi_module.c u = r->upstream; r 923 http/modules/ngx_http_scgi_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 929 http/modules/ngx_http_scgi_module.c r->http_version = NGX_HTTP_VERSION_10; r 934 http/modules/ngx_http_scgi_module.c r->http_version = NGX_HTTP_VERSION_10; r 940 http/modules/ngx_http_scgi_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 960 http/modules/ngx_http_scgi_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 969 http/modules/ngx_http_scgi_module.c ngx_http_scgi_abort_request(ngx_http_request_t *r) r 971 http/modules/ngx_http_scgi_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 979 http/modules/ngx_http_scgi_module.c ngx_http_scgi_finalize_request(ngx_http_request_t *r, ngx_int_t rc) r 981 http/modules/ngx_http_scgi_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 25 http/modules/ngx_http_secure_link_module.c static ngx_int_t ngx_http_secure_link_old_variable(ngx_http_request_t *r, r 28 http/modules/ngx_http_secure_link_module.c static ngx_int_t ngx_http_secure_link_expires_variable(ngx_http_request_t *r, r 100 http/modules/ngx_http_secure_link_module.c ngx_http_secure_link_variable(ngx_http_request_t *r, r 111 http/modules/ngx_http_secure_link_module.c conf = ngx_http_get_module_loc_conf(r, ngx_http_secure_link_module); r 114 http/modules/ngx_http_secure_link_module.c return ngx_http_secure_link_old_variable(r, conf, v, data); r 121 http/modules/ngx_http_secure_link_module.c if (ngx_http_complex_value(r, conf->variable, &val) != NGX_OK) { r 125 http/modules/ngx_http_secure_link_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 141 http/modules/ngx_http_secure_link_module.c ctx = ngx_pcalloc(r->pool, sizeof(ngx_http_secure_link_ctx_t)); r 146 http/modules/ngx_http_secure_link_module.c ngx_http_set_ctx(r, ctx, ngx_http_secure_link_module); r 167 http/modules/ngx_http_secure_link_module.c if (ngx_http_complex_value(r, conf->md5, &val) != NGX_OK) { r 171 http/modules/ngx_http_secure_link_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 199 http/modules/ngx_http_secure_link_module.c ngx_http_secure_link_old_variable(ngx_http_request_t *r, r 210 http/modules/ngx_http_secure_link_module.c p = &r->unparsed_uri.data[1]; r 211 http/modules/ngx_http_secure_link_module.c last = r->unparsed_uri.data + r->unparsed_uri.len; r 270 http/modules/ngx_http_secure_link_module.c ngx_http_secure_link_expires_variable(ngx_http_request_t *r, r 275 http/modules/ngx_http_secure_link_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_secure_link_module); r 74 http/modules/ngx_http_split_clients_module.c ngx_http_split_clients_variable(ngx_http_request_t *r, r 86 http/modules/ngx_http_split_clients_module.c if (ngx_http_complex_value(r, &ctx->value, &val) != NGX_OK) { r 96 http/modules/ngx_http_split_clients_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 71 http/modules/ngx_http_ssi_filter_module.c static ngx_int_t ngx_http_ssi_output(ngx_http_request_t *r, r 73 http/modules/ngx_http_ssi_filter_module.c static void ngx_http_ssi_buffered(ngx_http_request_t *r, r 75 http/modules/ngx_http_ssi_filter_module.c static ngx_int_t ngx_http_ssi_parse(ngx_http_request_t *r, r 77 http/modules/ngx_http_ssi_filter_module.c static ngx_str_t *ngx_http_ssi_get_variable(ngx_http_request_t *r, r 79 http/modules/ngx_http_ssi_filter_module.c static ngx_int_t ngx_http_ssi_evaluate_string(ngx_http_request_t *r, r 82 http/modules/ngx_http_ssi_filter_module.c static ngx_int_t ngx_http_ssi_include(ngx_http_request_t *r, r 84 http/modules/ngx_http_ssi_filter_module.c static ngx_int_t ngx_http_ssi_stub_output(ngx_http_request_t *r, void *data, r 86 http/modules/ngx_http_ssi_filter_module.c static ngx_int_t ngx_http_ssi_set_variable(ngx_http_request_t *r, void *data, r 88 http/modules/ngx_http_ssi_filter_module.c static ngx_int_t ngx_http_ssi_echo(ngx_http_request_t *r, r 90 http/modules/ngx_http_ssi_filter_module.c static ngx_int_t ngx_http_ssi_config(ngx_http_request_t *r, r 92 http/modules/ngx_http_ssi_filter_module.c static ngx_int_t ngx_http_ssi_set(ngx_http_request_t *r, r 94 http/modules/ngx_http_ssi_filter_module.c static ngx_int_t ngx_http_ssi_if(ngx_http_request_t *r, r 96 http/modules/ngx_http_ssi_filter_module.c static ngx_int_t ngx_http_ssi_else(ngx_http_request_t *r, r 98 http/modules/ngx_http_ssi_filter_module.c static ngx_int_t ngx_http_ssi_endif(ngx_http_request_t *r, r 100 http/modules/ngx_http_ssi_filter_module.c static ngx_int_t ngx_http_ssi_block(ngx_http_request_t *r, r 102 http/modules/ngx_http_ssi_filter_module.c static ngx_int_t ngx_http_ssi_endblock(ngx_http_request_t *r, r 105 http/modules/ngx_http_ssi_filter_module.c static ngx_int_t ngx_http_ssi_date_gmt_local_variable(ngx_http_request_t *r, r 318 http/modules/ngx_http_ssi_filter_module.c ngx_http_ssi_header_filter(ngx_http_request_t *r) r 323 http/modules/ngx_http_ssi_filter_module.c slcf = ngx_http_get_module_loc_conf(r, ngx_http_ssi_filter_module); r 326 http/modules/ngx_http_ssi_filter_module.c || r->headers_out.content_length_n == 0 r 327 http/modules/ngx_http_ssi_filter_module.c || ngx_http_test_content_type(r, &slcf->types) == NULL) r 329 http/modules/ngx_http_ssi_filter_module.c return ngx_http_next_header_filter(r); r 332 http/modules/ngx_http_ssi_filter_module.c ctx = ngx_pcalloc(r->pool, sizeof(ngx_http_ssi_ctx_t)); r 337 http/modules/ngx_http_ssi_filter_module.c ngx_http_set_ctx(r, ctx, ngx_http_ssi_filter_module); r 349 http/modules/ngx_http_ssi_filter_module.c ctx->params.pool = r->pool; r 355 http/modules/ngx_http_ssi_filter_module.c r->filter_need_in_memory = 1; r 357 http/modules/ngx_http_ssi_filter_module.c if (r == r->main) { r 358 http/modules/ngx_http_ssi_filter_module.c ngx_http_clear_content_length(r); r 359 http/modules/ngx_http_ssi_filter_module.c ngx_http_clear_last_modified(r); r 360 http/modules/ngx_http_ssi_filter_module.c ngx_http_clear_accept_ranges(r); r 363 http/modules/ngx_http_ssi_filter_module.c return ngx_http_next_header_filter(r); r 368 http/modules/ngx_http_ssi_filter_module.c ngx_http_ssi_body_filter(ngx_http_request_t *r, ngx_chain_t *in) r 384 http/modules/ngx_http_ssi_filter_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_ssi_filter_module); r 392 http/modules/ngx_http_ssi_filter_module.c return ngx_http_next_body_filter(r, in); r 398 http/modules/ngx_http_ssi_filter_module.c if (ngx_chain_add_copy(r->pool, &ctx->in, in) != NGX_OK) { r 403 http/modules/ngx_http_ssi_filter_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 404 http/modules/ngx_http_ssi_filter_module.c "http ssi filter \"%V?%V\"", &r->uri, &r->args); r 408 http/modules/ngx_http_ssi_filter_module.c if (r != r->connection->data) { r 409 http/modules/ngx_http_ssi_filter_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 417 http/modules/ngx_http_ssi_filter_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 424 http/modules/ngx_http_ssi_filter_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 428 http/modules/ngx_http_ssi_filter_module.c return ngx_http_next_body_filter(r, NULL); r 432 http/modules/ngx_http_ssi_filter_module.c slcf = ngx_http_get_module_loc_conf(r, ngx_http_ssi_filter_module); r 451 http/modules/ngx_http_ssi_filter_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 454 http/modules/ngx_http_ssi_filter_module.c rc = ngx_http_ssi_parse(r, ctx); r 456 http/modules/ngx_http_ssi_filter_module.c ngx_log_debug4(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 468 http/modules/ngx_http_ssi_filter_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 480 http/modules/ngx_http_ssi_filter_module.c b = ngx_calloc_buf(r->pool); r 485 http/modules/ngx_http_ssi_filter_module.c cl = ngx_alloc_chain_link(r->pool); r 509 http/modules/ngx_http_ssi_filter_module.c b = ngx_alloc_buf(r->pool); r 514 http/modules/ngx_http_ssi_filter_module.c cl = ngx_alloc_chain_link(r->pool); r 550 http/modules/ngx_http_ssi_filter_module.c b = ngx_create_temp_buf(r->pool, r 565 http/modules/ngx_http_ssi_filter_module.c cl = ngx_alloc_chain_link(r->pool); r 575 http/modules/ngx_http_ssi_filter_module.c mctx = ngx_http_get_module_ctx(r->main, r 610 http/modules/ngx_http_ssi_filter_module.c smcf = ngx_http_get_module_main_conf(r, r 618 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 631 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 651 http/modules/ngx_http_ssi_filter_module.c b = ngx_create_temp_buf(r->pool, len); r 657 http/modules/ngx_http_ssi_filter_module.c cl = ngx_alloc_chain_link(r->pool); r 690 http/modules/ngx_http_ssi_filter_module.c mctx = ngx_http_get_module_ctx(r->main, r 713 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 738 http/modules/ngx_http_ssi_filter_module.c r->connection->log, 0, r 761 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 772 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 783 http/modules/ngx_http_ssi_filter_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 786 http/modules/ngx_http_ssi_filter_module.c if (ngx_http_ssi_output(r, ctx) == NGX_ERROR) { r 791 http/modules/ngx_http_ssi_filter_module.c rc = cmd->handler(r, ctx, params); r 798 http/modules/ngx_http_ssi_filter_module.c ngx_http_ssi_buffered(r, ctx); r 819 http/modules/ngx_http_ssi_filter_module.c b = ngx_calloc_buf(r->pool); r 824 http/modules/ngx_http_ssi_filter_module.c cl = ngx_alloc_chain_link(r->pool); r 852 http/modules/ngx_http_ssi_filter_module.c b = ngx_calloc_buf(r->pool); r 857 http/modules/ngx_http_ssi_filter_module.c cl = ngx_alloc_chain_link(r->pool); r 889 http/modules/ngx_http_ssi_filter_module.c return ngx_http_ssi_output(r, ctx); r 894 http/modules/ngx_http_ssi_filter_module.c ngx_http_ssi_output(ngx_http_request_t *r, ngx_http_ssi_ctx_t *ctx) r 903 http/modules/ngx_http_ssi_filter_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 906 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ALERT, r->connection->log, 0, r 915 http/modules/ngx_http_ssi_filter_module.c rc = ngx_http_next_body_filter(r, ctx->out); r 951 http/modules/ngx_http_ssi_filter_module.c ngx_http_ssi_buffered(r, ctx); r 958 http/modules/ngx_http_ssi_filter_module.c ngx_http_ssi_buffered(ngx_http_request_t *r, ngx_http_ssi_ctx_t *ctx) r 961 http/modules/ngx_http_ssi_filter_module.c r->buffered |= NGX_HTTP_SSI_BUFFERED; r 964 http/modules/ngx_http_ssi_filter_module.c r->buffered &= ~NGX_HTTP_SSI_BUFFERED; r 970 http/modules/ngx_http_ssi_filter_module.c ngx_http_ssi_parse(ngx_http_request_t *r, ngx_http_ssi_ctx_t *ctx) r 1125 http/modules/ngx_http_ssi_filter_module.c ctx->command.data = ngx_pnalloc(r->pool, r 1159 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1192 http/modules/ngx_http_ssi_filter_module.c ctx->param->key.data = ngx_pnalloc(r->pool, r 1203 http/modules/ngx_http_ssi_filter_module.c ctx->param->value.data = ngx_pnalloc(r->pool, r 1236 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1244 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1275 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1307 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1330 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1358 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1382 http/modules/ngx_http_ssi_filter_module.c value = ngx_pnalloc(r->pool, ctx->param->value.len + 1); r 1410 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1428 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1452 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1524 http/modules/ngx_http_ssi_filter_module.c ngx_http_ssi_get_variable(ngx_http_request_t *r, ngx_str_t *name, r 1532 http/modules/ngx_http_ssi_filter_module.c ctx = ngx_http_get_module_ctx(r->main, ngx_http_ssi_filter_module); r 1571 http/modules/ngx_http_ssi_filter_module.c ngx_http_ssi_evaluate_string(ngx_http_request_t *r, ngx_http_ssi_ctx_t *ctx, r 1591 http/modules/ngx_http_ssi_filter_module.c for (prefix = r->uri.len; prefix; prefix--) { r 1592 http/modules/ngx_http_ssi_filter_module.c if (r->uri.data[prefix - 1] == '/') { r 1600 http/modules/ngx_http_ssi_filter_module.c data = ngx_pnalloc(r->pool, len); r 1605 http/modules/ngx_http_ssi_filter_module.c p = ngx_copy(data, r->uri.data, prefix); r 1638 http/modules/ngx_http_ssi_filter_module.c if (ngx_array_init(&lengths, r->pool, 8, sizeof(size_t *)) != NGX_OK) { r 1642 http/modules/ngx_http_ssi_filter_module.c if (ngx_array_init(&values, r->pool, 8, sizeof(u_char *)) != NGX_OK) { r 1694 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1706 http/modules/ngx_http_ssi_filter_module.c val = ngx_http_ssi_get_variable(r, &var, key); r 1709 http/modules/ngx_http_ssi_filter_module.c vv = ngx_http_get_variable(r, &var, key); r 1784 http/modules/ngx_http_ssi_filter_module.c for (prefix = r->uri.len; prefix; prefix--) { r 1785 http/modules/ngx_http_ssi_filter_module.c if (r->uri.data[prefix - 1] == '/') { r 1797 http/modules/ngx_http_ssi_filter_module.c p = ngx_pnalloc(r->pool, len + ((flags & NGX_HTTP_SSI_ADD_ZERO) ? 1 : 0)); r 1805 http/modules/ngx_http_ssi_filter_module.c p = ngx_copy(p, r->uri.data, prefix); r 1815 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1823 http/modules/ngx_http_ssi_filter_module.c ngx_http_ssi_include(ngx_http_request_t *r, ngx_http_ssi_ctx_t *ctx, r 1846 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1853 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1859 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1867 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1880 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1892 http/modules/ngx_http_ssi_filter_module.c rc = ngx_http_ssi_evaluate_string(r, ctx, uri, NGX_HTTP_SSI_ADD_PREFIX); r 1910 http/modules/ngx_http_ssi_filter_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1916 http/modules/ngx_http_ssi_filter_module.c if (ngx_http_parse_unsafe_uri(r, uri, &args, &flags) != NGX_OK) { r 1922 http/modules/ngx_http_ssi_filter_module.c mctx = ngx_http_get_module_ctx(r->main, ngx_http_ssi_filter_module); r 1936 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1942 http/modules/ngx_http_ssi_filter_module.c psr = ngx_palloc(r->pool, sizeof(ngx_http_post_subrequest_t)); r 1962 http/modules/ngx_http_ssi_filter_module.c b = ngx_alloc_buf(r->pool); r 1967 http/modules/ngx_http_ssi_filter_module.c cl = ngx_alloc_chain_link(r->pool); r 1998 http/modules/ngx_http_ssi_filter_module.c psr = ngx_palloc(r->pool, sizeof(ngx_http_post_subrequest_t)); r 2004 http/modules/ngx_http_ssi_filter_module.c psr->data = ngx_http_ssi_get_variable(r, set, key); r 2009 http/modules/ngx_http_ssi_filter_module.c mctx->variables = ngx_list_create(r->pool, 4, r 2030 http/modules/ngx_http_ssi_filter_module.c if (ngx_http_subrequest(r, uri, &args, &sr, psr, flags) != NGX_OK) { r 2044 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 2053 http/modules/ngx_http_ssi_filter_module.c ngx_http_ssi_stub_output(ngx_http_request_t *r, void *data, ngx_int_t rc) r 2057 http/modules/ngx_http_ssi_filter_module.c if (rc == NGX_ERROR || r->connection->error || r->request_output) { r 2061 http/modules/ngx_http_ssi_filter_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2062 http/modules/ngx_http_ssi_filter_module.c "ssi stub output: \"%V?%V\"", &r->uri, &r->args); r 2066 http/modules/ngx_http_ssi_filter_module.c if (!r->header_sent) { r 2067 http/modules/ngx_http_ssi_filter_module.c r->headers_out.content_type_len = r 2068 http/modules/ngx_http_ssi_filter_module.c r->parent->headers_out.content_type_len; r 2069 http/modules/ngx_http_ssi_filter_module.c r->headers_out.content_type = r->parent->headers_out.content_type; r 2071 http/modules/ngx_http_ssi_filter_module.c if (ngx_http_send_header(r) == NGX_ERROR) { r 2076 http/modules/ngx_http_ssi_filter_module.c return ngx_http_output_filter(r, out); r 2081 http/modules/ngx_http_ssi_filter_module.c ngx_http_ssi_set_variable(ngx_http_request_t *r, void *data, ngx_int_t rc) r 2085 http/modules/ngx_http_ssi_filter_module.c if (r->upstream) { r 2086 http/modules/ngx_http_ssi_filter_module.c value->len = r->upstream->buffer.last - r->upstream->buffer.pos; r 2087 http/modules/ngx_http_ssi_filter_module.c value->data = r->upstream->buffer.pos; r 2095 http/modules/ngx_http_ssi_filter_module.c ngx_http_ssi_echo(ngx_http_request_t *r, ngx_http_ssi_ctx_t *ctx, r 2108 http/modules/ngx_http_ssi_filter_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2113 http/modules/ngx_http_ssi_filter_module.c value = ngx_http_ssi_get_variable(r, var, key); r 2116 http/modules/ngx_http_ssi_filter_module.c vv = ngx_http_get_variable(r, var, key); r 2161 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 2176 http/modules/ngx_http_ssi_filter_module.c p = ngx_pnalloc(r->pool, value->len + len); r 2191 http/modules/ngx_http_ssi_filter_module.c p = ngx_pnalloc(r->pool, value->len + len); r 2207 http/modules/ngx_http_ssi_filter_module.c b = ngx_calloc_buf(r->pool); r 2212 http/modules/ngx_http_ssi_filter_module.c cl = ngx_alloc_chain_link(r->pool); r 2231 http/modules/ngx_http_ssi_filter_module.c ngx_http_ssi_config(ngx_http_request_t *r, ngx_http_ssi_ctx_t *ctx, r 2240 http/modules/ngx_http_ssi_filter_module.c ctx->timefmt.data = ngx_pnalloc(r->pool, value->len + 1); r 2259 http/modules/ngx_http_ssi_filter_module.c ngx_http_ssi_set(ngx_http_request_t *r, ngx_http_ssi_ctx_t *ctx, r 2267 http/modules/ngx_http_ssi_filter_module.c mctx = ngx_http_get_module_ctx(r->main, ngx_http_ssi_filter_module); r 2270 http/modules/ngx_http_ssi_filter_module.c mctx->variables = ngx_list_create(r->pool, 4, r 2280 http/modules/ngx_http_ssi_filter_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2283 http/modules/ngx_http_ssi_filter_module.c rc = ngx_http_ssi_evaluate_string(r, ctx, value, 0); r 2291 http/modules/ngx_http_ssi_filter_module.c vv = ngx_http_ssi_get_variable(r, name, key); r 2307 http/modules/ngx_http_ssi_filter_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2315 http/modules/ngx_http_ssi_filter_module.c ngx_http_ssi_if(ngx_http_request_t *r, ngx_http_ssi_ctx_t *ctx, r 2325 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 2338 http/modules/ngx_http_ssi_filter_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2369 http/modules/ngx_http_ssi_filter_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2372 http/modules/ngx_http_ssi_filter_module.c rc = ngx_http_ssi_evaluate_string(r, ctx, &left, flags); r 2378 http/modules/ngx_http_ssi_filter_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2433 http/modules/ngx_http_ssi_filter_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2436 http/modules/ngx_http_ssi_filter_module.c rc = ngx_http_ssi_evaluate_string(r, ctx, &right, flags); r 2442 http/modules/ngx_http_ssi_filter_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2463 http/modules/ngx_http_ssi_filter_module.c rgc.pool = r->pool; r 2468 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, "%V", &rgc.err); r 2475 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ALERT, r->connection->log, 0, r 2481 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ALERT, r->connection->log, 0, r 2503 http/modules/ngx_http_ssi_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 2511 http/modules/ngx_http_ssi_filter_module.c ngx_http_ssi_else(ngx_http_request_t *r, ngx_http_ssi_ctx_t *ctx, r 2514 http/modules/ngx_http_ssi_filter_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2530 http/modules/ngx_http_ssi_filter_module.c ngx_http_ssi_endif(ngx_http_request_t *r, ngx_http_ssi_ctx_t *ctx, r 2533 http/modules/ngx_http_ssi_filter_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2545 http/modules/ngx_http_ssi_filter_module.c ngx_http_ssi_block(ngx_http_request_t *r, ngx_http_ssi_ctx_t *ctx, r 2551 http/modules/ngx_http_ssi_filter_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2554 http/modules/ngx_http_ssi_filter_module.c mctx = ngx_http_get_module_ctx(r->main, ngx_http_ssi_filter_module); r 2557 http/modules/ngx_http_ssi_filter_module.c mctx->blocks = ngx_array_create(r->pool, 4, r 2581 http/modules/ngx_http_ssi_filter_module.c ngx_http_ssi_endblock(ngx_http_request_t *r, ngx_http_ssi_ctx_t *ctx, r 2584 http/modules/ngx_http_ssi_filter_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2595 http/modules/ngx_http_ssi_filter_module.c ngx_http_ssi_date_gmt_local_variable(ngx_http_request_t *r, r 2609 http/modules/ngx_http_ssi_filter_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_ssi_filter_module); r 2615 http/modules/ngx_http_ssi_filter_module.c v->data = ngx_pnalloc(r->pool, NGX_TIME_T_LEN); r 2637 http/modules/ngx_http_ssi_filter_module.c v->data = ngx_pnalloc(r->pool, v->len); r 80 http/modules/ngx_http_ssi_filter_module.h typedef ngx_int_t (*ngx_http_ssi_command_pt) (ngx_http_request_t *r, r 19 http/modules/ngx_http_ssl_module.c static ngx_int_t ngx_http_ssl_static_variable(ngx_http_request_t *r, r 21 http/modules/ngx_http_ssl_module.c static ngx_int_t ngx_http_ssl_variable(ngx_http_request_t *r, r 217 http/modules/ngx_http_ssl_module.c ngx_http_ssl_static_variable(ngx_http_request_t *r, r 225 http/modules/ngx_http_ssl_module.c if (r->connection->ssl) { r 227 http/modules/ngx_http_ssl_module.c (void) handler(r->connection, NULL, &s); r 248 http/modules/ngx_http_ssl_module.c ngx_http_ssl_variable(ngx_http_request_t *r, ngx_http_variable_value_t *v, r 255 http/modules/ngx_http_ssl_module.c if (r->connection->ssl) { r 257 http/modules/ngx_http_ssl_module.c if (handler(r->connection, r->pool, &s) != NGX_OK) { r 12 http/modules/ngx_http_static_module.c static ngx_int_t ngx_http_static_handler(ngx_http_request_t *r); r 48 http/modules/ngx_http_static_module.c ngx_http_static_handler(ngx_http_request_t *r) r 61 http/modules/ngx_http_static_module.c if (!(r->method & (NGX_HTTP_GET|NGX_HTTP_HEAD|NGX_HTTP_POST))) { r 65 http/modules/ngx_http_static_module.c if (r->uri.data[r->uri.len - 1] == '/') { r 69 http/modules/ngx_http_static_module.c log = r->connection->log; r 76 http/modules/ngx_http_static_module.c last = ngx_http_map_uri_to_path(r, &path, &root, 0); r 86 http/modules/ngx_http_static_module.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 97 http/modules/ngx_http_static_module.c if (ngx_open_cached_file(clcf->open_file_cache, &path, &of, r->pool) r 134 http/modules/ngx_http_static_module.c r->root_tested = !r->error_page; r 142 http/modules/ngx_http_static_module.c r->headers_out.location = ngx_palloc(r->pool, sizeof(ngx_table_elt_t)); r 143 http/modules/ngx_http_static_module.c if (r->headers_out.location == NULL) { r 147 http/modules/ngx_http_static_module.c len = r->uri.len + 1; r 149 http/modules/ngx_http_static_module.c if (!clcf->alias && clcf->root_lengths == NULL && r->args.len == 0) { r 155 http/modules/ngx_http_static_module.c if (r->args.len) { r 156 http/modules/ngx_http_static_module.c len += r->args.len + 1; r 159 http/modules/ngx_http_static_module.c location = ngx_pnalloc(r->pool, len); r 164 http/modules/ngx_http_static_module.c last = ngx_copy(location, r->uri.data, r->uri.len); r 168 http/modules/ngx_http_static_module.c if (r->args.len) { r 170 http/modules/ngx_http_static_module.c ngx_memcpy(++last, r->args.data, r->args.len); r 179 http/modules/ngx_http_static_module.c r->headers_out.location->value.len = len; r 180 http/modules/ngx_http_static_module.c r->headers_out.location->value.data = location; r 196 http/modules/ngx_http_static_module.c if (r->method & NGX_HTTP_POST) { r 200 http/modules/ngx_http_static_module.c rc = ngx_http_discard_request_body(r); r 208 http/modules/ngx_http_static_module.c r->headers_out.status = NGX_HTTP_OK; r 209 http/modules/ngx_http_static_module.c r->headers_out.content_length_n = of.size; r 210 http/modules/ngx_http_static_module.c r->headers_out.last_modified_time = of.mtime; r 212 http/modules/ngx_http_static_module.c if (ngx_http_set_content_type(r) != NGX_OK) { r 216 http/modules/ngx_http_static_module.c if (r != r->main && of.size == 0) { r 217 http/modules/ngx_http_static_module.c return ngx_http_send_header(r); r 220 http/modules/ngx_http_static_module.c r->allow_ranges = 1; r 224 http/modules/ngx_http_static_module.c b = ngx_pcalloc(r->pool, sizeof(ngx_buf_t)); r 229 http/modules/ngx_http_static_module.c b->file = ngx_pcalloc(r->pool, sizeof(ngx_file_t)); r 234 http/modules/ngx_http_static_module.c rc = ngx_http_send_header(r); r 236 http/modules/ngx_http_static_module.c if (rc == NGX_ERROR || rc > NGX_OK || r->header_only) { r 244 http/modules/ngx_http_static_module.c b->last_buf = (r == r->main) ? 1: 0; r 255 http/modules/ngx_http_static_module.c return ngx_http_output_filter(r, &out); r 60 http/modules/ngx_http_stub_status_module.c static ngx_int_t ngx_http_status_handler(ngx_http_request_t *r) r 68 http/modules/ngx_http_stub_status_module.c if (r->method != NGX_HTTP_GET && r->method != NGX_HTTP_HEAD) { r 72 http/modules/ngx_http_stub_status_module.c rc = ngx_http_discard_request_body(r); r 78 http/modules/ngx_http_stub_status_module.c ngx_str_set(&r->headers_out.content_type, "text/plain"); r 80 http/modules/ngx_http_stub_status_module.c if (r->method == NGX_HTTP_HEAD) { r 81 http/modules/ngx_http_stub_status_module.c r->headers_out.status = NGX_HTTP_OK; r 83 http/modules/ngx_http_stub_status_module.c rc = ngx_http_send_header(r); r 85 http/modules/ngx_http_stub_status_module.c if (rc == NGX_ERROR || rc > NGX_OK || r->header_only) { r 95 http/modules/ngx_http_stub_status_module.c b = ngx_create_temp_buf(r->pool, size); r 120 http/modules/ngx_http_stub_status_module.c r->headers_out.status = NGX_HTTP_OK; r 121 http/modules/ngx_http_stub_status_module.c r->headers_out.content_length_n = b->last - b->pos; r 125 http/modules/ngx_http_stub_status_module.c rc = ngx_http_send_header(r); r 127 http/modules/ngx_http_stub_status_module.c if (rc == NGX_ERROR || rc > NGX_OK || r->header_only) { r 131 http/modules/ngx_http_stub_status_module.c return ngx_http_output_filter(r, &out); r 55 http/modules/ngx_http_sub_filter_module.c static ngx_int_t ngx_http_sub_output(ngx_http_request_t *r, r 57 http/modules/ngx_http_sub_filter_module.c static ngx_int_t ngx_http_sub_parse(ngx_http_request_t *r, r 131 http/modules/ngx_http_sub_filter_module.c ngx_http_sub_header_filter(ngx_http_request_t *r) r 136 http/modules/ngx_http_sub_filter_module.c slcf = ngx_http_get_module_loc_conf(r, ngx_http_sub_filter_module); r 139 http/modules/ngx_http_sub_filter_module.c || r->headers_out.content_length_n == 0 r 140 http/modules/ngx_http_sub_filter_module.c || ngx_http_test_content_type(r, &slcf->types) == NULL) r 142 http/modules/ngx_http_sub_filter_module.c return ngx_http_next_header_filter(r); r 145 http/modules/ngx_http_sub_filter_module.c ctx = ngx_pcalloc(r->pool, sizeof(ngx_http_sub_ctx_t)); r 150 http/modules/ngx_http_sub_filter_module.c ctx->saved.data = ngx_pnalloc(r->pool, slcf->match.len); r 155 http/modules/ngx_http_sub_filter_module.c ctx->looked.data = ngx_pnalloc(r->pool, slcf->match.len); r 160 http/modules/ngx_http_sub_filter_module.c ngx_http_set_ctx(r, ctx, ngx_http_sub_filter_module); r 165 http/modules/ngx_http_sub_filter_module.c r->filter_need_in_memory = 1; r 167 http/modules/ngx_http_sub_filter_module.c if (r == r->main) { r 168 http/modules/ngx_http_sub_filter_module.c ngx_http_clear_content_length(r); r 169 http/modules/ngx_http_sub_filter_module.c ngx_http_clear_last_modified(r); r 172 http/modules/ngx_http_sub_filter_module.c return ngx_http_next_header_filter(r); r 177 http/modules/ngx_http_sub_filter_module.c ngx_http_sub_body_filter(ngx_http_request_t *r, ngx_chain_t *in) r 185 http/modules/ngx_http_sub_filter_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_sub_filter_module); r 188 http/modules/ngx_http_sub_filter_module.c return ngx_http_next_body_filter(r, in); r 196 http/modules/ngx_http_sub_filter_module.c return ngx_http_next_body_filter(r, in); r 202 http/modules/ngx_http_sub_filter_module.c if (ngx_http_sub_output(r, ctx) == NGX_ERROR) { r 207 http/modules/ngx_http_sub_filter_module.c return ngx_http_next_body_filter(r, in); r 213 http/modules/ngx_http_sub_filter_module.c if (ngx_chain_add_copy(r->pool, &ctx->in, in) != NGX_OK) { r 218 http/modules/ngx_http_sub_filter_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 219 http/modules/ngx_http_sub_filter_module.c "http sub filter \"%V\"", &r->uri); r 238 http/modules/ngx_http_sub_filter_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 241 http/modules/ngx_http_sub_filter_module.c rc = ngx_http_sub_parse(r, ctx); r 243 http/modules/ngx_http_sub_filter_module.c ngx_log_debug4(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 253 http/modules/ngx_http_sub_filter_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 265 http/modules/ngx_http_sub_filter_module.c b = ngx_calloc_buf(r->pool); r 270 http/modules/ngx_http_sub_filter_module.c cl = ngx_alloc_chain_link(r->pool); r 278 http/modules/ngx_http_sub_filter_module.c b->pos = ngx_pnalloc(r->pool, ctx->saved.len); r 299 http/modules/ngx_http_sub_filter_module.c b = ngx_alloc_buf(r->pool); r 304 http/modules/ngx_http_sub_filter_module.c cl = ngx_alloc_chain_link(r->pool); r 346 http/modules/ngx_http_sub_filter_module.c b = ngx_calloc_buf(r->pool); r 351 http/modules/ngx_http_sub_filter_module.c cl = ngx_alloc_chain_link(r->pool); r 356 http/modules/ngx_http_sub_filter_module.c slcf = ngx_http_get_module_loc_conf(r, ngx_http_sub_filter_module); r 360 http/modules/ngx_http_sub_filter_module.c if (ngx_http_complex_value(r, &slcf->value, &ctx->sub) r 395 http/modules/ngx_http_sub_filter_module.c b = ngx_calloc_buf(r->pool); r 400 http/modules/ngx_http_sub_filter_module.c cl = ngx_alloc_chain_link(r->pool); r 431 http/modules/ngx_http_sub_filter_module.c return ngx_http_sub_output(r, ctx); r 436 http/modules/ngx_http_sub_filter_module.c ngx_http_sub_output(ngx_http_request_t *r, ngx_http_sub_ctx_t *ctx) r 445 http/modules/ngx_http_sub_filter_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 448 http/modules/ngx_http_sub_filter_module.c ngx_log_error(NGX_LOG_ALERT, r->connection->log, 0, r 457 http/modules/ngx_http_sub_filter_module.c rc = ngx_http_next_body_filter(r, ctx->out); r 494 http/modules/ngx_http_sub_filter_module.c r->buffered |= NGX_HTTP_SUB_BUFFERED; r 497 http/modules/ngx_http_sub_filter_module.c r->buffered &= ~NGX_HTTP_SUB_BUFFERED; r 505 http/modules/ngx_http_sub_filter_module.c ngx_http_sub_parse(ngx_http_request_t *r, ngx_http_sub_ctx_t *ctx) r 517 http/modules/ngx_http_sub_filter_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, "once"); r 26 http/modules/ngx_http_upstream_ip_hash_module.c static ngx_int_t ngx_http_upstream_init_ip_hash_peer(ngx_http_request_t *r, r 92 http/modules/ngx_http_upstream_ip_hash_module.c ngx_http_upstream_init_ip_hash_peer(ngx_http_request_t *r, r 99 http/modules/ngx_http_upstream_ip_hash_module.c iphp = ngx_palloc(r->pool, sizeof(ngx_http_upstream_ip_hash_peer_data_t)); r 104 http/modules/ngx_http_upstream_ip_hash_module.c r->upstream->peer.data = &iphp->rrp; r 106 http/modules/ngx_http_upstream_ip_hash_module.c if (ngx_http_upstream_init_round_robin_peer(r, us) != NGX_OK) { r 110 http/modules/ngx_http_upstream_ip_hash_module.c r->upstream->peer.get = ngx_http_upstream_get_ip_hash_peer; r 114 http/modules/ngx_http_upstream_ip_hash_module.c if (r->connection->sockaddr->sa_family == AF_INET) { r 116 http/modules/ngx_http_upstream_ip_hash_module.c sin = (struct sockaddr_in *) r->connection->sockaddr; r 44 http/modules/ngx_http_userid_filter_module.c static ngx_http_userid_ctx_t *ngx_http_userid_get_uid(ngx_http_request_t *r, r 46 http/modules/ngx_http_userid_filter_module.c static ngx_int_t ngx_http_userid_variable(ngx_http_request_t *r, r 48 http/modules/ngx_http_userid_filter_module.c static ngx_int_t ngx_http_userid_set_uid(ngx_http_request_t *r, r 50 http/modules/ngx_http_userid_filter_module.c static ngx_int_t ngx_http_userid_create_uid(ngx_http_request_t *r, r 193 http/modules/ngx_http_userid_filter_module.c ngx_http_userid_filter(ngx_http_request_t *r) r 198 http/modules/ngx_http_userid_filter_module.c if (r != r->main) { r 199 http/modules/ngx_http_userid_filter_module.c return ngx_http_next_header_filter(r); r 202 http/modules/ngx_http_userid_filter_module.c conf = ngx_http_get_module_loc_conf(r, ngx_http_userid_filter_module); r 205 http/modules/ngx_http_userid_filter_module.c return ngx_http_next_header_filter(r); r 208 http/modules/ngx_http_userid_filter_module.c ctx = ngx_http_userid_get_uid(r, conf); r 214 http/modules/ngx_http_userid_filter_module.c if (ngx_http_userid_set_uid(r, ctx, conf) == NGX_OK) { r 215 http/modules/ngx_http_userid_filter_module.c return ngx_http_next_header_filter(r); r 223 http/modules/ngx_http_userid_filter_module.c ngx_http_userid_got_variable(ngx_http_request_t *r, r 229 http/modules/ngx_http_userid_filter_module.c conf = ngx_http_get_module_loc_conf(r->main, ngx_http_userid_filter_module); r 236 http/modules/ngx_http_userid_filter_module.c ctx = ngx_http_userid_get_uid(r->main, conf); r 243 http/modules/ngx_http_userid_filter_module.c return ngx_http_userid_variable(r->main, v, &conf->name, ctx->uid_got); r 253 http/modules/ngx_http_userid_filter_module.c ngx_http_userid_set_variable(ngx_http_request_t *r, r 259 http/modules/ngx_http_userid_filter_module.c conf = ngx_http_get_module_loc_conf(r->main, ngx_http_userid_filter_module); r 266 http/modules/ngx_http_userid_filter_module.c ctx = ngx_http_userid_get_uid(r->main, conf); r 272 http/modules/ngx_http_userid_filter_module.c if (ngx_http_userid_create_uid(r->main, ctx, conf) != NGX_OK) { r 281 http/modules/ngx_http_userid_filter_module.c return ngx_http_userid_variable(r->main, v, &conf->name, ctx->uid_set); r 286 http/modules/ngx_http_userid_filter_module.c ngx_http_userid_get_uid(ngx_http_request_t *r, ngx_http_userid_conf_t *conf) r 293 http/modules/ngx_http_userid_filter_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_userid_filter_module); r 300 http/modules/ngx_http_userid_filter_module.c ctx = ngx_pcalloc(r->pool, sizeof(ngx_http_userid_ctx_t)); r 305 http/modules/ngx_http_userid_filter_module.c ngx_http_set_ctx(r, ctx, ngx_http_userid_filter_module); r 308 http/modules/ngx_http_userid_filter_module.c n = ngx_http_parse_multi_header_lines(&r->headers_in.cookies, &conf->name, r 314 http/modules/ngx_http_userid_filter_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 318 http/modules/ngx_http_userid_filter_module.c cookies = r->headers_in.cookies.elts; r 319 http/modules/ngx_http_userid_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 339 http/modules/ngx_http_userid_filter_module.c cookies = r->headers_in.cookies.elts; r 340 http/modules/ngx_http_userid_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 346 http/modules/ngx_http_userid_filter_module.c ngx_log_debug4(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 356 http/modules/ngx_http_userid_filter_module.c ngx_http_userid_set_uid(ngx_http_request_t *r, ngx_http_userid_ctx_t *ctx, r 364 http/modules/ngx_http_userid_filter_module.c if (ngx_http_userid_create_uid(r, ctx, conf) != NGX_OK) { r 382 http/modules/ngx_http_userid_filter_module.c cookie = ngx_pnalloc(r->pool, len); r 421 http/modules/ngx_http_userid_filter_module.c set_cookie = ngx_list_push(&r->headers_out.headers); r 431 http/modules/ngx_http_userid_filter_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 438 http/modules/ngx_http_userid_filter_module.c p3p = ngx_list_push(&r->headers_out.headers); r 452 http/modules/ngx_http_userid_filter_module.c ngx_http_userid_create_uid(ngx_http_request_t *r, ngx_http_userid_ctx_t *ctx, r 503 http/modules/ngx_http_userid_filter_module.c c = r->connection; r 548 http/modules/ngx_http_userid_filter_module.c ngx_http_userid_variable(ngx_http_request_t *r, ngx_http_variable_value_t *v, r 552 http/modules/ngx_http_userid_filter_module.c v->data = ngx_pnalloc(r->pool, v->len); r 39 http/modules/ngx_http_uwsgi_module.c static ngx_int_t ngx_http_uwsgi_eval(ngx_http_request_t *r, r 41 http/modules/ngx_http_uwsgi_module.c static ngx_int_t ngx_http_uwsgi_create_request(ngx_http_request_t *r); r 42 http/modules/ngx_http_uwsgi_module.c static ngx_int_t ngx_http_uwsgi_reinit_request(ngx_http_request_t *r); r 43 http/modules/ngx_http_uwsgi_module.c static ngx_int_t ngx_http_uwsgi_process_status_line(ngx_http_request_t *r); r 44 http/modules/ngx_http_uwsgi_module.c static ngx_int_t ngx_http_uwsgi_process_header(ngx_http_request_t *r); r 45 http/modules/ngx_http_uwsgi_module.c static ngx_int_t ngx_http_uwsgi_process_header(ngx_http_request_t *r); r 46 http/modules/ngx_http_uwsgi_module.c static void ngx_http_uwsgi_abort_request(ngx_http_request_t *r); r 47 http/modules/ngx_http_uwsgi_module.c static void ngx_http_uwsgi_finalize_request(ngx_http_request_t *r, r 60 http/modules/ngx_http_uwsgi_module.c static ngx_int_t ngx_http_uwsgi_create_key(ngx_http_request_t *r); r 399 http/modules/ngx_http_uwsgi_module.c ngx_http_uwsgi_handler(ngx_http_request_t *r) r 406 http/modules/ngx_http_uwsgi_module.c if (r->subrequest_in_memory) { r 407 http/modules/ngx_http_uwsgi_module.c ngx_log_error(NGX_LOG_ALERT, r->connection->log, 0, r 413 http/modules/ngx_http_uwsgi_module.c if (ngx_http_upstream_create(r) != NGX_OK) { r 417 http/modules/ngx_http_uwsgi_module.c status = ngx_pcalloc(r->pool, sizeof(ngx_http_status_t)); r 422 http/modules/ngx_http_uwsgi_module.c ngx_http_set_ctx(r, status, ngx_http_uwsgi_module); r 424 http/modules/ngx_http_uwsgi_module.c uwcf = ngx_http_get_module_loc_conf(r, ngx_http_uwsgi_module); r 427 http/modules/ngx_http_uwsgi_module.c if (ngx_http_uwsgi_eval(r, uwcf) != NGX_OK) { r 432 http/modules/ngx_http_uwsgi_module.c u = r->upstream; r 450 http/modules/ngx_http_uwsgi_module.c u->pipe = ngx_pcalloc(r->pool, sizeof(ngx_event_pipe_t)); r 456 http/modules/ngx_http_uwsgi_module.c u->pipe->input_ctx = r; r 458 http/modules/ngx_http_uwsgi_module.c rc = ngx_http_read_client_request_body(r, ngx_http_upstream_init); r 469 http/modules/ngx_http_uwsgi_module.c ngx_http_uwsgi_eval(ngx_http_request_t *r, ngx_http_uwsgi_loc_conf_t * uwcf) r 476 http/modules/ngx_http_uwsgi_module.c if (ngx_http_script_run(r, &url.url, uwcf->uwsgi_lengths->elts, 0, r 485 http/modules/ngx_http_uwsgi_module.c if (ngx_parse_url(r->pool, &url) != NGX_OK) { r 487 http/modules/ngx_http_uwsgi_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 494 http/modules/ngx_http_uwsgi_module.c u = r->upstream; r 496 http/modules/ngx_http_uwsgi_module.c u->resolved = ngx_pcalloc(r->pool, sizeof(ngx_http_upstream_resolved_t)); r 520 http/modules/ngx_http_uwsgi_module.c ngx_http_uwsgi_create_key(ngx_http_request_t *r) r 525 http/modules/ngx_http_uwsgi_module.c key = ngx_array_push(&r->cache->keys); r 530 http/modules/ngx_http_uwsgi_module.c uwcf = ngx_http_get_module_loc_conf(r, ngx_http_uwsgi_module); r 532 http/modules/ngx_http_uwsgi_module.c if (ngx_http_complex_value(r, &uwcf->cache_key, key) != NGX_OK) { r 543 http/modules/ngx_http_uwsgi_module.c ngx_http_uwsgi_create_request(ngx_http_request_t *r) r 561 http/modules/ngx_http_uwsgi_module.c uwcf = ngx_http_get_module_loc_conf(r, ngx_http_uwsgi_module); r 566 http/modules/ngx_http_uwsgi_module.c ngx_http_script_flush_no_cacheable_variables(r, uwcf->flushes); r 570 http/modules/ngx_http_uwsgi_module.c le.request = r; r 592 http/modules/ngx_http_uwsgi_module.c ignored = ngx_palloc(r->pool, uwcf->header_params * sizeof(void *)); r 598 http/modules/ngx_http_uwsgi_module.c part = &r->headers_in.headers.part; r 616 http/modules/ngx_http_uwsgi_module.c lowcase_key = ngx_pnalloc(r->pool, allocated); r 654 http/modules/ngx_http_uwsgi_module.c ngx_log_error (NGX_LOG_ALERT, r->connection->log, 0, r 660 http/modules/ngx_http_uwsgi_module.c b = ngx_create_temp_buf(r->pool, len + 4); r 665 http/modules/ngx_http_uwsgi_module.c cl = ngx_alloc_chain_link(r->pool); r 682 http/modules/ngx_http_uwsgi_module.c e.request = r; r 713 http/modules/ngx_http_uwsgi_module.c ngx_log_debug4(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 724 http/modules/ngx_http_uwsgi_module.c part = &r->headers_in.headers.part; r 768 http/modules/ngx_http_uwsgi_module.c ngx_log_debug4(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 782 http/modules/ngx_http_uwsgi_module.c body = r->upstream->request_bufs; r 783 http/modules/ngx_http_uwsgi_module.c r->upstream->request_bufs = cl; r 786 http/modules/ngx_http_uwsgi_module.c b = ngx_alloc_buf(r->pool); r 793 http/modules/ngx_http_uwsgi_module.c cl->next = ngx_alloc_chain_link(r->pool); r 805 http/modules/ngx_http_uwsgi_module.c r->upstream->request_bufs = cl; r 815 http/modules/ngx_http_uwsgi_module.c ngx_http_uwsgi_reinit_request(ngx_http_request_t *r) r 819 http/modules/ngx_http_uwsgi_module.c status = ngx_http_get_module_ctx(r, ngx_http_uwsgi_module); r 830 http/modules/ngx_http_uwsgi_module.c r->upstream->process_header = ngx_http_uwsgi_process_status_line; r 837 http/modules/ngx_http_uwsgi_module.c ngx_http_uwsgi_process_status_line(ngx_http_request_t *r) r 844 http/modules/ngx_http_uwsgi_module.c status = ngx_http_get_module_ctx(r, ngx_http_uwsgi_module); r 850 http/modules/ngx_http_uwsgi_module.c u = r->upstream; r 852 http/modules/ngx_http_uwsgi_module.c rc = ngx_http_parse_status_line(r, &u->buffer, status); r 859 http/modules/ngx_http_uwsgi_module.c r->http_version = NGX_HTTP_VERSION_9; r 863 http/modules/ngx_http_uwsgi_module.c return ngx_http_uwsgi_process_header(r); r 875 http/modules/ngx_http_uwsgi_module.c u->headers_in.status_line.data = ngx_pnalloc(r->pool, len); r 882 http/modules/ngx_http_uwsgi_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 888 http/modules/ngx_http_uwsgi_module.c return ngx_http_uwsgi_process_header(r); r 893 http/modules/ngx_http_uwsgi_module.c ngx_http_uwsgi_process_header(ngx_http_request_t *r) r 902 http/modules/ngx_http_uwsgi_module.c umcf = ngx_http_get_module_main_conf(r, ngx_http_upstream_module); r 906 http/modules/ngx_http_uwsgi_module.c rc = ngx_http_parse_header_line(r, &r->upstream->buffer, 1); r 912 http/modules/ngx_http_uwsgi_module.c h = ngx_list_push(&r->upstream->headers_in.headers); r 917 http/modules/ngx_http_uwsgi_module.c h->hash = r->header_hash; r 919 http/modules/ngx_http_uwsgi_module.c h->key.len = r->header_name_end - r->header_name_start; r 920 http/modules/ngx_http_uwsgi_module.c h->value.len = r->header_end - r->header_start; r 922 http/modules/ngx_http_uwsgi_module.c h->key.data = ngx_pnalloc(r->pool, r 932 http/modules/ngx_http_uwsgi_module.c ngx_cpystrn(h->key.data, r->header_name_start, h->key.len + 1); r 933 http/modules/ngx_http_uwsgi_module.c ngx_cpystrn(h->value.data, r->header_start, h->value.len + 1); r 935 http/modules/ngx_http_uwsgi_module.c if (h->key.len == r->lowcase_index) { r 936 http/modules/ngx_http_uwsgi_module.c ngx_memcpy(h->lowcase_key, r->lowcase_header, h->key.len); r 945 http/modules/ngx_http_uwsgi_module.c if (hh && hh->handler(r, h, hh->offset) != NGX_OK) { r 949 http/modules/ngx_http_uwsgi_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 959 http/modules/ngx_http_uwsgi_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 962 http/modules/ngx_http_uwsgi_module.c if (r->http_version > NGX_HTTP_VERSION_9) { r 966 http/modules/ngx_http_uwsgi_module.c u = r->upstream; r 973 http/modules/ngx_http_uwsgi_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 979 http/modules/ngx_http_uwsgi_module.c r->http_version = NGX_HTTP_VERSION_10; r 984 http/modules/ngx_http_uwsgi_module.c r->http_version = NGX_HTTP_VERSION_10; r 990 http/modules/ngx_http_uwsgi_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1010 http/modules/ngx_http_uwsgi_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1019 http/modules/ngx_http_uwsgi_module.c ngx_http_uwsgi_abort_request(ngx_http_request_t *r) r 1021 http/modules/ngx_http_uwsgi_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1029 http/modules/ngx_http_uwsgi_module.c ngx_http_uwsgi_finalize_request(ngx_http_request_t *r, ngx_int_t rc) r 1031 http/modules/ngx_http_uwsgi_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 64 http/modules/ngx_http_xslt_filter_module.c static ngx_int_t ngx_http_xslt_send(ngx_http_request_t *r, r 66 http/modules/ngx_http_xslt_filter_module.c static ngx_int_t ngx_http_xslt_add_chunk(ngx_http_request_t *r, r 75 http/modules/ngx_http_xslt_filter_module.c static ngx_buf_t *ngx_http_xslt_apply_stylesheet(ngx_http_request_t *r, r 77 http/modules/ngx_http_xslt_filter_module.c static ngx_int_t ngx_http_xslt_params(ngx_http_request_t *r, r 166 http/modules/ngx_http_xslt_filter_module.c ngx_http_xslt_header_filter(ngx_http_request_t *r) r 171 http/modules/ngx_http_xslt_filter_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 174 http/modules/ngx_http_xslt_filter_module.c if (r->headers_out.status == NGX_HTTP_NOT_MODIFIED) { r 175 http/modules/ngx_http_xslt_filter_module.c return ngx_http_next_header_filter(r); r 178 http/modules/ngx_http_xslt_filter_module.c conf = ngx_http_get_module_loc_conf(r, ngx_http_xslt_filter_module); r 181 http/modules/ngx_http_xslt_filter_module.c || ngx_http_test_content_type(r, &conf->types) == NULL) r 183 http/modules/ngx_http_xslt_filter_module.c return ngx_http_next_header_filter(r); r 186 http/modules/ngx_http_xslt_filter_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_xslt_filter_module); r 189 http/modules/ngx_http_xslt_filter_module.c return ngx_http_next_header_filter(r); r 192 http/modules/ngx_http_xslt_filter_module.c ctx = ngx_pcalloc(r->pool, sizeof(ngx_http_xslt_filter_ctx_t)); r 197 http/modules/ngx_http_xslt_filter_module.c ngx_http_set_ctx(r, ctx, ngx_http_xslt_filter_module); r 199 http/modules/ngx_http_xslt_filter_module.c r->main_filter_need_in_memory = 1; r 206 http/modules/ngx_http_xslt_filter_module.c ngx_http_xslt_body_filter(ngx_http_request_t *r, ngx_chain_t *in) r 212 http/modules/ngx_http_xslt_filter_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 216 http/modules/ngx_http_xslt_filter_module.c return ngx_http_next_body_filter(r, in); r 219 http/modules/ngx_http_xslt_filter_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_xslt_filter_module); r 222 http/modules/ngx_http_xslt_filter_module.c return ngx_http_next_body_filter(r, in); r 227 http/modules/ngx_http_xslt_filter_module.c if (ngx_http_xslt_add_chunk(r, ctx, cl->buf) != NGX_OK) { r 239 http/modules/ngx_http_xslt_filter_module.c return ngx_http_xslt_send(r, ctx, NULL); r 255 http/modules/ngx_http_xslt_filter_module.c return ngx_http_xslt_send(r, ctx, r 256 http/modules/ngx_http_xslt_filter_module.c ngx_http_xslt_apply_stylesheet(r, ctx)); r 261 http/modules/ngx_http_xslt_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 264 http/modules/ngx_http_xslt_filter_module.c return ngx_http_xslt_send(r, ctx, NULL); r 273 http/modules/ngx_http_xslt_filter_module.c ngx_http_xslt_send(ngx_http_request_t *r, ngx_http_xslt_filter_ctx_t *ctx, r 283 http/modules/ngx_http_xslt_filter_module.c return ngx_http_filter_finalize_request(r, NULL, r 287 http/modules/ngx_http_xslt_filter_module.c cln = ngx_pool_cleanup_add(r->pool, 0); r 291 http/modules/ngx_http_xslt_filter_module.c return ngx_http_filter_finalize_request(r, NULL, r 295 http/modules/ngx_http_xslt_filter_module.c if (r == r->main) { r 296 http/modules/ngx_http_xslt_filter_module.c r->headers_out.content_length_n = b->last - b->pos; r 298 http/modules/ngx_http_xslt_filter_module.c if (r->headers_out.content_length) { r 299 http/modules/ngx_http_xslt_filter_module.c r->headers_out.content_length->hash = 0; r 300 http/modules/ngx_http_xslt_filter_module.c r->headers_out.content_length = NULL; r 303 http/modules/ngx_http_xslt_filter_module.c ngx_http_clear_last_modified(r); r 306 http/modules/ngx_http_xslt_filter_module.c rc = ngx_http_next_header_filter(r); r 308 http/modules/ngx_http_xslt_filter_module.c if (rc == NGX_ERROR || rc > NGX_OK || r->header_only) { r 319 http/modules/ngx_http_xslt_filter_module.c return ngx_http_next_body_filter(r, &out); r 324 http/modules/ngx_http_xslt_filter_module.c ngx_http_xslt_add_chunk(ngx_http_request_t *r, ngx_http_xslt_filter_ctx_t *ctx, r 334 http/modules/ngx_http_xslt_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 349 http/modules/ngx_http_xslt_filter_module.c ctx->request = r; r 360 http/modules/ngx_http_xslt_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 375 http/modules/ngx_http_xslt_filter_module.c ngx_http_request_t *r; r 380 http/modules/ngx_http_xslt_filter_module.c r = ctx->request; r 382 http/modules/ngx_http_xslt_filter_module.c conf = ngx_http_get_module_loc_conf(r, ngx_http_xslt_filter_module); r 384 http/modules/ngx_http_xslt_filter_module.c ngx_log_debug3(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 400 http/modules/ngx_http_xslt_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 444 http/modules/ngx_http_xslt_filter_module.c ngx_http_xslt_apply_stylesheet(ngx_http_request_t *r, r 456 http/modules/ngx_http_xslt_filter_module.c conf = ngx_http_get_module_loc_conf(r, ngx_http_xslt_filter_module); r 462 http/modules/ngx_http_xslt_filter_module.c if (ngx_array_init(&ctx->params, r->pool, 4 * 2 + 1, sizeof(char *)) r 471 http/modules/ngx_http_xslt_filter_module.c if (ngx_http_xslt_params(r, ctx, &sheet[i].params) != NGX_OK) { r 481 http/modules/ngx_http_xslt_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 494 http/modules/ngx_http_xslt_filter_module.c if (r == r->main) { r 504 http/modules/ngx_http_xslt_filter_module.c ngx_log_debug3(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 514 http/modules/ngx_http_xslt_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 520 http/modules/ngx_http_xslt_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 525 http/modules/ngx_http_xslt_filter_module.c b = ngx_pcalloc(r->pool, sizeof(ngx_buf_t)); r 536 http/modules/ngx_http_xslt_filter_module.c r->headers_out.charset.len = ngx_strlen(encoding); r 537 http/modules/ngx_http_xslt_filter_module.c r->headers_out.charset.data = encoding; r 540 http/modules/ngx_http_xslt_filter_module.c if (r != r->main) { r 549 http/modules/ngx_http_xslt_filter_module.c r->headers_out.content_type_len = len; r 550 http/modules/ngx_http_xslt_filter_module.c r->headers_out.content_type.len = len; r 551 http/modules/ngx_http_xslt_filter_module.c r->headers_out.content_type.data = type; r 555 http/modules/ngx_http_xslt_filter_module.c r->headers_out.content_type_len = sizeof("text/html") - 1; r 556 http/modules/ngx_http_xslt_filter_module.c ngx_str_set(&r->headers_out.content_type, "text/html"); r 559 http/modules/ngx_http_xslt_filter_module.c r->headers_out.content_type_lowcase = NULL; r 566 http/modules/ngx_http_xslt_filter_module.c ngx_http_xslt_params(ngx_http_request_t *r, ngx_http_xslt_filter_ctx_t *ctx, r 579 http/modules/ngx_http_xslt_filter_module.c if (ngx_http_complex_value(r, ¶m[i], &string) != NGX_OK) { r 583 http/modules/ngx_http_xslt_filter_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 594 http/modules/ngx_http_xslt_filter_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 600 http/modules/ngx_http_xslt_filter_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 621 http/modules/ngx_http_xslt_filter_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 631 http/modules/ngx_http_xslt_filter_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 34 http/modules/perl/ngx_http_perl_module.c static ngx_int_t ngx_http_perl_ssi(ngx_http_request_t *r, r 44 http/modules/perl/ngx_http_perl_module.c static ngx_int_t ngx_http_perl_call_handler(pTHX_ ngx_http_request_t *r, r 169 http/modules/perl/ngx_http_perl_module.c ngx_http_perl_handler(ngx_http_request_t *r) r 171 http/modules/perl/ngx_http_perl_module.c r->main->count++; r 173 http/modules/perl/ngx_http_perl_module.c ngx_http_perl_handle_request(r); r 180 http/modules/perl/ngx_http_perl_module.c ngx_http_perl_handle_request(ngx_http_request_t *r) r 189 http/modules/perl/ngx_http_perl_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, "perl handler"); r 191 http/modules/perl/ngx_http_perl_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_perl_module); r 194 http/modules/perl/ngx_http_perl_module.c ctx = ngx_pcalloc(r->pool, sizeof(ngx_http_perl_ctx_t)); r 196 http/modules/perl/ngx_http_perl_module.c ngx_http_finalize_request(r, NGX_ERROR); r 200 http/modules/perl/ngx_http_perl_module.c ngx_http_set_ctx(r, ctx, ngx_http_perl_module); r 203 http/modules/perl/ngx_http_perl_module.c pmcf = ngx_http_get_module_main_conf(r, ngx_http_perl_module); r 211 http/modules/perl/ngx_http_perl_module.c plcf = ngx_http_get_module_loc_conf(r, ngx_http_perl_module); r 221 http/modules/perl/ngx_http_perl_module.c rc = ngx_http_perl_call_handler(aTHX_ r, pmcf->nginx, sub, NULL, handler, r 226 http/modules/perl/ngx_http_perl_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 230 http/modules/perl/ngx_http_perl_module.c ngx_http_finalize_request(r, rc); r 250 http/modules/perl/ngx_http_perl_module.c ngx_http_finalize_request(r, NGX_DONE); r 255 http/modules/perl/ngx_http_perl_module.c ngx_http_internal_redirect(r, &uri, &args); r 256 http/modules/perl/ngx_http_perl_module.c ngx_http_finalize_request(r, NGX_DONE); r 261 http/modules/perl/ngx_http_perl_module.c ngx_http_send_special(r, NGX_HTTP_LAST); r 265 http/modules/perl/ngx_http_perl_module.c ngx_http_finalize_request(r, rc); r 270 http/modules/perl/ngx_http_perl_module.c ngx_http_perl_sleep_handler(ngx_http_request_t *r) r 274 http/modules/perl/ngx_http_perl_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 277 http/modules/perl/ngx_http_perl_module.c wev = r->connection->write; r 281 http/modules/perl/ngx_http_perl_module.c ngx_http_perl_handle_request(r); r 286 http/modules/perl/ngx_http_perl_module.c ngx_http_finalize_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 292 http/modules/perl/ngx_http_perl_module.c ngx_http_perl_variable(ngx_http_request_t *r, ngx_http_variable_value_t *v, r 302 http/modules/perl/ngx_http_perl_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 305 http/modules/perl/ngx_http_perl_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_perl_module); r 308 http/modules/perl/ngx_http_perl_module.c ctx = ngx_pcalloc(r->pool, sizeof(ngx_http_perl_ctx_t)); r 313 http/modules/perl/ngx_http_perl_module.c ngx_http_set_ctx(r, ctx, ngx_http_perl_module); r 316 http/modules/perl/ngx_http_perl_module.c pmcf = ngx_http_get_module_main_conf(r, ngx_http_perl_module); r 325 http/modules/perl/ngx_http_perl_module.c rc = ngx_http_perl_call_handler(aTHX_ r, pmcf->nginx, pv->sub, NULL, r 344 http/modules/perl/ngx_http_perl_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 354 http/modules/perl/ngx_http_perl_module.c ngx_http_perl_ssi(ngx_http_request_t *r, ngx_http_ssi_ctx_t *ssi_ctx, r 364 http/modules/perl/ngx_http_perl_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 367 http/modules/perl/ngx_http_perl_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_perl_module); r 370 http/modules/perl/ngx_http_perl_module.c ctx = ngx_pcalloc(r->pool, sizeof(ngx_http_perl_ctx_t)); r 375 http/modules/perl/ngx_http_perl_module.c ngx_http_set_ctx(r, ctx, ngx_http_perl_module); r 378 http/modules/perl/ngx_http_perl_module.c pmcf = ngx_http_get_module_main_conf(r, ngx_http_perl_module); r 397 http/modules/perl/ngx_http_perl_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 416 http/modules/perl/ngx_http_perl_module.c asv = ngx_pcalloc(r->pool, (i + 1) * sizeof(SV *)); r 433 http/modules/perl/ngx_http_perl_module.c rc = ngx_http_perl_call_handler(aTHX_ r, pmcf->nginx, sv, asv, handler, r 444 http/modules/perl/ngx_http_perl_module.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, "perl ssi done"); r 668 http/modules/perl/ngx_http_perl_module.c ngx_http_perl_call_handler(pTHX_ ngx_http_request_t *r, HV *nginx, SV *sub, r 688 http/modules/perl/ngx_http_perl_module.c sv = sv_2mortal(sv_bless(newRV_noinc(newSViv(PTR2IV(r))), nginx)); r 701 http/modules/perl/ngx_http_perl_module.c c = r->connection; r 718 http/modules/perl/ngx_http_perl_module.c rv->data = ngx_pnalloc(r->pool, n_a); r 62 http/modules/perl/ngx_http_perl_module.h void ngx_http_perl_handle_request(ngx_http_request_t *r); r 63 http/modules/perl/ngx_http_perl_module.h void ngx_http_perl_sleep_handler(ngx_http_request_t *r); r 71 http/ngx_http.c ngx_int_t (*ngx_http_top_header_filter) (ngx_http_request_t *r); r 72 http/ngx_http.c ngx_int_t (*ngx_http_top_body_filter) (ngx_http_request_t *r, ngx_chain_t *ch); r 678 http/ngx_http.c ngx_uint_t r; r 694 http/ngx_http.c r = 0; r 712 http/ngx_http.c r++; r 770 http/ngx_http.c (r + 1) * sizeof(ngx_http_core_loc_conf_t **)); r 21 http/ngx_http.h typedef ngx_int_t (*ngx_http_header_handler_pt)(ngx_http_request_t *r, r 23 http/ngx_http.h typedef u_char *(*ngx_http_log_handler_pt)(ngx_http_request_t *r, r 62 http/ngx_http.h #define ngx_http_get_module_ctx(r, module) (r)->ctx[module.ctx_index] r 63 http/ngx_http.h #define ngx_http_set_ctx(r, c, module) r->ctx[module.ctx_index] = c; r 78 http/ngx_http.h ngx_int_t ngx_http_parse_request_line(ngx_http_request_t *r, ngx_buf_t *b); r 79 http/ngx_http.h ngx_int_t ngx_http_parse_complex_uri(ngx_http_request_t *r, r 81 http/ngx_http.h ngx_int_t ngx_http_parse_status_line(ngx_http_request_t *r, ngx_buf_t *b, r 83 http/ngx_http.h ngx_int_t ngx_http_parse_unsafe_uri(ngx_http_request_t *r, ngx_str_t *uri, r 85 http/ngx_http.h ngx_int_t ngx_http_parse_header_line(ngx_http_request_t *r, ngx_buf_t *b, r 89 http/ngx_http.h ngx_int_t ngx_http_arg(ngx_http_request_t *r, u_char *name, size_t len, r 91 http/ngx_http.h void ngx_http_split_args(ngx_http_request_t *r, ngx_str_t *uri, r 95 http/ngx_http.h ngx_int_t ngx_http_find_server_conf(ngx_http_request_t *r); r 96 http/ngx_http.h void ngx_http_update_location_config(ngx_http_request_t *r); r 97 http/ngx_http.h void ngx_http_handler(ngx_http_request_t *r); r 99 http/ngx_http.h ngx_int_t ngx_http_post_request(ngx_http_request_t *r, r 101 http/ngx_http.h void ngx_http_finalize_request(ngx_http_request_t *r, ngx_int_t rc); r 104 http/ngx_http.h void ngx_http_request_empty_handler(ngx_http_request_t *r); r 107 http/ngx_http.h #define ngx_http_ephemeral(r) (void *) (&r->uri_start) r 113 http/ngx_http.h ngx_int_t ngx_http_send_special(ngx_http_request_t *r, ngx_uint_t flags); r 116 http/ngx_http.h ngx_int_t ngx_http_read_client_request_body(ngx_http_request_t *r, r 119 http/ngx_http.h ngx_int_t ngx_http_send_header(ngx_http_request_t *r); r 120 http/ngx_http.h ngx_int_t ngx_http_special_response_handler(ngx_http_request_t *r, r 122 http/ngx_http.h ngx_int_t ngx_http_filter_finalize_request(ngx_http_request_t *r, r 124 http/ngx_http.h void ngx_http_clean_header(ngx_http_request_t *r); r 132 http/ngx_http.h ngx_int_t ngx_http_discard_request_body(ngx_http_request_t *r); r 133 http/ngx_http.h void ngx_http_discarded_request_body_handler(ngx_http_request_t *r); r 134 http/ngx_http.h void ngx_http_block_reading(ngx_http_request_t *r); r 135 http/ngx_http.h void ngx_http_test_reading(ngx_http_request_t *r); r 127 http/ngx_http_cache.h ngx_int_t ngx_http_file_cache_new(ngx_http_request_t *r); r 128 http/ngx_http_cache.h ngx_int_t ngx_http_file_cache_create(ngx_http_request_t *r); r 129 http/ngx_http_cache.h void ngx_http_file_cache_create_key(ngx_http_request_t *r); r 130 http/ngx_http_cache.h ngx_int_t ngx_http_file_cache_open(ngx_http_request_t *r); r 131 http/ngx_http_cache.h void ngx_http_file_cache_set_header(ngx_http_request_t *r, u_char *buf); r 132 http/ngx_http_cache.h void ngx_http_file_cache_update(ngx_http_request_t *r, ngx_temp_file_t *tf); r 54 http/ngx_http_config.h #define ngx_http_get_module_main_conf(r, module) \ r 55 http/ngx_http_config.h (r)->main_conf[module.ctx_index] r 56 http/ngx_http_config.h #define ngx_http_get_module_srv_conf(r, module) (r)->srv_conf[module.ctx_index] r 57 http/ngx_http_config.h #define ngx_http_get_module_loc_conf(r, module) (r)->loc_conf[module.ctx_index] r 80 http/ngx_http_copy_filter_module.c ngx_http_copy_filter(ngx_http_request_t *r, ngx_chain_t *in) r 88 http/ngx_http_copy_filter_module.c c = r->connection; r 91 http/ngx_http_copy_filter_module.c "http copy filter: \"%V?%V\"", &r->uri, &r->args); r 93 http/ngx_http_copy_filter_module.c ctx = ngx_http_get_module_ctx(r, ngx_http_copy_filter_module); r 96 http/ngx_http_copy_filter_module.c ctx = ngx_pcalloc(r->pool, sizeof(ngx_output_chain_ctx_t)); r 101 http/ngx_http_copy_filter_module.c ngx_http_set_ctx(r, ctx, ngx_http_copy_filter_module); r 103 http/ngx_http_copy_filter_module.c conf = ngx_http_get_module_loc_conf(r, ngx_http_copy_filter_module); r 104 http/ngx_http_copy_filter_module.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 107 http/ngx_http_copy_filter_module.c ctx->need_in_memory = r->main_filter_need_in_memory r 108 http/ngx_http_copy_filter_module.c || r->filter_need_in_memory; r 109 http/ngx_http_copy_filter_module.c ctx->need_in_temp = r->filter_need_temporary; r 113 http/ngx_http_copy_filter_module.c ctx->pool = r->pool; r 118 http/ngx_http_copy_filter_module.c ctx->filter_ctx = r; r 132 http/ngx_http_copy_filter_module.c r->request_output = 1; r 137 http/ngx_http_copy_filter_module.c ctx->aio = r->aio; r 144 http/ngx_http_copy_filter_module.c r->buffered &= ~NGX_HTTP_COPY_BUFFERED; r 147 http/ngx_http_copy_filter_module.c r->buffered |= NGX_HTTP_COPY_BUFFERED; r 151 http/ngx_http_copy_filter_module.c "http copy filter: %i \"%V?%V\"", rc, &r->uri, &r->args); r 176 http/ngx_http_copy_filter_module.c e = (ngx_http_ephemeral_t *) &r->uri_start; r 178 http/ngx_http_copy_filter_module.c n = ngx_file_aio_read(file, &e->aio_preload, 1, offset, r->pool); r 188 http/ngx_http_copy_filter_module.c file->aio->data = r; r 191 http/ngx_http_copy_filter_module.c r->main->blocked++; r 192 http/ngx_http_copy_filter_module.c r->aio = 1; r 207 http/ngx_http_copy_filter_module.c ngx_http_request_t *r; r 209 http/ngx_http_copy_filter_module.c r = ctx->filter_ctx; r 211 http/ngx_http_copy_filter_module.c file->aio->data = r; r 214 http/ngx_http_copy_filter_module.c r->main->blocked++; r 215 http/ngx_http_copy_filter_module.c r->aio = 1; r 224 http/ngx_http_copy_filter_module.c ngx_http_request_t *r; r 227 http/ngx_http_copy_filter_module.c r = aio->data; r 229 http/ngx_http_copy_filter_module.c r->main->blocked--; r 230 http/ngx_http_copy_filter_module.c r->aio = 0; r 232 http/ngx_http_copy_filter_module.c r->connection->write->handler(r->connection->write); r 242 http/ngx_http_copy_filter_module.c ngx_http_request_t *r; r 245 http/ngx_http_copy_filter_module.c r = aio->data; r 247 http/ngx_http_copy_filter_module.c r->main->blocked--; r 248 http/ngx_http_copy_filter_module.c r->aio = 0; r 251 http/ngx_http_copy_filter_module.c r->connection->write->handler(r->connection->write); r 23 http/ngx_http_core_module.c static ngx_int_t ngx_http_core_find_location(ngx_http_request_t *r); r 24 http/ngx_http_core_module.c static ngx_int_t ngx_http_core_find_static_location(ngx_http_request_t *r, r 781 http/ngx_http_core_module.c ngx_http_handler(ngx_http_request_t *r) r 785 http/ngx_http_core_module.c r->connection->log->action = NULL; r 787 http/ngx_http_core_module.c r->connection->unexpected_eof = 0; r 789 http/ngx_http_core_module.c if (!r->internal) { r 790 http/ngx_http_core_module.c switch (r->headers_in.connection_type) { r 792 http/ngx_http_core_module.c r->keepalive = (r->http_version > NGX_HTTP_VERSION_10); r 796 http/ngx_http_core_module.c r->keepalive = 0; r 800 http/ngx_http_core_module.c r->keepalive = 1; r 804 http/ngx_http_core_module.c r->lingering_close = (r->headers_in.content_length_n > 0); r 805 http/ngx_http_core_module.c r->phase_handler = 0; r 808 http/ngx_http_core_module.c cmcf = ngx_http_get_module_main_conf(r, ngx_http_core_module); r 809 http/ngx_http_core_module.c r->phase_handler = cmcf->phase_engine.server_rewrite_index; r 812 http/ngx_http_core_module.c r->valid_location = 1; r 814 http/ngx_http_core_module.c r->gzip_tested = 0; r 815 http/ngx_http_core_module.c r->gzip_ok = 0; r 816 http/ngx_http_core_module.c r->gzip_vary = 0; r 819 http/ngx_http_core_module.c r->write_event_handler = ngx_http_core_run_phases; r 820 http/ngx_http_core_module.c ngx_http_core_run_phases(r); r 825 http/ngx_http_core_module.c ngx_http_core_run_phases(ngx_http_request_t *r) r 831 http/ngx_http_core_module.c cmcf = ngx_http_get_module_main_conf(r, ngx_http_core_module); r 835 http/ngx_http_core_module.c while (ph[r->phase_handler].checker) { r 837 http/ngx_http_core_module.c rc = ph[r->phase_handler].checker(r, &ph[r->phase_handler]); r 847 http/ngx_http_core_module.c ngx_http_core_generic_phase(ngx_http_request_t *r, ngx_http_phase_handler_t *ph) r 856 http/ngx_http_core_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 857 http/ngx_http_core_module.c "generic phase: %ui", r->phase_handler); r 859 http/ngx_http_core_module.c rc = ph->handler(r); r 862 http/ngx_http_core_module.c r->phase_handler = ph->next; r 867 http/ngx_http_core_module.c r->phase_handler++; r 877 http/ngx_http_core_module.c ngx_http_finalize_request(r, rc); r 884 http/ngx_http_core_module.c ngx_http_core_rewrite_phase(ngx_http_request_t *r, ngx_http_phase_handler_t *ph) r 888 http/ngx_http_core_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 889 http/ngx_http_core_module.c "rewrite phase: %ui", r->phase_handler); r 891 http/ngx_http_core_module.c rc = ph->handler(r); r 894 http/ngx_http_core_module.c r->phase_handler++; r 904 http/ngx_http_core_module.c ngx_http_finalize_request(r, rc); r 911 http/ngx_http_core_module.c ngx_http_core_find_config_phase(ngx_http_request_t *r, r 919 http/ngx_http_core_module.c r->content_handler = NULL; r 920 http/ngx_http_core_module.c r->uri_changed = 0; r 922 http/ngx_http_core_module.c rc = ngx_http_core_find_location(r); r 925 http/ngx_http_core_module.c ngx_http_finalize_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 929 http/ngx_http_core_module.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 931 http/ngx_http_core_module.c if (!r->internal && clcf->internal) { r 932 http/ngx_http_core_module.c ngx_http_finalize_request(r, NGX_HTTP_NOT_FOUND); r 936 http/ngx_http_core_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 941 http/ngx_http_core_module.c ngx_http_update_location_config(r); r 943 http/ngx_http_core_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 945 http/ngx_http_core_module.c r->headers_in.content_length_n, clcf->client_max_body_size); r 947 http/ngx_http_core_module.c if (r->headers_in.content_length_n != -1 r 948 http/ngx_http_core_module.c && !r->discard_body r 950 http/ngx_http_core_module.c && clcf->client_max_body_size < r->headers_in.content_length_n) r 952 http/ngx_http_core_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 954 http/ngx_http_core_module.c r->headers_in.content_length_n); r 956 http/ngx_http_core_module.c (void) ngx_http_discard_request_body(r); r 957 http/ngx_http_core_module.c ngx_http_finalize_request(r, NGX_HTTP_REQUEST_ENTITY_TOO_LARGE); r 962 http/ngx_http_core_module.c r->headers_out.location = ngx_list_push(&r->headers_out.headers); r 963 http/ngx_http_core_module.c if (r->headers_out.location == NULL) { r 964 http/ngx_http_core_module.c ngx_http_finalize_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 973 http/ngx_http_core_module.c if (r->args.len == 0) { r 974 http/ngx_http_core_module.c r->headers_out.location->value = clcf->name; r 977 http/ngx_http_core_module.c len = clcf->name.len + 1 + r->args.len; r 978 http/ngx_http_core_module.c p = ngx_pnalloc(r->pool, len); r 981 http/ngx_http_core_module.c ngx_http_finalize_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 985 http/ngx_http_core_module.c r->headers_out.location->value.len = len; r 986 http/ngx_http_core_module.c r->headers_out.location->value.data = p; r 990 http/ngx_http_core_module.c ngx_memcpy(p, r->args.data, r->args.len); r 993 http/ngx_http_core_module.c ngx_http_finalize_request(r, NGX_HTTP_MOVED_PERMANENTLY); r 997 http/ngx_http_core_module.c r->phase_handler++; r 1003 http/ngx_http_core_module.c ngx_http_core_post_rewrite_phase(ngx_http_request_t *r, r 1008 http/ngx_http_core_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1009 http/ngx_http_core_module.c "post rewrite phase: %ui", r->phase_handler); r 1011 http/ngx_http_core_module.c if (!r->uri_changed) { r 1012 http/ngx_http_core_module.c r->phase_handler++; r 1016 http/ngx_http_core_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1017 http/ngx_http_core_module.c "uri changes: %d", r->uri_changes); r 1026 http/ngx_http_core_module.c r->uri_changes--; r 1028 http/ngx_http_core_module.c if (r->uri_changes == 0) { r 1029 http/ngx_http_core_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1031 http/ngx_http_core_module.c "while processing \"%V\"", &r->uri); r 1033 http/ngx_http_core_module.c ngx_http_finalize_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 1037 http/ngx_http_core_module.c r->phase_handler = ph->next; r 1039 http/ngx_http_core_module.c cscf = ngx_http_get_module_srv_conf(r, ngx_http_core_module); r 1040 http/ngx_http_core_module.c r->loc_conf = cscf->ctx->loc_conf; r 1047 http/ngx_http_core_module.c ngx_http_core_access_phase(ngx_http_request_t *r, ngx_http_phase_handler_t *ph) r 1052 http/ngx_http_core_module.c if (r != r->main) { r 1053 http/ngx_http_core_module.c r->phase_handler = ph->next; r 1057 http/ngx_http_core_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1058 http/ngx_http_core_module.c "access phase: %ui", r->phase_handler); r 1060 http/ngx_http_core_module.c rc = ph->handler(r); r 1063 http/ngx_http_core_module.c r->phase_handler++; r 1071 http/ngx_http_core_module.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 1076 http/ngx_http_core_module.c r->phase_handler++; r 1082 http/ngx_http_core_module.c r->access_code = 0; r 1084 http/ngx_http_core_module.c if (r->headers_out.www_authenticate) { r 1085 http/ngx_http_core_module.c r->headers_out.www_authenticate->hash = 0; r 1088 http/ngx_http_core_module.c r->phase_handler = ph->next; r 1093 http/ngx_http_core_module.c r->access_code = rc; r 1095 http/ngx_http_core_module.c r->phase_handler++; r 1102 http/ngx_http_core_module.c ngx_http_finalize_request(r, rc); r 1108 http/ngx_http_core_module.c ngx_http_core_post_access_phase(ngx_http_request_t *r, r 1113 http/ngx_http_core_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1114 http/ngx_http_core_module.c "post access phase: %ui", r->phase_handler); r 1116 http/ngx_http_core_module.c access_code = r->access_code; r 1120 http/ngx_http_core_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1124 http/ngx_http_core_module.c r->access_code = 0; r 1125 http/ngx_http_core_module.c ngx_http_finalize_request(r, access_code); r 1129 http/ngx_http_core_module.c r->phase_handler++; r 1135 http/ngx_http_core_module.c ngx_http_core_try_files_phase(ngx_http_request_t *r, r 1149 http/ngx_http_core_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1150 http/ngx_http_core_module.c "try files phase: %ui", r->phase_handler); r 1152 http/ngx_http_core_module.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 1155 http/ngx_http_core_module.c r->phase_handler++; r 1175 http/ngx_http_core_module.c e.request = r; r 1190 http/ngx_http_core_module.c reserve = ngx_abs((ssize_t) (len - r->uri.len)) + alias + 16; r 1196 http/ngx_http_core_module.c if (ngx_http_map_uri_to_path(r, &path, &root, reserve) == NULL) { r 1197 http/ngx_http_core_module.c ngx_http_finalize_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 1202 http/ngx_http_core_module.c allocated = path.len - root - (r->uri.len - alias); r 1237 http/ngx_http_core_module.c ngx_log_debug3(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1244 http/ngx_http_core_module.c ngx_http_finalize_request(r, tf->code); r 1252 http/ngx_http_core_module.c (void) ngx_http_named_location(r, &path); r 1255 http/ngx_http_core_module.c ngx_http_split_args(r, &path, &args); r 1257 http/ngx_http_core_module.c (void) ngx_http_internal_redirect(r, &path, &args); r 1260 http/ngx_http_core_module.c ngx_http_finalize_request(r, NGX_DONE); r 1273 http/ngx_http_core_module.c if (ngx_open_cached_file(clcf->open_file_cache, &path, &of, r->pool) r 1280 http/ngx_http_core_module.c ngx_log_error(NGX_LOG_CRIT, r->connection->log, of.err, r 1295 http/ngx_http_core_module.c r->uri = path; r 1300 http/ngx_http_core_module.c r->uri = path; r 1301 http/ngx_http_core_module.c r->add_uri_to_alias = 1; r 1305 http/ngx_http_core_module.c r->uri.len = alias + path.len; r 1306 http/ngx_http_core_module.c r->uri.data = ngx_pnalloc(r->pool, r->uri.len); r 1307 http/ngx_http_core_module.c if (r->uri.data == NULL) { r 1308 http/ngx_http_core_module.c ngx_http_finalize_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 1312 http/ngx_http_core_module.c p = ngx_copy(r->uri.data, clcf->name.data, alias); r 1316 http/ngx_http_core_module.c ngx_http_set_exten(r); r 1318 http/ngx_http_core_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1319 http/ngx_http_core_module.c "try file uri: \"%V\"", &r->uri); r 1321 http/ngx_http_core_module.c r->phase_handler++; r 1330 http/ngx_http_core_module.c ngx_http_core_content_phase(ngx_http_request_t *r, r 1337 http/ngx_http_core_module.c if (r->content_handler) { r 1338 http/ngx_http_core_module.c r->write_event_handler = ngx_http_request_empty_handler; r 1339 http/ngx_http_core_module.c ngx_http_finalize_request(r, r->content_handler(r)); r 1343 http/ngx_http_core_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1344 http/ngx_http_core_module.c "content phase: %ui", r->phase_handler); r 1346 http/ngx_http_core_module.c rc = ph->handler(r); r 1349 http/ngx_http_core_module.c ngx_http_finalize_request(r, rc); r 1358 http/ngx_http_core_module.c r->phase_handler++; r 1364 http/ngx_http_core_module.c if (r->uri.data[r->uri.len - 1] == '/') { r 1366 http/ngx_http_core_module.c if (ngx_http_map_uri_to_path(r, &path, &root, 0) != NULL) { r 1367 http/ngx_http_core_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1371 http/ngx_http_core_module.c ngx_http_finalize_request(r, NGX_HTTP_FORBIDDEN); r 1375 http/ngx_http_core_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, "no handler found"); r 1377 http/ngx_http_core_module.c ngx_http_finalize_request(r, NGX_HTTP_NOT_FOUND); r 1383 http/ngx_http_core_module.c ngx_http_update_location_config(ngx_http_request_t *r) r 1387 http/ngx_http_core_module.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 1389 http/ngx_http_core_module.c if (r->method & clcf->limit_except) { r 1390 http/ngx_http_core_module.c r->loc_conf = clcf->limit_except_loc_conf; r 1391 http/ngx_http_core_module.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 1394 http/ngx_http_core_module.c if (r == r->main) { r 1395 http/ngx_http_core_module.c r->connection->log->file = clcf->error_log->file; r 1397 http/ngx_http_core_module.c if (!(r->connection->log->log_level & NGX_LOG_DEBUG_CONNECTION)) { r 1398 http/ngx_http_core_module.c r->connection->log->log_level = clcf->error_log->log_level; r 1403 http/ngx_http_core_module.c r->connection->sendfile = 1; r 1406 http/ngx_http_core_module.c r->connection->sendfile = 0; r 1410 http/ngx_http_core_module.c r->request_body_in_file_only = 1; r 1411 http/ngx_http_core_module.c r->request_body_in_persistent_file = 1; r 1412 http/ngx_http_core_module.c r->request_body_in_clean_file = r 1414 http/ngx_http_core_module.c r->request_body_file_log_level = NGX_LOG_NOTICE; r 1417 http/ngx_http_core_module.c r->request_body_file_log_level = NGX_LOG_WARN; r 1420 http/ngx_http_core_module.c r->request_body_in_single_buf = clcf->client_body_in_single_buffer; r 1422 http/ngx_http_core_module.c if (r->keepalive) { r 1424 http/ngx_http_core_module.c r->keepalive = 0; r 1426 http/ngx_http_core_module.c } else if (r->connection->requests >= clcf->keepalive_requests) { r 1427 http/ngx_http_core_module.c r->keepalive = 0; r 1429 http/ngx_http_core_module.c } else if (r->headers_in.msie6 r 1430 http/ngx_http_core_module.c && r->method == NGX_HTTP_POST r 1438 http/ngx_http_core_module.c r->keepalive = 0; r 1440 http/ngx_http_core_module.c } else if (r->headers_in.safari r 1449 http/ngx_http_core_module.c r->keepalive = 0; r 1455 http/ngx_http_core_module.c r->connection->tcp_nopush = NGX_TCP_NOPUSH_DISABLED; r 1458 http/ngx_http_core_module.c if (r->limit_rate == 0) { r 1459 http/ngx_http_core_module.c r->limit_rate = clcf->limit_rate; r 1463 http/ngx_http_core_module.c r->content_handler = clcf->handler; r 1477 http/ngx_http_core_module.c ngx_http_core_find_location(ngx_http_request_t *r) r 1489 http/ngx_http_core_module.c pclcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 1491 http/ngx_http_core_module.c rc = ngx_http_core_find_static_location(r, pclcf->static_locations); r 1496 http/ngx_http_core_module.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 1503 http/ngx_http_core_module.c rc = ngx_http_core_find_location(r); r 1518 http/ngx_http_core_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1521 http/ngx_http_core_module.c n = ngx_http_regex_exec(r, (*clcfp)->regex, &r->uri); r 1524 http/ngx_http_core_module.c r->loc_conf = (*clcfp)->loc_conf; r 1528 http/ngx_http_core_module.c rc = ngx_http_core_find_location(r); r 1554 http/ngx_http_core_module.c ngx_http_core_find_static_location(ngx_http_request_t *r, r 1561 http/ngx_http_core_module.c len = r->uri.len; r 1562 http/ngx_http_core_module.c uri = r->uri.data; r 1572 http/ngx_http_core_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1589 http/ngx_http_core_module.c r->loc_conf = node->inclusive->loc_conf; r 1609 http/ngx_http_core_module.c r->loc_conf = node->exact->loc_conf; r 1613 http/ngx_http_core_module.c r->loc_conf = node->inclusive->loc_conf; r 1622 http/ngx_http_core_module.c r->loc_conf = (node->exact) ? node->exact->loc_conf: r 1633 http/ngx_http_core_module.c ngx_http_test_content_type(ngx_http_request_t *r, ngx_hash_t *types_hash) r 1643 http/ngx_http_core_module.c if (r->headers_out.content_type.len == 0) { r 1647 http/ngx_http_core_module.c len = r->headers_out.content_type_len; r 1649 http/ngx_http_core_module.c if (r->headers_out.content_type_lowcase == NULL) { r 1651 http/ngx_http_core_module.c lowcase = ngx_pnalloc(r->pool, len); r 1656 http/ngx_http_core_module.c r->headers_out.content_type_lowcase = lowcase; r 1661 http/ngx_http_core_module.c c = ngx_tolower(r->headers_out.content_type.data[i]); r 1666 http/ngx_http_core_module.c r->headers_out.content_type_hash = hash; r 1669 http/ngx_http_core_module.c return ngx_hash_find(types_hash, r->headers_out.content_type_hash, r 1670 http/ngx_http_core_module.c r->headers_out.content_type_lowcase, len); r 1675 http/ngx_http_core_module.c ngx_http_set_content_type(ngx_http_request_t *r) r 1682 http/ngx_http_core_module.c if (r->headers_out.content_type.len) { r 1686 http/ngx_http_core_module.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 1688 http/ngx_http_core_module.c if (r->exten.len) { r 1692 http/ngx_http_core_module.c for (i = 0; i < r->exten.len; i++) { r 1693 http/ngx_http_core_module.c c = r->exten.data[i]; r 1697 http/ngx_http_core_module.c exten = ngx_pnalloc(r->pool, r->exten.len); r 1702 http/ngx_http_core_module.c hash = ngx_hash_strlow(exten, r->exten.data, r->exten.len); r 1704 http/ngx_http_core_module.c r->exten.data = exten; r 1713 http/ngx_http_core_module.c r->exten.data, r->exten.len); r 1716 http/ngx_http_core_module.c r->headers_out.content_type_len = type->len; r 1717 http/ngx_http_core_module.c r->headers_out.content_type = *type; r 1723 http/ngx_http_core_module.c r->headers_out.content_type_len = clcf->default_type.len; r 1724 http/ngx_http_core_module.c r->headers_out.content_type = clcf->default_type; r 1731 http/ngx_http_core_module.c ngx_http_set_exten(ngx_http_request_t *r) r 1735 http/ngx_http_core_module.c ngx_str_null(&r->exten); r 1737 http/ngx_http_core_module.c for (i = r->uri.len - 1; i > 1; i--) { r 1738 http/ngx_http_core_module.c if (r->uri.data[i] == '.' && r->uri.data[i - 1] != '/') { r 1740 http/ngx_http_core_module.c r->exten.len = r->uri.len - i - 1; r 1741 http/ngx_http_core_module.c r->exten.data = &r->uri.data[i + 1]; r 1745 http/ngx_http_core_module.c } else if (r->uri.data[i] == '/') { r 1755 http/ngx_http_core_module.c ngx_http_send_response(ngx_http_request_t *r, ngx_uint_t status, r 1763 http/ngx_http_core_module.c r->headers_out.status = status; r 1766 http/ngx_http_core_module.c r->header_only = 1; r 1767 http/ngx_http_core_module.c return ngx_http_send_header(r); r 1770 http/ngx_http_core_module.c if (ngx_http_complex_value(r, cv, &val) != NGX_OK) { r 1776 http/ngx_http_core_module.c r->headers_out.location = ngx_list_push(&r->headers_out.headers); r 1777 http/ngx_http_core_module.c if (r->headers_out.location == NULL) { r 1781 http/ngx_http_core_module.c r->headers_out.location->hash = 1; r 1782 http/ngx_http_core_module.c ngx_str_set(&r->headers_out.location->key, "Location"); r 1783 http/ngx_http_core_module.c r->headers_out.location->value = val; r 1788 http/ngx_http_core_module.c r->headers_out.content_length_n = val.len; r 1791 http/ngx_http_core_module.c r->headers_out.content_type_len = ct->len; r 1792 http/ngx_http_core_module.c r->headers_out.content_type = *ct; r 1795 http/ngx_http_core_module.c if (ngx_http_set_content_type(r) != NGX_OK) { r 1800 http/ngx_http_core_module.c if (r->method == NGX_HTTP_HEAD || (r != r->main && val.len == 0)) { r 1801 http/ngx_http_core_module.c return ngx_http_send_header(r); r 1804 http/ngx_http_core_module.c b = ngx_pcalloc(r->pool, sizeof(ngx_buf_t)); r 1812 http/ngx_http_core_module.c b->last_buf = (r == r->main) ? 1 : 0; r 1818 http/ngx_http_core_module.c rc = ngx_http_send_header(r); r 1820 http/ngx_http_core_module.c if (rc == NGX_ERROR || rc > NGX_OK || r->header_only) { r 1824 http/ngx_http_core_module.c return ngx_http_output_filter(r, &out); r 1829 http/ngx_http_core_module.c ngx_http_send_header(ngx_http_request_t *r) r 1831 http/ngx_http_core_module.c if (r->err_status) { r 1832 http/ngx_http_core_module.c r->headers_out.status = r->err_status; r 1833 http/ngx_http_core_module.c r->headers_out.status_line.len = 0; r 1836 http/ngx_http_core_module.c return ngx_http_top_header_filter(r); r 1841 http/ngx_http_core_module.c ngx_http_output_filter(ngx_http_request_t *r, ngx_chain_t *in) r 1846 http/ngx_http_core_module.c c = r->connection; r 1849 http/ngx_http_core_module.c "http output filter \"%V?%V\"", &r->uri, &r->args); r 1851 http/ngx_http_core_module.c rc = ngx_http_top_body_filter(r, in); r 1863 http/ngx_http_core_module.c ngx_http_map_uri_to_path(ngx_http_request_t *r, ngx_str_t *path, r 1870 http/ngx_http_core_module.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 1874 http/ngx_http_core_module.c if (alias && !r->valid_location) { r 1875 http/ngx_http_core_module.c ngx_log_error(NGX_LOG_ALERT, r->connection->log, 0, r 1885 http/ngx_http_core_module.c path->len = clcf->root.len + reserved + r->uri.len - alias + 1; r 1887 http/ngx_http_core_module.c path->data = ngx_pnalloc(r->pool, path->len); r 1901 http/ngx_http_core_module.c reserved += captures ? r->add_uri_to_alias ? r->uri.len + 1 : 1 r 1902 http/ngx_http_core_module.c : r->uri.len - alias + 1; r 1904 http/ngx_http_core_module.c reserved += r->uri.len - alias + 1; r 1907 http/ngx_http_core_module.c if (ngx_http_script_run(r, path, clcf->root_lengths->elts, reserved, r 1923 http/ngx_http_core_module.c if (!r->add_uri_to_alias) { r 1933 http/ngx_http_core_module.c last = ngx_cpystrn(last, r->uri.data + alias, r->uri.len - alias + 1); r 1940 http/ngx_http_core_module.c ngx_http_auth_basic_user(ngx_http_request_t *r) r 1945 http/ngx_http_core_module.c if (r->headers_in.user.len == 0 && r->headers_in.user.data != NULL) { r 1949 http/ngx_http_core_module.c if (r->headers_in.authorization == NULL) { r 1950 http/ngx_http_core_module.c r->headers_in.user.data = (u_char *) ""; r 1954 http/ngx_http_core_module.c encoded = r->headers_in.authorization->value; r 1961 http/ngx_http_core_module.c r->headers_in.user.data = (u_char *) ""; r 1974 http/ngx_http_core_module.c r->headers_in.user.data = (u_char *) ""; r 1979 http/ngx_http_core_module.c auth.data = ngx_pnalloc(r->pool, auth.len + 1); r 1985 http/ngx_http_core_module.c r->headers_in.user.data = (u_char *) ""; r 1998 http/ngx_http_core_module.c r->headers_in.user.data = (u_char *) ""; r 2002 http/ngx_http_core_module.c r->headers_in.user.len = len; r 2003 http/ngx_http_core_module.c r->headers_in.user.data = auth.data; r 2004 http/ngx_http_core_module.c r->headers_in.passwd.len = auth.len - len - 1; r 2005 http/ngx_http_core_module.c r->headers_in.passwd.data = &auth.data[len + 1]; r 2014 http/ngx_http_core_module.c ngx_http_gzip_ok(ngx_http_request_t *r) r 2022 http/ngx_http_core_module.c r->gzip_tested = 1; r 2024 http/ngx_http_core_module.c if (r != r->main r 2025 http/ngx_http_core_module.c || r->headers_in.accept_encoding == NULL r 2026 http/ngx_http_core_module.c || ngx_strcasestrn(r->headers_in.accept_encoding->value.data, r 2036 http/ngx_http_core_module.c || (r->headers_in.msie4 && r->unparsed_uri.len > 200)) r 2041 http/ngx_http_core_module.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 2043 http/ngx_http_core_module.c if (r->headers_in.msie6 && clcf->gzip_disable_msie6) { r 2047 http/ngx_http_core_module.c if (r->http_version < clcf->gzip_http_version) { r 2051 http/ngx_http_core_module.c if (r->headers_in.via == NULL) { r 2065 http/ngx_http_core_module.c if (r->headers_in.authorization && (p & NGX_HTTP_GZIP_PROXIED_AUTH)) { r 2069 http/ngx_http_core_module.c e = r->headers_out.expires; r 2082 http/ngx_http_core_module.c d = r->headers_out.date; r 2101 http/ngx_http_core_module.c cc = &r->headers_out.cache_control; r 2132 http/ngx_http_core_module.c if ((p & NGX_HTTP_GZIP_PROXIED_NO_LM) && r->headers_out.last_modified) { r 2136 http/ngx_http_core_module.c if ((p & NGX_HTTP_GZIP_PROXIED_NO_ETAG) && r->headers_out.etag) { r 2144 http/ngx_http_core_module.c if (clcf->gzip_disable && r->headers_in.user_agent) { r 2147 http/ngx_http_core_module.c &r->headers_in.user_agent->value, r 2148 http/ngx_http_core_module.c r->connection->log) r 2157 http/ngx_http_core_module.c r->gzip_ok = 1; r 2166 http/ngx_http_core_module.c ngx_http_subrequest(ngx_http_request_t *r, r 2176 http/ngx_http_core_module.c r->main->subrequests--; r 2178 http/ngx_http_core_module.c if (r->main->subrequests == 0) { r 2179 http/ngx_http_core_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 2181 http/ngx_http_core_module.c r->main->subrequests = 1; r 2185 http/ngx_http_core_module.c sr = ngx_pcalloc(r->pool, sizeof(ngx_http_request_t)); r 2192 http/ngx_http_core_module.c c = r->connection; r 2195 http/ngx_http_core_module.c sr->ctx = ngx_pcalloc(r->pool, sizeof(void *) * ngx_http_max_module); r 2200 http/ngx_http_core_module.c if (ngx_list_init(&sr->headers_out.headers, r->pool, 20, r 2207 http/ngx_http_core_module.c cscf = ngx_http_get_module_srv_conf(r, ngx_http_core_module); r 2212 http/ngx_http_core_module.c sr->pool = r->pool; r 2214 http/ngx_http_core_module.c sr->headers_in = r->headers_in; r 2220 http/ngx_http_core_module.c sr->request_body = r->request_body; r 2223 http/ngx_http_core_module.c sr->http_version = r->http_version; r 2225 http/ngx_http_core_module.c sr->request_line = r->request_line; r 2238 http/ngx_http_core_module.c sr->unparsed_uri = r->unparsed_uri; r 2240 http/ngx_http_core_module.c sr->http_protocol = r->http_protocol; r 2244 http/ngx_http_core_module.c sr->main = r->main; r 2245 http/ngx_http_core_module.c sr->parent = r; r 2250 http/ngx_http_core_module.c if (c->data == r && r->postponed == NULL) { r 2254 http/ngx_http_core_module.c sr->variables = r->variables; r 2256 http/ngx_http_core_module.c sr->log_handler = r->log_handler; r 2258 http/ngx_http_core_module.c pr = ngx_palloc(r->pool, sizeof(ngx_http_postponed_request_t)); r 2267 http/ngx_http_core_module.c if (r->postponed) { r 2268 http/ngx_http_core_module.c for (p = r->postponed; p->next; p = p->next) { /* void */ } r 2272 http/ngx_http_core_module.c r->postponed = pr; r 2277 http/ngx_http_core_module.c sr->discard_body = r->discard_body; r 2279 http/ngx_http_core_module.c sr->main_filter_need_in_memory = r->main_filter_need_in_memory; r 2284 http/ngx_http_core_module.c r->start_sec = tp->sec; r 2285 http/ngx_http_core_module.c r->start_msec = tp->msec; r 2287 http/ngx_http_core_module.c r->main->subrequests++; r 2288 http/ngx_http_core_module.c r->main->count++; r 2297 http/ngx_http_core_module.c ngx_http_internal_redirect(ngx_http_request_t *r, r 2302 http/ngx_http_core_module.c r->uri_changes--; r 2304 http/ngx_http_core_module.c if (r->uri_changes == 0) { r 2305 http/ngx_http_core_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 2309 http/ngx_http_core_module.c r->main->count++; r 2310 http/ngx_http_core_module.c ngx_http_finalize_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 2314 http/ngx_http_core_module.c r->uri = *uri; r 2317 http/ngx_http_core_module.c r->args = *args; r 2320 http/ngx_http_core_module.c ngx_str_null(&r->args); r 2323 http/ngx_http_core_module.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2324 http/ngx_http_core_module.c "internal redirect: \"%V?%V\"", uri, &r->args); r 2326 http/ngx_http_core_module.c ngx_http_set_exten(r); r 2329 http/ngx_http_core_module.c ngx_memzero(r->ctx, sizeof(void *) * ngx_http_max_module); r 2331 http/ngx_http_core_module.c cscf = ngx_http_get_module_srv_conf(r, ngx_http_core_module); r 2332 http/ngx_http_core_module.c r->loc_conf = cscf->ctx->loc_conf; r 2334 http/ngx_http_core_module.c ngx_http_update_location_config(r); r 2337 http/ngx_http_core_module.c r->cache = NULL; r 2340 http/ngx_http_core_module.c r->internal = 1; r 2341 http/ngx_http_core_module.c r->add_uri_to_alias = 0; r 2342 http/ngx_http_core_module.c r->main->count++; r 2344 http/ngx_http_core_module.c ngx_http_handler(r); r 2351 http/ngx_http_core_module.c ngx_http_named_location(ngx_http_request_t *r, ngx_str_t *name) r 2357 http/ngx_http_core_module.c r->main->count++; r 2359 http/ngx_http_core_module.c cscf = ngx_http_get_module_srv_conf(r, ngx_http_core_module); r 2365 http/ngx_http_core_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2374 http/ngx_http_core_module.c ngx_log_debug3(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2376 http/ngx_http_core_module.c name, &r->uri, &r->args); r 2378 http/ngx_http_core_module.c r->internal = 1; r 2379 http/ngx_http_core_module.c r->content_handler = NULL; r 2380 http/ngx_http_core_module.c r->loc_conf = (*clcfp)->loc_conf; r 2382 http/ngx_http_core_module.c ngx_http_update_location_config(r); r 2384 http/ngx_http_core_module.c cmcf = ngx_http_get_module_main_conf(r, ngx_http_core_module); r 2386 http/ngx_http_core_module.c r->phase_handler = cmcf->phase_engine.location_rewrite_index; r 2388 http/ngx_http_core_module.c ngx_http_core_run_phases(r); r 2394 http/ngx_http_core_module.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 2397 http/ngx_http_core_module.c ngx_http_finalize_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 2404 http/ngx_http_core_module.c ngx_http_cleanup_add(ngx_http_request_t *r, size_t size) r 2408 http/ngx_http_core_module.c r = r->main; r 2410 http/ngx_http_core_module.c cln = ngx_palloc(r->pool, sizeof(ngx_http_cleanup_t)); r 2416 http/ngx_http_core_module.c cln->data = ngx_palloc(r->pool, size); r 2426 http/ngx_http_core_module.c cln->next = r->cleanup; r 2428 http/ngx_http_core_module.c r->cleanup = cln; r 2430 http/ngx_http_core_module.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 116 http/ngx_http_core_module.h typedef ngx_int_t (*ngx_http_phase_handler_pt)(ngx_http_request_t *r, r 442 http/ngx_http_core_module.h void ngx_http_core_run_phases(ngx_http_request_t *r); r 443 http/ngx_http_core_module.h ngx_int_t ngx_http_core_generic_phase(ngx_http_request_t *r, r 445 http/ngx_http_core_module.h ngx_int_t ngx_http_core_rewrite_phase(ngx_http_request_t *r, r 447 http/ngx_http_core_module.h ngx_int_t ngx_http_core_find_config_phase(ngx_http_request_t *r, r 449 http/ngx_http_core_module.h ngx_int_t ngx_http_core_post_rewrite_phase(ngx_http_request_t *r, r 451 http/ngx_http_core_module.h ngx_int_t ngx_http_core_access_phase(ngx_http_request_t *r, r 453 http/ngx_http_core_module.h ngx_int_t ngx_http_core_post_access_phase(ngx_http_request_t *r, r 455 http/ngx_http_core_module.h ngx_int_t ngx_http_core_try_files_phase(ngx_http_request_t *r, r 457 http/ngx_http_core_module.h ngx_int_t ngx_http_core_content_phase(ngx_http_request_t *r, r 461 http/ngx_http_core_module.h void *ngx_http_test_content_type(ngx_http_request_t *r, ngx_hash_t *types_hash); r 462 http/ngx_http_core_module.h ngx_int_t ngx_http_set_content_type(ngx_http_request_t *r); r 463 http/ngx_http_core_module.h void ngx_http_set_exten(ngx_http_request_t *r); r 464 http/ngx_http_core_module.h ngx_int_t ngx_http_send_response(ngx_http_request_t *r, ngx_uint_t status, r 466 http/ngx_http_core_module.h u_char *ngx_http_map_uri_to_path(ngx_http_request_t *r, ngx_str_t *name, r 468 http/ngx_http_core_module.h ngx_int_t ngx_http_auth_basic_user(ngx_http_request_t *r); r 470 http/ngx_http_core_module.h ngx_int_t ngx_http_gzip_ok(ngx_http_request_t *r); r 474 http/ngx_http_core_module.h ngx_int_t ngx_http_subrequest(ngx_http_request_t *r, r 477 http/ngx_http_core_module.h ngx_int_t ngx_http_internal_redirect(ngx_http_request_t *r, r 479 http/ngx_http_core_module.h ngx_int_t ngx_http_named_location(ngx_http_request_t *r, ngx_str_t *name); r 482 http/ngx_http_core_module.h ngx_http_cleanup_t *ngx_http_cleanup_add(ngx_http_request_t *r, size_t size); r 485 http/ngx_http_core_module.h typedef ngx_int_t (*ngx_http_output_header_filter_pt)(ngx_http_request_t *r); r 487 http/ngx_http_core_module.h (ngx_http_request_t *r, ngx_chain_t *chain); r 490 http/ngx_http_core_module.h ngx_int_t ngx_http_output_filter(ngx_http_request_t *r, ngx_chain_t *chain); r 491 http/ngx_http_core_module.h ngx_int_t ngx_http_write_filter(ngx_http_request_t *r, ngx_chain_t *chain); r 501 http/ngx_http_core_module.h #define ngx_http_clear_content_length(r) \ r 503 http/ngx_http_core_module.h r->headers_out.content_length_n = -1; \ r 504 http/ngx_http_core_module.h if (r->headers_out.content_length) { \ r 505 http/ngx_http_core_module.h r->headers_out.content_length->hash = 0; \ r 506 http/ngx_http_core_module.h r->headers_out.content_length = NULL; \ r 509 http/ngx_http_core_module.h #define ngx_http_clear_accept_ranges(r) \ r 511 http/ngx_http_core_module.h r->allow_ranges = 0; \ r 512 http/ngx_http_core_module.h if (r->headers_out.accept_ranges) { \ r 513 http/ngx_http_core_module.h r->headers_out.accept_ranges->hash = 0; \ r 514 http/ngx_http_core_module.h r->headers_out.accept_ranges = NULL; \ r 517 http/ngx_http_core_module.h #define ngx_http_clear_last_modified(r) \ r 519 http/ngx_http_core_module.h r->headers_out.last_modified_time = -1; \ r 520 http/ngx_http_core_module.h if (r->headers_out.last_modified) { \ r 521 http/ngx_http_core_module.h r->headers_out.last_modified->hash = 0; \ r 522 http/ngx_http_core_module.h r->headers_out.last_modified = NULL; \ r 13 http/ngx_http_file_cache.c static ngx_int_t ngx_http_file_cache_read(ngx_http_request_t *r, r 15 http/ngx_http_file_cache.c static ssize_t ngx_http_file_cache_aio_read(ngx_http_request_t *r, r 22 http/ngx_http_file_cache.c static ngx_int_t ngx_http_file_cache_name(ngx_http_request_t *r, r 149 http/ngx_http_file_cache.c ngx_http_file_cache_new(ngx_http_request_t *r) r 153 http/ngx_http_file_cache.c c = ngx_pcalloc(r->pool, sizeof(ngx_http_cache_t)); r 158 http/ngx_http_file_cache.c if (ngx_array_init(&c->keys, r->pool, 4, sizeof(ngx_str_t)) != NGX_OK) { r 162 http/ngx_http_file_cache.c r->cache = c; r 163 http/ngx_http_file_cache.c c->file.log = r->connection->log; r 171 http/ngx_http_file_cache.c ngx_http_file_cache_create(ngx_http_request_t *r) r 177 http/ngx_http_file_cache.c ngx_http_file_cache_create_key(r); r 179 http/ngx_http_file_cache.c c = r->cache; r 182 http/ngx_http_file_cache.c cln = ngx_pool_cleanup_add(r->pool, 0); r 194 http/ngx_http_file_cache.c if (ngx_http_file_cache_name(r, cache->path) != NGX_OK) { r 203 http/ngx_http_file_cache.c ngx_http_file_cache_create_key(ngx_http_request_t *r) r 211 http/ngx_http_file_cache.c c = r->cache; r 220 http/ngx_http_file_cache.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 238 http/ngx_http_file_cache.c ngx_http_file_cache_open(ngx_http_request_t *r) r 248 http/ngx_http_file_cache.c c = r->cache; r 251 http/ngx_http_file_cache.c return ngx_http_file_cache_read(r, c); r 256 http/ngx_http_file_cache.c cln = ngx_pool_cleanup_add(r->pool, 0); r 263 http/ngx_http_file_cache.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 307 http/ngx_http_file_cache.c if (ngx_http_file_cache_name(r, cache->path) != NGX_OK) { r 315 http/ngx_http_file_cache.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 326 http/ngx_http_file_cache.c if (ngx_open_cached_file(clcf->open_file_cache, &c->file.name, &of, r->pool) r 339 http/ngx_http_file_cache.c ngx_log_error(NGX_LOG_CRIT, r->connection->log, of.err, r 345 http/ngx_http_file_cache.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 349 http/ngx_http_file_cache.c c->file.log = r->connection->log; r 353 http/ngx_http_file_cache.c c->buf = ngx_create_temp_buf(r->pool, c->body_start); r 358 http/ngx_http_file_cache.c return ngx_http_file_cache_read(r, c); r 363 http/ngx_http_file_cache.c ngx_http_file_cache_read(ngx_http_request_t *r, ngx_http_cache_t *c) r 371 http/ngx_http_file_cache.c n = ngx_http_file_cache_aio_read(r, c); r 378 http/ngx_http_file_cache.c ngx_log_error(NGX_LOG_CRIT, r->connection->log, 0, r 386 http/ngx_http_file_cache.c ngx_log_error(NGX_LOG_CRIT, r->connection->log, 0, r 400 http/ngx_http_file_cache.c r->cached = 1; r 437 http/ngx_http_file_cache.c ngx_log_debug3(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 449 http/ngx_http_file_cache.c ngx_http_file_cache_aio_read(ngx_http_request_t *r, ngx_http_cache_t *c) r 459 http/ngx_http_file_cache.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 465 http/ngx_http_file_cache.c n = ngx_file_aio_read(&c->file, c->buf->pos, c->body_start, 0, r->pool); r 471 http/ngx_http_file_cache.c c->file.aio->data = r; r 474 http/ngx_http_file_cache.c r->main->blocked++; r 475 http/ngx_http_file_cache.c r->aio = 1; r 493 http/ngx_http_file_cache.c ngx_http_request_t *r; r 496 http/ngx_http_file_cache.c r = aio->data; r 498 http/ngx_http_file_cache.c r->main->blocked--; r 499 http/ngx_http_file_cache.c r->aio = 0; r 501 http/ngx_http_file_cache.c r->connection->write->handler(r->connection->write); r 618 http/ngx_http_file_cache.c ngx_http_file_cache_name(ngx_http_request_t *r, ngx_path_t *path) r 623 http/ngx_http_file_cache.c c = r->cache; r 628 http/ngx_http_file_cache.c c->file.name.data = ngx_pnalloc(r->pool, c->file.name.len + 1); r 641 http/ngx_http_file_cache.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 742 http/ngx_http_file_cache.c ngx_http_file_cache_set_header(ngx_http_request_t *r, u_char *buf) r 751 http/ngx_http_file_cache.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 754 http/ngx_http_file_cache.c c = r->cache; r 778 http/ngx_http_file_cache.c ngx_http_file_cache_update(ngx_http_request_t *r, ngx_temp_file_t *tf) r 788 http/ngx_http_file_cache.c c = r->cache; r 794 http/ngx_http_file_cache.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 805 http/ngx_http_file_cache.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 814 http/ngx_http_file_cache.c ext.log = r->connection->log; r 821 http/ngx_http_file_cache.c ngx_log_error(NGX_LOG_CRIT, r->connection->log, ngx_errno, r 857 http/ngx_http_file_cache.c ngx_http_cache_send(ngx_http_request_t *r) r 864 http/ngx_http_file_cache.c c = r->cache; r 866 http/ngx_http_file_cache.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 871 http/ngx_http_file_cache.c b = ngx_pcalloc(r->pool, sizeof(ngx_buf_t)); r 876 http/ngx_http_file_cache.c b->file = ngx_pcalloc(r->pool, sizeof(ngx_file_t)); r 881 http/ngx_http_file_cache.c r->header_only = (c->length - c->body_start) == 0; r 883 http/ngx_http_file_cache.c rc = ngx_http_send_header(r); r 885 http/ngx_http_file_cache.c if (rc == NGX_ERROR || rc > NGX_OK || r->header_only) { r 893 http/ngx_http_file_cache.c b->last_buf = (r == r->main) ? 1: 0; r 898 http/ngx_http_file_cache.c b->file->log = r->connection->log; r 903 http/ngx_http_file_cache.c return ngx_http_output_filter(r, &out); r 1763 http/ngx_http_file_cache.c ngx_http_cache(ngx_http_request_t *r, ngx_array_t *no_cache) r 1772 http/ngx_http_file_cache.c if (ngx_http_complex_value(r, &cv[i], &val) != NGX_OK) { r 14 http/ngx_http_header_filter_module.c static ngx_int_t ngx_http_header_filter(ngx_http_request_t *r); r 154 http/ngx_http_header_filter_module.c ngx_http_header_filter(ngx_http_request_t *r) r 173 http/ngx_http_header_filter_module.c if (r->header_sent) { r 177 http/ngx_http_header_filter_module.c r->header_sent = 1; r 179 http/ngx_http_header_filter_module.c if (r != r->main) { r 183 http/ngx_http_header_filter_module.c if (r->http_version < NGX_HTTP_VERSION_10) { r 187 http/ngx_http_header_filter_module.c if (r->method == NGX_HTTP_HEAD) { r 188 http/ngx_http_header_filter_module.c r->header_only = 1; r 191 http/ngx_http_header_filter_module.c if (r->headers_out.last_modified_time != -1) { r 192 http/ngx_http_header_filter_module.c if (r->headers_out.status != NGX_HTTP_OK r 193 http/ngx_http_header_filter_module.c && r->headers_out.status != NGX_HTTP_PARTIAL_CONTENT r 194 http/ngx_http_header_filter_module.c && r->headers_out.status != NGX_HTTP_NOT_MODIFIED) r 196 http/ngx_http_header_filter_module.c r->headers_out.last_modified_time = -1; r 197 http/ngx_http_header_filter_module.c r->headers_out.last_modified = NULL; r 207 http/ngx_http_header_filter_module.c if (r->headers_out.status_line.len) { r 208 http/ngx_http_header_filter_module.c len += r->headers_out.status_line.len; r 209 http/ngx_http_header_filter_module.c status_line = &r->headers_out.status_line; r 216 http/ngx_http_header_filter_module.c status = r->headers_out.status; r 224 http/ngx_http_header_filter_module.c r->header_only = 1; r 225 http/ngx_http_header_filter_module.c ngx_str_null(&r->headers_out.content_type); r 226 http/ngx_http_header_filter_module.c r->headers_out.last_modified_time = -1; r 227 http/ngx_http_header_filter_module.c r->headers_out.last_modified = NULL; r 228 http/ngx_http_header_filter_module.c r->headers_out.content_length = NULL; r 229 http/ngx_http_header_filter_module.c r->headers_out.content_length_n = -1; r 242 http/ngx_http_header_filter_module.c r->header_only = 1; r 278 http/ngx_http_header_filter_module.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 280 http/ngx_http_header_filter_module.c if (r->headers_out.server == NULL) { r 285 http/ngx_http_header_filter_module.c if (r->headers_out.date == NULL) { r 289 http/ngx_http_header_filter_module.c if (r->headers_out.content_type.len) { r 291 http/ngx_http_header_filter_module.c + r->headers_out.content_type.len + 2; r 293 http/ngx_http_header_filter_module.c if (r->headers_out.content_type_len == r->headers_out.content_type.len r 294 http/ngx_http_header_filter_module.c && r->headers_out.charset.len) r 296 http/ngx_http_header_filter_module.c len += sizeof("; charset=") - 1 + r->headers_out.charset.len; r 300 http/ngx_http_header_filter_module.c if (r->headers_out.content_length == NULL r 301 http/ngx_http_header_filter_module.c && r->headers_out.content_length_n >= 0) r 306 http/ngx_http_header_filter_module.c if (r->headers_out.last_modified == NULL r 307 http/ngx_http_header_filter_module.c && r->headers_out.last_modified_time != -1) r 312 http/ngx_http_header_filter_module.c c = r->connection; r 314 http/ngx_http_header_filter_module.c if (r->headers_out.location r 315 http/ngx_http_header_filter_module.c && r->headers_out.location->value.len r 316 http/ngx_http_header_filter_module.c && r->headers_out.location->value.data[0] == '/') r 318 http/ngx_http_header_filter_module.c r->headers_out.location->hash = 0; r 321 http/ngx_http_header_filter_module.c cscf = ngx_http_get_module_srv_conf(r, ngx_http_core_module); r 324 http/ngx_http_header_filter_module.c } else if (r->headers_in.server.len) { r 325 http/ngx_http_header_filter_module.c host = r->headers_in.server; r 357 http/ngx_http_header_filter_module.c + r->headers_out.location->value.len + 2; r 381 http/ngx_http_header_filter_module.c if (r->chunked) { r 385 http/ngx_http_header_filter_module.c if (r->keepalive) { r 405 http/ngx_http_header_filter_module.c if (r->gzip_vary) { r 410 http/ngx_http_header_filter_module.c r->gzip_vary = 0; r 415 http/ngx_http_header_filter_module.c part = &r->headers_out.headers.part; r 438 http/ngx_http_header_filter_module.c b = ngx_create_temp_buf(r->pool, len); r 455 http/ngx_http_header_filter_module.c if (r->headers_out.server == NULL) { r 468 http/ngx_http_header_filter_module.c if (r->headers_out.date == NULL) { r 476 http/ngx_http_header_filter_module.c if (r->headers_out.content_type.len) { r 480 http/ngx_http_header_filter_module.c b->last = ngx_copy(b->last, r->headers_out.content_type.data, r 481 http/ngx_http_header_filter_module.c r->headers_out.content_type.len); r 483 http/ngx_http_header_filter_module.c if (r->headers_out.content_type_len == r->headers_out.content_type.len r 484 http/ngx_http_header_filter_module.c && r->headers_out.charset.len) r 488 http/ngx_http_header_filter_module.c b->last = ngx_copy(b->last, r->headers_out.charset.data, r 489 http/ngx_http_header_filter_module.c r->headers_out.charset.len); r 493 http/ngx_http_header_filter_module.c r->headers_out.content_type.len = b->last - p; r 494 http/ngx_http_header_filter_module.c r->headers_out.content_type.data = p; r 500 http/ngx_http_header_filter_module.c if (r->headers_out.content_length == NULL r 501 http/ngx_http_header_filter_module.c && r->headers_out.content_length_n >= 0) r 504 http/ngx_http_header_filter_module.c r->headers_out.content_length_n); r 507 http/ngx_http_header_filter_module.c if (r->headers_out.last_modified == NULL r 508 http/ngx_http_header_filter_module.c && r->headers_out.last_modified_time != -1) r 512 http/ngx_http_header_filter_module.c b->last = ngx_http_time(b->last, r->headers_out.last_modified_time); r 537 http/ngx_http_header_filter_module.c b->last = ngx_copy(b->last, r->headers_out.location->value.data, r 538 http/ngx_http_header_filter_module.c r->headers_out.location->value.len); r 542 http/ngx_http_header_filter_module.c r->headers_out.location->value.len = b->last - p; r 543 http/ngx_http_header_filter_module.c r->headers_out.location->value.data = p; r 544 http/ngx_http_header_filter_module.c ngx_str_set(&r->headers_out.location->key, "Location"); r 549 http/ngx_http_header_filter_module.c if (r->chunked) { r 554 http/ngx_http_header_filter_module.c if (r->keepalive) { r 569 http/ngx_http_header_filter_module.c if (r->gzip_vary) { r 575 http/ngx_http_header_filter_module.c part = &r->headers_out.headers.part; r 607 http/ngx_http_header_filter_module.c r->header_size = b->last - b->pos; r 609 http/ngx_http_header_filter_module.c if (r->header_only) { r 616 http/ngx_http_header_filter_module.c return ngx_http_write_filter(r, &out); r 103 http/ngx_http_parse.c ngx_http_parse_request_line(ngx_http_request_t *r, ngx_buf_t *b) r 133 http/ngx_http_parse.c state = r->state; r 142 http/ngx_http_parse.c r->request_start = p; r 157 http/ngx_http_parse.c r->method_end = p - 1; r 158 http/ngx_http_parse.c m = r->request_start; r 164 http/ngx_http_parse.c r->method = NGX_HTTP_GET; r 169 http/ngx_http_parse.c r->method = NGX_HTTP_PUT; r 179 http/ngx_http_parse.c r->method = NGX_HTTP_POST; r 184 http/ngx_http_parse.c r->method = NGX_HTTP_COPY; r 189 http/ngx_http_parse.c r->method = NGX_HTTP_MOVE; r 194 http/ngx_http_parse.c r->method = NGX_HTTP_LOCK; r 201 http/ngx_http_parse.c r->method = NGX_HTTP_HEAD; r 210 http/ngx_http_parse.c r->method = NGX_HTTP_MKCOL; r 214 http/ngx_http_parse.c r->method = NGX_HTTP_PATCH; r 218 http/ngx_http_parse.c r->method = NGX_HTTP_TRACE; r 225 http/ngx_http_parse.c r->method = NGX_HTTP_DELETE; r 230 http/ngx_http_parse.c r->method = NGX_HTTP_UNLOCK; r 239 http/ngx_http_parse.c r->method = NGX_HTTP_OPTIONS; r 247 http/ngx_http_parse.c r->method = NGX_HTTP_PROPFIND; r 256 http/ngx_http_parse.c r->method = NGX_HTTP_PROPPATCH; r 276 http/ngx_http_parse.c r->uri_start = p; r 283 http/ngx_http_parse.c r->schema_start = p; r 305 http/ngx_http_parse.c r->schema_end = p; r 326 http/ngx_http_parse.c r->host_start = p + 1; r 345 http/ngx_http_parse.c r->host_end = p; r 352 http/ngx_http_parse.c r->uri_start = p; r 360 http/ngx_http_parse.c r->uri_start = r->schema_end + 1; r 361 http/ngx_http_parse.c r->uri_end = r->schema_end + 2; r 376 http/ngx_http_parse.c r->port_end = p; r 377 http/ngx_http_parse.c r->uri_start = p; r 381 http/ngx_http_parse.c r->port_end = p; r 386 http/ngx_http_parse.c r->uri_start = r->schema_end + 1; r 387 http/ngx_http_parse.c r->uri_end = r->schema_end + 2; r 401 http/ngx_http_parse.c r->http_minor = 9; r 405 http/ngx_http_parse.c r->http_minor = 9; r 408 http/ngx_http_parse.c r->http_protocol.data = p; r 427 http/ngx_http_parse.c r->uri_end = p; r 431 http/ngx_http_parse.c r->uri_end = p; r 432 http/ngx_http_parse.c r->http_minor = 9; r 436 http/ngx_http_parse.c r->uri_end = p; r 437 http/ngx_http_parse.c r->http_minor = 9; r 440 http/ngx_http_parse.c r->complex_uri = 1; r 444 http/ngx_http_parse.c r->quoted_uri = 1; r 448 http/ngx_http_parse.c r->complex_uri = 1; r 453 http/ngx_http_parse.c r->complex_uri = 1; r 458 http/ngx_http_parse.c r->args_start = p + 1; r 462 http/ngx_http_parse.c r->complex_uri = 1; r 466 http/ngx_http_parse.c r->plus_in_uri = 1; r 485 http/ngx_http_parse.c r->uri_ext = NULL; r 489 http/ngx_http_parse.c r->uri_ext = p + 1; r 492 http/ngx_http_parse.c r->uri_end = p; r 496 http/ngx_http_parse.c r->uri_end = p; r 497 http/ngx_http_parse.c r->http_minor = 9; r 501 http/ngx_http_parse.c r->uri_end = p; r 502 http/ngx_http_parse.c r->http_minor = 9; r 506 http/ngx_http_parse.c r->complex_uri = 1; r 511 http/ngx_http_parse.c r->quoted_uri = 1; r 515 http/ngx_http_parse.c r->args_start = p + 1; r 519 http/ngx_http_parse.c r->complex_uri = 1; r 523 http/ngx_http_parse.c r->plus_in_uri = 1; r 536 http/ngx_http_parse.c r->http_minor = 9; r 540 http/ngx_http_parse.c r->http_minor = 9; r 543 http/ngx_http_parse.c r->http_protocol.data = p; r 547 http/ngx_http_parse.c r->space_in_uri = 1; r 563 http/ngx_http_parse.c r->uri_end = p; r 567 http/ngx_http_parse.c r->uri_end = p; r 568 http/ngx_http_parse.c r->http_minor = 9; r 572 http/ngx_http_parse.c r->uri_end = p; r 573 http/ngx_http_parse.c r->http_minor = 9; r 576 http/ngx_http_parse.c r->complex_uri = 1; r 589 http/ngx_http_parse.c r->http_minor = 9; r 593 http/ngx_http_parse.c r->http_minor = 9; r 596 http/ngx_http_parse.c r->http_protocol.data = p; r 600 http/ngx_http_parse.c r->space_in_uri = 1; r 652 http/ngx_http_parse.c r->http_major = ch - '0'; r 667 http/ngx_http_parse.c r->http_major = r->http_major * 10 + ch - '0'; r 676 http/ngx_http_parse.c r->http_minor = ch - '0'; r 700 http/ngx_http_parse.c r->http_minor = r->http_minor * 10 + ch - '0'; r 719 http/ngx_http_parse.c r->request_end = p - 1; r 730 http/ngx_http_parse.c r->state = state; r 738 http/ngx_http_parse.c if (r->request_end == NULL) { r 739 http/ngx_http_parse.c r->request_end = p; r 742 http/ngx_http_parse.c r->http_version = r->http_major * 1000 + r->http_minor; r 743 http/ngx_http_parse.c r->state = sw_start; r 745 http/ngx_http_parse.c if (r->http_version == 9 && r->method != NGX_HTTP_GET) { r 754 http/ngx_http_parse.c ngx_http_parse_header_line(ngx_http_request_t *r, ngx_buf_t *b, r 782 http/ngx_http_parse.c state = r->state; r 783 http/ngx_http_parse.c hash = r->header_hash; r 784 http/ngx_http_parse.c i = r->lowcase_index; r 793 http/ngx_http_parse.c r->header_name_start = p; r 794 http/ngx_http_parse.c r->invalid_header = 0; r 798 http/ngx_http_parse.c r->header_end = p; r 802 http/ngx_http_parse.c r->header_end = p; r 811 http/ngx_http_parse.c r->lowcase_header[0] = c; r 816 http/ngx_http_parse.c r->invalid_header = 1; r 829 http/ngx_http_parse.c r->lowcase_header[i++] = c; r 837 http/ngx_http_parse.c r->lowcase_header[i++] = ch; r 841 http/ngx_http_parse.c r->invalid_header = 1; r 848 http/ngx_http_parse.c r->header_name_end = p; r 854 http/ngx_http_parse.c r->header_name_end = p; r 855 http/ngx_http_parse.c r->header_start = p; r 856 http/ngx_http_parse.c r->header_end = p; r 862 http/ngx_http_parse.c r->header_name_end = p; r 863 http/ngx_http_parse.c r->header_start = p; r 864 http/ngx_http_parse.c r->header_end = p; r 870 http/ngx_http_parse.c && r->upstream r 871 http/ngx_http_parse.c && p - r->header_name_start == 4 r 872 http/ngx_http_parse.c && ngx_strncmp(r->header_name_start, "HTTP", 4) == 0) r 878 http/ngx_http_parse.c r->invalid_header = 1; r 888 http/ngx_http_parse.c r->header_start = p; r 889 http/ngx_http_parse.c r->header_end = p; r 893 http/ngx_http_parse.c r->header_start = p; r 894 http/ngx_http_parse.c r->header_end = p; r 897 http/ngx_http_parse.c r->header_start = p; r 907 http/ngx_http_parse.c r->header_end = p; r 911 http/ngx_http_parse.c r->header_end = p; r 915 http/ngx_http_parse.c r->header_end = p; r 971 http/ngx_http_parse.c r->state = state; r 972 http/ngx_http_parse.c r->header_hash = hash; r 973 http/ngx_http_parse.c r->lowcase_index = i; r 980 http/ngx_http_parse.c r->state = sw_start; r 981 http/ngx_http_parse.c r->header_hash = hash; r 982 http/ngx_http_parse.c r->lowcase_index = i; r 989 http/ngx_http_parse.c r->state = sw_start; r 996 http/ngx_http_parse.c ngx_http_parse_complex_uri(ngx_http_request_t *r, ngx_uint_t merge_slashes) r 1014 http/ngx_http_parse.c p = r->uri_start; r 1015 http/ngx_http_parse.c u = r->uri.data; r 1016 http/ngx_http_parse.c r->uri_ext = NULL; r 1017 http/ngx_http_parse.c r->args_start = NULL; r 1021 http/ngx_http_parse.c while (p <= r->uri_end) { r 1029 http/ngx_http_parse.c ngx_log_debug4(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1045 http/ngx_http_parse.c r->uri_ext = NULL; r 1047 http/ngx_http_parse.c if (p == r->uri_start + r->uri.len) { r 1062 http/ngx_http_parse.c r->uri_ext = NULL; r 1071 http/ngx_http_parse.c r->args_start = p; r 1076 http/ngx_http_parse.c r->uri_ext = u + 1; r 1080 http/ngx_http_parse.c r->plus_in_uri = 1; r 1117 http/ngx_http_parse.c r->args_start = p; r 1122 http/ngx_http_parse.c r->plus_in_uri = 1; r 1158 http/ngx_http_parse.c r->args_start = p; r 1163 http/ngx_http_parse.c r->plus_in_uri = 1; r 1190 http/ngx_http_parse.c if (u < r->uri.data) { r 1205 http/ngx_http_parse.c r->args_start = p; r 1210 http/ngx_http_parse.c r->plus_in_uri = 1; r 1221 http/ngx_http_parse.c r->quoted_uri = 1; r 1269 http/ngx_http_parse.c r->plus_in_uri = 1; r 1282 http/ngx_http_parse.c r->uri.len = u - r->uri.data; r 1284 http/ngx_http_parse.c if (r->uri_ext) { r 1285 http/ngx_http_parse.c r->exten.len = u - r->uri_ext; r 1286 http/ngx_http_parse.c r->exten.data = r->uri_ext; r 1289 http/ngx_http_parse.c r->uri_ext = NULL; r 1295 http/ngx_http_parse.c while (p < r->uri_end) { r 1300 http/ngx_http_parse.c r->args.len = p - 1 - r->args_start; r 1301 http/ngx_http_parse.c r->args.data = r->args_start; r 1302 http/ngx_http_parse.c r->args_start = NULL; r 1307 http/ngx_http_parse.c r->uri.len = u - r->uri.data; r 1309 http/ngx_http_parse.c if (r->uri_ext) { r 1310 http/ngx_http_parse.c r->exten.len = u - r->uri_ext; r 1311 http/ngx_http_parse.c r->exten.data = r->uri_ext; r 1314 http/ngx_http_parse.c r->uri_ext = NULL; r 1321 http/ngx_http_parse.c ngx_http_parse_status_line(ngx_http_request_t *r, ngx_buf_t *b, r 1342 http/ngx_http_parse.c state = r->state; r 1507 http/ngx_http_parse.c r->state = state; r 1519 http/ngx_http_parse.c r->state = sw_start; r 1526 http/ngx_http_parse.c ngx_http_parse_unsafe_uri(ngx_http_request_t *r, ngx_str_t *uri, r 1578 http/ngx_http_parse.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1660 http/ngx_http_parse.c ngx_http_arg(ngx_http_request_t *r, u_char *name, size_t len, ngx_str_t *value) r 1664 http/ngx_http_parse.c if (r->args.len == 0) { r 1668 http/ngx_http_parse.c p = r->args.data; r 1669 http/ngx_http_parse.c last = p + r->args.len; r 1681 http/ngx_http_parse.c if ((p == r->args.data || *(p - 1) == '&') && *(p + len) == '=') { r 1688 http/ngx_http_parse.c p = r->args.data + r->args.len; r 1702 http/ngx_http_parse.c ngx_http_split_args(ngx_http_request_t *r, ngx_str_t *uri, ngx_str_t *args) r 12 http/ngx_http_postpone_filter_module.c static ngx_int_t ngx_http_postpone_filter_add(ngx_http_request_t *r, r 52 http/ngx_http_postpone_filter_module.c ngx_http_postpone_filter(ngx_http_request_t *r, ngx_chain_t *in) r 57 http/ngx_http_postpone_filter_module.c c = r->connection; r 60 http/ngx_http_postpone_filter_module.c "http postpone filter \"%V?%V\" %p", &r->uri, &r->args, in); r 62 http/ngx_http_postpone_filter_module.c if (r != c->data) { r 65 http/ngx_http_postpone_filter_module.c ngx_http_postpone_filter_add(r, in); r 73 http/ngx_http_postpone_filter_module.c &r->uri, &r->args); r 79 http/ngx_http_postpone_filter_module.c if (r->postponed == NULL) { r 82 http/ngx_http_postpone_filter_module.c return ngx_http_next_filter(r->main, in); r 89 http/ngx_http_postpone_filter_module.c ngx_http_postpone_filter_add(r, in); r 93 http/ngx_http_postpone_filter_module.c pr = r->postponed; r 101 http/ngx_http_postpone_filter_module.c r->postponed = pr->next; r 111 http/ngx_http_postpone_filter_module.c &r->uri, &r->args); r 116 http/ngx_http_postpone_filter_module.c &r->uri, &r->args); r 118 http/ngx_http_postpone_filter_module.c if (ngx_http_next_filter(r->main, pr->out) == NGX_ERROR) { r 123 http/ngx_http_postpone_filter_module.c r->postponed = pr->next; r 125 http/ngx_http_postpone_filter_module.c } while (r->postponed); r 132 http/ngx_http_postpone_filter_module.c ngx_http_postpone_filter_add(ngx_http_request_t *r, ngx_chain_t *in) r 136 http/ngx_http_postpone_filter_module.c if (r->postponed) { r 137 http/ngx_http_postpone_filter_module.c for (pr = r->postponed; pr->next; pr = pr->next) { /* void */ } r 146 http/ngx_http_postpone_filter_module.c ppr = &r->postponed; r 149 http/ngx_http_postpone_filter_module.c pr = ngx_palloc(r->pool, sizeof(ngx_http_postponed_request_t)); r 162 http/ngx_http_postpone_filter_module.c if (ngx_chain_add_copy(r->pool, &pr->out, in) == NGX_OK) { r 15 http/ngx_http_request.c static ssize_t ngx_http_read_request_header(ngx_http_request_t *r); r 16 http/ngx_http_request.c static ngx_int_t ngx_http_alloc_large_header_buffer(ngx_http_request_t *r, r 19 http/ngx_http_request.c static ngx_int_t ngx_http_process_header_line(ngx_http_request_t *r, r 21 http/ngx_http_request.c static ngx_int_t ngx_http_process_unique_header_line(ngx_http_request_t *r, r 23 http/ngx_http_request.c static ngx_int_t ngx_http_process_host(ngx_http_request_t *r, r 25 http/ngx_http_request.c static ngx_int_t ngx_http_process_connection(ngx_http_request_t *r, r 27 http/ngx_http_request.c static ngx_int_t ngx_http_process_user_agent(ngx_http_request_t *r, r 29 http/ngx_http_request.c static ngx_int_t ngx_http_process_cookie(ngx_http_request_t *r, r 32 http/ngx_http_request.c static ngx_int_t ngx_http_process_request_header(ngx_http_request_t *r); r 33 http/ngx_http_request.c static void ngx_http_process_request(ngx_http_request_t *r); r 34 http/ngx_http_request.c static ssize_t ngx_http_validate_host(ngx_http_request_t *r, u_char **host, r 36 http/ngx_http_request.c static ngx_int_t ngx_http_find_virtual_server(ngx_http_request_t *r, r 40 http/ngx_http_request.c static void ngx_http_terminate_request(ngx_http_request_t *r, ngx_int_t rc); r 41 http/ngx_http_request.c static void ngx_http_terminate_handler(ngx_http_request_t *r); r 42 http/ngx_http_request.c static void ngx_http_finalize_connection(ngx_http_request_t *r); r 43 http/ngx_http_request.c static ngx_int_t ngx_http_set_write_handler(ngx_http_request_t *r); r 44 http/ngx_http_request.c static void ngx_http_writer(ngx_http_request_t *r); r 45 http/ngx_http_request.c static void ngx_http_request_finalizer(ngx_http_request_t *r); r 47 http/ngx_http_request.c static void ngx_http_set_keepalive(ngx_http_request_t *r); r 49 http/ngx_http_request.c static void ngx_http_set_lingering_close(ngx_http_request_t *r); r 51 http/ngx_http_request.c static ngx_int_t ngx_http_post_action(ngx_http_request_t *r); r 52 http/ngx_http_request.c static void ngx_http_close_request(ngx_http_request_t *r, ngx_int_t error); r 53 http/ngx_http_request.c static void ngx_http_free_request(ngx_http_request_t *r, ngx_int_t error); r 54 http/ngx_http_request.c static void ngx_http_log_request(ngx_http_request_t *r); r 58 http/ngx_http_request.c static u_char *ngx_http_log_error_handler(ngx_http_request_t *r, r 242 http/ngx_http_request.c ngx_http_request_t *r; r 282 http/ngx_http_request.c r = hc->request; r 284 http/ngx_http_request.c if (r) { r 285 http/ngx_http_request.c ngx_memzero(r, sizeof(ngx_http_request_t)); r 287 http/ngx_http_request.c r->pipeline = hc->pipeline; r 290 http/ngx_http_request.c r->header_in = hc->busy[0]; r 294 http/ngx_http_request.c r = ngx_pcalloc(c->pool, sizeof(ngx_http_request_t)); r 295 http/ngx_http_request.c if (r == NULL) { r 300 http/ngx_http_request.c hc->request = r; r 303 http/ngx_http_request.c c->data = r; r 304 http/ngx_http_request.c r->http_connection = hc; r 307 http/ngx_http_request.c r->signature = NGX_HTTP_MODULE; r 313 http/ngx_http_request.c r->connection = c; r 385 http/ngx_http_request.c r->virtual_names = addr_conf->virtual_names; r 390 http/ngx_http_request.c r->main_conf = cscf->ctx->main_conf; r 391 http/ngx_http_request.c r->srv_conf = cscf->ctx->srv_conf; r 392 http/ngx_http_request.c r->loc_conf = cscf->ctx->loc_conf; r 395 http/ngx_http_request.c r->read_event_handler = ngx_http_block_reading; r 402 http/ngx_http_request.c sscf = ngx_http_get_module_srv_conf(r, ngx_http_ssl_module); r 427 http/ngx_http_request.c r->main_filter_need_in_memory = 1; r 433 http/ngx_http_request.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 448 http/ngx_http_request.c if (r->header_in == NULL) { r 449 http/ngx_http_request.c r->header_in = c->buffer; r 452 http/ngx_http_request.c r->pool = ngx_create_pool(cscf->request_pool_size, c->log); r 453 http/ngx_http_request.c if (r->pool == NULL) { r 459 http/ngx_http_request.c if (ngx_list_init(&r->headers_out.headers, r->pool, 20, r 463 http/ngx_http_request.c ngx_destroy_pool(r->pool); r 468 http/ngx_http_request.c r->ctx = ngx_pcalloc(r->pool, sizeof(void *) * ngx_http_max_module); r 469 http/ngx_http_request.c if (r->ctx == NULL) { r 470 http/ngx_http_request.c ngx_destroy_pool(r->pool); r 475 http/ngx_http_request.c cmcf = ngx_http_get_module_main_conf(r, ngx_http_core_module); r 477 http/ngx_http_request.c r->variables = ngx_pcalloc(r->pool, cmcf->variables.nelts r 479 http/ngx_http_request.c if (r->variables == NULL) { r 480 http/ngx_http_request.c ngx_destroy_pool(r->pool); r 488 http/ngx_http_request.c r->main = r; r 489 http/ngx_http_request.c r->count = 1; r 492 http/ngx_http_request.c r->start_sec = tp->sec; r 493 http/ngx_http_request.c r->start_msec = tp->msec; r 495 http/ngx_http_request.c r->method = NGX_HTTP_UNKNOWN; r 497 http/ngx_http_request.c r->headers_in.content_length_n = -1; r 498 http/ngx_http_request.c r->headers_in.keep_alive_n = -1; r 499 http/ngx_http_request.c r->headers_out.content_length_n = -1; r 500 http/ngx_http_request.c r->headers_out.last_modified_time = -1; r 502 http/ngx_http_request.c r->uri_changes = NGX_HTTP_MAX_URI_CHANGES + 1; r 503 http/ngx_http_request.c r->subrequests = NGX_HTTP_MAX_SUBREQUESTS + 1; r 505 http/ngx_http_request.c r->http_state = NGX_HTTP_READING_REQUEST_STATE; r 508 http/ngx_http_request.c ctx->request = r; r 509 http/ngx_http_request.c ctx->current_request = r; r 510 http/ngx_http_request.c r->log_handler = ngx_http_log_error_handler; r 514 http/ngx_http_request.c r->stat_reading = 1; r 531 http/ngx_http_request.c ngx_http_request_t *r; r 534 http/ngx_http_request.c r = c->data; r 542 http/ngx_http_request.c ngx_http_close_request(r, NGX_HTTP_REQUEST_TIME_OUT); r 555 http/ngx_http_request.c ngx_http_close_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 586 http/ngx_http_request.c r->plain_http = 1; r 600 http/ngx_http_request.c ngx_http_request_t *r; r 622 http/ngx_http_request.c r = c->data; r 624 http/ngx_http_request.c ngx_http_close_request(r, NGX_HTTP_BAD_REQUEST); r 638 http/ngx_http_request.c ngx_http_request_t *r; r 658 http/ngx_http_request.c r = c->data; r 662 http/ngx_http_request.c len = ngx_http_validate_host(r, &host, len, 1); r 668 http/ngx_http_request.c if (ngx_http_find_virtual_server(r, host, len) != NGX_OK) { r 672 http/ngx_http_request.c sscf = ngx_http_get_module_srv_conf(r, ngx_http_ssl_module); r 691 http/ngx_http_request.c ngx_http_request_t *r; r 695 http/ngx_http_request.c r = c->data; r 703 http/ngx_http_request.c ngx_http_close_request(r, NGX_HTTP_REQUEST_TIME_OUT); r 712 http/ngx_http_request.c n = ngx_http_read_request_header(r); r 719 http/ngx_http_request.c rc = ngx_http_parse_request_line(r, r->header_in); r 725 http/ngx_http_request.c r->request_line.len = r->request_end - r->request_start; r 726 http/ngx_http_request.c r->request_line.data = r->request_start; r 729 http/ngx_http_request.c if (r->args_start) { r 730 http/ngx_http_request.c r->uri.len = r->args_start - 1 - r->uri_start; r 732 http/ngx_http_request.c r->uri.len = r->uri_end - r->uri_start; r 736 http/ngx_http_request.c if (r->complex_uri || r->quoted_uri) { r 738 http/ngx_http_request.c r->uri.data = ngx_pnalloc(r->pool, r->uri.len + 1); r 739 http/ngx_http_request.c if (r->uri.data == NULL) { r 740 http/ngx_http_request.c ngx_http_close_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 744 http/ngx_http_request.c cscf = ngx_http_get_module_srv_conf(r, ngx_http_core_module); r 746 http/ngx_http_request.c rc = ngx_http_parse_complex_uri(r, cscf->merge_slashes); r 751 http/ngx_http_request.c ngx_http_finalize_request(r, NGX_HTTP_BAD_REQUEST); r 756 http/ngx_http_request.c r->uri.data = r->uri_start; r 760 http/ngx_http_request.c r->unparsed_uri.len = r->uri_end - r->uri_start; r 761 http/ngx_http_request.c r->unparsed_uri.data = r->uri_start; r 763 http/ngx_http_request.c r->valid_unparsed_uri = r->space_in_uri ? 0 : 1; r 765 http/ngx_http_request.c r->method_name.len = r->method_end - r->request_start + 1; r 766 http/ngx_http_request.c r->method_name.data = r->request_line.data; r 769 http/ngx_http_request.c if (r->http_protocol.data) { r 770 http/ngx_http_request.c r->http_protocol.len = r->request_end - r->http_protocol.data; r 774 http/ngx_http_request.c if (r->uri_ext) { r 775 http/ngx_http_request.c if (r->args_start) { r 776 http/ngx_http_request.c r->exten.len = r->args_start - 1 - r->uri_ext; r 778 http/ngx_http_request.c r->exten.len = r->uri_end - r->uri_ext; r 781 http/ngx_http_request.c r->exten.data = r->uri_ext; r 785 http/ngx_http_request.c if (r->args_start && r->uri_end > r->args_start) { r 786 http/ngx_http_request.c r->args.len = r->uri_end - r->args_start; r 787 http/ngx_http_request.c r->args.data = r->args_start; r 794 http/ngx_http_request.c p = r->uri.data + r->uri.len - 1; r 796 http/ngx_http_request.c while (p > r->uri.data) { r 816 http/ngx_http_request.c if (p != r->uri.data + r->uri.len - 1) { r 817 http/ngx_http_request.c r->uri.len = p + 1 - r->uri.data; r 818 http/ngx_http_request.c ngx_http_set_exten(r); r 825 http/ngx_http_request.c "http request line: \"%V\"", &r->request_line); r 828 http/ngx_http_request.c "http uri: \"%V\"", &r->uri); r 831 http/ngx_http_request.c "http args: \"%V\"", &r->args); r 834 http/ngx_http_request.c "http exten: \"%V\"", &r->exten); r 836 http/ngx_http_request.c if (r->host_start && r->host_end) { r 838 http/ngx_http_request.c host = r->host_start; r 839 http/ngx_http_request.c n = ngx_http_validate_host(r, &host, r 840 http/ngx_http_request.c r->host_end - r->host_start, 0); r 845 http/ngx_http_request.c ngx_http_finalize_request(r, NGX_HTTP_BAD_REQUEST); r 850 http/ngx_http_request.c ngx_http_close_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 854 http/ngx_http_request.c r->headers_in.server.len = n; r 855 http/ngx_http_request.c r->headers_in.server.data = host; r 858 http/ngx_http_request.c if (r->http_version < NGX_HTTP_VERSION_10) { r 860 http/ngx_http_request.c if (ngx_http_find_virtual_server(r, r->headers_in.server.data, r 861 http/ngx_http_request.c r->headers_in.server.len) r 864 http/ngx_http_request.c ngx_http_close_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 868 http/ngx_http_request.c ngx_http_process_request(r); r 873 http/ngx_http_request.c if (ngx_list_init(&r->headers_in.headers, r->pool, 20, r 877 http/ngx_http_request.c ngx_http_close_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 882 http/ngx_http_request.c if (ngx_array_init(&r->headers_in.cookies, r->pool, 2, r 886 http/ngx_http_request.c ngx_http_close_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 904 http/ngx_http_request.c ngx_http_finalize_request(r, NGX_HTTP_BAD_REQUEST); r 910 http/ngx_http_request.c if (r->header_in->pos == r->header_in->end) { r 912 http/ngx_http_request.c rv = ngx_http_alloc_large_header_buffer(r, 1); r 915 http/ngx_http_request.c ngx_http_close_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 920 http/ngx_http_request.c r->request_line.len = r->header_in->end - r->request_start; r 921 http/ngx_http_request.c r->request_line.data = r->request_start; r 925 http/ngx_http_request.c ngx_http_finalize_request(r, NGX_HTTP_REQUEST_URI_TOO_LARGE); r 943 http/ngx_http_request.c ngx_http_request_t *r; r 948 http/ngx_http_request.c r = c->data; r 956 http/ngx_http_request.c ngx_http_close_request(r, NGX_HTTP_REQUEST_TIME_OUT); r 960 http/ngx_http_request.c cmcf = ngx_http_get_module_main_conf(r, ngx_http_core_module); r 961 http/ngx_http_request.c cscf = ngx_http_get_module_srv_conf(r, ngx_http_core_module); r 969 http/ngx_http_request.c if (r->header_in->pos == r->header_in->end) { r 971 http/ngx_http_request.c rv = ngx_http_alloc_large_header_buffer(r, 0); r 974 http/ngx_http_request.c ngx_http_close_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 979 http/ngx_http_request.c p = r->header_name_start; r 981 http/ngx_http_request.c r->lingering_close = 1; r 986 http/ngx_http_request.c ngx_http_finalize_request(r, r 991 http/ngx_http_request.c len = r->header_in->end - p; r 1000 http/ngx_http_request.c len, r->header_name_start); r 1002 http/ngx_http_request.c ngx_http_finalize_request(r, r 1008 http/ngx_http_request.c n = ngx_http_read_request_header(r); r 1015 http/ngx_http_request.c rc = ngx_http_parse_header_line(r, r->header_in, r 1020 http/ngx_http_request.c if (r->invalid_header && cscf->ignore_invalid_headers) { r 1026 http/ngx_http_request.c r->header_end - r->header_name_start, r 1027 http/ngx_http_request.c r->header_name_start); r 1033 http/ngx_http_request.c h = ngx_list_push(&r->headers_in.headers); r 1035 http/ngx_http_request.c ngx_http_close_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 1039 http/ngx_http_request.c h->hash = r->header_hash; r 1041 http/ngx_http_request.c h->key.len = r->header_name_end - r->header_name_start; r 1042 http/ngx_http_request.c h->key.data = r->header_name_start; r 1045 http/ngx_http_request.c h->value.len = r->header_end - r->header_start; r 1046 http/ngx_http_request.c h->value.data = r->header_start; r 1049 http/ngx_http_request.c h->lowcase_key = ngx_pnalloc(r->pool, h->key.len); r 1051 http/ngx_http_request.c ngx_http_close_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 1055 http/ngx_http_request.c if (h->key.len == r->lowcase_index) { r 1056 http/ngx_http_request.c ngx_memcpy(h->lowcase_key, r->lowcase_header, h->key.len); r 1065 http/ngx_http_request.c if (hh && hh->handler(r, h, hh->offset) != NGX_OK) { r 1069 http/ngx_http_request.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1080 http/ngx_http_request.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1083 http/ngx_http_request.c r->request_length += r->header_in->pos - r->header_in->start; r 1085 http/ngx_http_request.c r->http_state = NGX_HTTP_PROCESS_REQUEST_STATE; r 1087 http/ngx_http_request.c rc = ngx_http_process_request_header(r); r 1093 http/ngx_http_request.c ngx_http_process_request(r); r 1109 http/ngx_http_request.c r->header_end - r->header_name_start, r 1110 http/ngx_http_request.c r->header_name_start); r 1111 http/ngx_http_request.c ngx_http_finalize_request(r, NGX_HTTP_BAD_REQUEST); r 1118 http/ngx_http_request.c ngx_http_read_request_header(ngx_http_request_t *r) r 1125 http/ngx_http_request.c c = r->connection; r 1128 http/ngx_http_request.c n = r->header_in->last - r->header_in->pos; r 1135 http/ngx_http_request.c n = c->recv(c, r->header_in->last, r 1136 http/ngx_http_request.c r->header_in->end - r->header_in->last); r 1143 http/ngx_http_request.c cscf = ngx_http_get_module_srv_conf(r, ngx_http_core_module); r 1148 http/ngx_http_request.c ngx_http_close_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 1164 http/ngx_http_request.c ngx_http_finalize_request(r, NGX_HTTP_BAD_REQUEST); r 1168 http/ngx_http_request.c r->header_in->last += n; r 1175 http/ngx_http_request.c ngx_http_alloc_large_header_buffer(ngx_http_request_t *r, r 1183 http/ngx_http_request.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1186 http/ngx_http_request.c if (request_line && r->state == 0) { r 1190 http/ngx_http_request.c r->request_length += r->header_in->end - r->header_in->start; r 1192 http/ngx_http_request.c r->header_in->pos = r->header_in->start; r 1193 http/ngx_http_request.c r->header_in->last = r->header_in->start; r 1198 http/ngx_http_request.c old = request_line ? r->request_start : r->header_name_start; r 1200 http/ngx_http_request.c cscf = ngx_http_get_module_srv_conf(r, ngx_http_core_module); r 1202 http/ngx_http_request.c if (r->state != 0 r 1203 http/ngx_http_request.c && (size_t) (r->header_in->pos - old) r 1209 http/ngx_http_request.c hc = r->http_connection; r 1214 http/ngx_http_request.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1221 http/ngx_http_request.c hc->busy = ngx_palloc(r->connection->pool, r 1228 http/ngx_http_request.c b = ngx_create_temp_buf(r->connection->pool, r 1234 http/ngx_http_request.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1244 http/ngx_http_request.c if (r->state == 0) { r 1251 http/ngx_http_request.c r->request_length += r->header_in->end - r->header_in->start; r 1253 http/ngx_http_request.c r->header_in = b; r 1258 http/ngx_http_request.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1259 http/ngx_http_request.c "http large header copy: %d", r->header_in->pos - old); r 1261 http/ngx_http_request.c r->request_length += old - r->header_in->start; r 1265 http/ngx_http_request.c ngx_memcpy(new, old, r->header_in->pos - old); r 1267 http/ngx_http_request.c b->pos = new + (r->header_in->pos - old); r 1268 http/ngx_http_request.c b->last = new + (r->header_in->pos - old); r 1271 http/ngx_http_request.c r->request_start = new; r 1273 http/ngx_http_request.c if (r->request_end) { r 1274 http/ngx_http_request.c r->request_end = new + (r->request_end - old); r 1277 http/ngx_http_request.c r->method_end = new + (r->method_end - old); r 1279 http/ngx_http_request.c r->uri_start = new + (r->uri_start - old); r 1280 http/ngx_http_request.c r->uri_end = new + (r->uri_end - old); r 1282 http/ngx_http_request.c if (r->schema_start) { r 1283 http/ngx_http_request.c r->schema_start = new + (r->schema_start - old); r 1284 http/ngx_http_request.c r->schema_end = new + (r->schema_end - old); r 1287 http/ngx_http_request.c if (r->host_start) { r 1288 http/ngx_http_request.c r->host_start = new + (r->host_start - old); r 1289 http/ngx_http_request.c if (r->host_end) { r 1290 http/ngx_http_request.c r->host_end = new + (r->host_end - old); r 1294 http/ngx_http_request.c if (r->port_start) { r 1295 http/ngx_http_request.c r->port_start = new + (r->port_start - old); r 1296 http/ngx_http_request.c r->port_end = new + (r->port_end - old); r 1299 http/ngx_http_request.c if (r->uri_ext) { r 1300 http/ngx_http_request.c r->uri_ext = new + (r->uri_ext - old); r 1303 http/ngx_http_request.c if (r->args_start) { r 1304 http/ngx_http_request.c r->args_start = new + (r->args_start - old); r 1307 http/ngx_http_request.c if (r->http_protocol.data) { r 1308 http/ngx_http_request.c r->http_protocol.data = new + (r->http_protocol.data - old); r 1312 http/ngx_http_request.c r->header_name_start = new; r 1313 http/ngx_http_request.c r->header_name_end = new + (r->header_name_end - old); r 1314 http/ngx_http_request.c r->header_start = new + (r->header_start - old); r 1315 http/ngx_http_request.c r->header_end = new + (r->header_end - old); r 1318 http/ngx_http_request.c r->header_in = b; r 1325 http/ngx_http_request.c ngx_http_process_header_line(ngx_http_request_t *r, ngx_table_elt_t *h, r 1330 http/ngx_http_request.c ph = (ngx_table_elt_t **) ((char *) &r->headers_in + offset); r 1341 http/ngx_http_request.c ngx_http_process_unique_header_line(ngx_http_request_t *r, ngx_table_elt_t *h, r 1346 http/ngx_http_request.c ph = (ngx_table_elt_t **) ((char *) &r->headers_in + offset); r 1353 http/ngx_http_request.c ngx_log_error(NGX_LOG_INFO, r->connection->log, 0, r 1358 http/ngx_http_request.c ngx_http_finalize_request(r, NGX_HTTP_BAD_REQUEST); r 1365 http/ngx_http_request.c ngx_http_process_host(ngx_http_request_t *r, ngx_table_elt_t *h, r 1371 http/ngx_http_request.c if (r->headers_in.host == NULL) { r 1372 http/ngx_http_request.c r->headers_in.host = h; r 1376 http/ngx_http_request.c len = ngx_http_validate_host(r, &host, h->value.len, 0); r 1379 http/ngx_http_request.c ngx_log_error(NGX_LOG_INFO, r->connection->log, 0, r 1381 http/ngx_http_request.c ngx_http_finalize_request(r, NGX_HTTP_BAD_REQUEST); r 1386 http/ngx_http_request.c ngx_http_close_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 1390 http/ngx_http_request.c if (r->headers_in.server.len) { r 1394 http/ngx_http_request.c r->headers_in.server.len = len; r 1395 http/ngx_http_request.c r->headers_in.server.data = host; r 1402 http/ngx_http_request.c ngx_http_process_connection(ngx_http_request_t *r, ngx_table_elt_t *h, r 1406 http/ngx_http_request.c r->headers_in.connection_type = NGX_HTTP_CONNECTION_CLOSE; r 1409 http/ngx_http_request.c r->headers_in.connection_type = NGX_HTTP_CONNECTION_KEEP_ALIVE; r 1417 http/ngx_http_request.c ngx_http_process_user_agent(ngx_http_request_t *r, ngx_table_elt_t *h, r 1422 http/ngx_http_request.c if (r->headers_in.user_agent) { r 1426 http/ngx_http_request.c r->headers_in.user_agent = h; r 1436 http/ngx_http_request.c r->headers_in.msie = 1; r 1442 http/ngx_http_request.c r->headers_in.msie4 = 1; r 1445 http/ngx_http_request.c r->headers_in.msie6 = 1; r 1449 http/ngx_http_request.c r->headers_in.msie6 = 1; r 1464 http/ngx_http_request.c r->headers_in.opera = 1; r 1465 http/ngx_http_request.c r->headers_in.msie = 0; r 1466 http/ngx_http_request.c r->headers_in.msie4 = 0; r 1467 http/ngx_http_request.c r->headers_in.msie6 = 0; r 1470 http/ngx_http_request.c if (!r->headers_in.msie && !r->headers_in.opera) { r 1473 http/ngx_http_request.c r->headers_in.gecko = 1; r 1476 http/ngx_http_request.c r->headers_in.chrome = 1; r 1479 http/ngx_http_request.c r->headers_in.safari = 1; r 1482 http/ngx_http_request.c r->headers_in.konqueror = 1; r 1491 http/ngx_http_request.c ngx_http_process_cookie(ngx_http_request_t *r, ngx_table_elt_t *h, r 1496 http/ngx_http_request.c cookie = ngx_array_push(&r->headers_in.cookies); r 1502 http/ngx_http_request.c ngx_http_close_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 1509 http/ngx_http_request.c ngx_http_process_request_header(ngx_http_request_t *r) r 1511 http/ngx_http_request.c if (ngx_http_find_virtual_server(r, r->headers_in.server.data, r 1512 http/ngx_http_request.c r->headers_in.server.len) r 1515 http/ngx_http_request.c ngx_http_finalize_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 1519 http/ngx_http_request.c if (r->headers_in.host == NULL && r->http_version > NGX_HTTP_VERSION_10) { r 1520 http/ngx_http_request.c ngx_log_error(NGX_LOG_INFO, r->connection->log, 0, r 1522 http/ngx_http_request.c ngx_http_finalize_request(r, NGX_HTTP_BAD_REQUEST); r 1526 http/ngx_http_request.c if (r->headers_in.content_length) { r 1527 http/ngx_http_request.c r->headers_in.content_length_n = r 1528 http/ngx_http_request.c ngx_atoof(r->headers_in.content_length->value.data, r 1529 http/ngx_http_request.c r->headers_in.content_length->value.len); r 1531 http/ngx_http_request.c if (r->headers_in.content_length_n == NGX_ERROR) { r 1532 http/ngx_http_request.c ngx_log_error(NGX_LOG_INFO, r->connection->log, 0, r 1534 http/ngx_http_request.c ngx_http_finalize_request(r, NGX_HTTP_LENGTH_REQUIRED); r 1539 http/ngx_http_request.c if (r->method & NGX_HTTP_PUT && r->headers_in.content_length_n == -1) { r 1540 http/ngx_http_request.c ngx_log_error(NGX_LOG_INFO, r->connection->log, 0, r 1542 http/ngx_http_request.c &r->method_name); r 1543 http/ngx_http_request.c ngx_http_finalize_request(r, NGX_HTTP_LENGTH_REQUIRED); r 1547 http/ngx_http_request.c if (r->method & NGX_HTTP_TRACE) { r 1548 http/ngx_http_request.c ngx_log_error(NGX_LOG_INFO, r->connection->log, 0, r 1550 http/ngx_http_request.c ngx_http_finalize_request(r, NGX_HTTP_NOT_ALLOWED); r 1554 http/ngx_http_request.c if (r->headers_in.transfer_encoding r 1555 http/ngx_http_request.c && ngx_strcasestrn(r->headers_in.transfer_encoding->value.data, r 1558 http/ngx_http_request.c ngx_log_error(NGX_LOG_INFO, r->connection->log, 0, r 1560 http/ngx_http_request.c ngx_http_finalize_request(r, NGX_HTTP_LENGTH_REQUIRED); r 1564 http/ngx_http_request.c if (r->headers_in.connection_type == NGX_HTTP_CONNECTION_KEEP_ALIVE) { r 1565 http/ngx_http_request.c if (r->headers_in.keep_alive) { r 1566 http/ngx_http_request.c r->headers_in.keep_alive_n = r 1567 http/ngx_http_request.c ngx_atotm(r->headers_in.keep_alive->value.data, r 1568 http/ngx_http_request.c r->headers_in.keep_alive->value.len); r 1577 http/ngx_http_request.c ngx_http_process_request(ngx_http_request_t *r) r 1581 http/ngx_http_request.c c = r->connection; r 1583 http/ngx_http_request.c if (r->plain_http) { r 1586 http/ngx_http_request.c ngx_http_finalize_request(r, NGX_HTTP_TO_HTTPS); r 1597 http/ngx_http_request.c sscf = ngx_http_get_module_srv_conf(r, ngx_http_ssl_module); r 1610 http/ngx_http_request.c ngx_http_finalize_request(r, NGX_HTTPS_CERT_ERROR); r 1624 http/ngx_http_request.c ngx_http_finalize_request(r, NGX_HTTPS_NO_CERT); r 1641 http/ngx_http_request.c r->stat_reading = 0; r 1643 http/ngx_http_request.c r->stat_writing = 1; r 1648 http/ngx_http_request.c r->read_event_handler = ngx_http_block_reading; r 1650 http/ngx_http_request.c ngx_http_handler(r); r 1657 http/ngx_http_request.c ngx_http_validate_host(ngx_http_request_t *r, u_char **host, size_t len, r 1701 http/ngx_http_request.c *host = ngx_pnalloc(r->pool, last) ; r 1714 http/ngx_http_request.c ngx_http_find_virtual_server(ngx_http_request_t *r, u_char *host, size_t len) r 1719 http/ngx_http_request.c if (r->virtual_names == NULL) { r 1723 http/ngx_http_request.c cscf = ngx_hash_find_combined(&r->virtual_names->names, r 1732 http/ngx_http_request.c if (len && r->virtual_names->nregex) { r 1741 http/ngx_http_request.c sn = r->virtual_names->regex; r 1743 http/ngx_http_request.c for (i = 0; i < r->virtual_names->nregex; i++) { r 1745 http/ngx_http_request.c n = ngx_http_regex_exec(r, sn[i].regex, &name); r 1766 http/ngx_http_request.c r->srv_conf = cscf->ctx->srv_conf; r 1767 http/ngx_http_request.c r->loc_conf = cscf->ctx->loc_conf; r 1769 http/ngx_http_request.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 1770 http/ngx_http_request.c r->connection->log->file = clcf->error_log->file; r 1772 http/ngx_http_request.c if (!(r->connection->log->log_level & NGX_LOG_DEBUG_CONNECTION)) { r 1773 http/ngx_http_request.c r->connection->log->log_level = clcf->error_log->log_level; r 1784 http/ngx_http_request.c ngx_http_request_t *r; r 1788 http/ngx_http_request.c r = c->data; r 1791 http/ngx_http_request.c ctx->current_request = r; r 1794 http/ngx_http_request.c "http run request: \"%V?%V\"", &r->uri, &r->args); r 1797 http/ngx_http_request.c r->write_event_handler(r); r 1800 http/ngx_http_request.c r->read_event_handler(r); r 1810 http/ngx_http_request.c ngx_http_request_t *r; r 1820 http/ngx_http_request.c r = c->data; r 1821 http/ngx_http_request.c pr = r->main->posted_requests; r 1827 http/ngx_http_request.c r->main->posted_requests = pr->next; r 1829 http/ngx_http_request.c r = pr->request; r 1832 http/ngx_http_request.c ctx->current_request = r; r 1835 http/ngx_http_request.c "http posted request: \"%V?%V\"", &r->uri, &r->args); r 1837 http/ngx_http_request.c r->write_event_handler(r); r 1843 http/ngx_http_request.c ngx_http_post_request(ngx_http_request_t *r, ngx_http_posted_request_t *pr) r 1848 http/ngx_http_request.c pr = ngx_palloc(r->pool, sizeof(ngx_http_posted_request_t)); r 1854 http/ngx_http_request.c pr->request = r; r 1857 http/ngx_http_request.c for (p = &r->main->posted_requests; *p; p = &(*p)->next) { /* void */ } r 1866 http/ngx_http_request.c ngx_http_finalize_request(ngx_http_request_t *r, ngx_int_t rc) r 1872 http/ngx_http_request.c c = r->connection; r 1876 http/ngx_http_request.c rc, &r->uri, &r->args, r == c->data, r->main->count); r 1879 http/ngx_http_request.c ngx_http_finalize_connection(r); r 1883 http/ngx_http_request.c if (rc == NGX_OK && r->filter_finalize) { r 1889 http/ngx_http_request.c r->content_handler = NULL; r 1890 http/ngx_http_request.c r->write_event_handler = ngx_http_core_run_phases; r 1891 http/ngx_http_request.c ngx_http_core_run_phases(r); r 1895 http/ngx_http_request.c if (r != r->main && r->post_subrequest) { r 1896 http/ngx_http_request.c rc = r->post_subrequest->handler(r, r->post_subrequest->data, rc); r 1904 http/ngx_http_request.c if (ngx_http_post_action(r) == NGX_OK) { r 1908 http/ngx_http_request.c if (r->main->blocked) { r 1909 http/ngx_http_request.c r->write_event_handler = ngx_http_request_finalizer; r 1912 http/ngx_http_request.c ngx_http_terminate_request(r, rc); r 1921 http/ngx_http_request.c ngx_http_terminate_request(r, rc); r 1925 http/ngx_http_request.c if (r == r->main) { r 1938 http/ngx_http_request.c ngx_http_finalize_request(r, ngx_http_special_response_handler(r, rc)); r 1942 http/ngx_http_request.c if (r != r->main) { r 1944 http/ngx_http_request.c if (r->buffered || r->postponed) { r 1946 http/ngx_http_request.c if (ngx_http_set_write_handler(r) != NGX_OK) { r 1947 http/ngx_http_request.c ngx_http_terminate_request(r, 0); r 1954 http/ngx_http_request.c if (r != c->data) { r 1957 http/ngx_http_request.c &r->uri, &r->args); r 1961 http/ngx_http_request.c pr = r->parent; r 1963 http/ngx_http_request.c if (r == c->data) { r 1965 http/ngx_http_request.c r->main->count--; r 1967 http/ngx_http_request.c if (!r->logged) { r 1969 http/ngx_http_request.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 1972 http/ngx_http_request.c ngx_http_log_request(r); r 1975 http/ngx_http_request.c r->logged = 1; r 1980 http/ngx_http_request.c &r->uri, &r->args); r 1983 http/ngx_http_request.c r->done = 1; r 1985 http/ngx_http_request.c if (pr->postponed && pr->postponed->request == r) { r 1993 http/ngx_http_request.c r->write_event_handler = ngx_http_request_finalizer; r 1995 http/ngx_http_request.c if (r->waited) { r 1996 http/ngx_http_request.c r->done = 1; r 2001 http/ngx_http_request.c r->main->count++; r 2002 http/ngx_http_request.c ngx_http_terminate_request(r, 0); r 2013 http/ngx_http_request.c if (r->buffered || c->buffered || r->postponed || r->blocked) { r 2015 http/ngx_http_request.c if (ngx_http_set_write_handler(r) != NGX_OK) { r 2016 http/ngx_http_request.c ngx_http_terminate_request(r, 0); r 2022 http/ngx_http_request.c if (r != c->data) { r 2025 http/ngx_http_request.c &r->uri, &r->args); r 2029 http/ngx_http_request.c r->done = 1; r 2030 http/ngx_http_request.c r->write_event_handler = ngx_http_request_empty_handler; r 2032 http/ngx_http_request.c if (!r->post_action) { r 2033 http/ngx_http_request.c r->request_complete = 1; r 2036 http/ngx_http_request.c if (ngx_http_post_action(r) == NGX_OK) { r 2050 http/ngx_http_request.c ngx_http_close_request(r, 0); r 2054 http/ngx_http_request.c ngx_http_finalize_connection(r); r 2059 http/ngx_http_request.c ngx_http_terminate_request(ngx_http_request_t *r, ngx_int_t rc) r 2065 http/ngx_http_request.c mr = r->main; r 2067 http/ngx_http_request.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2085 http/ngx_http_request.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2107 http/ngx_http_request.c ngx_http_terminate_handler(ngx_http_request_t *r) r 2109 http/ngx_http_request.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2110 http/ngx_http_request.c "http terminate handler count:%d", r->count); r 2112 http/ngx_http_request.c r->count = 1; r 2114 http/ngx_http_request.c ngx_http_close_request(r, 0); r 2119 http/ngx_http_request.c ngx_http_finalize_connection(ngx_http_request_t *r) r 2123 http/ngx_http_request.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 2125 http/ngx_http_request.c if (r->main->count != 1) { r 2127 http/ngx_http_request.c if (r->discard_body) { r 2128 http/ngx_http_request.c r->read_event_handler = ngx_http_discarded_request_body_handler; r 2130 http/ngx_http_request.c if (r->lingering_time == 0) { r 2131 http/ngx_http_request.c r->lingering_time = ngx_time() r 2133 http/ngx_http_request.c ngx_add_timer(r->connection->read, clcf->lingering_timeout); r 2137 http/ngx_http_request.c ngx_http_close_request(r, 0); r 2143 http/ngx_http_request.c && r->keepalive r 2146 http/ngx_http_request.c ngx_http_set_keepalive(r); r 2149 http/ngx_http_request.c } else if (r->lingering_close && clcf->lingering_timeout > 0) { r 2150 http/ngx_http_request.c ngx_http_set_lingering_close(r); r 2154 http/ngx_http_request.c ngx_http_close_request(r, 0); r 2159 http/ngx_http_request.c ngx_http_set_write_handler(ngx_http_request_t *r) r 2164 http/ngx_http_request.c r->http_state = NGX_HTTP_WRITING_REQUEST_STATE; r 2166 http/ngx_http_request.c r->read_event_handler = r->discard_body ? r 2169 http/ngx_http_request.c r->write_event_handler = ngx_http_writer; r 2171 http/ngx_http_request.c wev = r->connection->write; r 2177 http/ngx_http_request.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 2183 http/ngx_http_request.c ngx_http_close_request(r, 0); r 2192 http/ngx_http_request.c ngx_http_writer(ngx_http_request_t *r) r 2199 http/ngx_http_request.c c = r->connection; r 2203 http/ngx_http_request.c "http writer handler: \"%V?%V\"", &r->uri, &r->args); r 2205 http/ngx_http_request.c clcf = ngx_http_get_module_loc_conf(r->main, ngx_http_core_module); r 2213 http/ngx_http_request.c ngx_http_finalize_request(r, NGX_HTTP_REQUEST_TIME_OUT); r 2224 http/ngx_http_request.c ngx_http_close_request(r, 0); r 2231 http/ngx_http_request.c if (wev->delayed || r->aio) { r 2236 http/ngx_http_request.c ngx_http_close_request(r, 0); r 2243 http/ngx_http_request.c rc = ngx_http_output_filter(r, NULL); r 2247 http/ngx_http_request.c rc, &r->uri, &r->args); r 2250 http/ngx_http_request.c ngx_http_finalize_request(r, rc); r 2254 http/ngx_http_request.c if (r->buffered || r->postponed || (r == r->main && c->buffered)) { r 2261 http/ngx_http_request.c ngx_http_close_request(r, 0); r 2268 http/ngx_http_request.c "http writer done: \"%V?%V\"", &r->uri, &r->args); r 2270 http/ngx_http_request.c r->write_event_handler = ngx_http_request_empty_handler; r 2272 http/ngx_http_request.c ngx_http_finalize_request(r, rc); r 2277 http/ngx_http_request.c ngx_http_request_finalizer(ngx_http_request_t *r) r 2279 http/ngx_http_request.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2280 http/ngx_http_request.c "http finalizer done: \"%V?%V\"", &r->uri, &r->args); r 2282 http/ngx_http_request.c ngx_http_finalize_request(r, 0); r 2287 http/ngx_http_request.c ngx_http_block_reading(ngx_http_request_t *r) r 2289 http/ngx_http_request.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2295 http/ngx_http_request.c && r->connection->read->active) r 2297 http/ngx_http_request.c if (ngx_del_event(r->connection->read, NGX_READ_EVENT, 0) != NGX_OK) { r 2298 http/ngx_http_request.c ngx_http_close_request(r, 0); r 2305 http/ngx_http_request.c ngx_http_test_reading(ngx_http_request_t *r) r 2313 http/ngx_http_request.c c = r->connection; r 2360 http/ngx_http_request.c ngx_http_close_request(r, 0); r 2375 http/ngx_http_request.c ngx_http_finalize_request(r, 0); r 2380 http/ngx_http_request.c ngx_http_set_keepalive(ngx_http_request_t *r) r 2391 http/ngx_http_request.c c = r->connection; r 2394 http/ngx_http_request.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 2398 http/ngx_http_request.c if (r->discard_body) { r 2399 http/ngx_http_request.c r->write_event_handler = ngx_http_request_empty_handler; r 2400 http/ngx_http_request.c r->lingering_time = ngx_time() + (time_t) (clcf->lingering_time / 1000); r 2407 http/ngx_http_request.c hc = r->http_connection; r 2408 http/ngx_http_request.c b = r->header_in; r 2424 http/ngx_http_request.c cscf = ngx_http_get_module_srv_conf(r, ngx_http_core_module); r 2431 http/ngx_http_request.c ngx_http_close_request(r, 0); r 2448 http/ngx_http_request.c r->keepalive = 0; r 2450 http/ngx_http_request.c ngx_http_free_request(r, 0); r 2490 http/ngx_http_request.c if (ngx_pfree(c->pool, r) == NGX_OK) { r 2593 http/ngx_http_request.c r->http_state = NGX_HTTP_KEEPALIVE_STATE; r 2714 http/ngx_http_request.c ngx_http_set_lingering_close(ngx_http_request_t *r) r 2720 http/ngx_http_request.c c = r->connection; r 2722 http/ngx_http_request.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 2727 http/ngx_http_request.c r->lingering_time = ngx_time() + (time_t) (clcf->lingering_time / 1000); r 2731 http/ngx_http_request.c ngx_http_close_request(r, 0); r 2740 http/ngx_http_request.c ngx_http_close_request(r, 0); r 2748 http/ngx_http_request.c ngx_http_close_request(r, 0); r 2764 http/ngx_http_request.c ngx_http_request_t *r; r 2769 http/ngx_http_request.c r = c->data; r 2776 http/ngx_http_request.c ngx_http_close_request(r, 0); r 2780 http/ngx_http_request.c timer = (ngx_msec_t) (r->lingering_time - ngx_time()); r 2782 http/ngx_http_request.c ngx_http_close_request(r, 0); r 2792 http/ngx_http_request.c ngx_http_close_request(r, 0); r 2799 http/ngx_http_request.c ngx_http_close_request(r, 0); r 2803 http/ngx_http_request.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 2825 http/ngx_http_request.c ngx_http_request_empty_handler(ngx_http_request_t *r) r 2827 http/ngx_http_request.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2835 http/ngx_http_request.c ngx_http_send_special(ngx_http_request_t *r, ngx_uint_t flags) r 2840 http/ngx_http_request.c b = ngx_calloc_buf(r->pool); r 2847 http/ngx_http_request.c if (r == r->main && !r->post_action) { r 2863 http/ngx_http_request.c return ngx_http_output_filter(r, &out); r 2868 http/ngx_http_request.c ngx_http_post_action(ngx_http_request_t *r) r 2872 http/ngx_http_request.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 2878 http/ngx_http_request.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2881 http/ngx_http_request.c r->main->count--; r 2883 http/ngx_http_request.c r->http_version = NGX_HTTP_VERSION_9; r 2884 http/ngx_http_request.c r->header_only = 1; r 2885 http/ngx_http_request.c r->post_action = 1; r 2887 http/ngx_http_request.c r->read_event_handler = ngx_http_block_reading; r 2890 http/ngx_http_request.c ngx_http_internal_redirect(r, &clcf->post_action, NULL); r 2893 http/ngx_http_request.c ngx_http_named_location(r, &clcf->post_action); r 2901 http/ngx_http_request.c ngx_http_close_request(ngx_http_request_t *r, ngx_int_t rc) r 2905 http/ngx_http_request.c r = r->main; r 2906 http/ngx_http_request.c c = r->connection; r 2909 http/ngx_http_request.c "http request count:%d blk:%d", r->count, r->blocked); r 2911 http/ngx_http_request.c if (r->count == 0) { r 2915 http/ngx_http_request.c r->count--; r 2917 http/ngx_http_request.c if (r->count || r->blocked) { r 2921 http/ngx_http_request.c ngx_http_free_request(r, rc); r 2927 http/ngx_http_request.c ngx_http_free_request(ngx_http_request_t *r, ngx_int_t rc) r 2935 http/ngx_http_request.c log = r->connection->log; r 2939 http/ngx_http_request.c if (r->pool == NULL) { r 2944 http/ngx_http_request.c for (cln = r->cleanup; cln; cln = cln->next) { r 2952 http/ngx_http_request.c if (r->stat_reading) { r 2956 http/ngx_http_request.c if (r->stat_writing) { r 2962 http/ngx_http_request.c if (rc > 0 && (r->headers_out.status == 0 || r->connection->sent == 0)) { r 2963 http/ngx_http_request.c r->headers_out.status = rc; r 2968 http/ngx_http_request.c ngx_http_log_request(r); r 2972 http/ngx_http_request.c if (r->connection->timedout) { r 2973 http/ngx_http_request.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 2979 http/ngx_http_request.c if (setsockopt(r->connection->fd, SOL_SOCKET, SO_LINGER, r 2992 http/ngx_http_request.c r->request_line.len = 0; r 2994 http/ngx_http_request.c r->connection->destroyed = 1; r 2996 http/ngx_http_request.c ngx_destroy_pool(r->pool); r 3001 http/ngx_http_request.c ngx_http_log_request(ngx_http_request_t *r) r 3007 http/ngx_http_request.c cmcf = ngx_http_get_module_main_conf(r, ngx_http_core_module); r 3013 http/ngx_http_request.c log_handler[i](r); r 3055 http/ngx_http_request.c ngx_http_request_t *r; r 3069 http/ngx_http_request.c r = ctx->request; r 3071 http/ngx_http_request.c if (r) { r 3072 http/ngx_http_request.c return r->log_handler(r, ctx->current_request, p, len); r 3084 http/ngx_http_request.c ngx_http_log_error_handler(ngx_http_request_t *r, ngx_http_request_t *sr, r 3092 http/ngx_http_request.c cscf = ngx_http_get_module_srv_conf(r, ngx_http_core_module); r 3098 http/ngx_http_request.c if (r->request_line.data == NULL && r->request_start) { r 3099 http/ngx_http_request.c for (p = r->request_start; p < r->header_in->last; p++) { r 3105 http/ngx_http_request.c r->request_line.len = p - r->request_start; r 3106 http/ngx_http_request.c r->request_line.data = r->request_start; r 3109 http/ngx_http_request.c if (r->request_line.len) { r 3110 http/ngx_http_request.c p = ngx_snprintf(buf, len, ", request: \"%V\"", &r->request_line); r 3115 http/ngx_http_request.c if (r != sr) { r 3140 http/ngx_http_request.c if (r->headers_in.host) { r 3142 http/ngx_http_request.c &r->headers_in.host->value); r 3147 http/ngx_http_request.c if (r->headers_in.referer) { r 3149 http/ngx_http_request.c &r->headers_in.referer->value); r 269 http/ngx_http_request.h typedef void (*ngx_http_client_body_handler_pt)(ngx_http_request_t *r); r 316 http/ngx_http_request.h typedef ngx_int_t (*ngx_http_post_subrequest_pt)(ngx_http_request_t *r, r 342 http/ngx_http_request.h typedef ngx_int_t (*ngx_http_handler_pt)(ngx_http_request_t *r); r 343 http/ngx_http_request.h typedef void (*ngx_http_event_handler_pt)(ngx_http_request_t *r); r 12 http/ngx_http_request_body.c static void ngx_http_read_client_request_body_handler(ngx_http_request_t *r); r 13 http/ngx_http_request_body.c static ngx_int_t ngx_http_do_read_client_request_body(ngx_http_request_t *r); r 14 http/ngx_http_request_body.c static ngx_int_t ngx_http_write_request_body(ngx_http_request_t *r, r 16 http/ngx_http_request_body.c static ngx_int_t ngx_http_read_discarded_request_body(ngx_http_request_t *r); r 17 http/ngx_http_request_body.c static ngx_int_t ngx_http_test_expect(ngx_http_request_t *r); r 28 http/ngx_http_request_body.c ngx_http_read_client_request_body(ngx_http_request_t *r, r 39 http/ngx_http_request_body.c r->main->count++; r 41 http/ngx_http_request_body.c if (r->request_body || r->discard_body) { r 42 http/ngx_http_request_body.c post_handler(r); r 46 http/ngx_http_request_body.c if (ngx_http_test_expect(r) != NGX_OK) { r 50 http/ngx_http_request_body.c rb = ngx_pcalloc(r->pool, sizeof(ngx_http_request_body_t)); r 55 http/ngx_http_request_body.c r->request_body = rb; r 57 http/ngx_http_request_body.c if (r->headers_in.content_length_n < 0) { r 58 http/ngx_http_request_body.c post_handler(r); r 62 http/ngx_http_request_body.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 64 http/ngx_http_request_body.c if (r->headers_in.content_length_n == 0) { r 66 http/ngx_http_request_body.c if (r->request_body_in_file_only) { r 67 http/ngx_http_request_body.c tf = ngx_pcalloc(r->pool, sizeof(ngx_temp_file_t)); r 73 http/ngx_http_request_body.c tf->file.log = r->connection->log; r 75 http/ngx_http_request_body.c tf->pool = r->pool; r 77 http/ngx_http_request_body.c tf->log_level = r->request_body_file_log_level; r 78 http/ngx_http_request_body.c tf->persistent = r->request_body_in_persistent_file; r 79 http/ngx_http_request_body.c tf->clean = r->request_body_in_clean_file; r 81 http/ngx_http_request_body.c if (r->request_body_file_group_access) { r 95 http/ngx_http_request_body.c post_handler(r); r 110 http/ngx_http_request_body.c preread = r->header_in->last - r->header_in->pos; r 116 http/ngx_http_request_body.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 119 http/ngx_http_request_body.c b = ngx_calloc_buf(r->pool); r 125 http/ngx_http_request_body.c b->start = r->header_in->pos; r 126 http/ngx_http_request_body.c b->pos = r->header_in->pos; r 127 http/ngx_http_request_body.c b->last = r->header_in->last; r 128 http/ngx_http_request_body.c b->end = r->header_in->end; r 130 http/ngx_http_request_body.c rb->bufs = ngx_alloc_chain_link(r->pool); r 140 http/ngx_http_request_body.c if ((off_t) preread >= r->headers_in.content_length_n) { r 144 http/ngx_http_request_body.c r->header_in->pos += (size_t) r->headers_in.content_length_n; r 145 http/ngx_http_request_body.c r->request_length += r->headers_in.content_length_n; r 147 http/ngx_http_request_body.c if (r->request_body_in_file_only) { r 148 http/ngx_http_request_body.c if (ngx_http_write_request_body(r, rb->bufs) != NGX_OK) { r 153 http/ngx_http_request_body.c post_handler(r); r 162 http/ngx_http_request_body.c r->header_in->pos = r->header_in->last; r 164 http/ngx_http_request_body.c r->request_length += preread; r 166 http/ngx_http_request_body.c rb->rest = r->headers_in.content_length_n - preread; r 174 http/ngx_http_request_body.c r->read_event_handler = ngx_http_read_client_request_body_handler; r 176 http/ngx_http_request_body.c return ngx_http_do_read_client_request_body(r); r 183 http/ngx_http_request_body.c rb->rest = r->headers_in.content_length_n; r 193 http/ngx_http_request_body.c if (r->request_body_in_single_buf) { r 204 http/ngx_http_request_body.c rb->buf = ngx_create_temp_buf(r->pool, size); r 209 http/ngx_http_request_body.c cl = ngx_alloc_chain_link(r->pool); r 217 http/ngx_http_request_body.c if (b && r->request_body_in_single_buf) { r 227 http/ngx_http_request_body.c if (r->request_body_in_file_only || r->request_body_in_single_buf) { r 234 http/ngx_http_request_body.c r->read_event_handler = ngx_http_read_client_request_body_handler; r 236 http/ngx_http_request_body.c return ngx_http_do_read_client_request_body(r); r 241 http/ngx_http_request_body.c ngx_http_read_client_request_body_handler(ngx_http_request_t *r) r 245 http/ngx_http_request_body.c if (r->connection->read->timedout) { r 246 http/ngx_http_request_body.c r->connection->timedout = 1; r 247 http/ngx_http_request_body.c ngx_http_finalize_request(r, NGX_HTTP_REQUEST_TIME_OUT); r 251 http/ngx_http_request_body.c rc = ngx_http_do_read_client_request_body(r); r 254 http/ngx_http_request_body.c ngx_http_finalize_request(r, rc); r 260 http/ngx_http_request_body.c ngx_http_do_read_client_request_body(ngx_http_request_t *r) r 269 http/ngx_http_request_body.c c = r->connection; r 270 http/ngx_http_request_body.c rb = r->request_body; r 279 http/ngx_http_request_body.c if (ngx_http_write_request_body(r, rb->to_write) != NGX_OK) { r 314 http/ngx_http_request_body.c r->request_length += n; r 333 http/ngx_http_request_body.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 348 http/ngx_http_request_body.c if (rb->temp_file || r->request_body_in_file_only) { r 352 http/ngx_http_request_body.c if (ngx_http_write_request_body(r, rb->to_write) != NGX_OK) { r 356 http/ngx_http_request_body.c b = ngx_calloc_buf(r->pool); r 374 http/ngx_http_request_body.c if (r->request_body_in_file_only && rb->bufs->next) { r 378 http/ngx_http_request_body.c rb->post_handler(r); r 385 http/ngx_http_request_body.c ngx_http_write_request_body(ngx_http_request_t *r, ngx_chain_t *body) r 392 http/ngx_http_request_body.c rb = r->request_body; r 395 http/ngx_http_request_body.c tf = ngx_pcalloc(r->pool, sizeof(ngx_temp_file_t)); r 400 http/ngx_http_request_body.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 403 http/ngx_http_request_body.c tf->file.log = r->connection->log; r 405 http/ngx_http_request_body.c tf->pool = r->pool; r 407 http/ngx_http_request_body.c tf->log_level = r->request_body_file_log_level; r 408 http/ngx_http_request_body.c tf->persistent = r->request_body_in_persistent_file; r 409 http/ngx_http_request_body.c tf->clean = r->request_body_in_clean_file; r 411 http/ngx_http_request_body.c if (r->request_body_file_group_access) { r 433 http/ngx_http_request_body.c ngx_http_discard_request_body(ngx_http_request_t *r) r 438 http/ngx_http_request_body.c if (r != r->main || r->discard_body) { r 442 http/ngx_http_request_body.c if (ngx_http_test_expect(r) != NGX_OK) { r 446 http/ngx_http_request_body.c rev = r->connection->read; r 454 http/ngx_http_request_body.c if (r->headers_in.content_length_n <= 0 || r->request_body) { r 458 http/ngx_http_request_body.c size = r->header_in->last - r->header_in->pos; r 461 http/ngx_http_request_body.c if (r->headers_in.content_length_n > size) { r 462 http/ngx_http_request_body.c r->header_in->pos += size; r 463 http/ngx_http_request_body.c r->headers_in.content_length_n -= size; r 466 http/ngx_http_request_body.c r->header_in->pos += (size_t) r->headers_in.content_length_n; r 467 http/ngx_http_request_body.c r->headers_in.content_length_n = 0; r 472 http/ngx_http_request_body.c r->read_event_handler = ngx_http_discarded_request_body_handler; r 478 http/ngx_http_request_body.c if (ngx_http_read_discarded_request_body(r) == NGX_OK) { r 479 http/ngx_http_request_body.c r->lingering_close = 0; r 482 http/ngx_http_request_body.c r->count++; r 483 http/ngx_http_request_body.c r->discard_body = 1; r 491 http/ngx_http_request_body.c ngx_http_discarded_request_body_handler(ngx_http_request_t *r) r 499 http/ngx_http_request_body.c c = r->connection; r 505 http/ngx_http_request_body.c ngx_http_finalize_request(r, NGX_ERROR); r 509 http/ngx_http_request_body.c if (r->lingering_time) { r 510 http/ngx_http_request_body.c timer = (ngx_msec_t) (r->lingering_time - ngx_time()); r 513 http/ngx_http_request_body.c r->discard_body = 0; r 514 http/ngx_http_request_body.c r->lingering_close = 0; r 515 http/ngx_http_request_body.c ngx_http_finalize_request(r, NGX_ERROR); r 523 http/ngx_http_request_body.c rc = ngx_http_read_discarded_request_body(r); r 526 http/ngx_http_request_body.c r->discard_body = 0; r 527 http/ngx_http_request_body.c r->lingering_close = 0; r 528 http/ngx_http_request_body.c ngx_http_finalize_request(r, NGX_DONE); r 536 http/ngx_http_request_body.c ngx_http_finalize_request(r, NGX_ERROR); r 542 http/ngx_http_request_body.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 556 http/ngx_http_request_body.c ngx_http_read_discarded_request_body(ngx_http_request_t *r) r 562 http/ngx_http_request_body.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 566 http/ngx_http_request_body.c if (r->headers_in.content_length_n == 0) { r 567 http/ngx_http_request_body.c r->read_event_handler = ngx_http_block_reading; r 571 http/ngx_http_request_body.c if (!r->connection->read->ready) { r 575 http/ngx_http_request_body.c size = (r->headers_in.content_length_n > NGX_HTTP_DISCARD_BUFFER_SIZE) ? r 577 http/ngx_http_request_body.c (size_t) r->headers_in.content_length_n; r 579 http/ngx_http_request_body.c n = r->connection->recv(r->connection, buffer, size); r 582 http/ngx_http_request_body.c r->connection->error = 1; r 594 http/ngx_http_request_body.c r->headers_in.content_length_n -= n; r 600 http/ngx_http_request_body.c ngx_http_test_expect(ngx_http_request_t *r) r 605 http/ngx_http_request_body.c if (r->expect_tested r 606 http/ngx_http_request_body.c || r->headers_in.expect == NULL r 607 http/ngx_http_request_body.c || r->http_version < NGX_HTTP_VERSION_11) r 612 http/ngx_http_request_body.c r->expect_tested = 1; r 614 http/ngx_http_request_body.c expect = &r->headers_in.expect->value; r 624 http/ngx_http_request_body.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 627 http/ngx_http_request_body.c n = r->connection->send(r->connection, r 35 http/ngx_http_script.c ngx_http_script_flush_complex_value(ngx_http_request_t *r, r 45 http/ngx_http_script.c if (r->variables[*index].no_cacheable) { r 46 http/ngx_http_script.c r->variables[*index].valid = 0; r 47 http/ngx_http_script.c r->variables[*index].not_found = 0; r 57 http/ngx_http_script.c ngx_http_complex_value(ngx_http_request_t *r, ngx_http_complex_value_t *val, r 70 http/ngx_http_script.c ngx_http_script_flush_complex_value(r, val); r 75 http/ngx_http_script.c e.request = r; r 86 http/ngx_http_script.c value->data = ngx_pnalloc(r->pool, len); r 251 http/ngx_http_script.c ngx_http_test_predicates(ngx_http_request_t *r, ngx_array_t *predicates) r 264 http/ngx_http_script.c if (ngx_http_complex_value(r, &cv[i], &val) != NGX_OK) { r 489 http/ngx_http_script.c ngx_http_script_run(ngx_http_request_t *r, ngx_str_t *value, r 498 http/ngx_http_script.c cmcf = ngx_http_get_module_main_conf(r, ngx_http_core_module); r 501 http/ngx_http_script.c if (r->variables[i].no_cacheable) { r 502 http/ngx_http_script.c r->variables[i].valid = 0; r 503 http/ngx_http_script.c r->variables[i].not_found = 0; r 510 http/ngx_http_script.c e.request = r; r 520 http/ngx_http_script.c value->data = ngx_pnalloc(r->pool, len); r 538 http/ngx_http_script.c ngx_http_script_flush_no_cacheable_variables(ngx_http_request_t *r, r 546 http/ngx_http_script.c if (r->variables[index[n]].no_cacheable) { r 547 http/ngx_http_script.c r->variables[index[n]].valid = 0; r 548 http/ngx_http_script.c r->variables[index[n]].not_found = 0; r 915 http/ngx_http_script.c ngx_http_request_t *r; r 922 http/ngx_http_script.c r = e->request; r 924 http/ngx_http_script.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 928 http/ngx_http_script.c e->line = r->uri; r 935 http/ngx_http_script.c rc = ngx_http_regex_exec(r, code->regex, &e->line); r 938 http/ngx_http_script.c if (e->log || (r->connection->log->log_level & NGX_LOG_DEBUG_HTTP)) { r 939 http/ngx_http_script.c ngx_log_error(NGX_LOG_NOTICE, r->connection->log, 0, r 944 http/ngx_http_script.c r->ncaptures = 0; r 972 http/ngx_http_script.c if (e->log || (r->connection->log->log_level & NGX_LOG_DEBUG_HTTP)) { r 973 http/ngx_http_script.c ngx_log_error(NGX_LOG_NOTICE, r->connection->log, 0, r 1003 http/ngx_http_script.c r->internal = 1; r 1004 http/ngx_http_script.c r->valid_unparsed_uri = 0; r 1007 http/ngx_http_script.c r->valid_location = 0; r 1008 http/ngx_http_script.c r->uri_changed = 0; r 1011 http/ngx_http_script.c r->uri_changed = 1; r 1019 http/ngx_http_script.c if (r->ncaptures && (r->quoted_uri || r->plus_in_uri)) { r 1020 http/ngx_http_script.c e->buf.len += 2 * ngx_escape_uri(NULL, r->uri.data, r->uri.len, r 1025 http/ngx_http_script.c for (n = 2; n < r->ncaptures; n += 2) { r 1026 http/ngx_http_script.c e->buf.len += r->captures[n + 1] - r->captures[n]; r 1034 http/ngx_http_script.c le.request = r; r 1048 http/ngx_http_script.c if (code->add_args && r->args.len) { r 1049 http/ngx_http_script.c e->buf.len += r->args.len + 1; r 1052 http/ngx_http_script.c e->buf.data = ngx_pnalloc(r->pool, e->buf.len); r 1071 http/ngx_http_script.c ngx_http_request_t *r; r 1076 http/ngx_http_script.c r = e->request; r 1080 http/ngx_http_script.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1097 http/ngx_http_script.c if (code->add_args && r->args.len) { r 1099 http/ngx_http_script.c e->pos = ngx_copy(e->pos, r->args.data, r->args.len); r 1104 http/ngx_http_script.c if (e->log || (r->connection->log->log_level & NGX_LOG_DEBUG_HTTP)) { r 1105 http/ngx_http_script.c ngx_log_error(NGX_LOG_NOTICE, r->connection->log, 0, r 1109 http/ngx_http_script.c r->headers_out.location = ngx_list_push(&r->headers_out.headers); r 1110 http/ngx_http_script.c if (r->headers_out.location == NULL) { r 1116 http/ngx_http_script.c r->headers_out.location->hash = 1; r 1117 http/ngx_http_script.c ngx_str_set(&r->headers_out.location->key, "Location"); r 1118 http/ngx_http_script.c r->headers_out.location->value = e->buf; r 1127 http/ngx_http_script.c if (code->add_args && r->args.len) { r 1129 http/ngx_http_script.c e->pos = ngx_copy(e->pos, r->args.data, r->args.len); r 1132 http/ngx_http_script.c r->args.len = e->pos - e->args; r 1133 http/ngx_http_script.c r->args.data = e->args; r 1141 http/ngx_http_script.c r->args.len = 0; r 1145 http/ngx_http_script.c if (e->log || (r->connection->log->log_level & NGX_LOG_DEBUG_HTTP)) { r 1146 http/ngx_http_script.c ngx_log_error(NGX_LOG_NOTICE, r->connection->log, 0, r 1148 http/ngx_http_script.c &e->buf, &r->args); r 1152 http/ngx_http_script.c r->uri = e->buf; r 1154 http/ngx_http_script.c if (r->uri.len == 0) { r 1155 http/ngx_http_script.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 1162 http/ngx_http_script.c ngx_http_set_exten(r); r 1210 http/ngx_http_script.c ngx_http_request_t *r; r 1213 http/ngx_http_script.c r = e->request; r 1221 http/ngx_http_script.c if (n < r->ncaptures) { r 1223 http/ngx_http_script.c cap = r->captures; r 1228 http/ngx_http_script.c p = r->captures_data; r 1248 http/ngx_http_script.c ngx_http_request_t *r; r 1251 http/ngx_http_script.c r = e->request; r 1261 http/ngx_http_script.c if (n < r->ncaptures) { r 1263 http/ngx_http_script.c cap = r->captures; r 1264 http/ngx_http_script.c p = r->captures_data; r 1475 http/ngx_http_script.c ngx_http_request_t *r; r 1489 http/ngx_http_script.c r = e->request; r 1491 http/ngx_http_script.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1494 http/ngx_http_script.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 1506 http/ngx_http_script.c if (ngx_open_cached_file(clcf->open_file_cache, &path, &of, r->pool) r 1513 http/ngx_http_script.c ngx_log_error(NGX_LOG_CRIT, r->connection->log, of.err, r 1587 http/ngx_http_script.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1664 http/ngx_http_script.c ngx_http_request_t *r; r 1671 http/ngx_http_script.c r = e->request; r 1675 http/ngx_http_script.c r->variables[code->index].len = e->sp->len; r 1676 http/ngx_http_script.c r->variables[code->index].valid = 1; r 1677 http/ngx_http_script.c r->variables[code->index].no_cacheable = 0; r 1678 http/ngx_http_script.c r->variables[code->index].not_found = 0; r 1679 http/ngx_http_script.c r->variables[code->index].data = e->sp->data; r 1686 http/ngx_http_script.c cmcf = ngx_http_get_module_main_conf(r, ngx_http_core_module); r 205 http/ngx_http_script.h void ngx_http_script_flush_complex_value(ngx_http_request_t *r, r 207 http/ngx_http_script.h ngx_int_t ngx_http_complex_value(ngx_http_request_t *r, r 214 http/ngx_http_script.h ngx_int_t ngx_http_test_predicates(ngx_http_request_t *r, r 221 http/ngx_http_script.h u_char *ngx_http_script_run(ngx_http_request_t *r, ngx_str_t *value, r 223 http/ngx_http_script.h void ngx_http_script_flush_no_cacheable_variables(ngx_http_request_t *r, r 13 http/ngx_http_special_response.c static ngx_int_t ngx_http_send_error_page(ngx_http_request_t *r, r 15 http/ngx_http_special_response.c static ngx_int_t ngx_http_send_special_response(ngx_http_request_t *r, r 17 http/ngx_http_special_response.c static ngx_int_t ngx_http_send_refresh(ngx_http_request_t *r); r 353 http/ngx_http_special_response.c ngx_http_special_response_handler(ngx_http_request_t *r, ngx_int_t error) r 359 http/ngx_http_special_response.c ngx_log_debug3(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 361 http/ngx_http_special_response.c error, &r->uri, &r->args); r 363 http/ngx_http_special_response.c r->err_status = error; r 365 http/ngx_http_special_response.c if (r->keepalive) { r 374 http/ngx_http_special_response.c r->keepalive = 0; r 378 http/ngx_http_special_response.c if (r->lingering_close == 1) { r 384 http/ngx_http_special_response.c r->lingering_close = 0; r 388 http/ngx_http_special_response.c r->headers_out.content_type.len = 0; r 390 http/ngx_http_special_response.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 392 http/ngx_http_special_response.c if (!r->error_page && clcf->error_pages && r->uri_changes != 0) { r 395 http/ngx_http_special_response.c r->error_page = 1; r 402 http/ngx_http_special_response.c return ngx_http_send_error_page(r, &err_page[i]); r 407 http/ngx_http_special_response.c r->expect_tested = 1; r 409 http/ngx_http_special_response.c if (ngx_http_discard_request_body(r) != NGX_OK) { r 414 http/ngx_http_special_response.c && r->headers_in.msie r 418 http/ngx_http_special_response.c return ngx_http_send_refresh(r); r 424 http/ngx_http_special_response.c r->header_only = 1; r 455 http/ngx_http_special_response.c r->err_status = NGX_HTTP_BAD_REQUEST; r 464 http/ngx_http_special_response.c return ngx_http_send_special_response(r, clcf, err); r 469 http/ngx_http_special_response.c ngx_http_filter_finalize_request(ngx_http_request_t *r, ngx_module_t *m, r 475 http/ngx_http_special_response.c ngx_http_clean_header(r); r 480 http/ngx_http_special_response.c ctx = r->ctx[m->ctx_index]; r 484 http/ngx_http_special_response.c ngx_memzero(r->ctx, sizeof(void *) * ngx_http_max_module); r 487 http/ngx_http_special_response.c r->ctx[m->ctx_index] = ctx; r 490 http/ngx_http_special_response.c r->filter_finalize = 1; r 492 http/ngx_http_special_response.c rc = ngx_http_special_response_handler(r, error); r 509 http/ngx_http_special_response.c ngx_http_clean_header(ngx_http_request_t *r) r 511 http/ngx_http_special_response.c ngx_memzero(&r->headers_out.status, r 515 http/ngx_http_special_response.c r->headers_out.headers.part.nelts = 0; r 516 http/ngx_http_special_response.c r->headers_out.headers.part.next = NULL; r 517 http/ngx_http_special_response.c r->headers_out.headers.last = &r->headers_out.headers.part; r 519 http/ngx_http_special_response.c r->headers_out.content_length_n = -1; r 520 http/ngx_http_special_response.c r->headers_out.last_modified_time = -1; r 525 http/ngx_http_special_response.c ngx_http_send_error_page(ngx_http_request_t *r, ngx_http_err_page_t *err_page) r 535 http/ngx_http_special_response.c r->expect_tested = 1; r 539 http/ngx_http_special_response.c r->err_status = overwrite; r 542 http/ngx_http_special_response.c if (ngx_http_complex_value(r, &err_page->value, &uri) != NGX_OK) { r 549 http/ngx_http_special_response.c ngx_http_split_args(r, &uri, &args); r 555 http/ngx_http_special_response.c if (r->method != NGX_HTTP_HEAD) { r 556 http/ngx_http_special_response.c r->method = NGX_HTTP_GET; r 557 http/ngx_http_special_response.c r->method_name = ngx_http_get_name; r 560 http/ngx_http_special_response.c return ngx_http_internal_redirect(r, &uri, &args); r 564 http/ngx_http_special_response.c return ngx_http_named_location(r, &uri); r 567 http/ngx_http_special_response.c location = ngx_list_push(&r->headers_out.headers); r 576 http/ngx_http_special_response.c r->err_status = overwrite; r 579 http/ngx_http_special_response.c r->err_status = NGX_HTTP_MOVED_TEMPORARILY; r 586 http/ngx_http_special_response.c r->headers_out.location = location; r 588 http/ngx_http_special_response.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 590 http/ngx_http_special_response.c if (clcf->msie_refresh && r->headers_in.msie) { r 591 http/ngx_http_special_response.c return ngx_http_send_refresh(r); r 594 http/ngx_http_special_response.c return ngx_http_send_special_response(r, clcf, r->err_status r 601 http/ngx_http_special_response.c ngx_http_send_special_response(ngx_http_request_t *r, r 623 http/ngx_http_special_response.c r->headers_out.content_length_n = ngx_http_error_pages[err].len + len; r 625 http/ngx_http_special_response.c && (r->headers_in.msie || r->headers_in.chrome) r 626 http/ngx_http_special_response.c && r->http_version >= NGX_HTTP_VERSION_10 r 629 http/ngx_http_special_response.c r->headers_out.content_length_n += r 634 http/ngx_http_special_response.c r->headers_out.content_type_len = sizeof("text/html") - 1; r 635 http/ngx_http_special_response.c ngx_str_set(&r->headers_out.content_type, "text/html"); r 636 http/ngx_http_special_response.c r->headers_out.content_type_lowcase = NULL; r 639 http/ngx_http_special_response.c r->headers_out.content_length_n = -1; r 642 http/ngx_http_special_response.c if (r->headers_out.content_length) { r 643 http/ngx_http_special_response.c r->headers_out.content_length->hash = 0; r 644 http/ngx_http_special_response.c r->headers_out.content_length = NULL; r 647 http/ngx_http_special_response.c ngx_http_clear_accept_ranges(r); r 648 http/ngx_http_special_response.c ngx_http_clear_last_modified(r); r 650 http/ngx_http_special_response.c rc = ngx_http_send_header(r); r 652 http/ngx_http_special_response.c if (rc == NGX_ERROR || r->header_only) { r 660 http/ngx_http_special_response.c b = ngx_calloc_buf(r->pool); r 672 http/ngx_http_special_response.c b = ngx_calloc_buf(r->pool); r 686 http/ngx_http_special_response.c b = ngx_calloc_buf(r->pool); r 700 http/ngx_http_special_response.c if (r == r->main) { r 706 http/ngx_http_special_response.c return ngx_http_output_filter(r, &out[0]); r 711 http/ngx_http_special_response.c ngx_http_send_refresh(ngx_http_request_t *r) r 720 http/ngx_http_special_response.c len = r->headers_out.location->value.len; r 721 http/ngx_http_special_response.c location = r->headers_out.location->value.data; r 729 http/ngx_http_special_response.c r->err_status = NGX_HTTP_OK; r 731 http/ngx_http_special_response.c r->headers_out.content_type_len = sizeof("text/html") - 1; r 732 http/ngx_http_special_response.c ngx_str_set(&r->headers_out.content_type, "text/html"); r 733 http/ngx_http_special_response.c r->headers_out.content_type_lowcase = NULL; r 735 http/ngx_http_special_response.c r->headers_out.location->hash = 0; r 736 http/ngx_http_special_response.c r->headers_out.location = NULL; r 738 http/ngx_http_special_response.c r->headers_out.content_length_n = size; r 740 http/ngx_http_special_response.c if (r->headers_out.content_length) { r 741 http/ngx_http_special_response.c r->headers_out.content_length->hash = 0; r 742 http/ngx_http_special_response.c r->headers_out.content_length = NULL; r 745 http/ngx_http_special_response.c ngx_http_clear_accept_ranges(r); r 746 http/ngx_http_special_response.c ngx_http_clear_last_modified(r); r 748 http/ngx_http_special_response.c rc = ngx_http_send_header(r); r 750 http/ngx_http_special_response.c if (rc == NGX_ERROR || r->header_only) { r 754 http/ngx_http_special_response.c b = ngx_create_temp_buf(r->pool, size); r 778 http/ngx_http_special_response.c return ngx_http_output_filter(r, &out); r 13 http/ngx_http_upstream.c static ngx_int_t ngx_http_upstream_cache(ngx_http_request_t *r, r 15 http/ngx_http_upstream.c static ngx_int_t ngx_http_upstream_cache_send(ngx_http_request_t *r, r 17 http/ngx_http_upstream.c static ngx_int_t ngx_http_upstream_cache_status(ngx_http_request_t *r, r 21 http/ngx_http_upstream.c static void ngx_http_upstream_init_request(ngx_http_request_t *r); r 23 http/ngx_http_upstream.c static void ngx_http_upstream_rd_check_broken_connection(ngx_http_request_t *r); r 24 http/ngx_http_upstream.c static void ngx_http_upstream_wr_check_broken_connection(ngx_http_request_t *r); r 25 http/ngx_http_upstream.c static void ngx_http_upstream_check_broken_connection(ngx_http_request_t *r, r 27 http/ngx_http_upstream.c static void ngx_http_upstream_connect(ngx_http_request_t *r, r 29 http/ngx_http_upstream.c static ngx_int_t ngx_http_upstream_reinit(ngx_http_request_t *r, r 31 http/ngx_http_upstream.c static void ngx_http_upstream_send_request(ngx_http_request_t *r, r 33 http/ngx_http_upstream.c static void ngx_http_upstream_send_request_handler(ngx_http_request_t *r, r 35 http/ngx_http_upstream.c static void ngx_http_upstream_process_header(ngx_http_request_t *r, r 37 http/ngx_http_upstream.c static ngx_int_t ngx_http_upstream_test_next(ngx_http_request_t *r, r 39 http/ngx_http_upstream.c static ngx_int_t ngx_http_upstream_intercept_errors(ngx_http_request_t *r, r 42 http/ngx_http_upstream.c static ngx_int_t ngx_http_upstream_process_headers(ngx_http_request_t *r, r 44 http/ngx_http_upstream.c static void ngx_http_upstream_process_body_in_memory(ngx_http_request_t *r, r 46 http/ngx_http_upstream.c static void ngx_http_upstream_send_response(ngx_http_request_t *r, r 49 http/ngx_http_upstream.c ngx_http_upstream_process_non_buffered_downstream(ngx_http_request_t *r); r 51 http/ngx_http_upstream.c ngx_http_upstream_process_non_buffered_upstream(ngx_http_request_t *r, r 54 http/ngx_http_upstream.c ngx_http_upstream_process_non_buffered_request(ngx_http_request_t *r, r 59 http/ngx_http_upstream.c static void ngx_http_upstream_process_downstream(ngx_http_request_t *r); r 60 http/ngx_http_upstream.c static void ngx_http_upstream_process_upstream(ngx_http_request_t *r, r 62 http/ngx_http_upstream.c static void ngx_http_upstream_process_request(ngx_http_request_t *r); r 63 http/ngx_http_upstream.c static void ngx_http_upstream_store(ngx_http_request_t *r, r 65 http/ngx_http_upstream.c static void ngx_http_upstream_dummy_handler(ngx_http_request_t *r, r 67 http/ngx_http_upstream.c static void ngx_http_upstream_next(ngx_http_request_t *r, r 70 http/ngx_http_upstream.c static void ngx_http_upstream_finalize_request(ngx_http_request_t *r, r 73 http/ngx_http_upstream.c static ngx_int_t ngx_http_upstream_process_header_line(ngx_http_request_t *r, r 75 http/ngx_http_upstream.c static ngx_int_t ngx_http_upstream_process_set_cookie(ngx_http_request_t *r, r 78 http/ngx_http_upstream.c ngx_http_upstream_process_cache_control(ngx_http_request_t *r, r 80 http/ngx_http_upstream.c static ngx_int_t ngx_http_upstream_ignore_header_line(ngx_http_request_t *r, r 82 http/ngx_http_upstream.c static ngx_int_t ngx_http_upstream_process_expires(ngx_http_request_t *r, r 84 http/ngx_http_upstream.c static ngx_int_t ngx_http_upstream_process_accel_expires(ngx_http_request_t *r, r 86 http/ngx_http_upstream.c static ngx_int_t ngx_http_upstream_process_limit_rate(ngx_http_request_t *r, r 88 http/ngx_http_upstream.c static ngx_int_t ngx_http_upstream_process_buffering(ngx_http_request_t *r, r 90 http/ngx_http_upstream.c static ngx_int_t ngx_http_upstream_process_charset(ngx_http_request_t *r, r 92 http/ngx_http_upstream.c static ngx_int_t ngx_http_upstream_copy_header_line(ngx_http_request_t *r, r 95 http/ngx_http_upstream.c ngx_http_upstream_copy_multi_header_lines(ngx_http_request_t *r, r 97 http/ngx_http_upstream.c static ngx_int_t ngx_http_upstream_copy_content_type(ngx_http_request_t *r, r 99 http/ngx_http_upstream.c static ngx_int_t ngx_http_upstream_copy_content_length(ngx_http_request_t *r, r 101 http/ngx_http_upstream.c static ngx_int_t ngx_http_upstream_copy_last_modified(ngx_http_request_t *r, r 103 http/ngx_http_upstream.c static ngx_int_t ngx_http_upstream_rewrite_location(ngx_http_request_t *r, r 105 http/ngx_http_upstream.c static ngx_int_t ngx_http_upstream_rewrite_refresh(ngx_http_request_t *r, r 107 http/ngx_http_upstream.c static ngx_int_t ngx_http_upstream_copy_allow_ranges(ngx_http_request_t *r, r 111 http/ngx_http_upstream.c static ngx_int_t ngx_http_upstream_copy_content_encoding(ngx_http_request_t *r, r 116 http/ngx_http_upstream.c static ngx_int_t ngx_http_upstream_addr_variable(ngx_http_request_t *r, r 118 http/ngx_http_upstream.c static ngx_int_t ngx_http_upstream_status_variable(ngx_http_request_t *r, r 120 http/ngx_http_upstream.c static ngx_int_t ngx_http_upstream_response_time_variable(ngx_http_request_t *r, r 123 http/ngx_http_upstream.c ngx_http_request_t *r, ngx_http_variable_value_t *v, uintptr_t data); r 371 http/ngx_http_upstream.c ngx_http_upstream_create(ngx_http_request_t *r) r 375 http/ngx_http_upstream.c u = r->upstream; r 378 http/ngx_http_upstream.c r->main->count++; r 379 http/ngx_http_upstream.c ngx_http_upstream_cleanup(r); r 382 http/ngx_http_upstream.c u = ngx_pcalloc(r->pool, sizeof(ngx_http_upstream_t)); r 387 http/ngx_http_upstream.c r->upstream = u; r 389 http/ngx_http_upstream.c u->peer.log = r->connection->log; r 392 http/ngx_http_upstream.c u->peer.lock = &r->connection->lock; r 396 http/ngx_http_upstream.c r->cache = NULL; r 404 http/ngx_http_upstream.c ngx_http_upstream_init(ngx_http_request_t *r) r 408 http/ngx_http_upstream.c c = r->connection; r 423 http/ngx_http_upstream.c ngx_http_finalize_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 429 http/ngx_http_upstream.c ngx_http_upstream_init_request(r); r 434 http/ngx_http_upstream.c ngx_http_upstream_init_request(ngx_http_request_t *r) r 445 http/ngx_http_upstream.c if (r->aio) { r 449 http/ngx_http_upstream.c u = r->upstream; r 456 http/ngx_http_upstream.c rc = ngx_http_upstream_cache(r, u); r 459 http/ngx_http_upstream.c r->write_event_handler = ngx_http_upstream_init_request; r 463 http/ngx_http_upstream.c r->write_event_handler = ngx_http_request_empty_handler; r 470 http/ngx_http_upstream.c ngx_http_finalize_request(r, rc); r 479 http/ngx_http_upstream.c if (!u->store && !r->post_action && !u->conf->ignore_client_abort) { r 480 http/ngx_http_upstream.c r->read_event_handler = ngx_http_upstream_rd_check_broken_connection; r 481 http/ngx_http_upstream.c r->write_event_handler = ngx_http_upstream_wr_check_broken_connection; r 484 http/ngx_http_upstream.c if (r->request_body) { r 485 http/ngx_http_upstream.c u->request_bufs = r->request_body->bufs; r 488 http/ngx_http_upstream.c if (u->create_request(r) != NGX_OK) { r 489 http/ngx_http_upstream.c ngx_http_finalize_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 495 http/ngx_http_upstream.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 498 http/ngx_http_upstream.c u->output.pool = r->pool; r 504 http/ngx_http_upstream.c u->writer.pool = r->pool; r 506 http/ngx_http_upstream.c if (r->upstream_states == NULL) { r 508 http/ngx_http_upstream.c r->upstream_states = ngx_array_create(r->pool, 1, r 510 http/ngx_http_upstream.c if (r->upstream_states == NULL) { r 511 http/ngx_http_upstream.c ngx_http_finalize_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 517 http/ngx_http_upstream.c u->state = ngx_array_push(r->upstream_states); r 519 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 527 http/ngx_http_upstream.c cln = ngx_http_cleanup_add(r, 0); r 529 http/ngx_http_upstream.c ngx_http_finalize_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); r 534 http/ngx_http_upstream.c cln->data = r; r 545 http/ngx_http_upstream.c if (ngx_http_upstream_create_round_robin_peer(r, u->resolved) r 548 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 553 http/ngx_http_upstream.c ngx_http_upstream_connect(r, u); r 560 http/ngx_http_upstream.c umcf = ngx_http_get_module_main_conf(r, ngx_http_upstream_module); r 578 http/ngx_http_upstream.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 580 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 589 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 595 http/ngx_http_upstream.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 598 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, NGX_HTTP_BAD_GATEWAY); r 605 http/ngx_http_upstream.c ctx->data = r; r 612 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 622 http/ngx_http_upstream.c if (uscf->peer.init(r, uscf) != NGX_OK) { r 623 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 628 http/ngx_http_upstream.c ngx_http_upstream_connect(r, u); r 635 http/ngx_http_upstream.c ngx_http_upstream_cache(ngx_http_request_t *r, ngx_http_upstream_t *u) r 640 http/ngx_http_upstream.c c = r->cache; r 644 http/ngx_http_upstream.c switch (ngx_http_test_predicates(r, u->conf->cache_bypass)) { r 657 http/ngx_http_upstream.c if (!(r->method & u->conf->cache_methods)) { r 661 http/ngx_http_upstream.c if (r->method & NGX_HTTP_HEAD) { r 665 http/ngx_http_upstream.c if (ngx_http_file_cache_new(r) != NGX_OK) { r 669 http/ngx_http_upstream.c if (u->create_key(r) != NGX_OK) { r 675 http/ngx_http_upstream.c ngx_http_file_cache_create_key(r); r 679 http/ngx_http_upstream.c c = r->cache; r 688 http/ngx_http_upstream.c rc = ngx_http_file_cache_open(r); r 690 http/ngx_http_upstream.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 715 http/ngx_http_upstream.c rc = ngx_http_upstream_cache_send(r, u); r 766 http/ngx_http_upstream.c r->cached = 0; r 773 http/ngx_http_upstream.c ngx_http_upstream_cache_send(ngx_http_request_t *r, ngx_http_upstream_t *u) r 778 http/ngx_http_upstream.c r->cached = 1; r 779 http/ngx_http_upstream.c c = r->cache; r 782 http/ngx_http_upstream.c r->http_version = NGX_HTTP_VERSION_9; r 783 http/ngx_http_upstream.c return ngx_http_cache_send(r); r 793 http/ngx_http_upstream.c if (ngx_list_init(&u->headers_in.headers, r->pool, 8, r 800 http/ngx_http_upstream.c rc = u->process_header(r); r 804 http/ngx_http_upstream.c if (ngx_http_upstream_process_headers(r, u) != NGX_OK) { r 808 http/ngx_http_upstream.c return ngx_http_cache_send(r); r 828 http/ngx_http_upstream.c ngx_http_request_t *r; r 832 http/ngx_http_upstream.c r = ctx->data; r 834 http/ngx_http_upstream.c u = r->upstream; r 838 http/ngx_http_upstream.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 843 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, NGX_HTTP_BAD_GATEWAY); r 858 http/ngx_http_upstream.c ngx_log_debug4(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 866 http/ngx_http_upstream.c if (ngx_http_upstream_create_round_robin_peer(r, ur) != NGX_OK) { r 867 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 875 http/ngx_http_upstream.c ngx_http_upstream_connect(r, u); r 883 http/ngx_http_upstream.c ngx_http_request_t *r; r 888 http/ngx_http_upstream.c r = c->data; r 890 http/ngx_http_upstream.c u = r->upstream; r 891 http/ngx_http_upstream.c c = r->connection; r 894 http/ngx_http_upstream.c ctx->current_request = r; r 897 http/ngx_http_upstream.c "http upstream request: \"%V?%V\"", &r->uri, &r->args); r 900 http/ngx_http_upstream.c u->write_event_handler(r, u); r 903 http/ngx_http_upstream.c u->read_event_handler(r, u); r 911 http/ngx_http_upstream.c ngx_http_upstream_rd_check_broken_connection(ngx_http_request_t *r) r 913 http/ngx_http_upstream.c ngx_http_upstream_check_broken_connection(r, r->connection->read); r 918 http/ngx_http_upstream.c ngx_http_upstream_wr_check_broken_connection(ngx_http_request_t *r) r 920 http/ngx_http_upstream.c ngx_http_upstream_check_broken_connection(r, r->connection->write); r 925 http/ngx_http_upstream.c ngx_http_upstream_check_broken_connection(ngx_http_request_t *r, r 937 http/ngx_http_upstream.c ev->write, &r->uri); r 939 http/ngx_http_upstream.c c = r->connection; r 940 http/ngx_http_upstream.c u = r->upstream; r 948 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 955 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 981 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 991 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 1016 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 1044 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 1053 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 1060 http/ngx_http_upstream.c ngx_http_upstream_connect(ngx_http_request_t *r, ngx_http_upstream_t *u) r 1066 http/ngx_http_upstream.c r->connection->log->action = "connecting to upstream"; r 1068 http/ngx_http_upstream.c r->connection->single_connection = 0; r 1076 http/ngx_http_upstream.c u->state = ngx_array_push(r->upstream_states); r 1078 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 1091 http/ngx_http_upstream.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1095 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 1103 http/ngx_http_upstream.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, "no live upstreams"); r 1104 http/ngx_http_upstream.c ngx_http_upstream_next(r, u, NGX_HTTP_UPSTREAM_FT_NOLIVE); r 1109 http/ngx_http_upstream.c ngx_http_upstream_next(r, u, NGX_HTTP_UPSTREAM_FT_ERROR); r 1117 http/ngx_http_upstream.c c->data = r; r 1125 http/ngx_http_upstream.c c->sendfile &= r->connection->sendfile; r 1128 http/ngx_http_upstream.c c->pool = r->pool; r 1129 http/ngx_http_upstream.c c->log = r->connection->log; r 1141 http/ngx_http_upstream.c if (ngx_http_upstream_reinit(r, u) != NGX_OK) { r 1142 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 1148 http/ngx_http_upstream.c if (r->request_body r 1149 http/ngx_http_upstream.c && r->request_body->buf r 1150 http/ngx_http_upstream.c && r->request_body->temp_file r 1151 http/ngx_http_upstream.c && r == r->main) r 1158 http/ngx_http_upstream.c u->output.free = ngx_alloc_chain_link(r->pool); r 1160 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 1165 http/ngx_http_upstream.c u->output.free->buf = r->request_body->buf; r 1169 http/ngx_http_upstream.c r->request_body->buf->pos = r->request_body->buf->start; r 1170 http/ngx_http_upstream.c r->request_body->buf->last = r->request_body->buf->start; r 1171 http/ngx_http_upstream.c r->request_body->buf->tag = u->output.tag; r 1184 http/ngx_http_upstream.c ngx_http_upstream_ssl_init_connection(r, u, c); r 1190 http/ngx_http_upstream.c ngx_http_upstream_send_request(r, u); r 1197 http/ngx_http_upstream.c ngx_http_upstream_ssl_init_connection(ngx_http_request_t *r, r 1206 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 1216 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 1222 http/ngx_http_upstream.c r->connection->log->action = "SSL handshaking to upstream"; r 1238 http/ngx_http_upstream.c ngx_http_request_t *r; r 1241 http/ngx_http_upstream.c r = c->data; r 1242 http/ngx_http_upstream.c u = r->upstream; r 1253 http/ngx_http_upstream.c ngx_http_upstream_send_request(r, u); r 1258 http/ngx_http_upstream.c ngx_http_upstream_next(r, u, NGX_HTTP_UPSTREAM_FT_ERROR); r 1266 http/ngx_http_upstream.c ngx_http_upstream_reinit(ngx_http_request_t *r, ngx_http_upstream_t *u) r 1270 http/ngx_http_upstream.c if (u->reinit_request(r) != NGX_OK) { r 1276 http/ngx_http_upstream.c if (ngx_list_init(&u->headers_in.headers, r->pool, 8, r 1292 http/ngx_http_upstream.c if (r->request_body && r->request_body->temp_file r 1293 http/ngx_http_upstream.c && r != r->main && u->output.buf) r 1295 http/ngx_http_upstream.c u->output.free = ngx_alloc_chain_link(r->pool); r 1317 http/ngx_http_upstream.c if (r->cache) { r 1318 http/ngx_http_upstream.c u->buffer.pos += r->cache->header_start; r 1330 http/ngx_http_upstream.c ngx_http_upstream_send_request(ngx_http_request_t *r, ngx_http_upstream_t *u) r 1341 http/ngx_http_upstream.c ngx_http_upstream_next(r, u, NGX_HTTP_UPSTREAM_FT_ERROR); r 1352 http/ngx_http_upstream.c ngx_http_upstream_next(r, u, NGX_HTTP_UPSTREAM_FT_ERROR); r 1364 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 1378 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 1400 http/ngx_http_upstream.c ngx_http_upstream_process_header(r, u); r 1408 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 1416 http/ngx_http_upstream.c ngx_http_upstream_send_request_handler(ngx_http_request_t *r, r 1423 http/ngx_http_upstream.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1427 http/ngx_http_upstream.c ngx_http_upstream_next(r, u, NGX_HTTP_UPSTREAM_FT_TIMEOUT); r 1434 http/ngx_http_upstream.c ngx_http_upstream_ssl_init_connection(r, u, c); r 1448 http/ngx_http_upstream.c ngx_http_upstream_send_request(r, u); r 1453 http/ngx_http_upstream.c ngx_http_upstream_process_header(ngx_http_request_t *r, ngx_http_upstream_t *u) r 1467 http/ngx_http_upstream.c ngx_http_upstream_next(r, u, NGX_HTTP_UPSTREAM_FT_TIMEOUT); r 1472 http/ngx_http_upstream.c ngx_http_upstream_next(r, u, NGX_HTTP_UPSTREAM_FT_ERROR); r 1477 http/ngx_http_upstream.c u->buffer.start = ngx_palloc(r->pool, u->conf->buffer_size); r 1479 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 1491 http/ngx_http_upstream.c if (ngx_list_init(&u->headers_in.headers, r->pool, 8, r 1495 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 1502 http/ngx_http_upstream.c if (r->cache) { r 1503 http/ngx_http_upstream.c u->buffer.pos += r->cache->header_start; r 1519 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 1533 http/ngx_http_upstream.c ngx_http_upstream_next(r, u, NGX_HTTP_UPSTREAM_FT_ERROR); r 1545 http/ngx_http_upstream.c rc = u->process_header(r); r 1553 http/ngx_http_upstream.c ngx_http_upstream_next(r, u, r 1565 http/ngx_http_upstream.c ngx_http_upstream_next(r, u, NGX_HTTP_UPSTREAM_FT_INVALID_HEADER); r 1570 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 1579 http/ngx_http_upstream.c if (r->subrequest_in_memory) { r 1583 http/ngx_http_upstream.c if (ngx_http_upstream_test_next(r, u) == NGX_OK) { r 1587 http/ngx_http_upstream.c if (ngx_http_upstream_intercept_errors(r, u) == NGX_OK) { r 1592 http/ngx_http_upstream.c if (ngx_http_upstream_process_headers(r, u) != NGX_OK) { r 1596 http/ngx_http_upstream.c if (!r->subrequest_in_memory) { r 1597 http/ngx_http_upstream.c ngx_http_upstream_send_response(r, u); r 1606 http/ngx_http_upstream.c u->input_filter_ctx = r; r 1610 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 1623 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, NGX_ERROR); r 1628 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, 0); r 1635 http/ngx_http_upstream.c ngx_http_upstream_process_body_in_memory(r, u); r 1640 http/ngx_http_upstream.c ngx_http_upstream_test_next(ngx_http_request_t *r, ngx_http_upstream_t *u) r 1654 http/ngx_http_upstream.c ngx_http_upstream_next(r, u, un->mask); r 1665 http/ngx_http_upstream.c rc = u->reinit_request(r); r 1669 http/ngx_http_upstream.c rc = ngx_http_upstream_cache_send(r, u); r 1672 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, rc); r 1684 http/ngx_http_upstream.c ngx_http_upstream_intercept_errors(ngx_http_request_t *r, r 1696 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, NGX_HTTP_NOT_FOUND); r 1704 http/ngx_http_upstream.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 1718 http/ngx_http_upstream.c h = ngx_list_push(&r->headers_out.headers); r 1721 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 1728 http/ngx_http_upstream.c r->headers_out.www_authenticate = h; r 1733 http/ngx_http_upstream.c if (r->cache) { r 1739 http/ngx_http_upstream.c r->cache->valid_sec = ngx_time() + valid; r 1740 http/ngx_http_upstream.c r->cache->error = status; r 1743 http/ngx_http_upstream.c ngx_http_file_cache_free(r->cache, u->pipe->temp_file); r 1746 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, status); r 1801 http/ngx_http_upstream.c ngx_http_upstream_process_headers(ngx_http_request_t *r, ngx_http_upstream_t *u) r 1810 http/ngx_http_upstream.c umcf = ngx_http_get_module_main_conf(r, ngx_http_upstream_module); r 1815 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, NGX_DECLINED); r 1836 http/ngx_http_upstream.c if (hh->copy_handler(r, &h[i], hh->conf) != NGX_OK) { r 1837 http/ngx_http_upstream.c ngx_http_finalize_request(r, r 1848 http/ngx_http_upstream.c if (ngx_http_parse_unsafe_uri(r, uri, &args, &flags) != NGX_OK) { r 1849 http/ngx_http_upstream.c ngx_http_finalize_request(r, NGX_HTTP_NOT_FOUND); r 1853 http/ngx_http_upstream.c if (r->method != NGX_HTTP_HEAD) { r 1854 http/ngx_http_upstream.c r->method = NGX_HTTP_GET; r 1857 http/ngx_http_upstream.c r->valid_unparsed_uri = 0; r 1859 http/ngx_http_upstream.c ngx_http_internal_redirect(r, uri, &args); r 1860 http/ngx_http_upstream.c ngx_http_finalize_request(r, NGX_DONE); r 1889 http/ngx_http_upstream.c if (hh->copy_handler(r, &h[i], hh->conf) != NGX_OK) { r 1890 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 1898 http/ngx_http_upstream.c if (ngx_http_upstream_copy_header_line(r, &h[i], 0) != NGX_OK) { r 1899 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 1905 http/ngx_http_upstream.c if (r->headers_out.server && r->headers_out.server->value.data == NULL) { r 1906 http/ngx_http_upstream.c r->headers_out.server->hash = 0; r 1909 http/ngx_http_upstream.c if (r->headers_out.date && r->headers_out.date->value.data == NULL) { r 1910 http/ngx_http_upstream.c r->headers_out.date->hash = 0; r 1913 http/ngx_http_upstream.c r->headers_out.status = u->headers_in.status_n; r 1914 http/ngx_http_upstream.c r->headers_out.status_line = u->headers_in.status_line; r 1916 http/ngx_http_upstream.c u->headers_in.content_length_n = r->headers_out.content_length_n; r 1918 http/ngx_http_upstream.c if (r->headers_out.content_length_n != -1) { r 1919 http/ngx_http_upstream.c u->length = (size_t) r->headers_out.content_length_n; r 1930 http/ngx_http_upstream.c ngx_http_upstream_process_body_in_memory(ngx_http_request_t *r, r 1947 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, NGX_ETIMEDOUT); r 1960 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, NGX_ERROR); r 1971 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, n); r 1978 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, NGX_ERROR); r 1988 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, NGX_ERROR); r 2002 http/ngx_http_upstream.c ngx_http_upstream_send_response(ngx_http_request_t *r, ngx_http_upstream_t *u) r 2011 http/ngx_http_upstream.c rc = ngx_http_send_header(r); r 2013 http/ngx_http_upstream.c if (rc == NGX_ERROR || rc > NGX_OK || r->post_action) { r 2014 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, rc); r 2018 http/ngx_http_upstream.c c = r->connection; r 2020 http/ngx_http_upstream.c if (r->header_only) { r 2029 http/ngx_http_upstream.c r->read_event_handler = ngx_http_request_empty_handler; r 2030 http/ngx_http_upstream.c r->write_event_handler = ngx_http_request_empty_handler; r 2034 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, rc); r 2041 http/ngx_http_upstream.c if (r->request_body && r->request_body->temp_file) { r 2042 http/ngx_http_upstream.c ngx_pool_run_cleanup_file(r->pool, r->request_body->temp_file->file.fd); r 2043 http/ngx_http_upstream.c r->request_body->temp_file->file.fd = NGX_INVALID_FILE; r 2046 http/ngx_http_upstream.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 2053 http/ngx_http_upstream.c u->input_filter_ctx = r; r 2057 http/ngx_http_upstream.c r->write_event_handler = r 2060 http/ngx_http_upstream.c r->limit_rate = 0; r 2063 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, 0); r 2077 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, 0); r 2092 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, 0); r 2096 http/ngx_http_upstream.c ngx_http_upstream_process_non_buffered_downstream(r); r 2102 http/ngx_http_upstream.c if (ngx_http_send_special(r, NGX_HTTP_FLUSH) == NGX_ERROR) { r 2103 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, 0); r 2108 http/ngx_http_upstream.c ngx_http_upstream_process_non_buffered_upstream(r, u); r 2119 http/ngx_http_upstream.c if (r->cache && r->cache->file.fd != NGX_INVALID_FILE) { r 2120 http/ngx_http_upstream.c ngx_pool_run_cleanup_file(r->pool, r->cache->file.fd); r 2121 http/ngx_http_upstream.c r->cache->file.fd = NGX_INVALID_FILE; r 2124 http/ngx_http_upstream.c switch (ngx_http_test_predicates(r, u->conf->no_cache)) { r 2127 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, 0); r 2138 http/ngx_http_upstream.c if (ngx_http_file_cache_new(r) != NGX_OK) { r 2139 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, 0); r 2143 http/ngx_http_upstream.c if (u->create_key(r) != NGX_OK) { r 2144 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, 0); r 2150 http/ngx_http_upstream.c r->cache->min_uses = u->conf->cache_min_uses; r 2151 http/ngx_http_upstream.c r->cache->body_start = u->conf->buffer_size; r 2152 http/ngx_http_upstream.c r->cache->file_cache = u->conf->cache->data; r 2154 http/ngx_http_upstream.c if (ngx_http_file_cache_create(r) != NGX_OK) { r 2155 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, 0); r 2170 http/ngx_http_upstream.c valid = r->cache->valid_sec; r 2176 http/ngx_http_upstream.c r->cache->valid_sec = now + valid; r 2181 http/ngx_http_upstream.c r->cache->last_modified = r->headers_out.last_modified_time; r 2182 http/ngx_http_upstream.c r->cache->date = now; r 2183 http/ngx_http_upstream.c r->cache->body_start = (u_short) (u->buffer.pos - u->buffer.start); r 2185 http/ngx_http_upstream.c ngx_http_file_cache_set_header(r, u->buffer.start); r 2189 http/ngx_http_upstream.c r->headers_out.last_modified_time = -1; r 2196 http/ngx_http_upstream.c if (u->cacheable == 0 && r->cache) { r 2197 http/ngx_http_upstream.c ngx_http_file_cache_free(r->cache, u->pipe->temp_file); r 2205 http/ngx_http_upstream.c p->output_ctx = r; r 2211 http/ngx_http_upstream.c p->pool = r->pool; r 2216 http/ngx_http_upstream.c p->temp_file = ngx_pcalloc(r->pool, sizeof(ngx_temp_file_t)); r 2218 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, 0); r 2225 http/ngx_http_upstream.c p->temp_file->pool = r->pool; r 2239 http/ngx_http_upstream.c p->preread_bufs = ngx_alloc_chain_link(r->pool); r 2241 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, 0); r 2253 http/ngx_http_upstream.c p->buf_to_file = ngx_calloc_buf(r->pool); r 2255 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, 0); r 2298 http/ngx_http_upstream.c r->write_event_handler = ngx_http_upstream_process_downstream; r 2300 http/ngx_http_upstream.c ngx_http_upstream_process_upstream(r, u); r 2305 http/ngx_http_upstream.c ngx_http_upstream_process_non_buffered_downstream(ngx_http_request_t *r) r 2311 http/ngx_http_upstream.c c = r->connection; r 2312 http/ngx_http_upstream.c u = r->upstream; r 2323 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, 0); r 2327 http/ngx_http_upstream.c ngx_http_upstream_process_non_buffered_request(r, 1); r 2332 http/ngx_http_upstream.c ngx_http_upstream_process_non_buffered_upstream(ngx_http_request_t *r, r 2346 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, 0); r 2350 http/ngx_http_upstream.c ngx_http_upstream_process_non_buffered_request(r, 0); r 2355 http/ngx_http_upstream.c ngx_http_upstream_process_non_buffered_request(ngx_http_request_t *r, r 2366 http/ngx_http_upstream.c u = r->upstream; r 2367 http/ngx_http_upstream.c downstream = r->connection; r 2379 http/ngx_http_upstream.c rc = ngx_http_output_filter(r, u->out_bufs); r 2382 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, 0); r 2396 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, 0); r 2423 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, 0); r 2436 http/ngx_http_upstream.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 2438 http/ngx_http_upstream.c if (downstream->data == r) { r 2442 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, 0); r 2455 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, 0); r 2478 http/ngx_http_upstream.c ngx_http_request_t *r = data; r 2484 http/ngx_http_upstream.c u = r->upstream; r 2490 http/ngx_http_upstream.c cl = ngx_chain_get_free_buf(r->pool, &u->free_bufs); r 2518 http/ngx_http_upstream.c ngx_http_upstream_process_downstream(ngx_http_request_t *r) r 2525 http/ngx_http_upstream.c c = r->connection; r 2526 http/ngx_http_upstream.c u = r->upstream; r 2546 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, 0); r 2553 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, 0); r 2571 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, 0); r 2578 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, 0); r 2583 http/ngx_http_upstream.c ngx_http_upstream_process_request(r); r 2588 http/ngx_http_upstream.c ngx_http_upstream_process_upstream(ngx_http_request_t *r, r 2606 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, 0); r 2611 http/ngx_http_upstream.c ngx_http_upstream_process_request(r); r 2616 http/ngx_http_upstream.c ngx_http_upstream_process_request(ngx_http_request_t *r) r 2623 http/ngx_http_upstream.c u = r->upstream; r 2640 http/ngx_http_upstream.c ngx_http_upstream_store(r, u); r 2651 http/ngx_http_upstream.c ngx_log_error(NGX_LOG_CRIT, r->connection->log, ngx_errno, r 2663 http/ngx_http_upstream.c ngx_http_file_cache_update(r, u->pipe->temp_file); r 2669 http/ngx_http_upstream.c ngx_http_file_cache_update(r, u->pipe->temp_file); r 2672 http/ngx_http_upstream.c ngx_http_file_cache_free(r->cache, u->pipe->temp_file); r 2679 http/ngx_http_upstream.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2684 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, 0); r 2690 http/ngx_http_upstream.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2694 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, 0); r 2701 http/ngx_http_upstream.c ngx_http_upstream_store(ngx_http_request_t *r, ngx_http_upstream_t *u) r 2715 http/ngx_http_upstream.c tf = ngx_pcalloc(r->pool, sizeof(ngx_temp_file_t)); r 2721 http/ngx_http_upstream.c tf->file.log = r->connection->log; r 2723 http/ngx_http_upstream.c tf->pool = r->pool; r 2741 http/ngx_http_upstream.c ext.log = r->connection->log; r 2756 http/ngx_http_upstream.c ngx_http_map_uri_to_path(r, &path, &root, 0); r 2759 http/ngx_http_upstream.c if (ngx_http_script_run(r, &path, u->conf->store_lengths->elts, 0, r 2769 http/ngx_http_upstream.c ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2778 http/ngx_http_upstream.c ngx_http_upstream_dummy_handler(ngx_http_request_t *r, ngx_http_upstream_t *u) r 2780 http/ngx_http_upstream.c ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2786 http/ngx_http_upstream.c ngx_http_upstream_next(ngx_http_request_t *r, ngx_http_upstream_t *u, r 2791 http/ngx_http_upstream.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2809 http/ngx_http_upstream.c ngx_log_error(NGX_LOG_ERR, r->connection->log, NGX_ETIMEDOUT, r 2841 http/ngx_http_upstream.c if (r->connection->error) { r 2842 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, r 2859 http/ngx_http_upstream.c rc = u->reinit_request(r); r 2863 http/ngx_http_upstream.c rc = ngx_http_upstream_cache_send(r, u); r 2866 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, rc); r 2871 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, status); r 2877 http/ngx_http_upstream.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2900 http/ngx_http_upstream.c ngx_http_upstream_connect(r, u); r 2907 http/ngx_http_upstream.c ngx_http_request_t *r = data; r 2911 http/ngx_http_upstream.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2912 http/ngx_http_upstream.c "cleanup http upstream request: \"%V\"", &r->uri); r 2914 http/ngx_http_upstream.c u = r->upstream; r 2921 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(r, u, NGX_DONE); r 2926 http/ngx_http_upstream.c ngx_http_upstream_finalize_request(ngx_http_request_t *r, r 2931 http/ngx_http_upstream.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2954 http/ngx_http_upstream.c u->finalize_request(r, rc); r 2980 http/ngx_http_upstream.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2990 http/ngx_http_upstream.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 2997 http/ngx_http_upstream.c if (u->cacheable && r->cache) { r 3005 http/ngx_http_upstream.c r->cache->valid_sec = ngx_time() + valid; r 3006 http/ngx_http_upstream.c r->cache->error = rc; r 3010 http/ngx_http_upstream.c ngx_http_file_cache_free(r->cache, u->pipe->temp_file); r 3025 http/ngx_http_upstream.c r->connection->log->action = "sending to client"; r 3028 http/ngx_http_upstream.c rc = ngx_http_send_special(r, NGX_HTTP_LAST); r 3031 http/ngx_http_upstream.c ngx_http_finalize_request(r, rc); r 3036 http/ngx_http_upstream.c ngx_http_upstream_process_header_line(ngx_http_request_t *r, ngx_table_elt_t *h, r 3041 http/ngx_http_upstream.c ph = (ngx_table_elt_t **) ((char *) &r->upstream->headers_in + offset); r 3052 http/ngx_http_upstream.c ngx_http_upstream_ignore_header_line(ngx_http_request_t *r, ngx_table_elt_t *h, r 3060 http/ngx_http_upstream.c ngx_http_upstream_process_set_cookie(ngx_http_request_t *r, ngx_table_elt_t *h, r 3066 http/ngx_http_upstream.c u = r->upstream; r 3078 http/ngx_http_upstream.c ngx_http_upstream_process_cache_control(ngx_http_request_t *r, r 3085 http/ngx_http_upstream.c u = r->upstream; r 3089 http/ngx_http_upstream.c if (ngx_array_init(pa, r->pool, 2, sizeof(ngx_table_elt_t *)) != NGX_OK) r 3111 http/ngx_http_upstream.c if (r->cache == NULL) { r 3115 http/ngx_http_upstream.c if (r->cache->valid_sec != 0) { r 3157 http/ngx_http_upstream.c r->cache->valid_sec = ngx_time() + n; r 3166 http/ngx_http_upstream.c ngx_http_upstream_process_expires(ngx_http_request_t *r, ngx_table_elt_t *h, r 3171 http/ngx_http_upstream.c u = r->upstream; r 3182 http/ngx_http_upstream.c if (r->cache == NULL) { r 3186 http/ngx_http_upstream.c if (r->cache->valid_sec != 0) { r 3197 http/ngx_http_upstream.c r->cache->valid_sec = expires; r 3206 http/ngx_http_upstream.c ngx_http_upstream_process_accel_expires(ngx_http_request_t *r, r 3211 http/ngx_http_upstream.c u = r->upstream; r 3224 http/ngx_http_upstream.c if (r->cache == NULL) { r 3241 http/ngx_http_upstream.c r->cache->valid_sec = ngx_time() + n; r 3252 http/ngx_http_upstream.c r->cache->valid_sec = n; r 3262 http/ngx_http_upstream.c ngx_http_upstream_process_limit_rate(ngx_http_request_t *r, ngx_table_elt_t *h, r 3267 http/ngx_http_upstream.c r->upstream->headers_in.x_accel_limit_rate = h; r 3272 http/ngx_http_upstream.c r->limit_rate = (size_t) n; r 3280 http/ngx_http_upstream.c ngx_http_upstream_process_buffering(ngx_http_request_t *r, ngx_table_elt_t *h, r 3285 http/ngx_http_upstream.c if (r->upstream->conf->change_buffering) { r 3292 http/ngx_http_upstream.c r->upstream->buffering = 0; r 3301 http/ngx_http_upstream.c r->upstream->buffering = 1; r 3311 http/ngx_http_upstream.c ngx_http_upstream_process_charset(ngx_http_request_t *r, ngx_table_elt_t *h, r 3314 http/ngx_http_upstream.c r->headers_out.override_charset = &h->value; r 3321 http/ngx_http_upstream.c ngx_http_upstream_copy_header_line(ngx_http_request_t *r, ngx_table_elt_t *h, r 3326 http/ngx_http_upstream.c ho = ngx_list_push(&r->headers_out.headers); r 3334 http/ngx_http_upstream.c ph = (ngx_table_elt_t **) ((char *) &r->headers_out + offset); r 3343 http/ngx_http_upstream.c ngx_http_upstream_copy_multi_header_lines(ngx_http_request_t *r, r 3349 http/ngx_http_upstream.c pa = (ngx_array_t *) ((char *) &r->headers_out + offset); r 3352 http/ngx_http_upstream.c if (ngx_array_init(pa, r->pool, 2, sizeof(ngx_table_elt_t *)) != NGX_OK) r 3363 http/ngx_http_upstream.c ho = ngx_list_push(&r->headers_out.headers); r 3376 http/ngx_http_upstream.c ngx_http_upstream_copy_content_type(ngx_http_request_t *r, ngx_table_elt_t *h, r 3381 http/ngx_http_upstream.c r->headers_out.content_type_len = h->value.len; r 3382 http/ngx_http_upstream.c r->headers_out.content_type = h->value; r 3383 http/ngx_http_upstream.c r->headers_out.content_type_lowcase = NULL; r 3405 http/ngx_http_upstream.c r->headers_out.content_type_len = last - h->value.data; r 3417 http/ngx_http_upstream.c r->headers_out.charset.len = last - p; r 3418 http/ngx_http_upstream.c r->headers_out.charset.data = p; r 3428 http/ngx_http_upstream.c ngx_http_upstream_copy_content_length(ngx_http_request_t *r, ngx_table_elt_t *h, r 3433 http/ngx_http_upstream.c ho = ngx_list_push(&r->headers_out.headers); r 3440 http/ngx_http_upstream.c r->headers_out.content_length = ho; r 3441 http/ngx_http_upstream.c r->headers_out.content_length_n = ngx_atoof(h->value.data, h->value.len); r 3448 http/ngx_http_upstream.c ngx_http_upstream_copy_last_modified(ngx_http_request_t *r, ngx_table_elt_t *h, r 3453 http/ngx_http_upstream.c ho = ngx_list_push(&r->headers_out.headers); r 3460 http/ngx_http_upstream.c r->headers_out.last_modified = ho; r 3464 http/ngx_http_upstream.c if (r->upstream->cacheable) { r 3465 http/ngx_http_upstream.c r->headers_out.last_modified_time = ngx_http_parse_time(h->value.data, r 3476 http/ngx_http_upstream.c ngx_http_upstream_rewrite_location(ngx_http_request_t *r, ngx_table_elt_t *h, r 3482 http/ngx_http_upstream.c ho = ngx_list_push(&r->headers_out.headers); r 3489 http/ngx_http_upstream.c if (r->upstream->rewrite_redirect) { r 3490 http/ngx_http_upstream.c rc = r->upstream->rewrite_redirect(r, ho, 0); r 3497 http/ngx_http_upstream.c r->headers_out.location = ho; r 3499 http/ngx_http_upstream.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 3507 http/ngx_http_upstream.c r->headers_out.location = ho; r 3520 http/ngx_http_upstream.c ngx_http_upstream_rewrite_refresh(ngx_http_request_t *r, ngx_table_elt_t *h, r 3527 http/ngx_http_upstream.c ho = ngx_list_push(&r->headers_out.headers); r 3534 http/ngx_http_upstream.c if (r->upstream->rewrite_redirect) { r 3539 http/ngx_http_upstream.c rc = r->upstream->rewrite_redirect(r, ho, p + 4 - ho->value.data); r 3550 http/ngx_http_upstream.c r->headers_out.refresh = ho; r 3552 http/ngx_http_upstream.c ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 3559 http/ngx_http_upstream.c r->headers_out.refresh = ho; r 3566 http/ngx_http_upstream.c ngx_http_upstream_copy_allow_ranges(ngx_http_request_t *r, r 3573 http/ngx_http_upstream.c if (r->cached) { r 3574 http/ngx_http_upstream.c r->allow_ranges = 1; r 3581 http/ngx_http_upstream.c ho = ngx_list_push(&r->headers_out.headers); r 3588 http/ngx_http_upstream.c r->headers_out.accept_ranges = ho; r 3597 http/ngx_http_upstream.c ngx_http_upstream_copy_content_encoding(ngx_http_request_t *r, r 3602 http/ngx_http_upstream.c ho = ngx_list_push(&r->headers_out.headers); r 3609 http/ngx_http_upstream.c r->headers_out.content_encoding = ho; r 3637 http/ngx_http_upstream.c ngx_http_upstream_addr_variable(ngx_http_request_t *r, r 3649 http/ngx_http_upstream.c if (r->upstream_states == NULL || r->upstream_states->nelts == 0) { r 3655 http/ngx_http_upstream.c state = r->upstream_states->elts; r 3657 http/ngx_http_upstream.c for (i = 0; i < r->upstream_states->nelts; i++) { r 3666 http/ngx_http_upstream.c p = ngx_pnalloc(r->pool, len); r 3680 http/ngx_http_upstream.c if (++i == r->upstream_states->nelts) { r 3693 http/ngx_http_upstream.c if (++i == r->upstream_states->nelts) { r 3708 http/ngx_http_upstream.c ngx_http_upstream_status_variable(ngx_http_request_t *r, r 3720 http/ngx_http_upstream.c if (r->upstream_states == NULL || r->upstream_states->nelts == 0) { r 3725 http/ngx_http_upstream.c len = r->upstream_states->nelts * (3 + 2); r 3727 http/ngx_http_upstream.c p = ngx_pnalloc(r->pool, len); r 3735 http/ngx_http_upstream.c state = r->upstream_states->elts; r 3745 http/ngx_http_upstream.c if (++i == r->upstream_states->nelts) { r 3758 http/ngx_http_upstream.c if (++i == r->upstream_states->nelts) { r 3773 http/ngx_http_upstream.c ngx_http_upstream_response_time_variable(ngx_http_request_t *r, r 3786 http/ngx_http_upstream.c if (r->upstream_states == NULL || r->upstream_states->nelts == 0) { r 3791 http/ngx_http_upstream.c len = r->upstream_states->nelts * (NGX_TIME_T_LEN + 4 + 2); r 3793 http/ngx_http_upstream.c p = ngx_pnalloc(r->pool, len); r 3801 http/ngx_http_upstream.c state = r->upstream_states->elts; r 3814 http/ngx_http_upstream.c if (++i == r->upstream_states->nelts) { r 3827 http/ngx_http_upstream.c if (++i == r->upstream_states->nelts) { r 3842 http/ngx_http_upstream.c ngx_http_upstream_response_length_variable(ngx_http_request_t *r, r 3854 http/ngx_http_upstream.c if (r->upstream_states == NULL || r->upstream_states->nelts == 0) { r 3859 http/ngx_http_upstream.c len = r->upstream_states->nelts * (NGX_OFF_T_LEN + 2); r 3861 http/ngx_http_upstream.c p = ngx_pnalloc(r->pool, len); r 3869 http/ngx_http_upstream.c state = r->upstream_states->elts; r 3874 http/ngx_http_upstream.c if (++i == r->upstream_states->nelts) { r 3887 http/ngx_http_upstream.c if (++i == r->upstream_states->nelts) { r 3902 http/ngx_http_upstream.c ngx_http_upstream_header_variable(ngx_http_request_t *r, r 3905 http/ngx_http_upstream.c if (r->upstream == NULL) { r 3911 http/ngx_http_upstream.c &r->upstream->headers_in.headers.part, r 3919 http/ngx_http_upstream.c ngx_http_upstream_cache_status(ngx_http_request_t *r, r 3924 http/ngx_http_upstream.c if (r->upstream == NULL || r->upstream->cache_status == 0) { r 3929 http/ngx_http_upstream.c n = r->upstream->cache_status - 1; r 72 http/ngx_http_upstream.h typedef ngx_int_t (*ngx_http_upstream_init_peer_pt)(ngx_http_request_t *r, r 245 http/ngx_http_upstream.h typedef void (*ngx_http_upstream_handler_pt)(ngx_http_request_t *r, r 280 http/ngx_http_upstream.h ngx_int_t (*create_key)(ngx_http_request_t *r); r 282 http/ngx_http_upstream.h ngx_int_t (*create_request)(ngx_http_request_t *r); r 283 http/ngx_http_upstream.h ngx_int_t (*reinit_request)(ngx_http_request_t *r); r 284 http/ngx_http_upstream.h ngx_int_t (*process_header)(ngx_http_request_t *r); r 285 http/ngx_http_upstream.h void (*abort_request)(ngx_http_request_t *r); r 286 http/ngx_http_upstream.h void (*finalize_request)(ngx_http_request_t *r, r 288 http/ngx_http_upstream.h ngx_int_t (*rewrite_redirect)(ngx_http_request_t *r, r 322 http/ngx_http_upstream.h ngx_int_t ngx_http_upstream_header_variable(ngx_http_request_t *r, r 325 http/ngx_http_upstream.h ngx_int_t ngx_http_upstream_create(ngx_http_request_t *r); r 326 http/ngx_http_upstream.h void ngx_http_upstream_init(ngx_http_request_t *r); r 202 http/ngx_http_upstream_round_robin.c ngx_http_upstream_init_round_robin_peer(ngx_http_request_t *r, r 208 http/ngx_http_upstream_round_robin.c rrp = r->upstream->peer.data; r 211 http/ngx_http_upstream_round_robin.c rrp = ngx_palloc(r->pool, sizeof(ngx_http_upstream_rr_peer_data_t)); r 216 http/ngx_http_upstream_round_robin.c r->upstream->peer.data = rrp; r 230 http/ngx_http_upstream_round_robin.c rrp->tried = ngx_pcalloc(r->pool, n * sizeof(uintptr_t)); r 236 http/ngx_http_upstream_round_robin.c r->upstream->peer.get = ngx_http_upstream_get_round_robin_peer; r 237 http/ngx_http_upstream_round_robin.c r->upstream->peer.free = ngx_http_upstream_free_round_robin_peer; r 238 http/ngx_http_upstream_round_robin.c r->upstream->peer.tries = rrp->peers->number; r 240 http/ngx_http_upstream_round_robin.c r->upstream->peer.set_session = r 242 http/ngx_http_upstream_round_robin.c r->upstream->peer.save_session = r 251 http/ngx_http_upstream_round_robin.c ngx_http_upstream_create_round_robin_peer(ngx_http_request_t *r, r 261 http/ngx_http_upstream_round_robin.c rrp = r->upstream->peer.data; r 264 http/ngx_http_upstream_round_robin.c rrp = ngx_palloc(r->pool, sizeof(ngx_http_upstream_rr_peer_data_t)); r 269 http/ngx_http_upstream_round_robin.c r->upstream->peer.data = rrp; r 272 http/ngx_http_upstream_round_robin.c peers = ngx_pcalloc(r->pool, sizeof(ngx_http_upstream_rr_peers_t) r 297 http/ngx_http_upstream_round_robin.c p = ngx_pnalloc(r->pool, len); r 305 http/ngx_http_upstream_round_robin.c sin = ngx_pcalloc(r->pool, sizeof(struct sockaddr_in)); r 336 http/ngx_http_upstream_round_robin.c rrp->tried = ngx_pcalloc(r->pool, n * sizeof(uintptr_t)); r 342 http/ngx_http_upstream_round_robin.c r->upstream->peer.get = ngx_http_upstream_get_round_robin_peer; r 343 http/ngx_http_upstream_round_robin.c r->upstream->peer.free = ngx_http_upstream_free_round_robin_peer; r 344 http/ngx_http_upstream_round_robin.c r->upstream->peer.tries = rrp->peers->number; r 346 http/ngx_http_upstream_round_robin.c r->upstream->peer.set_session = r 348 http/ngx_http_upstream_round_robin.c r->upstream->peer.save_session = r 66 http/ngx_http_upstream_round_robin.h ngx_int_t ngx_http_upstream_init_round_robin_peer(ngx_http_request_t *r, r 68 http/ngx_http_upstream_round_robin.h ngx_int_t ngx_http_upstream_create_round_robin_peer(ngx_http_request_t *r, r 13 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_request(ngx_http_request_t *r, r 15 http/ngx_http_variables.c static void ngx_http_variable_request_set(ngx_http_request_t *r, r 17 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_request_get_size(ngx_http_request_t *r, r 19 http/ngx_http_variables.c static void ngx_http_variable_request_set_size(ngx_http_request_t *r, r 21 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_header(ngx_http_request_t *r, r 23 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_headers(ngx_http_request_t *r, r 26 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_unknown_header_in(ngx_http_request_t *r, r 28 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_unknown_header_out(ngx_http_request_t *r, r 30 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_request_line(ngx_http_request_t *r, r 32 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_cookie(ngx_http_request_t *r, r 34 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_argument(ngx_http_request_t *r, r 37 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_host(ngx_http_request_t *r, r 39 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_binary_remote_addr(ngx_http_request_t *r, r 41 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_remote_addr(ngx_http_request_t *r, r 43 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_remote_port(ngx_http_request_t *r, r 45 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_server_addr(ngx_http_request_t *r, r 47 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_server_port(ngx_http_request_t *r, r 49 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_scheme(ngx_http_request_t *r, r 51 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_is_args(ngx_http_request_t *r, r 53 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_document_root(ngx_http_request_t *r, r 55 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_realpath_root(ngx_http_request_t *r, r 57 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_request_filename(ngx_http_request_t *r, r 59 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_server_name(ngx_http_request_t *r, r 61 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_request_method(ngx_http_request_t *r, r 63 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_remote_user(ngx_http_request_t *r, r 65 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_body_bytes_sent(ngx_http_request_t *r, r 67 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_request_completion(ngx_http_request_t *r, r 69 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_request_body(ngx_http_request_t *r, r 71 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_request_body_file(ngx_http_request_t *r, r 74 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_sent_content_type(ngx_http_request_t *r, r 76 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_sent_content_length(ngx_http_request_t *r, r 78 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_sent_location(ngx_http_request_t *r, r 80 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_sent_last_modified(ngx_http_request_t *r, r 82 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_sent_connection(ngx_http_request_t *r, r 84 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_sent_keep_alive(ngx_http_request_t *r, r 86 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_sent_transfer_encoding(ngx_http_request_t *r, r 89 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_nginx_version(ngx_http_request_t *r, r 91 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_hostname(ngx_http_request_t *r, r 93 http/ngx_http_variables.c static ngx_int_t ngx_http_variable_pid(ngx_http_request_t *r, r 387 http/ngx_http_variables.c ngx_http_get_indexed_variable(ngx_http_request_t *r, ngx_uint_t index) r 392 http/ngx_http_variables.c cmcf = ngx_http_get_module_main_conf(r, ngx_http_core_module); r 395 http/ngx_http_variables.c ngx_log_error(NGX_LOG_ALERT, r->connection->log, 0, r 400 http/ngx_http_variables.c if (r->variables[index].not_found || r->variables[index].valid) { r 401 http/ngx_http_variables.c return &r->variables[index]; r 406 http/ngx_http_variables.c if (v[index].get_handler(r, &r->variables[index], v[index].data) r 410 http/ngx_http_variables.c r->variables[index].no_cacheable = 1; r 413 http/ngx_http_variables.c return &r->variables[index]; r 416 http/ngx_http_variables.c r->variables[index].valid = 0; r 417 http/ngx_http_variables.c r->variables[index].not_found = 1; r 424 http/ngx_http_variables.c ngx_http_get_flushed_variable(ngx_http_request_t *r, ngx_uint_t index) r 428 http/ngx_http_variables.c v = &r->variables[index]; r 439 http/ngx_http_variables.c return ngx_http_get_indexed_variable(r, index); r 444 http/ngx_http_variables.c ngx_http_get_variable(ngx_http_request_t *r, ngx_str_t *name, ngx_uint_t key) r 450 http/ngx_http_variables.c cmcf = ngx_http_get_module_main_conf(r, ngx_http_core_module); r 456 http/ngx_http_variables.c return ngx_http_get_flushed_variable(r, v->index); r 460 http/ngx_http_variables.c vv = ngx_palloc(r->pool, sizeof(ngx_http_variable_value_t)); r 462 http/ngx_http_variables.c if (vv && v->get_handler(r, vv, v->data) == NGX_OK) { r 470 http/ngx_http_variables.c vv = ngx_palloc(r->pool, sizeof(ngx_http_variable_value_t)); r 477 http/ngx_http_variables.c if (ngx_http_variable_unknown_header_in(r, vv, (uintptr_t) name) r 488 http/ngx_http_variables.c if (ngx_http_variable_unknown_header_out(r, vv, (uintptr_t) name) r 499 http/ngx_http_variables.c if (ngx_http_upstream_header_variable(r, vv, (uintptr_t) name) r 510 http/ngx_http_variables.c if (ngx_http_variable_cookie(r, vv, (uintptr_t) name) == NGX_OK) { r 519 http/ngx_http_variables.c if (ngx_http_variable_argument(r, vv, (uintptr_t) name) == NGX_OK) { r 533 http/ngx_http_variables.c ngx_http_variable_request(ngx_http_request_t *r, ngx_http_variable_value_t *v, r 538 http/ngx_http_variables.c s = (ngx_str_t *) ((char *) r + data); r 556 http/ngx_http_variables.c ngx_http_variable_request_set(ngx_http_request_t *r, r 561 http/ngx_http_variables.c s = (ngx_str_t *) ((char *) r + data); r 569 http/ngx_http_variables.c ngx_http_variable_request_get_size(ngx_http_request_t *r, r 574 http/ngx_http_variables.c sp = (size_t *) ((char *) r + data); r 576 http/ngx_http_variables.c v->data = ngx_pnalloc(r->pool, NGX_SIZE_T_LEN); r 591 http/ngx_http_variables.c ngx_http_variable_request_set_size(ngx_http_request_t *r, r 603 http/ngx_http_variables.c ngx_log_error(NGX_LOG_ERR, r->connection->log, 0, r 608 http/ngx_http_variables.c sp = (ssize_t *) ((char *) r + data); r 617 http/ngx_http_variables.c ngx_http_variable_header(ngx_http_request_t *r, ngx_http_variable_value_t *v, r 622 http/ngx_http_variables.c h = *(ngx_table_elt_t **) ((char *) r + data); r 640 http/ngx_http_variables.c ngx_http_variable_headers(ngx_http_request_t *r, ngx_http_variable_value_t *v, r 649 http/ngx_http_variables.c a = (ngx_array_t *) ((char *) r + data); r 677 http/ngx_http_variables.c p = ngx_pnalloc(r->pool, len); r 700 http/ngx_http_variables.c ngx_http_variable_unknown_header_in(ngx_http_request_t *r, r 704 http/ngx_http_variables.c &r->headers_in.headers.part, r 710 http/ngx_http_variables.c ngx_http_variable_unknown_header_out(ngx_http_request_t *r, r 714 http/ngx_http_variables.c &r->headers_out.headers.part, r 774 http/ngx_http_variables.c ngx_http_variable_request_line(ngx_http_request_t *r, r 779 http/ngx_http_variables.c s = r->request_line.data; r 782 http/ngx_http_variables.c s = r->request_start; r 789 http/ngx_http_variables.c for (p = s; p < r->header_in->last; p++) { r 795 http/ngx_http_variables.c r->request_line.len = p - s; r 796 http/ngx_http_variables.c r->request_line.data = s; r 799 http/ngx_http_variables.c v->len = r->request_line.len; r 810 http/ngx_http_variables.c ngx_http_variable_cookie(ngx_http_request_t *r, ngx_http_variable_value_t *v, r 820 http/ngx_http_variables.c if (ngx_http_parse_multi_header_lines(&r->headers_in.cookies, &s, &cookie) r 838 http/ngx_http_variables.c ngx_http_variable_argument(ngx_http_request_t *r, ngx_http_variable_value_t *v, r 850 http/ngx_http_variables.c if (ngx_http_arg(r, arg, len, &value) != NGX_OK) { r 866 http/ngx_http_variables.c ngx_http_variable_host(ngx_http_request_t *r, ngx_http_variable_value_t *v, r 871 http/ngx_http_variables.c if (r->headers_in.server.len) { r 872 http/ngx_http_variables.c v->len = r->headers_in.server.len; r 873 http/ngx_http_variables.c v->data = r->headers_in.server.data; r 876 http/ngx_http_variables.c cscf = ngx_http_get_module_srv_conf(r, ngx_http_core_module); r 891 http/ngx_http_variables.c ngx_http_variable_binary_remote_addr(ngx_http_request_t *r, r 899 http/ngx_http_variables.c switch (r->connection->sockaddr->sa_family) { r 903 http/ngx_http_variables.c sin6 = (struct sockaddr_in6 *) r->connection->sockaddr; r 915 http/ngx_http_variables.c sin = (struct sockaddr_in *) r->connection->sockaddr; r 931 http/ngx_http_variables.c ngx_http_variable_remote_addr(ngx_http_request_t *r, r 934 http/ngx_http_variables.c v->len = r->connection->addr_text.len; r 938 http/ngx_http_variables.c v->data = r->connection->addr_text.data; r 945 http/ngx_http_variables.c ngx_http_variable_remote_port(ngx_http_request_t *r, r 959 http/ngx_http_variables.c v->data = ngx_pnalloc(r->pool, sizeof("65535") - 1); r 964 http/ngx_http_variables.c switch (r->connection->sockaddr->sa_family) { r 968 http/ngx_http_variables.c sin6 = (struct sockaddr_in6 *) r->connection->sockaddr; r 974 http/ngx_http_variables.c sin = (struct sockaddr_in *) r->connection->sockaddr; r 988 http/ngx_http_variables.c ngx_http_variable_server_addr(ngx_http_request_t *r, r 997 http/ngx_http_variables.c if (ngx_connection_local_sockaddr(r->connection, &s, 0) != NGX_OK) { r 1001 http/ngx_http_variables.c s.data = ngx_pnalloc(r->pool, s.len); r 1019 http/ngx_http_variables.c ngx_http_variable_server_port(ngx_http_request_t *r, r 1033 http/ngx_http_variables.c if (ngx_connection_local_sockaddr(r->connection, NULL, 0) != NGX_OK) { r 1037 http/ngx_http_variables.c v->data = ngx_pnalloc(r->pool, sizeof("65535") - 1); r 1042 http/ngx_http_variables.c switch (r->connection->local_sockaddr->sa_family) { r 1046 http/ngx_http_variables.c sin6 = (struct sockaddr_in6 *) r->connection->local_sockaddr; r 1052 http/ngx_http_variables.c sin = (struct sockaddr_in *) r->connection->local_sockaddr; r 1066 http/ngx_http_variables.c ngx_http_variable_scheme(ngx_http_request_t *r, r 1071 http/ngx_http_variables.c if (r->connection->ssl) { r 1094 http/ngx_http_variables.c ngx_http_variable_is_args(ngx_http_request_t *r, r 1101 http/ngx_http_variables.c if (r->args.len == 0) { r 1115 http/ngx_http_variables.c ngx_http_variable_document_root(ngx_http_request_t *r, r 1121 http/ngx_http_variables.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 1131 http/ngx_http_variables.c if (ngx_http_script_run(r, &path, clcf->root_lengths->elts, 0, r 1154 http/ngx_http_variables.c ngx_http_variable_realpath_root(ngx_http_request_t *r, r 1162 http/ngx_http_variables.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 1168 http/ngx_http_variables.c if (ngx_http_script_run(r, &path, clcf->root_lengths->elts, 1, r 1183 http/ngx_http_variables.c ngx_log_error(NGX_LOG_CRIT, r->connection->log, ngx_errno, r 1190 http/ngx_http_variables.c v->data = ngx_pnalloc(r->pool, len); r 1207 http/ngx_http_variables.c ngx_http_variable_request_filename(ngx_http_request_t *r, r 1213 http/ngx_http_variables.c if (ngx_http_map_uri_to_path(r, &path, &root, 0) == NULL) { r 1230 http/ngx_http_variables.c ngx_http_variable_server_name(ngx_http_request_t *r, r 1235 http/ngx_http_variables.c cscf = ngx_http_get_module_srv_conf(r, ngx_http_core_module); r 1248 http/ngx_http_variables.c ngx_http_variable_request_method(ngx_http_request_t *r, r 1251 http/ngx_http_variables.c if (r->main->method_name.data) { r 1252 http/ngx_http_variables.c v->len = r->main->method_name.len; r 1256 http/ngx_http_variables.c v->data = r->main->method_name.data; r 1267 http/ngx_http_variables.c ngx_http_variable_remote_user(ngx_http_request_t *r, r 1272 http/ngx_http_variables.c rc = ngx_http_auth_basic_user(r); r 1283 http/ngx_http_variables.c v->len = r->headers_in.user.len; r 1287 http/ngx_http_variables.c v->data = r->headers_in.user.data; r 1294 http/ngx_http_variables.c ngx_http_variable_body_bytes_sent(ngx_http_request_t *r, r 1300 http/ngx_http_variables.c sent = r->connection->sent - r->header_size; r 1306 http/ngx_http_variables.c p = ngx_pnalloc(r->pool, NGX_OFF_T_LEN); r 1322 http/ngx_http_variables.c ngx_http_variable_sent_content_type(ngx_http_request_t *r, r 1325 http/ngx_http_variables.c if (r->headers_out.content_type.len) { r 1326 http/ngx_http_variables.c v->len = r->headers_out.content_type.len; r 1330 http/ngx_http_variables.c v->data = r->headers_out.content_type.data; r 1341 http/ngx_http_variables.c ngx_http_variable_sent_content_length(ngx_http_request_t *r, r 1346 http/ngx_http_variables.c if (r->headers_out.content_length) { r 1347 http/ngx_http_variables.c v->len = r->headers_out.content_length->value.len; r 1351 http/ngx_http_variables.c v->data = r->headers_out.content_length->value.data; r 1356 http/ngx_http_variables.c if (r->headers_out.content_length_n >= 0) { r 1357 http/ngx_http_variables.c p = ngx_pnalloc(r->pool, NGX_OFF_T_LEN); r 1362 http/ngx_http_variables.c v->len = ngx_sprintf(p, "%O", r->headers_out.content_length_n) - p; r 1378 http/ngx_http_variables.c ngx_http_variable_sent_location(ngx_http_request_t *r, r 1383 http/ngx_http_variables.c if (r->headers_out.location) { r 1384 http/ngx_http_variables.c v->len = r->headers_out.location->value.len; r 1388 http/ngx_http_variables.c v->data = r->headers_out.location->value.data; r 1396 http/ngx_http_variables.c &r->headers_out.headers.part, r 1402 http/ngx_http_variables.c ngx_http_variable_sent_last_modified(ngx_http_request_t *r, r 1407 http/ngx_http_variables.c if (r->headers_out.last_modified) { r 1408 http/ngx_http_variables.c v->len = r->headers_out.last_modified->value.len; r 1412 http/ngx_http_variables.c v->data = r->headers_out.last_modified->value.data; r 1417 http/ngx_http_variables.c if (r->headers_out.last_modified_time >= 0) { r 1418 http/ngx_http_variables.c p = ngx_pnalloc(r->pool, r 1424 http/ngx_http_variables.c v->len = ngx_http_time(p, r->headers_out.last_modified_time) - p; r 1440 http/ngx_http_variables.c ngx_http_variable_sent_connection(ngx_http_request_t *r, r 1446 http/ngx_http_variables.c if (r->keepalive) { r 1466 http/ngx_http_variables.c ngx_http_variable_sent_keep_alive(ngx_http_request_t *r, r 1472 http/ngx_http_variables.c if (r->keepalive) { r 1473 http/ngx_http_variables.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 1477 http/ngx_http_variables.c p = ngx_pnalloc(r->pool, sizeof("timeout=") - 1 + NGX_TIME_T_LEN); r 1499 http/ngx_http_variables.c ngx_http_variable_sent_transfer_encoding(ngx_http_request_t *r, r 1502 http/ngx_http_variables.c if (r->chunked) { r 1518 http/ngx_http_variables.c ngx_http_variable_request_completion(ngx_http_request_t *r, r 1521 http/ngx_http_variables.c if (r->request_complete) { r 1542 http/ngx_http_variables.c ngx_http_variable_request_body(ngx_http_request_t *r, r 1550 http/ngx_http_variables.c if (r->request_body == NULL r 1551 http/ngx_http_variables.c || r->request_body->bufs == NULL r 1552 http/ngx_http_variables.c || r->request_body->temp_file) r 1559 http/ngx_http_variables.c cl = r->request_body->bufs; r 1575 http/ngx_http_variables.c p = ngx_pnalloc(r->pool, len); r 1595 http/ngx_http_variables.c ngx_http_variable_request_body_file(ngx_http_request_t *r, r 1598 http/ngx_http_variables.c if (r->request_body == NULL || r->request_body->temp_file == NULL) { r 1604 http/ngx_http_variables.c v->len = r->request_body->temp_file->file.name.len; r 1608 http/ngx_http_variables.c v->data = r->request_body->temp_file->file.name.data; r 1615 http/ngx_http_variables.c ngx_http_variable_nginx_version(ngx_http_request_t *r, r 1629 http/ngx_http_variables.c ngx_http_variable_hostname(ngx_http_request_t *r, r 1643 http/ngx_http_variables.c ngx_http_variable_pid(ngx_http_request_t *r, r 1648 http/ngx_http_variables.c p = ngx_pnalloc(r->pool, NGX_INT64_LEN); r 1664 http/ngx_http_variables.c ngx_http_map_find(ngx_http_request_t *r, ngx_http_map_t *map, ngx_uint_t key, r 1685 http/ngx_http_variables.c n = ngx_http_regex_exec(r, reg[i].regex, match); r 1710 http/ngx_http_variables.c ngx_http_variable_not_found(ngx_http_request_t *r, ngx_http_variable_value_t *v, r 1792 http/ngx_http_variables.c ngx_http_regex_exec(ngx_http_request_t *r, ngx_http_regex_t *re, ngx_str_t *s) r 1799 http/ngx_http_variables.c cmcf = ngx_http_get_module_main_conf(r, ngx_http_core_module); r 1804 http/ngx_http_variables.c if (r->captures == NULL) { r 1805 http/ngx_http_variables.c r->captures = ngx_palloc(r->pool, len * sizeof(int)); r 1806 http/ngx_http_variables.c if (r->captures == NULL) { r 1815 http/ngx_http_variables.c rc = ngx_regex_exec(re->regex, s, r->captures, len); r 1822 http/ngx_http_variables.c ngx_log_error(NGX_LOG_ALERT, r->connection->log, 0, r 1832 http/ngx_http_variables.c vv = &r->variables[index]; r 1834 http/ngx_http_variables.c vv->len = r->captures[n + 1] - r->captures[n]; r 1838 http/ngx_http_variables.c vv->data = &s->data[r->captures[n]]; r 1846 http/ngx_http_variables.c ngx_log_debug3(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, r 1853 http/ngx_http_variables.c r->ncaptures = rc * 2; r 1854 http/ngx_http_variables.c r->captures_data = s->data; r 22 http/ngx_http_variables.h typedef void (*ngx_http_set_variable_pt) (ngx_http_request_t *r, r 24 http/ngx_http_variables.h typedef ngx_int_t (*ngx_http_get_variable_pt) (ngx_http_request_t *r, r 47 http/ngx_http_variables.h ngx_http_variable_value_t *ngx_http_get_indexed_variable(ngx_http_request_t *r, r 49 http/ngx_http_variables.h ngx_http_variable_value_t *ngx_http_get_flushed_variable(ngx_http_request_t *r, r 52 http/ngx_http_variables.h ngx_http_variable_value_t *ngx_http_get_variable(ngx_http_request_t *r, r 59 http/ngx_http_variables.h #define ngx_http_clear_variable(r, index) r->variables0[index].text.data = NULL; r 87 http/ngx_http_variables.h ngx_int_t ngx_http_regex_exec(ngx_http_request_t *r, ngx_http_regex_t *re, r 102 http/ngx_http_variables.h void *ngx_http_map_find(ngx_http_request_t *r, ngx_http_map_t *map, r 47 http/ngx_http_write_filter_module.c ngx_http_write_filter(ngx_http_request_t *r, ngx_chain_t *in) r 56 http/ngx_http_write_filter_module.c c = r->connection; r 65 http/ngx_http_write_filter_module.c ll = &r->out; r 69 http/ngx_http_write_filter_module.c for (cl = r->out; cl; cl = cl->next) { r 115 http/ngx_http_write_filter_module.c cl = ngx_alloc_chain_link(r->pool); r 169 http/ngx_http_write_filter_module.c clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); r 188 http/ngx_http_write_filter_module.c r->out = NULL; r 196 http/ngx_http_write_filter_module.c r->out = r->out->next; r 197 http/ngx_http_write_filter_module.c } while (r->out); r 212 http/ngx_http_write_filter_module.c if (r->limit_rate) { r 213 http/ngx_http_write_filter_module.c limit = r->limit_rate * (ngx_time() - r->start_sec + 1) r 219 http/ngx_http_write_filter_module.c (ngx_msec_t) (- limit * 1000 / r->limit_rate + 1)); r 238 http/ngx_http_write_filter_module.c chain = c->send_chain(c, r->out, limit); r 248 http/ngx_http_write_filter_module.c if (r->limit_rate) { r 265 http/ngx_http_write_filter_module.c delay = (ngx_msec_t) ((nsent - sent) * 1000 / r->limit_rate + 1); r 281 http/ngx_http_write_filter_module.c for (cl = r->out; cl && cl != chain; /* void */) { r 284 http/ngx_http_write_filter_module.c ngx_free_chain(r->pool, ln); r 287 http/ngx_http_write_filter_module.c r->out = chain; r 296 http/ngx_http_write_filter_module.c if ((c->buffered & NGX_LOWLEVEL_BUFFERED) && r->postponed == NULL) { r 179 os/unix/ngx_files.h #define ngx_realpath(p, r) realpath((char *) p, (char *) r)