Mercurial > hg > nginx
comparison src/core/ngx_resolver.c @ 1967:4a4b15c9c474
use correct ngx_sprintf() formats
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Thu, 10 Apr 2008 17:27:07 +0000 |
parents | fb02f63eafd6 |
children | 41fd9a2e0755 |
comparison
equal
deleted
inserted
replaced
1966:fb02f63eafd6 | 1967:4a4b15c9c474 |
---|---|
951 flags = (query->flags_hi << 8) + query->flags_lo; | 951 flags = (query->flags_hi << 8) + query->flags_lo; |
952 nqs = (query->nqs_hi << 8) + query->nqs_lo; | 952 nqs = (query->nqs_hi << 8) + query->nqs_lo; |
953 nan = (query->nan_hi << 8) + query->nan_lo; | 953 nan = (query->nan_hi << 8) + query->nan_lo; |
954 | 954 |
955 ngx_log_debug6(NGX_LOG_DEBUG_CORE, r->log, 0, | 955 ngx_log_debug6(NGX_LOG_DEBUG_CORE, r->log, 0, |
956 "resolver DNS response %d fl:%04Xud %d/%d/%d/%d", | 956 "resolver DNS response %ui fl:%04Xui %ui/%ui/%ui/%ui", |
957 ident, flags, nqs, nan, | 957 ident, flags, nqs, nan, |
958 (query->nns_hi << 8) + query->nns_lo, | 958 (query->nns_hi << 8) + query->nns_lo, |
959 (query->nar_hi << 8) + query->nar_lo); | 959 (query->nar_hi << 8) + query->nar_lo); |
960 | 960 |
961 if (!(flags & 0x8000)) { | 961 if (!(flags & 0x8000)) { |
962 ngx_log_error(r->log_level, r->log, 0, | 962 ngx_log_error(r->log_level, r->log, 0, |
963 "invalid DNS response %d fl:%04Xud", ident, flags); | 963 "invalid DNS response %ui fl:%04Xui", ident, flags); |
964 return; | 964 return; |
965 } | 965 } |
966 | 966 |
967 code = flags & 0x7f; | 967 code = flags & 0x7f; |
968 | 968 |
969 if (code == NGX_RESOLVE_FORMERR || code > NGX_RESOLVE_REFUSED) { | 969 if (code == NGX_RESOLVE_FORMERR || code > NGX_RESOLVE_REFUSED) { |
970 ngx_log_error(r->log_level, r->log, 0, | 970 ngx_log_error(r->log_level, r->log, 0, |
971 "DNS error (%d: %s), query id:%d", | 971 "DNS error (%ui: %s), query id:%ui", |
972 code, ngx_resolver_strerror(code), ident); | 972 code, ngx_resolver_strerror(code), ident); |
973 return; | 973 return; |
974 } | 974 } |
975 | 975 |
976 if (nqs != 1) { | 976 if (nqs != 1) { |
1008 | 1008 |
1009 qtype = (qs->type_hi << 8) + qs->type_lo; | 1009 qtype = (qs->type_hi << 8) + qs->type_lo; |
1010 qclass = (qs->class_hi << 8) + qs->class_lo; | 1010 qclass = (qs->class_hi << 8) + qs->class_lo; |
1011 | 1011 |
1012 ngx_log_debug2(NGX_LOG_DEBUG_CORE, r->log, 0, | 1012 ngx_log_debug2(NGX_LOG_DEBUG_CORE, r->log, 0, |
1013 "resolver DNS response qt:%d cl:%d", qtype, qclass); | 1013 "resolver DNS response qt:%ui cl:%ui", qtype, qclass); |
1014 | 1014 |
1015 if (qclass != 1) { | 1015 if (qclass != 1) { |
1016 ngx_log_error(r->log_level, r->log, 0, | 1016 ngx_log_error(r->log_level, r->log, 0, |
1017 "unknown query class %d in DNS response", qclass); | 1017 "unknown query class %ui in DNS response", qclass); |
1018 return; | 1018 return; |
1019 } | 1019 } |
1020 | 1020 |
1021 switch (qtype) { | 1021 switch (qtype) { |
1022 | 1022 |
1033 | 1033 |
1034 break; | 1034 break; |
1035 | 1035 |
1036 default: | 1036 default: |
1037 ngx_log_error(r->log_level, r->log, 0, | 1037 ngx_log_error(r->log_level, r->log, 0, |
1038 "unknown query type %d in DNS response", qtype); | 1038 "unknown query type %ui in DNS response", qtype); |
1039 return; | 1039 return; |
1040 } | 1040 } |
1041 | 1041 |
1042 return; | 1042 return; |
1043 | 1043 |
1088 | 1088 |
1089 qident = (rn->query[0] << 8) + rn->query[1]; | 1089 qident = (rn->query[0] << 8) + rn->query[1]; |
1090 | 1090 |
1091 if (ident != qident) { | 1091 if (ident != qident) { |
1092 ngx_log_error(r->log_level, r->log, 0, | 1092 ngx_log_error(r->log_level, r->log, 0, |
1093 "wrong ident %d response for %V, expect %d", | 1093 "wrong ident %ui response for %V, expect %ui", |
1094 ident, &name, qident); | 1094 ident, &name, qident); |
1095 goto failed; | 1095 goto failed; |
1096 } | 1096 } |
1097 | 1097 |
1098 if (code == 0 && nan == 0) { | 1098 if (code == 0 && nan == 0) { |
1324 | 1324 |
1325 return; | 1325 return; |
1326 } | 1326 } |
1327 | 1327 |
1328 ngx_log_error(r->log_level, r->log, 0, | 1328 ngx_log_error(r->log_level, r->log, 0, |
1329 "no A or CNAME types in DNS responses, unknown query type: %d", | 1329 "no A or CNAME types in DNS responses, unknown query type: %ui", |
1330 qtype); | 1330 qtype); |
1331 return; | 1331 return; |
1332 | 1332 |
1333 short_response: | 1333 short_response: |
1334 | 1334 |
1335 err = "short dns response"; | 1335 err = "short dns response"; |
1401 | 1401 |
1402 qident = (rn->query[0] << 8) + rn->query[1]; | 1402 qident = (rn->query[0] << 8) + rn->query[1]; |
1403 | 1403 |
1404 if (ident != qident) { | 1404 if (ident != qident) { |
1405 ngx_log_error(r->log_level, r->log, 0, | 1405 ngx_log_error(r->log_level, r->log, 0, |
1406 "wrong ident %d response for %ud.%ud.%ud.%ud, expect %d", | 1406 "wrong ident %ui response for %ud.%ud.%ud.%ud, expect %ui", |
1407 ident, (addr >> 24) & 0xff, (addr >> 16) & 0xff, | 1407 ident, (addr >> 24) & 0xff, (addr >> 16) & 0xff, |
1408 (addr >> 8) & 0xff, addr & 0xff, qident); | 1408 (addr >> 8) & 0xff, addr & 0xff, qident); |
1409 goto failed; | 1409 goto failed; |
1410 } | 1410 } |
1411 | 1411 |
1412 if (code == 0 && nan == 0) { | 1412 if (code == 0 && nan == 0) { |
1413 code = 3; /* NXDOMAIN */ | 1413 code = 3; /* NXDOMAIN */ |
1454 qtype = (an->type_hi << 8) + an->type_lo; | 1454 qtype = (an->type_hi << 8) + an->type_lo; |
1455 qclass = (an->class_hi << 8) + an->class_lo; | 1455 qclass = (an->class_hi << 8) + an->class_lo; |
1456 len = (an->len_hi << 8) + an->len_lo; | 1456 len = (an->len_hi << 8) + an->len_lo; |
1457 | 1457 |
1458 ngx_log_debug3(NGX_LOG_DEBUG_CORE, r->log, 0, | 1458 ngx_log_debug3(NGX_LOG_DEBUG_CORE, r->log, 0, |
1459 "resolver qt:%d cl:%d len:%uz", qtype, qclass, len); | 1459 "resolver qt:%ui cl:%ui len:%uz", qtype, qclass, len); |
1460 | 1460 |
1461 i += 2 + sizeof(ngx_resolver_an_t); | 1461 i += 2 + sizeof(ngx_resolver_an_t); |
1462 | 1462 |
1463 if (i + len > (ngx_uint_t) n) { | 1463 if (i + len > (ngx_uint_t) n) { |
1464 goto short_response; | 1464 goto short_response; |