| 157 | -------------------------------------------------------------------------*/ |
| 158 | |
| 159 | void |
| 160 | url_init() |
| 161 | { |
| 162 | static int init = 1; |
| 163 | |
| 164 | if (init) { |
| 165 | init = 0; |
| 166 | |
| 167 | hdrtoken_init(); |
| 168 | |
| 169 | URL_SCHEME_FILE = hdrtoken_string_to_wks("file"); |
| 170 | URL_SCHEME_FTP = hdrtoken_string_to_wks("ftp"); |
| 171 | URL_SCHEME_GOPHER = hdrtoken_string_to_wks("gopher"); |
| 172 | URL_SCHEME_HTTP = hdrtoken_string_to_wks("http"); |
| 173 | URL_SCHEME_HTTPS = hdrtoken_string_to_wks("https"); |
| 174 | URL_SCHEME_WSS = hdrtoken_string_to_wks("wss"); |
| 175 | URL_SCHEME_WS = hdrtoken_string_to_wks("ws"); |
| 176 | URL_SCHEME_MAILTO = hdrtoken_string_to_wks("mailto"); |
| 177 | URL_SCHEME_NEWS = hdrtoken_string_to_wks("news"); |
| 178 | URL_SCHEME_NNTP = hdrtoken_string_to_wks("nntp"); |
| 179 | URL_SCHEME_PROSPERO = hdrtoken_string_to_wks("prospero"); |
| 180 | URL_SCHEME_TELNET = hdrtoken_string_to_wks("telnet"); |
| 181 | URL_SCHEME_TUNNEL = hdrtoken_string_to_wks("tunnel"); |
| 182 | URL_SCHEME_WAIS = hdrtoken_string_to_wks("wais"); |
| 183 | URL_SCHEME_PNM = hdrtoken_string_to_wks("pnm"); |
| 184 | URL_SCHEME_RTSP = hdrtoken_string_to_wks("rtsp"); |
| 185 | URL_SCHEME_RTSPU = hdrtoken_string_to_wks("rtspu"); |
| 186 | URL_SCHEME_MMS = hdrtoken_string_to_wks("mms"); |
| 187 | URL_SCHEME_MMSU = hdrtoken_string_to_wks("mmsu"); |
| 188 | URL_SCHEME_MMST = hdrtoken_string_to_wks("mmst"); |
| 189 | |
| 190 | ink_assert(URL_SCHEME_FILE && URL_SCHEME_FTP && URL_SCHEME_GOPHER && URL_SCHEME_HTTP && URL_SCHEME_HTTPS && URL_SCHEME_WS && |
| 191 | URL_SCHEME_WSS && URL_SCHEME_MAILTO && URL_SCHEME_NEWS && URL_SCHEME_NNTP && URL_SCHEME_PROSPERO && |
| 192 | URL_SCHEME_TELNET && URL_SCHEME_TUNNEL && URL_SCHEME_WAIS && URL_SCHEME_PNM && URL_SCHEME_RTSP && URL_SCHEME_RTSPU && |
| 193 | URL_SCHEME_MMS && URL_SCHEME_MMSU && URL_SCHEME_MMST); |
| 194 | |
| 195 | URL_WKSIDX_FILE = hdrtoken_wks_to_index(URL_SCHEME_FILE); |
| 196 | URL_WKSIDX_FTP = hdrtoken_wks_to_index(URL_SCHEME_FTP); |
| 197 | URL_WKSIDX_GOPHER = hdrtoken_wks_to_index(URL_SCHEME_GOPHER); |
| 198 | URL_WKSIDX_HTTP = hdrtoken_wks_to_index(URL_SCHEME_HTTP); |
| 199 | URL_WKSIDX_HTTPS = hdrtoken_wks_to_index(URL_SCHEME_HTTPS); |
| 200 | URL_WKSIDX_WS = hdrtoken_wks_to_index(URL_SCHEME_WS); |
| 201 | URL_WKSIDX_WSS = hdrtoken_wks_to_index(URL_SCHEME_WSS); |
| 202 | URL_WKSIDX_MAILTO = hdrtoken_wks_to_index(URL_SCHEME_MAILTO); |
| 203 | URL_WKSIDX_NEWS = hdrtoken_wks_to_index(URL_SCHEME_NEWS); |
| 204 | URL_WKSIDX_NNTP = hdrtoken_wks_to_index(URL_SCHEME_NNTP); |
| 205 | URL_WKSIDX_PROSPERO = hdrtoken_wks_to_index(URL_SCHEME_PROSPERO); |
| 206 | URL_WKSIDX_TELNET = hdrtoken_wks_to_index(URL_SCHEME_TELNET); |
| 207 | URL_WKSIDX_TUNNEL = hdrtoken_wks_to_index(URL_SCHEME_TUNNEL); |
| 208 | URL_WKSIDX_WAIS = hdrtoken_wks_to_index(URL_SCHEME_WAIS); |
| 209 | URL_WKSIDX_PNM = hdrtoken_wks_to_index(URL_SCHEME_PNM); |
| 210 | URL_WKSIDX_RTSP = hdrtoken_wks_to_index(URL_SCHEME_RTSP); |
| 211 | URL_WKSIDX_RTSPU = hdrtoken_wks_to_index(URL_SCHEME_RTSPU); |
| 212 | URL_WKSIDX_MMS = hdrtoken_wks_to_index(URL_SCHEME_MMS); |
| 213 | URL_WKSIDX_MMSU = hdrtoken_wks_to_index(URL_SCHEME_MMSU); |
| 214 | URL_WKSIDX_MMST = hdrtoken_wks_to_index(URL_SCHEME_MMST); |
| 215 | |
| 216 | URL_LEN_FILE = hdrtoken_wks_to_length(URL_SCHEME_FILE); |