Etaash Mathamsetty (@etaash.mathamsetty) commented about dlls/kernelbase/loader.c:
- BOOL invalid_parameter;
- if (!name)
- invalid_parameter = !name ||
file ||
((flags & LOAD_LIBRARY_AS_DATAFILE) && (flags & LOAD_LIBRARY_AS_DATAFILE_EXCLUSIVE)) ||
((flags & LOAD_LIBRARY_SEARCH_DEFAULT_DIRS) && (flags & LOAD_WITH_ALTERED_SEARCH_PATH));
- /* Windows 10 22H2 have such validation */
- invalid_parameter = invalid_parameter ||
((flags & LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR) &&
(flags & (LOAD_LIBRARY_AS_DATAFILE | LOAD_LIBRARY_AS_DATAFILE_EXCLUSIVE | LOAD_LIBRARY_AS_IMAGE_RESOURCE)));
- if (flags & LOAD_LIBRARY_UNSUPPORTED_MASK)
- {
WARN( "Pretending to be Windows 10 22H2, unsupported flags: 0x%lx\n, returning ERROR_INVALID_PARAMETER",
I think here it might be better to print something along the lines of "unsupported flags: LOAD_LIBRARY_UNSUPPORTED_MASK" since that's the only flag that would reach this statement