http-url.h revision e641c9f656f1788ca6226ef0d60b2d592e2ca6d1
e248fe370c4047cee921a91b48edc37944ab0526Timo Sirainen /* ?query (still encoded) */
53dfcefa9440a49d703e49193819a79be99c9ba6Timo Sirainen /* #fragment (still encoded) */
e248fe370c4047cee921a91b48edc37944ab0526Timo Sirainen unsigned int have_host_ip:1; /* URL uses IP address */
36b072d84a9076c3c483bf710444a716e987ccc3Stephan Bosch * HTTP URL parsing
36b072d84a9076c3c483bf710444a716e987ccc3Stephan Bosch /* Scheme part 'http:' is already parsed externally. This implies that
36b072d84a9076c3c483bf710444a716e987ccc3Stephan Bosch this is an absolute HTTP URL. */
36b072d84a9076c3c483bf710444a716e987ccc3Stephan Bosch /* Allow '#fragment' part in URL */
36b072d84a9076c3c483bf710444a716e987ccc3Stephan Boschint http_url_parse(const char *url, struct http_url *base,
36b072d84a9076c3c483bf710444a716e987ccc3Stephan Bosch struct http_url **url_r, const char **error_r);
36b072d84a9076c3c483bf710444a716e987ccc3Stephan Boschint http_url_request_target_parse(const char *request_target,
36b072d84a9076c3c483bf710444a716e987ccc3Stephan Bosch struct http_request_target *target, const char **error_r);
36b072d84a9076c3c483bf710444a716e987ccc3Stephan Bosch * HTTP URL construction
36b072d84a9076c3c483bf710444a716e987ccc3Stephan Boschconst char *http_url_create(const struct http_url *url);
36b072d84a9076c3c483bf710444a716e987ccc3Stephan Boschconst char *http_url_create_target(const struct http_url *url);
36b072d84a9076c3c483bf710444a716e987ccc3Stephan Boschvoid http_url_escape_param(string_t *out, const char *data);