diff options
author | Maxim Dounin <mdounin@mdounin.ru> | 2012-05-14 09:13:45 +0000 |
---|---|---|
committer | Maxim Dounin <mdounin@mdounin.ru> | 2012-05-14 09:13:45 +0000 |
commit | 7d863c0181064b08fa6b3816522551084fd91af5 (patch) | |
tree | 894636d6ad982e90eb061e8b3c62a905f1a7d70e /src/http/ngx_http_request.c | |
parent | 0e3b423dc6c6653d600f4bf1687f0653be04a830 (diff) | |
download | nginx-7d863c0181064b08fa6b3816522551084fd91af5.tar.gz nginx-7d863c0181064b08fa6b3816522551084fd91af5.zip |
Resolver: protection from duplicate responses.
If we already had CNAME in resolver node (i.e. rn->cnlen and rn->u.cname
set), and got additional response with A record, it resulted in rn->cnlen
set and rn->u.cname overwritten by rn->u.addr (or rn->u.addrs), causing
segmentation fault later in ngx_resolver_free_node() on an attempt to free
overwritten rn->u.cname. The opposite (i.e. CNAME got after A) might cause
similar problems as well.
Diffstat (limited to 'src/http/ngx_http_request.c')
0 files changed, 0 insertions, 0 deletions