Ada 3.1.0
Fast spec-compliant URL parser
Loading...
Searching...
No Matches
ada_c.c
Go to the documentation of this file.
1#include "ada_c.h"
2
3#include <stdbool.h>
4#include <stdio.h>
5#include <stdlib.h>
6#include <string.h>
7
8int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) {
12 ada_url out = ada_parse((char*)data, size);
13 bool is_valid = ada_is_valid(out);
14
15 if (is_valid) {
16 ada_set_href(out, (char*)data, size);
17 ada_set_host(out, (char*)data, size);
18 ada_set_hostname(out, (char*)data, size);
19 ada_set_protocol(out, (char*)data, size);
20 ada_set_username(out, (char*)data, size);
21 ada_set_password(out, (char*)data, size);
22 ada_set_port(out, (char*)data, size);
23 ada_set_pathname(out, (char*)data, size);
24 ada_set_search(out, (char*)data, size);
25 ada_set_hash(out, (char*)data, size);
26
27 ada_get_hash(out);
28 ada_get_host(out);
31 ada_get_href(out);
32 ada_owned_string out_get_origin = ada_get_origin(out);
37 ada_get_port(out);
38 ada_get_search(out);
40
46 ada_has_port(out);
48 ada_has_hash(out);
49 ada_has_search(out);
50
52
53 ada_clear_port(out);
54 ada_clear_hash(out);
56
57 ada_free_owned_string(out_get_origin);
58 }
59
60 bool can_parse_result = ada_can_parse((char*)data, size);
61
62 ada_free(out);
63
64 return 0;
65}
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size)
Definition ada_c.c:8
Includes the C definitions for Ada. This is a C file, not C++.
ada_string ada_get_hash(ada_url result)
Definition ada_c.cpp:167
bool ada_set_port(ada_url result, const char *input, size_t length)
Definition ada_c.cpp:289
void ada_clear_search(ada_url result)
Definition ada_c.cpp:360
bool ada_set_host(ada_url result, const char *input, size_t length)
Definition ada_c.cpp:245
bool ada_has_password(ada_url result)
Definition ada_c.cpp:415
ada_string ada_get_pathname(ada_url result)
Definition ada_c.cpp:194
const ada_url_components * ada_get_components(ada_url result)
Definition ada_c.cpp:440
bool ada_has_empty_hostname(ada_url result)
Definition ada_c.cpp:375
bool ada_has_non_empty_password(ada_url result)
Definition ada_c.cpp:399
bool ada_set_password(ada_url result, const char *input, size_t length)
Definition ada_c.cpp:280
ada_string ada_get_hostname(ada_url result)
Definition ada_c.cpp:185
uint8_t ada_get_host_type(ada_url result)
Definition ada_c.cpp:221
ada_string ada_get_password(ada_url result)
Definition ada_c.cpp:149
bool ada_set_hostname(ada_url result, const char *input, size_t length)
Definition ada_c.cpp:253
ada_string ada_get_port(ada_url result)
Definition ada_c.cpp:158
bool ada_set_pathname(ada_url result, const char *input, size_t length)
Definition ada_c.cpp:297
ada_string ada_get_host(ada_url result)
Definition ada_c.cpp:176
ada_url ada_parse(const char *input, size_t length)
Definition ada_c.cpp:68
bool ada_has_port(ada_url result)
Definition ada_c.cpp:407
void ada_clear_hash(ada_url result)
Definition ada_c.cpp:347
void ada_free_owned_string(ada_owned_string owned)
Definition ada_c.cpp:127
bool ada_set_href(ada_url result, const char *input, size_t length)
Definition ada_c.cpp:237
void ada_free(ada_url result)
Definition ada_c.cpp:96
void * ada_url
Definition ada_c.h:39
ada_owned_string ada_get_origin(ada_url result)
Definition ada_c.cpp:112
ada_string ada_get_protocol(ada_url result)
Definition ada_c.cpp:212
bool ada_set_username(ada_url result, const char *input, size_t length)
Definition ada_c.cpp:271
ada_string ada_get_username(ada_url result)
Definition ada_c.cpp:140
uint8_t ada_get_scheme_type(ada_url result)
Definition ada_c.cpp:229
void ada_clear_port(ada_url result)
Definition ada_c.cpp:334
bool ada_is_valid(ada_url result)
Definition ada_c.cpp:106
void ada_set_search(ada_url result, const char *input, size_t length)
Definition ada_c.cpp:313
ada_string ada_get_href(ada_url result)
Definition ada_c.cpp:131
bool ada_set_protocol(ada_url result, const char *input, size_t length)
Definition ada_c.cpp:262
bool ada_has_hash(ada_url result)
Definition ada_c.cpp:423
bool ada_has_hostname(ada_url result)
Definition ada_c.cpp:383
bool ada_has_credentials(ada_url result)
Definition ada_c.cpp:367
bool ada_can_parse(const char *input, size_t length)
Definition ada_c.cpp:86
ada_string ada_get_search(ada_url result)
Definition ada_c.cpp:203
bool ada_has_non_empty_username(ada_url result)
Definition ada_c.cpp:391
bool ada_has_search(ada_url result)
Definition ada_c.cpp:431
void ada_set_hash(ada_url result, const char *input, size_t length)
Definition ada_c.cpp:327