Win32 API fuzzer to help develop wine project

Open forum for end-user questions about Wine. Before asking questions, check out the Wiki as a first step.
Forum Rules
Locked
qarmin
Level 1
Level 1
Posts: 8
Joined: Tue May 26, 2020 4:32 pm

Win32 API fuzzer to help develop wine project

Post by qarmin »

Hi,

Recently I created fuzzer which test all possible(at this moment ~10 000) functions from Windows API

It should help to find regressions in Wine and also shows which functions crashes or are not implemented

To create it I used Rust and rust bindings to Windows API - https://github.com/microsoft/windows-rs

It contains info about functions - https://github.com/qarmin/Win32Fuzzer/r ... esults.txt
At this moment found:
916 functions which are not implemented in Wine(that means, that executing such functions will crash app with error `wine: Call from 000000017002CA78 to unimplemented function winspool.drv.CloseSpoolFileHandle, aborting`)
32 functions not implemented in Windows 10 20H2(probably functions are available in later windows versions)
186 functions which crashes on Windows(probably also crashes on Linux and not worth to check)
73 functions which crashes app on Linux(but not on Windows), I will report some later

Project can be configured by testing only small subset of classes/functions by adding `settings.txt` file

Binaries to test are available here https://github.com/qarmin/Win32Fuzzer/r ... /tag/1.0.0

Feel free to use it in any way you want
Locked