Mercurial > hg > nginx-quic
comparison src/core/ngx_resolver.c @ 2486:8de5dc3e7001
use length of uncompressed name
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Fri, 30 Jan 2009 11:56:45 +0000 |
parents | cf3cd450049c |
children | 9b4dce95c744 |
comparison
equal
deleted
inserted
replaced
2485:51b1097dbb67 | 2486:8de5dc3e7001 |
---|---|
1514 | 1514 |
1515 if (i + len > (ngx_uint_t) n) { | 1515 if (i + len > (ngx_uint_t) n) { |
1516 goto short_response; | 1516 goto short_response; |
1517 } | 1517 } |
1518 | 1518 |
1519 len -= 2; | |
1520 | |
1521 if (ngx_resolver_copy(r, &name, buf, &buf[i], &buf[n]) != NGX_OK) { | 1519 if (ngx_resolver_copy(r, &name, buf, &buf[i], &buf[n]) != NGX_OK) { |
1522 return; | 1520 return; |
1523 } | 1521 } |
1524 | 1522 |
1525 ngx_log_debug1(NGX_LOG_DEBUG_CORE, r->log, 0, "resolver an:%V", &name); | 1523 ngx_log_debug1(NGX_LOG_DEBUG_CORE, r->log, 0, "resolver an:%V", &name); |
1526 | 1524 |
1527 if (len != (size_t) rn->nlen || ngx_strncmp(name.data, rn->name, len) != 0) | 1525 if (name.len != (size_t) rn->nlen |
1526 || ngx_strncmp(name.data, rn->name, name.len) != 0) | |
1528 { | 1527 { |
1529 if (rn->nlen) { | 1528 if (rn->nlen) { |
1530 ngx_resolver_free(r, rn->name); | 1529 ngx_resolver_free(r, rn->name); |
1531 } | 1530 } |
1532 | 1531 |
1533 rn->nlen = len; | 1532 rn->nlen = name.len; |
1534 rn->name = name.data; | 1533 rn->name = name.data; |
1535 | 1534 |
1536 name.data = ngx_resolver_dup(r, rn->name, len); | 1535 name.data = ngx_resolver_dup(r, rn->name, name.len); |
1537 if (name.data == NULL) { | 1536 if (name.data == NULL) { |
1538 goto failed; | 1537 goto failed; |
1539 } | 1538 } |
1540 } | 1539 } |
1541 | 1540 |