9 if (size == 0)
return 0;
14 size_t half = size / 2;
15 const char* input = (
const char*)data;
16 size_t input_len = half;
17 const char* base = (
const char*)(data + half);
18 size_t base_len = size - half;
84 (void)can_parse_result;
94 if (with_base_valid) {
96 volatile size_t len = href.
length;
118 bool can_parse_with_base =
123 if (can_parse_with_base != with_base_valid) {
124 printf(
"ada_can_parse_with_base inconsistency: can_parse=%d is_valid=%d\n",
125 can_parse_with_base, with_base_valid);
136 volatile size_t ulen = unicode_result.
length;
141 volatile size_t alen = ascii_result.
length;
151 volatile size_t vlen = strlen(version);
155 volatile int major = ver_comps.
major;
180 volatile bool has_kv =
186 volatile size_t got_len = got.
length;
192 for (
size_t i = 0; i < all_size; i++) {
194 volatile size_t slen = s.
length;
204 volatile size_t str_len = sp_str.
length;
212 volatile size_t klen = k.
length;
222 volatile size_t vlen = v.
length;
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size)
Includes the C definitions for Ada. This is a C file, not C++.
ada_url_search_params ada_parse_search_params(const char *input, size_t length)
ada_string ada_get_hash(ada_url result)
bool ada_set_port(ada_url result, const char *input, size_t length)
ada_strings ada_search_params_get_all(ada_url_search_params result, const char *key, size_t key_length)
void ada_clear_search(ada_url result)
void ada_free_search_params_entries_iter(ada_url_search_params_entries_iter result)
bool ada_set_host(ada_url result, const char *input, size_t length)
bool ada_has_password(ada_url result)
bool ada_search_params_keys_iter_has_next(ada_url_search_params_keys_iter result)
ada_string ada_search_params_values_iter_next(ada_url_search_params_values_iter result)
void ada_free_search_params_keys_iter(ada_url_search_params_keys_iter result)
ada_string ada_get_pathname(ada_url result)
const ada_url_components * ada_get_components(ada_url result)
bool ada_search_params_has_value(ada_url_search_params result, const char *key, size_t key_length, const char *value, size_t value_length)
bool ada_has_empty_hostname(ada_url result)
void ada_free_strings(ada_strings result)
void ada_search_params_append(ada_url_search_params result, const char *key, size_t key_length, const char *value, size_t value_length)
bool ada_has_non_empty_password(ada_url result)
bool ada_set_password(ada_url result, const char *input, size_t length)
ada_url_search_params_entries_iter ada_search_params_get_entries(ada_url_search_params result)
void * ada_url_search_params_entries_iter
ada_string ada_get_hostname(ada_url result)
bool ada_can_parse_with_base(const char *input, size_t input_length, const char *base, size_t base_length)
ada_string ada_search_params_get(ada_url_search_params result, const char *key, size_t key_length)
uint8_t ada_get_host_type(ada_url result)
ada_string ada_get_password(ada_url result)
const char * ada_get_version()
ada_version_components ada_get_version_components()
void ada_search_params_sort(ada_url_search_params result)
ada_owned_string ada_idna_to_unicode(const char *input, size_t length)
void ada_search_params_remove_value(ada_url_search_params result, const char *key, size_t key_length, const char *value, size_t value_length)
bool ada_set_hostname(ada_url result, const char *input, size_t length)
ada_url ada_parse_with_base(const char *input, size_t input_length, const char *base, size_t base_length)
void ada_free_search_params(ada_url_search_params result)
ada_string ada_get_port(ada_url result)
bool ada_set_pathname(ada_url result, const char *input, size_t length)
ada_string ada_get_host(ada_url result)
void * ada_url_search_params
ada_url ada_parse(const char *input, size_t length)
bool ada_has_port(ada_url result)
void ada_clear_hash(ada_url result)
void ada_free_owned_string(ada_owned_string owned)
ada_owned_string ada_search_params_to_string(ada_url_search_params result)
ada_string ada_strings_get(ada_strings result, size_t index)
bool ada_set_href(ada_url result, const char *input, size_t length)
void ada_free(ada_url result)
bool ada_search_params_entries_iter_has_next(ada_url_search_params_entries_iter result)
size_t ada_search_params_size(ada_url_search_params result)
ada_owned_string ada_get_origin(ada_url result)
ada_string ada_get_protocol(ada_url result)
void ada_free_search_params_values_iter(ada_url_search_params_values_iter result)
bool ada_set_username(ada_url result, const char *input, size_t length)
ada_string ada_get_username(ada_url result)
uint8_t ada_get_scheme_type(ada_url result)
ada_string ada_search_params_keys_iter_next(ada_url_search_params_keys_iter result)
ada_string_pair ada_search_params_entries_iter_next(ada_url_search_params_entries_iter result)
void ada_clear_port(ada_url result)
bool ada_is_valid(ada_url result)
ada_url_search_params_keys_iter ada_search_params_get_keys(ada_url_search_params result)
ada_owned_string ada_idna_to_ascii(const char *input, size_t length)
void ada_set_search(ada_url result, const char *input, size_t length)
void * ada_url_search_params_keys_iter
bool ada_search_params_values_iter_has_next(ada_url_search_params_values_iter result)
void ada_search_params_set(ada_url_search_params result, const char *key, size_t key_length, const char *value, size_t value_length)
ada_string ada_get_href(ada_url result)
bool ada_set_protocol(ada_url result, const char *input, size_t length)
size_t ada_strings_size(ada_strings result)
ada_url_search_params_values_iter ada_search_params_get_values(ada_url_search_params result)
bool ada_has_hash(ada_url result)
bool ada_search_params_has(ada_url_search_params result, const char *key, size_t key_length)
bool ada_has_hostname(ada_url result)
bool ada_has_credentials(ada_url result)
void * ada_url_search_params_values_iter
bool ada_can_parse(const char *input, size_t length)
ada_string ada_get_search(ada_url result)
void ada_search_params_reset(ada_url_search_params result, const char *input, size_t length)
void ada_search_params_remove(ada_url_search_params result, const char *key, size_t key_length)
bool ada_has_non_empty_username(ada_url result)
bool ada_has_search(ada_url result)
ada_url ada_copy(ada_url input)
void ada_set_hash(ada_url result, const char *input, size_t length)