Sergey "Shnatsel" Davidoff
Sergey "Shnatsel" Davidoff
This happens in image v0.24.2 ## Expected  ## Actual behaviour  ## Reproduction steps ```rust use std::error::Error; fn main() -> Result { use image::io::Reader as ImageReader; let input =...
The naive adaptation of the provided Rust sample to measure latency instead of throughput produces a completely empty page when plotted: ```rust const A: usize = 2_000_000_000; const B: usize...
I am writing a Cargo subcommand for counting lines of all the dependencies of your project. I am using tokei as a library. According to the documentation, `languages.get_statistics()` will treat...
Add a fuzzing harness adapted from the command-line tool. It decodes the input with png crate, encodes it with mtpng, decodes the result with png again and verifies that the...
Fuzzing is a powerful tool for correctness verification. The gist of it is that it generates a lot of semi-random inputs really fast and uses execution path tracing to generate...
There are some mismatches with FFmpeg when decoding MP3s from the [AMV Collection v6.0](https://nyaa.si/view/1356775) corpus, as suggested in the comments on the Symphonia v0.5 announcement on Reddit. This should give...
[These files](https://mega.nz/file/E11A3T4R#u4DBzFZ9YgJ4Z4BOJhF8MzpKiOzq8E8LTwstUU17Vio) produce divergences from ffmpeg ranging from 0.6 to 2.0; at the same time the files are listenable, so I assume some sort of misalignment is happening. I could...
libdiffuzz doesn't make much use of the standard library. It can probably be switched to the corresponding libcore primitives and compiled in #![no_std] mode. Among other things, this will reduce...
Currently libdiffuzz switches to non-deterministic mode after reading an environment variable from a function called from link-time "constructors" section: https://github.com/Shnatsel/libdiffuzz/blob/f0c7a8f3b27df24d389d9e003ebda01ad89eb1cf/src/lib.rs#L31-L33 This is not a great idea for two reasons: 1....
It would be nice to be able to detect out-of-bounds reads as well. This is actually pretty easy to implement - just allocate more memory than was requested and clobber...