- Fix build failure on Linux by linking with the math library.
- Don't hard-code the temporary directory to E:\ on Windows.
- Relax some comparisons that don't work reliably on Windows:
- Security descriptor
- Last access time
- Sparse file attribute (clear only)
- Relax the timestamp comparisons when running on an ext4 filesystem,
since ext4 doesn't support the full timestamp range that Windows does.
Also, generate more timestamps that are close to the present date.
- Make the command-line argument give the number of seconds to run,
rather than the number of iterations. This makes it possible to run
wlfuzz for 2 minutes in GitHub Actions, like the libFuzzer jobs.
- Increase coverage by using a different random seed on each run.
- Make wlfuzz initialize wimlib with STRICT_{CAPTURE,APPLY}_PRIVILIGES
on Windows. I.e., don't allow running wlfuzz as non-Administrator.
- Print security descriptors and timestamps when they differ.
- Add GitHub Actions jobs that run wlfuzz on Linux and Windows.