Commit Graph

6 Commits

Author SHA1 Message Date
Sean Gilligan 2aa8de903e
Croniter get_next fix (#10068)
Fix for an incorrect call to `get_next` that was stopping the Croniter
`fuzz_iter` executing, see
[https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=57139#c2](https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=57139#c2).

It was being called with a `datetime` object instead of a `datetime`
class as it's `ret_type` argument causing a type error. I've removed the
argument that's fixed it.

Also I've added the `undefined` sanitizer as it was missing from the
`project.yaml`. I've done a local run and it works fine with it enabled.
2023-04-12 19:55:49 +01:00
DavidKorczynski 89436392c7
croniter: catch top-level exceptions (#9948)
The current exceptions caught are not the top-level croniter ones. This
changes it to be that.

Fixes, e.g.: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=57122

Signed-off-by: David Korczynski <david@adalogics.com>
2023-03-18 13:29:23 +00:00
Sean Gilligan 4325da9f17
Improving coverage for croniter (#9860)
`fuzz_iter.py`
- Added coverage of optional `hash_id` parameter
- Added call to `is_valid` method
- Added call to `get_next` & `get_prev` methods for the returned
croniter iterator

`fuzz_match.py`
- Added fuzzing of `croniter.match`

`fuzz_range.py`
- Added fuzzing of `croniter.range`
2023-03-15 03:42:13 -07:00
DavidKorczynski cad29b89d6
croniter: refine fuzzer (#9002)
This is to make it work with fuzz introspector.

Ref: https://github.com/ossf/fuzz-introspector/pull/613

Signed-off-by: David Korczynski <david@adalogics.com>

Signed-off-by: David Korczynski <david@adalogics.com>
2022-11-17 12:25:05 +00:00
DavidKorczynski b9eac4e651
croniter: instrument fuzzing function (#7865)
* croniter: instrument fuzzing function

The Croniter build is having some troubles with coverage and I'm not
entirely sure why. It seems like the corpus is not there and I'm not
entirely sure if this has to do with some instrumentation underlyings.
Locally the end-to-end process of running, collecting seeds and
generating coverage works for me. The effort in this PR is to make the
setup similar to pyyalm where the coverage visualisation works -- the
only difference I could spot between fuzzers from the two projects is
that croniter does not have its fuzzer entry function instrumented.

* Instrument all. This is similar to protobuf-python
2022-06-15 10:28:46 +01:00
DavidKorczynski 42b47a8b5f
croniter: initial integration (#7753)
croniter: initialer integration
2022-06-08 10:39:30 +01:00