int uri_parser_process_string(uri_parser_result_t *result, const char *uri)
Parse a URI reference.
int uri_parser_process(uri_parser_result_t *result, const char *uri, size_t uri_len)
Parse a URI reference.
int uri_parser_split_query(const uri_parser_result_t *uri_parsed, uri_parser_query_param_t *params, size_t params_len)
Provides a list of URI query parameters from a given URI parser result.
bool uri_parser_is_absolute_string(const char *uri)
Checks whether uri is in absolute form.
bool uri_parser_is_absolute(const char *uri, size_t uri_len)
Checks whether uri is in absolute form.
Container to represent a query parameter.
const char * value
value of the query parameter
const char * name
name of the query parameter
uint16_t name_len
length of name
uint16_t value_len
length of value
container that holds all results
uint16_t scheme_len
length of scheme
const char * scheme
scheme
uint16_t zoneid_len
length of zoneid
uint16_t path_len
length of path
const char * host
host part
const char * userinfo
userinfo
uint16_t userinfo_len
length of userinfo
uint16_t query_len
length of query
uint16_t port_str_len
length of port_str
uint16_t ipv6addr_len
length of ipv6addr
const char * port_str
port as str
uint16_t port
port as uint16_t
const char * zoneid
zoneid if host is IPv6 address, NULL otherwise
uint16_t host_len
length of host
const char * ipv6addr
Pointer to the start of the address, if host is an IPv6 address and NULL otherwise.