comparison src/core/ngx_resolver.c @ 4671:af9342747669

Support for IPv6 literals and an optional port in resolver.
author Ruslan Ermilov <ru@nginx.com>
date Mon, 04 Jun 2012 14:23:27 +0000
parents 134ccdf44647
children 84d8e60b65f0
comparison
equal deleted inserted replaced
4670:c070fa19511e 4671:af9342747669
169 continue; 169 continue;
170 } 170 }
171 171
172 ngx_memzero(&u, sizeof(ngx_url_t)); 172 ngx_memzero(&u, sizeof(ngx_url_t));
173 173
174 u.host = names[i]; 174 u.url = names[i];
175 u.port = 53; 175 u.default_port = 53;
176 176
177 if (ngx_inet_resolve_host(cf->pool, &u) != NGX_OK) { 177 if (ngx_parse_url(cf->pool, &u) != NGX_OK) {
178 if (u.err) { 178 if (u.err) {
179 ngx_conf_log_error(NGX_LOG_EMERG, cf, 0, 179 ngx_conf_log_error(NGX_LOG_EMERG, cf, 0,
180 "%s in resolver \"%V\"", 180 "%s in resolver \"%V\"",
181 u.err, &u.host); 181 u.err, &u.url);
182 } 182 }
183 183
184 return NULL; 184 return NULL;
185 } 185 }
186 186
2187 ngx_int_t event; 2187 ngx_int_t event;
2188 ngx_event_t *rev, *wev; 2188 ngx_event_t *rev, *wev;
2189 ngx_socket_t s; 2189 ngx_socket_t s;
2190 ngx_connection_t *c; 2190 ngx_connection_t *c;
2191 2191
2192 s = ngx_socket(AF_INET, SOCK_DGRAM, 0); 2192 s = ngx_socket(uc->sockaddr->sa_family, SOCK_DGRAM, 0);
2193 2193
2194 ngx_log_debug1(NGX_LOG_DEBUG_EVENT, &uc->log, 0, "UDP socket %d", s); 2194 ngx_log_debug1(NGX_LOG_DEBUG_EVENT, &uc->log, 0, "UDP socket %d", s);
2195 2195
2196 if (s == -1) { 2196 if (s == -1) {
2197 ngx_log_error(NGX_LOG_ALERT, &uc->log, ngx_socket_errno, 2197 ngx_log_error(NGX_LOG_ALERT, &uc->log, ngx_socket_errno,