Mercurial > hg > nginx
comparison src/core/ngx_inet.h @ 804:472cd9768ac2
now the "listen" directives use ngx_parse_url()
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Tue, 24 Oct 2006 13:06:55 +0000 |
parents | 6d5c1535bb9d |
children | eef6d9cc45da |
comparison
equal
deleted
inserted
replaced
803:134a3c12d298 | 804:472cd9768ac2 |
---|---|
15 #define NGX_PARSE_URL_INET 1 | 15 #define NGX_PARSE_URL_INET 1 |
16 #define NGX_PARSE_URL_UNIX 2 | 16 #define NGX_PARSE_URL_UNIX 2 |
17 | 17 |
18 | 18 |
19 typedef struct { | 19 typedef struct { |
20 in_addr_t addr; | 20 in_addr_t addr; |
21 in_addr_t mask; | 21 in_addr_t mask; |
22 } ngx_inet_cidr_t; | 22 } ngx_inet_cidr_t; |
23 | 23 |
24 | 24 |
25 typedef struct { | 25 typedef struct { |
26 struct sockaddr *sockaddr; | 26 struct sockaddr *sockaddr; |
55 | 55 |
56 ngx_peer_t peer[1]; | 56 ngx_peer_t peer[1]; |
57 }; | 57 }; |
58 | 58 |
59 | 59 |
60 typedef union { | |
61 in_addr_t in_addr; | |
62 } ngx_url_addr_t; | |
63 | |
64 | |
60 typedef struct { | 65 typedef struct { |
61 ngx_int_t type; | 66 ngx_int_t type; |
62 | 67 |
63 ngx_peers_t *peers; | 68 ngx_peers_t *peers; |
64 | 69 |
65 ngx_str_t url; | 70 ngx_str_t url; |
66 ngx_str_t host; | 71 ngx_str_t host; |
67 ngx_str_t host_header; | 72 ngx_str_t host_header; |
68 ngx_str_t port; | 73 ngx_str_t port; |
69 ngx_str_t uri; | 74 ngx_str_t uri; |
70 | 75 |
71 in_port_t portn; | 76 in_port_t portn; |
72 in_port_t default_portn; | 77 in_port_t default_portn; |
73 | 78 |
74 unsigned listen:1; | 79 unsigned listen:1; |
75 unsigned uri_part:1; | 80 unsigned uri_part:1; |
76 unsigned upstream:1; | 81 unsigned upstream:1; |
77 | 82 |
78 unsigned default_port:1; | 83 unsigned default_port:1; |
79 unsigned wildcard:1; | 84 unsigned wildcard:1; |
80 | 85 |
81 char *err; | 86 ngx_url_addr_t addr; |
87 | |
88 char *err; | |
82 } ngx_url_t; | 89 } ngx_url_t; |
83 | 90 |
84 | 91 |
85 typedef struct { | 92 typedef struct { |
86 ngx_str_t name; /* "schema:host:port/uri" */ | 93 ngx_str_t name; /* "schema:host:port/uri" */ |
87 ngx_str_t url; /* "host:port/uri" */ | 94 ngx_str_t url; /* "host:port/uri" */ |
88 ngx_str_t host; | 95 ngx_str_t host; |
89 ngx_str_t uri; | 96 ngx_str_t uri; |
90 ngx_str_t host_header; /* "host:port" */ | 97 ngx_str_t host_header; /* "host:port" */ |
91 ngx_str_t port_text; /* "port" */ | 98 ngx_str_t port_text; /* "port" */ |
92 | 99 |
93 in_port_t port; | 100 in_port_t port; |
94 | 101 |
95 in_port_t default_port_value; | 102 in_port_t default_port_value; |
96 | 103 |
97 unsigned default_port:1; | 104 unsigned default_port:1; |
98 unsigned wildcard:1; | 105 unsigned wildcard:1; |
99 | 106 |
100 unsigned uri_part:1; | 107 unsigned uri_part:1; |
101 unsigned port_only:1; | 108 unsigned port_only:1; |
102 } ngx_inet_upstream_t; | 109 } ngx_inet_upstream_t; |
103 | 110 |
104 | 111 |
105 size_t ngx_sock_ntop(int family, struct sockaddr *sa, u_char *text, | 112 size_t ngx_sock_ntop(int family, struct sockaddr *sa, u_char *text, |
106 size_t len); | 113 size_t len); |
107 size_t ngx_inet_ntop(int family, void *addr, u_char *text, size_t len); | 114 size_t ngx_inet_ntop(int family, void *addr, u_char *text, size_t len); |
108 | 115 |
109 ngx_int_t ngx_ptocidr(ngx_str_t *text, void *cidr); | 116 ngx_int_t ngx_ptocidr(ngx_str_t *text, void *cidr); |
110 | 117 |
111 ngx_peers_t *ngx_inet_upstream_parse(ngx_conf_t *cf, ngx_inet_upstream_t *u); | 118 ngx_peers_t *ngx_inet_upstream_parse(ngx_conf_t *cf, ngx_inet_upstream_t *u); |
112 ngx_peers_t *ngx_inet_resolve_peer(ngx_conf_t *cf, ngx_str_t *name, | 119 ngx_peers_t *ngx_inet_resolve_peer(ngx_conf_t *cf, ngx_str_t *name, |
113 in_port_t port); | 120 in_port_t port); |
114 char *ngx_inet_parse_host_port(ngx_inet_upstream_t *u); | |
115 ngx_int_t ngx_parse_url(ngx_conf_t *cf, ngx_url_t *u); | 121 ngx_int_t ngx_parse_url(ngx_conf_t *cf, ngx_url_t *u); |
116 | 122 |
117 | 123 |
118 #endif /* _NGX_INET_H_INCLUDED_ */ | 124 #endif /* _NGX_INET_H_INCLUDED_ */ |