]> git.ipfire.org Git - thirdparty/systemd.git/blob - src/fuzz/fuzz-time-util.c
license: LGPL-2.1+ -> LGPL-2.1-or-later
[thirdparty/systemd.git] / src / fuzz / fuzz-time-util.c
1 /* SPDX-License-Identifier: LGPL-2.1-or-later */
2
3 #include "alloc-util.h"
4 #include "fd-util.h"
5 #include "fuzz.h"
6 #include "time-util.h"
7 #include "util.h"
8
9 int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
10 _cleanup_free_ char *str = NULL;
11 usec_t usec;
12
13 if (!getenv("SYSTEMD_LOG_LEVEL"))
14 log_set_max_level(LOG_CRIT);
15
16 str = memdup_suffix0(data, size);
17
18 (void) parse_timestamp(str, &usec);
19 (void) parse_sec(str, &usec);
20 (void) parse_sec_fix_0(str, &usec);
21 (void) parse_sec_def_infinity(str, &usec);
22 (void) parse_time(str, &usec, USEC_PER_SEC);
23 (void) parse_nsec(str, &usec);
24
25 (void) timezone_is_valid(str, LOG_DEBUG);
26
27 return 0;
28 }