comparison src/core/ngx_inet.h @ 552:c04fa65fe604 NGINX_0_8_22

nginx 0.8.22 *) Feature: the "proxy_bind", "fastcgi_bind", and "memcached_bind" directives. *) Feature: the "access" and the "deny" directives support IPv6. *) Feature: the "set_real_ip_from" directive supports IPv6 addresses in request headers. *) Feature: the "unix:" parameter of the "set_real_ip_from" directive. *) Bugfix: nginx did not delete unix domain socket after configuration testing. *) Bugfix: nginx deleted unix domain socket while online upgrade. *) Bugfix: the "!-x" operator did not work. Thanks to Maxim Dounin. *) Bugfix: a segmentation fault might occur in a worker process, if limit_rate was used in HTTPS server. Thanks to Maxim Dounin. *) Bugfix: a segmentation fault might occur in a worker process while $limit_rate logging. Thanks to Maxim Dounin. *) Bugfix: a segmentation fault might occur in a worker process, if there was no "listen" directive in "server" block; the bug had appeared in 0.8.21.
author Igor Sysoev <http://sysoev.ru>
date Tue, 03 Nov 2009 00:00:00 +0300
parents 1dcf6adad484
children
comparison
equal deleted inserted replaced
551:c88014f74832 552:c04fa65fe604
68 68
69 typedef struct { 69 typedef struct {
70 struct sockaddr *sockaddr; 70 struct sockaddr *sockaddr;
71 socklen_t socklen; 71 socklen_t socklen;
72 ngx_str_t name; 72 ngx_str_t name;
73 } ngx_peer_addr_t; 73 } ngx_addr_t;
74 74
75 75
76 typedef struct { 76 typedef struct {
77 ngx_str_t url; 77 ngx_str_t url;
78 ngx_str_t host; 78 ngx_str_t host;
92 unsigned wildcard:1; 92 unsigned wildcard:1;
93 93
94 socklen_t socklen; 94 socklen_t socklen;
95 u_char sockaddr[NGX_SOCKADDRLEN]; 95 u_char sockaddr[NGX_SOCKADDRLEN];
96 96
97 ngx_peer_addr_t *addrs; 97 ngx_addr_t *addrs;
98 ngx_uint_t naddrs; 98 ngx_uint_t naddrs;
99 99
100 char *err; 100 char *err;
101 } ngx_url_t; 101 } ngx_url_t;
102 102
103 103
104 in_addr_t ngx_inet_addr(u_char *text, size_t len); 104 in_addr_t ngx_inet_addr(u_char *text, size_t len);
105 #if (NGX_HAVE_INET6)
106 ngx_int_t ngx_inet6_addr(u_char *p, size_t len, u_char *addr);
107 size_t ngx_inet6_ntop(u_char *p, u_char *text, size_t len);
108 #endif
105 size_t ngx_sock_ntop(struct sockaddr *sa, u_char *text, size_t len, 109 size_t ngx_sock_ntop(struct sockaddr *sa, u_char *text, size_t len,
106 ngx_uint_t port); 110 ngx_uint_t port);
107 size_t ngx_inet_ntop(int family, void *addr, u_char *text, size_t len); 111 size_t ngx_inet_ntop(int family, void *addr, u_char *text, size_t len);
108 ngx_int_t ngx_ptocidr(ngx_str_t *text, ngx_cidr_t *cidr); 112 ngx_int_t ngx_ptocidr(ngx_str_t *text, ngx_cidr_t *cidr);
113 ngx_int_t ngx_parse_addr(ngx_pool_t *pool, ngx_addr_t *addr, u_char *text,
114 size_t len);
109 ngx_int_t ngx_parse_url(ngx_pool_t *pool, ngx_url_t *u); 115 ngx_int_t ngx_parse_url(ngx_pool_t *pool, ngx_url_t *u);
110 ngx_int_t ngx_inet_resolve_host(ngx_pool_t *pool, ngx_url_t *u); 116 ngx_int_t ngx_inet_resolve_host(ngx_pool_t *pool, ngx_url_t *u);
111 117
112 118
113
114 #endif /* _NGX_INET_H_INCLUDED_ */ 119 #endif /* _NGX_INET_H_INCLUDED_ */