Vladimir Homutov
af18946d76
Core: extended ngx_sock_ntop() with socklen parameter.
...
On Linux, sockaddr length is required to process unix socket addresses properly
due to unnamed sockets (which don't have sun_path set at all) and abstract
namespace sockets.
2013-07-11 16:07:25 +04:00
Ruslan Ermilov
a2a229193a
Fixed "proxy_pass" with IP address and no port (ticket #276 ).
...
Upstreams created by "proxy_pass" with IP address and no port were
broken in 1.3.10, by not initializing port in u->sockaddr.
API change: ngx_parse_url() was modified to always initialize port
(in u->sockaddr and in u->port), even for the u->no_resolve case;
ngx_http_upstream() and ngx_http_upstream_add() were adopted.
2013-01-10 12:58:55 +00:00
Ruslan Ermilov
7c4068d349
Properly initialize "struct in6_addr" with zeroes.
2012-12-22 20:03:38 +00:00
Ruslan Ermilov
b8a90c6903
Implemented IPv6 support for URLs specified using domain names.
...
This includes "debug_connection", upstreams, "proxy_pass", etc.
(ticket #92 )
To preserve compatibility, "listen" specified with a domain name
selects the first IPv4 address, if available. If not available,
the first IPv6 address will be used (ticket #186 ).
2012-12-17 12:08:53 +00:00
Ruslan Ermilov
2f8c1b73b8
Fixed URL parsing code.
...
The URL parsing code is not expected to initialize port from default port
when in "no_resolve" mode. This got broken in r4671 for the case of IPv6
literals.
2012-12-17 09:44:46 +00:00
Ruslan Ermilov
bbf7043fe7
Simplified URL parsing code.
...
Except for the "listen" directive, "*" specified as a hostname is
no longer treated specially.
2012-12-17 09:31:53 +00:00
Maxim Dounin
596226f6f7
Support for IPv6 literals in proxy_pass and so on.
2012-06-04 14:07:34 +00:00
Ruslan Ermilov
887f514e9f
Code reduction (no functional changes).
2012-06-01 11:35:09 +00:00
Ruslan Ermilov
d230df40b2
Removed historical and now redundant syntax pre-checks in ngx_parse_url().
2012-05-21 10:55:10 +00:00
Ruslan Ermilov
3995395dcb
Reduced the number of lines of code in ngx_inet_addr().
2012-04-12 10:20:33 +00:00
Ruslan Ermilov
a5bb616af4
Improved readability of the code that produces bitmask from prefix.
...
In collaboration with Maxim Dounin.
2012-04-11 17:18:15 +00:00
Ruslan Ermilov
bffbbeb73f
In ngx_ptocidr(), check that the supplied prefix length is within
...
the allowed range.
2012-04-03 08:22:00 +00:00
Ruslan Ermilov
47a04aaa27
Fixed spelling in multiline C comments.
2012-04-03 07:37:31 +00:00
Maxim Konovalov
f8d59e33f3
Copyright updated.
2012-01-18 15:07:43 +00:00
Ruslan Ermilov
f12d6ceb65
Fixed port range checking.
2011-10-25 13:48:43 +00:00
Igor Sysoev
9813a1999c
fix segfault in IPv6 parsing while processing invalid IPv4 address X.YYYY.Z
...
patch by Maxim Dounin
2011-04-15 13:50:27 +00:00
Igor Sysoev
d53c836214
fix u->one_addr handling in ngx_inet_resolve_host()
...
patch by Maxim Dounin
2011-02-17 15:01:16 +00:00
Igor Sysoev
eacd5d89b7
fix double free(), introduced in r3268
2009-12-07 15:13:46 +00:00
Igor Sysoev
4ac5ca8ae0
ngx_ptocidr() supports IPv6
2009-11-03 13:42:25 +00:00
Igor Sysoev
fd078fd6d5
make ngx_inet6_ntop() non-static
2009-11-03 12:44:55 +00:00
Igor Sysoev
8b816d88a9
change ngx_parse_addr() interface
2009-11-02 16:11:06 +00:00
Igor Sysoev
1d52beba73
ngx_parse_addr()
2009-11-02 15:20:42 +00:00
Igor Sysoev
0c189c5159
rename ngx_peer_addr_t to ngx_addr_t
2009-11-02 15:14:17 +00:00
Igor Sysoev
67765e8918
use sin6_addr.s6_addr instead of "(u_char *) & .sin6_addr"
2009-11-02 14:32:46 +00:00
Igor Sysoev
0f25ed3d77
replace inet_addr() with ngx_inet_addr()
2009-11-02 13:51:10 +00:00
Igor Sysoev
47c88464eb
use ngx_inet6_addr()
2009-11-02 12:58:30 +00:00
Igor Sysoev
5a76cbbbc6
ngx_inet6_addr()
2009-11-02 12:50:00 +00:00
Igor Sysoev
baf8e409ba
http listen unix domain sockets
2009-10-26 11:43:32 +00:00
Igor Sysoev
739e29b651
delete unneeded field
2009-05-18 12:21:00 +00:00
Igor Sysoev
dbc205ab5a
IPv6 for Win32
2009-05-07 13:05:04 +00:00
Igor Sysoev
36860101ec
prepare ngx_ptocidr() for IPv6
2009-02-24 14:01:40 +00:00
Igor Sysoev
2bc44ea01a
fix upstream port, introduced in r2513
2009-02-21 14:34:32 +00:00
Igor Sysoev
a35eaccdec
a prelimiary IPv6 support, HTTP listen
2009-02-21 07:02:02 +00:00
Igor Sysoev
ead8091746
style fix: remove trailing spaces
2008-11-11 16:04:05 +00:00
Igor Sysoev
164abfb26f
fix case proxy_pass URL is evaluted to http://host?args
2008-10-24 19:34:24 +00:00
Igor Sysoev
c239da5055
fix case when URL has no port, but has ":" in URI part,
...
the bug has been introduced in r2204
2008-10-24 15:12:11 +00:00
Igor Sysoev
d3bf7c1cd5
fix bugs introduced in r2204
2008-08-26 16:11:30 +00:00
Igor Sysoev
c9491d113c
*) refactor ngx_parse_inet_url()
...
*) refactor ngx_parse_unix_domain_url()
*) delete unused ngx_url_t fields
2008-08-26 14:24:14 +00:00
Igor Sysoev
9c388c0a7f
*) refactor ngx_ptocidr()
...
*) allow address without bitmask
*) thus now ngx_http_geo_module accepts addresses without bitmask
2008-08-26 14:19:37 +00:00
Igor Sysoev
154013c5f3
split ngx_parse_url()
2008-08-22 13:36:56 +00:00
Igor Sysoev
c5849a6381
ngx_sock_ntop() takes family from sockaddr, remove duplicate field
2008-08-21 19:24:07 +00:00
Igor Sysoev
6a75019ad6
*) remove zero termination in ngx_inet_ntop() and ngx_sock_ntop()
...
*) use ngx_snprintf() in ngx_inet_ntop() and ngx_sock_ntop()
as they are called just once per connection
*) NGX_INET_ADDRSTRLEN
2008-08-21 18:47:23 +00:00
Igor Sysoev
7f6b2ffc60
*) back out r2040
...
*) refactor ngx_palloc()
*) introduce ngx_pnalloc()
*) additional pool blocks have smaller header
2008-06-17 15:00:30 +00:00
Igor Sysoev
f0453c1c0c
fix building by bcc introduced by r1831
2008-01-22 15:09:55 +00:00
Igor Sysoev
0272977afb
change order
2008-01-04 11:54:55 +00:00
Igor Sysoev
00e0377488
ngx_parse_url() saves port text, this allows to use it in proxy host header
2007-11-28 19:55:31 +00:00
Igor Sysoev
36b634cdbc
ngx_inet_addr()
2007-11-23 16:59:24 +00:00
Igor Sysoev
7ed63ee75f
use pool instead of ngx_conf_t
2007-10-08 08:55:12 +00:00
Igor Sysoev
845f6d553a
ignore meaningless bits in CIDR and warn about them
2007-08-10 13:13:28 +00:00
Igor Sysoev
722231f407
ngx_strcasecmp()/ngx_strncasecmp()
2007-02-14 18:51:19 +00:00