Mercurial > hg > nginx-ranges
comparison src/core/ngx_resolver.c @ 556:40c366b3535c NGINX_0_8_24
nginx 0.8.24
*) Bugfix: nginx always added "Content-Encoding: gzip" response header
line in 304 responses sent by ngx_http_gzip_static_module.
*) Bugfix: nginx could not be built without the --with-debug option;
the bug had appeared in 0.8.23.
*) Bugfix: the "unix:" parameter of the "set_real_ip_from" directive
inherited incorrectly from previous level.
*) Bugfix: in resolving empty name.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Wed, 11 Nov 2009 00:00:00 +0300 |
parents | 2b9e388c61f1 |
children | 25255878df91 |
comparison
equal
deleted
inserted
replaced
555:48b3f4b6bc38 | 556:40c366b3535c |
---|---|
1717 | 1717 |
1718 static ngx_int_t | 1718 static ngx_int_t |
1719 ngx_resolver_create_name_query(ngx_resolver_node_t *rn, ngx_resolver_ctx_t *ctx) | 1719 ngx_resolver_create_name_query(ngx_resolver_node_t *rn, ngx_resolver_ctx_t *ctx) |
1720 { | 1720 { |
1721 u_char *p, *s; | 1721 u_char *p, *s; |
1722 size_t len; | 1722 size_t len, nlen; |
1723 ngx_uint_t ident; | 1723 ngx_uint_t ident; |
1724 ngx_resolver_qs_t *qs; | 1724 ngx_resolver_qs_t *qs; |
1725 ngx_resolver_query_t *query; | 1725 ngx_resolver_query_t *query; |
1726 | 1726 |
1727 len = sizeof(ngx_resolver_query_t) | 1727 nlen = ctx->name.len ? (1 + ctx->name.len + 1) : 1; |
1728 + 1 + ctx->name.len + 1 + sizeof(ngx_resolver_qs_t); | 1728 |
1729 | 1729 len = sizeof(ngx_resolver_query_t) + nlen + sizeof(ngx_resolver_qs_t); |
1730 p = ngx_resolver_calloc(ctx->resolver, len); | 1730 |
1731 p = ngx_resolver_alloc(ctx->resolver, len); | |
1731 if (p == NULL) { | 1732 if (p == NULL) { |
1732 return NGX_ERROR; | 1733 return NGX_ERROR; |
1733 } | 1734 } |
1734 | 1735 |
1735 rn->qlen = (u_short) len; | 1736 rn->qlen = (u_short) len; |
1752 query->nqs_hi = 0; query->nqs_lo = 1; | 1753 query->nqs_hi = 0; query->nqs_lo = 1; |
1753 query->nan_hi = 0; query->nan_lo = 0; | 1754 query->nan_hi = 0; query->nan_lo = 0; |
1754 query->nns_hi = 0; query->nns_lo = 0; | 1755 query->nns_hi = 0; query->nns_lo = 0; |
1755 query->nar_hi = 0; query->nar_lo = 0; | 1756 query->nar_hi = 0; query->nar_lo = 0; |
1756 | 1757 |
1757 p += sizeof(ngx_resolver_query_t) | 1758 p += sizeof(ngx_resolver_query_t) + nlen; |
1758 + ctx->name.len ? (1 + ctx->name.len + 1) : 1; | |
1759 | 1759 |
1760 qs = (ngx_resolver_qs_t *) p; | 1760 qs = (ngx_resolver_qs_t *) p; |
1761 | 1761 |
1762 /* query type */ | 1762 /* query type */ |
1763 qs->type_hi = 0; qs->type_lo = (u_char) ctx->type; | 1763 qs->type_hi = 0; qs->type_lo = (u_char) ctx->type; |
1807 | 1807 |
1808 len = sizeof(ngx_resolver_query_t) | 1808 len = sizeof(ngx_resolver_query_t) |
1809 + sizeof(".255.255.255.255.in-addr.arpa.") - 1 | 1809 + sizeof(".255.255.255.255.in-addr.arpa.") - 1 |
1810 + sizeof(ngx_resolver_qs_t); | 1810 + sizeof(ngx_resolver_qs_t); |
1811 | 1811 |
1812 p = ngx_resolver_calloc(ctx->resolver, len); | 1812 p = ngx_resolver_alloc(ctx->resolver, len); |
1813 if (p == NULL) { | 1813 if (p == NULL) { |
1814 return NGX_ERROR; | 1814 return NGX_ERROR; |
1815 } | 1815 } |
1816 | 1816 |
1817 rn->query = p; | 1817 rn->query = p; |