mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-12-26 15:36:14 +01:00
105f4a0f39
There’s no explicit guarantee that any of these functions are safe to use on untrusted data, but it does no harm to test them. Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
26 lines
694 B
C
26 lines
694 B
C
#include "fuzz.h"
|
||
|
||
int
|
||
LLVMFuzzerTestOneInput (const unsigned char *data, size_t size)
|
||
{
|
||
unsigned char *nul_terminated_data = NULL;
|
||
GSocketConnectable *connectable = NULL;
|
||
|
||
fuzz_set_logging_func ();
|
||
|
||
/* ignore @size (g_network_address_parse_uri() doesn’t support it); ensure @data is nul-terminated */
|
||
nul_terminated_data = (unsigned char *) g_strndup ((const gchar *) data, size);
|
||
connectable = g_network_address_parse_uri ((const gchar *) nul_terminated_data, 1, NULL);
|
||
g_free (nul_terminated_data);
|
||
|
||
if (connectable != NULL)
|
||
{
|
||
gchar *text = g_socket_connectable_to_string (connectable);
|
||
g_free (text);
|
||
}
|
||
|
||
g_clear_object (&connectable);
|
||
|
||
return 0;
|
||
}
|