diff options
author | Philip Withnall <pwithnall@endlessos.org> | 2020-12-17 12:15:25 +0000 |
---|---|---|
committer | Philip Withnall <pwithnall@endlessos.org> | 2020-12-17 12:42:54 +0000 |
commit | 0c83f05be81a0044c43f74470eed54330492b742 (patch) | |
tree | b78e9b469ac02642f7afc74ea9ae5cbe0ebe2b07 /fuzzing/fuzz_key.c | |
parent | b108072d9ef24dc825f2faafeb4d4ae7ae616967 (diff) | |
download | glib-0c83f05be81a0044c43f74470eed54330492b742.tar.gz |
fuzzing: Add more parsing flags to the GKeyFile test
To increase the coverage.
Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
Diffstat (limited to 'fuzzing/fuzz_key.c')
-rw-r--r-- | fuzzing/fuzz_key.c | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/fuzzing/fuzz_key.c b/fuzzing/fuzz_key.c index 8d0edc5fa..9f1f9187e 100644 --- a/fuzzing/fuzz_key.c +++ b/fuzzing/fuzz_key.c @@ -1,16 +1,27 @@ #include "fuzz.h" -int -LLVMFuzzerTestOneInput (const unsigned char *data, size_t size) +static void +test_parse (const gchar *data, + size_t size, + GKeyFileFlags flags) { GKeyFile *key = NULL; - fuzz_set_logging_func (); - key = g_key_file_new (); g_key_file_load_from_data (key, (const gchar*) data, size, G_KEY_FILE_NONE, NULL); g_key_file_free (key); +} + +int +LLVMFuzzerTestOneInput (const unsigned char *data, size_t size) +{ + fuzz_set_logging_func (); + + test_parse ((const gchar *) data, size, G_KEY_FILE_NONE); + test_parse ((const gchar *) data, size, G_KEY_FILE_KEEP_COMMENTS); + test_parse ((const gchar *) data, size, G_KEY_FILE_KEEP_TRANSLATIONS); + return 0; } |