* autoload.cc (NtQueryEaFile): Define.
(NtSetEaFile): Define. * fhandler.cc (fhandler_base::open): Use appropriate open flags in query case when allow_ntea is set. * ntdll.h (struct _FILE_GET_EA_INFORMATION): Define. (struct _FILE_FULL_EA_INFORMATION): Define. (NtQueryEaFile): Declare. (NtSetEaFile): Declare. * ntea.cc (read_ea): Rename from NTReadEA and rewrite using NtQueryEaFile. (write_ea): Rename from NTWriteEA and rewrite using NtSetEaFile. * path.cc (get_symlink_ea): Make static. Add handle parameter to accomodate new read_ea call. (set_symlink_ea): Make static. Add handle parameter to accomodate new write_ea call. (symlink_worker): Call set_symlink_ea while file is still open. (symlink_info::check): Call get_symlink_ea after file has been opened. * security.cc (get_file_attribute): Accomodate new read_ea call. (set_file_attribute): Accomodate new write_ea call. * security.h (read_ea): Change declaration accordingly. (write_ea): Ditto.
This commit is contained in:
@ -392,6 +392,7 @@ LoadDLLfuncNt (NtOpenFile, 24, ntdll)
|
||||
LoadDLLfuncNt (NtOpenSection, 12, ntdll)
|
||||
LoadDLLfuncNt (NtQueryDirectoryObject, 28, ntdll)
|
||||
LoadDLLfuncNt (NtQueryDirectoryFile, 44, ntdll)
|
||||
LoadDLLfuncNt (NtQueryEaFile, 36, ntdll)
|
||||
LoadDLLfuncNt (NtQueryInformationFile, 20, ntdll)
|
||||
LoadDLLfuncNt (NtQueryInformationProcess, 20, ntdll)
|
||||
LoadDLLfuncNt (NtQueryObject, 20, ntdll)
|
||||
@ -399,6 +400,7 @@ LoadDLLfuncNt (NtQuerySystemInformation, 16, ntdll)
|
||||
LoadDLLfuncNt (NtQuerySecurityObject, 20, ntdll)
|
||||
LoadDLLfuncNt (NtQueryVirtualMemory, 24, ntdll)
|
||||
LoadDLLfuncNt (NtQueryVolumeInformationFile, 20, ntdll)
|
||||
LoadDLLfuncNt (NtSetEaFile, 16, ntdll)
|
||||
LoadDLLfuncNt (NtSetSecurityObject, 12, ntdll)
|
||||
LoadDLLfuncNt (NtUnlockVirtualMemory, 16, ntdll)
|
||||
LoadDLLfuncNt (NtUnmapViewOfSection, 8, ntdll)
|
||||
|
Reference in New Issue
Block a user