mirror of
https://github.com/reactos/reactos.git
synced 2024-12-28 10:04:49 +00:00
- Fix incompatible IO_STACK_LOCATION definition in W32api ddk/winddk.k
- Add EXTENDED_IO_STACK_LOCATION to NDK, with the full definition. svn path=/trunk/; revision=17645
This commit is contained in:
parent
d5829ea63d
commit
a5243c8e37
2 changed files with 246 additions and 16 deletions
|
@ -647,6 +647,252 @@ typedef struct _PRIVATE_DRIVER_EXTENSIONS
|
||||||
PVOID ClientIdentificationAddress;
|
PVOID ClientIdentificationAddress;
|
||||||
CHAR Extension[1];
|
CHAR Extension[1];
|
||||||
} PRIVATE_DRIVER_EXTENSIONS, *PPRIVATE_DRIVER_EXTENSIONS;
|
} PRIVATE_DRIVER_EXTENSIONS, *PPRIVATE_DRIVER_EXTENSIONS;
|
||||||
|
|
||||||
|
#if !defined(_ALPHA_)
|
||||||
|
#include <pshpack4.h>
|
||||||
|
#endif
|
||||||
|
typedef struct _EXTENDED_IO_STACK_LOCATION
|
||||||
|
{
|
||||||
|
UCHAR MajorFunction;
|
||||||
|
UCHAR MinorFunction;
|
||||||
|
UCHAR Flags;
|
||||||
|
UCHAR Control;
|
||||||
|
union
|
||||||
|
{
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
PIO_SECURITY_CONTEXT SecurityContext;
|
||||||
|
ULONG Options;
|
||||||
|
USHORT FileAttributes;
|
||||||
|
USHORT ShareAccess;
|
||||||
|
ULONG EaLength;
|
||||||
|
} Create;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
PIO_SECURITY_CONTEXT SecurityContext;
|
||||||
|
ULONG Options;
|
||||||
|
USHORT Reserved;
|
||||||
|
USHORT ShareAccess;
|
||||||
|
struct _NAMED_PIPE_CREATE_PARAMETERS *Parameters;
|
||||||
|
} CreatePipe;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
PIO_SECURITY_CONTEXT SecurityContext;
|
||||||
|
ULONG Options;
|
||||||
|
USHORT Reserved;
|
||||||
|
USHORT ShareAccess;
|
||||||
|
struct _MAILSLOT_CREATE_PARAMETERS *Parameters;
|
||||||
|
} CreateMailslot;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
ULONG Length;
|
||||||
|
ULONG Key;
|
||||||
|
LARGE_INTEGER ByteOffset;
|
||||||
|
} Read;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
ULONG Length;
|
||||||
|
ULONG Key;
|
||||||
|
LARGE_INTEGER ByteOffset;
|
||||||
|
} Write;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
ULONG Length;
|
||||||
|
PUNICODE_STRING FileName;
|
||||||
|
FILE_INFORMATION_CLASS FileInformationClass;
|
||||||
|
ULONG FileIndex;
|
||||||
|
} QueryDirectory;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
ULONG Length;
|
||||||
|
ULONG CompletionFilter;
|
||||||
|
} NotifyDirectory;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
ULONG Length;
|
||||||
|
FILE_INFORMATION_CLASS FileInformationClass;
|
||||||
|
} QueryFile;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
ULONG Length;
|
||||||
|
FILE_INFORMATION_CLASS FileInformationClass;
|
||||||
|
PFILE_OBJECT FileObject;
|
||||||
|
union
|
||||||
|
{
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
BOOLEAN ReplaceIfExists;
|
||||||
|
BOOLEAN AdvanceOnly;
|
||||||
|
};
|
||||||
|
ULONG ClusterCount;
|
||||||
|
HANDLE DeleteHandle;
|
||||||
|
};
|
||||||
|
} SetFile;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
ULONG Length;
|
||||||
|
PVOID EaList;
|
||||||
|
ULONG EaListLength;
|
||||||
|
ULONG EaIndex;
|
||||||
|
} QueryEa;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
ULONG Length;
|
||||||
|
} SetEa;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
ULONG Length;
|
||||||
|
FS_INFORMATION_CLASS FsInformationClass;
|
||||||
|
} QueryVolume;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
ULONG Length;
|
||||||
|
FS_INFORMATION_CLASS FsInformationClass;
|
||||||
|
} SetVolume;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
ULONG OutputBufferLength;
|
||||||
|
ULONG InputBufferLength;
|
||||||
|
ULONG FsControlCode;
|
||||||
|
PVOID Type3InputBuffer;
|
||||||
|
} FileSystemControl;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
PLARGE_INTEGER Length;
|
||||||
|
ULONG Key;
|
||||||
|
LARGE_INTEGER ByteOffset;
|
||||||
|
} LockControl;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
ULONG OutputBufferLength;
|
||||||
|
ULONG InputBufferLength;
|
||||||
|
ULONG IoControlCode;
|
||||||
|
PVOID Type3InputBuffer;
|
||||||
|
} DeviceIoControl;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
SECURITY_INFORMATION SecurityInformation;
|
||||||
|
ULONG POINTER_ALIGNMENT Length;
|
||||||
|
} QuerySecurity;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
SECURITY_INFORMATION SecurityInformation;
|
||||||
|
PSECURITY_DESCRIPTOR SecurityDescriptor;
|
||||||
|
} SetSecurity;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
PVPB Vpb;
|
||||||
|
PDEVICE_OBJECT DeviceObject;
|
||||||
|
} MountVolume;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
PVPB Vpb;
|
||||||
|
PDEVICE_OBJECT DeviceObject;
|
||||||
|
} VerifyVolume;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
struct _SCSI_REQUEST_BLOCK *Srb;
|
||||||
|
} Scsi;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
ULONG Length;
|
||||||
|
PSID StartSid;
|
||||||
|
struct _FILE_GET_QUOTA_INFORMATION *SidList;
|
||||||
|
ULONG SidListLength;
|
||||||
|
} QueryQuota;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
ULONG Length;
|
||||||
|
} SetQuota;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
DEVICE_RELATION_TYPE Type;
|
||||||
|
} QueryDeviceRelations;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
CONST GUID *InterfaceType;
|
||||||
|
USHORT Size;
|
||||||
|
USHORT Version;
|
||||||
|
PINTERFACE Interface;
|
||||||
|
PVOID InterfaceSpecificData;
|
||||||
|
} QueryInterface;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
PDEVICE_CAPABILITIES Capabilities;
|
||||||
|
} DeviceCapabilities;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
PIO_RESOURCE_REQUIREMENTS_LIST IoResourceRequirementList;
|
||||||
|
} FilterResourceRequirements;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
ULONG WhichSpace;
|
||||||
|
PVOID Buffer;
|
||||||
|
ULONG Offset;
|
||||||
|
ULONG Length;
|
||||||
|
} ReadWriteConfig;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
BOOLEAN Lock;
|
||||||
|
} SetLock;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
BUS_QUERY_ID_TYPE IdType;
|
||||||
|
} QueryId;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
DEVICE_TEXT_TYPE DeviceTextType;
|
||||||
|
LCID LocaleId;
|
||||||
|
} QueryDeviceText;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
BOOLEAN InPath;
|
||||||
|
BOOLEAN Reserved[3];
|
||||||
|
DEVICE_USAGE_NOTIFICATION_TYPE Type;
|
||||||
|
} UsageNotification;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
SYSTEM_POWER_STATE PowerState;
|
||||||
|
} WaitWake;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
PPOWER_SEQUENCE PowerSequence;
|
||||||
|
} PowerSequence;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
ULONG SystemContext;
|
||||||
|
POWER_STATE_TYPE Type;
|
||||||
|
POWER_STATE State;
|
||||||
|
POWER_ACTION ShutdownType;
|
||||||
|
} Power;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
PCM_RESOURCE_LIST AllocatedResources;
|
||||||
|
PCM_RESOURCE_LIST AllocatedResourcesTranslated;
|
||||||
|
} StartDevice;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
ULONG_PTR ProviderId;
|
||||||
|
PVOID DataPath;
|
||||||
|
ULONG BufferSize;
|
||||||
|
PVOID Buffer;
|
||||||
|
} WMI;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
PVOID Argument1;
|
||||||
|
PVOID Argument2;
|
||||||
|
PVOID Argument3;
|
||||||
|
PVOID Argument4;
|
||||||
|
} Others;
|
||||||
|
} Parameters;
|
||||||
|
PDEVICE_OBJECT DeviceObject;
|
||||||
|
PFILE_OBJECT FileObject;
|
||||||
|
PIO_COMPLETION_ROUTINE CompletionRoutine;
|
||||||
|
PVOID Context;
|
||||||
|
} IO_STACK_LOCATION, *PIO_STACK_LOCATION;
|
||||||
|
#if !defined(_ALPHA_)
|
||||||
|
#include <poppack.h>
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* FUNCTION TYPES ************************************************************/
|
/* FUNCTION TYPES ************************************************************/
|
||||||
|
|
|
@ -3180,22 +3180,6 @@ typedef struct _IO_STACK_LOCATION {
|
||||||
USHORT ShareAccess;
|
USHORT ShareAccess;
|
||||||
ULONG POINTER_ALIGNMENT EaLength;
|
ULONG POINTER_ALIGNMENT EaLength;
|
||||||
} Create;
|
} Create;
|
||||||
/* FIXME: CreatePipe and CreateMailslot aren't defined in official
|
|
||||||
* DDK/IFS headers. */
|
|
||||||
struct {
|
|
||||||
PIO_SECURITY_CONTEXT SecurityContext;
|
|
||||||
ULONG Options;
|
|
||||||
USHORT Reserved;
|
|
||||||
USHORT ShareAccess;
|
|
||||||
struct _NAMED_PIPE_CREATE_PARAMETERS *Parameters;
|
|
||||||
} CreatePipe;
|
|
||||||
struct {
|
|
||||||
PIO_SECURITY_CONTEXT SecurityContext;
|
|
||||||
ULONG Options;
|
|
||||||
USHORT Reserved;
|
|
||||||
USHORT ShareAccess;
|
|
||||||
struct _MAILSLOT_CREATE_PARAMETERS *Parameters;
|
|
||||||
} CreateMailslot;
|
|
||||||
struct {
|
struct {
|
||||||
ULONG Length;
|
ULONG Length;
|
||||||
ULONG POINTER_ALIGNMENT Key;
|
ULONG POINTER_ALIGNMENT Key;
|
||||||
|
|
Loading…
Reference in a new issue