Commit graph

11 commits

Author SHA1 Message Date
Timo Kreuzer 094a90ad4e [NTOS:PS] Fix an issue with PROCESS_DEVICEMAP_INFORMATION size on 64 bit builds
The PROCESS_DEVICEMAP_INFORMATION  union has 2 fields, one is a handle, the other one is a structure of 36 bytes (independent of architecture). The handle forces 64 bit alignment on 64 bit builds, making the structure 4 bytes bigger than on 32 bit builds. The site is checked in NtQueryInformationProcess (case ProcessDeviceMap). The expected size on x64 is the size of the Query structure without alignment. autocheck correctly passes the site of the Query union member, while smss passes the full size of PROCESS_DEVICEMAP_INFORMATION. Packing the structure is not an option, since it is defined in public headers without packing. Using the original headers sizeof(PROCESS_DEVICEMAP_INFORMATION) is 0x28, sizeof(PROCESS_DEVICEMAP_INFORMATION::Query) is 0x24.
2018-08-17 22:08:37 +02:00
Hermès Bélusca-Maïto 2158f31b71
[KERNEL32] Use RtlStringCbCopyNW() to correctly fill the WIN32_FIND_DATA.cFileName and cAlternateFileName members without any overflow and with a terminating NULL character. 2018-07-22 21:32:38 +02:00
Pierre Schweitzer a80f5f53e7 [KERNEL32] In GetLogicalDrives(), if NtQueryInformationProcess() call succeed, but return drive map is empty, make sure returned error is success.
Patch by Alex Ionescu
2017-10-29 14:49:59 +01:00
Pierre Schweitzer d7ee95b28b [KERNEL32]: w2k3ify GetDriveTypeA() 2017-10-05 23:43:10 +02:00
Pierre Schweitzer cb17d5dba4 [KERNEL32]: Reimplement GetDriveTypeW(). This allows providing a quick path for DOS drives and fixes a few detection cases. It allows brings in support for mount points. 2017-10-05 23:41:26 +02:00
Pierre Schweitzer 676bd0cf37 [KERNEL32]: Finally get rid of no longer used function InternalOpenDirW() 2017-10-05 22:14:44 +02:00
Pierre Schweitzer 8b6518139d [KERNEL32]: Reimplement GetDiskFreeSpaceExA() to make it w2k3 compliant 2017-10-05 22:14:44 +02:00
Pierre Schweitzer 1e2424ee98 [KERNEL32]: Refactor a bit GetDiskFreeSpaceExW(), no ground breaking changes 2017-10-05 22:14:44 +02:00
Pierre Schweitzer 87448f3d8b [KERNEL32]: Reimplement GetDiskFreeSpaceA() to make it w2k3 compliant 2017-10-05 22:14:44 +02:00
Pierre Schweitzer 5bee374c82 [KERNEL32]: Reimplement GetDiskFreeSpaceW() to fix various issues in it. It also brings support for appcompat 2017-10-05 22:14:44 +02:00
Colin Finck c2c66aff7d Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
Renamed from reactos/dll/win32/kernel32/client/file/disk.c (Browse further)