https://git.reactos.org/?p=reactos.git;a=commitdiff;h=901c457b633881ffc5984f...
commit 901c457b633881ffc5984f4901742c3bec0ac17a Author: Victor Perevertkin victor.perevertkin@reactos.org AuthorDate: Fri Nov 13 03:15:31 2020 +0300 Commit: Victor Perevertkin victor.perevertkin@reactos.org CommitDate: Fri Nov 13 03:15:31 2020 +0300
[PSDK] Add more 32 and 64-bit definitions to ntddscsi.h --- sdk/include/psdk/ntddscsi.h | 66 +++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 64 insertions(+), 2 deletions(-)
diff --git a/sdk/include/psdk/ntddscsi.h b/sdk/include/psdk/ntddscsi.h index 14a9cef230c..0d9001b34fb 100644 --- a/sdk/include/psdk/ntddscsi.h +++ b/sdk/include/psdk/ntddscsi.h @@ -20,9 +20,9 @@ DEFINE_GUID(WmiScsiAddressGuid,0x53f5630fL,0xb6bf,0x11d0,0x94,0xf2,0x00,0xa0,0xc extern "C" { #endif
-#define IOCTL_SCSI_BASE FILE_DEVICE_CONTROLLER +#define IOCTL_SCSI_BASE FILE_DEVICE_CONTROLLER
-#define DD_SCSI_DEVICE_NAME "\Device\ScsiPort" +#define DD_SCSI_DEVICE_NAME "\Device\ScsiPort" #define DD_SCSI_DEVICE_NAME_U L"\Device\ScsiPort"
#define IOCTL_SCSI_PASS_THROUGH CTL_CODE(IOCTL_SCSI_BASE,0x0401,METHOD_BUFFERED,FILE_READ_ACCESS | FILE_WRITE_ACCESS) @@ -126,6 +126,68 @@ extern "C" { UCHAR Cdb[ANYSIZE_ARRAY]; } SCSI_PASS_THROUGH_EX, *PSCSI_PASS_THROUGH_EX;
+typedef struct _SCSI_PASS_THROUGH_DIRECT_EX +{ + ULONG Version; + ULONG Length; + ULONG CdbLength; + ULONG StorAddressLength; + UCHAR ScsiStatus; + UCHAR SenseInfoLength; + UCHAR DataDirection; + UCHAR Reserved; + ULONG TimeOutValue; + ULONG StorAddressOffset; + ULONG SenseInfoOffset; + ULONG DataOutTransferLength; + ULONG DataInTransferLength; + PVOID DataOutBuffer; + PVOID DataInBuffer; + UCHAR Cdb[ANYSIZE_ARRAY]; +} SCSI_PASS_THROUGH_DIRECT_EX, *PSCSI_PASS_THROUGH_DIRECT_EX; + +#if defined(_WIN64) +typedef struct _SCSI_PASS_THROUGH32_EX +{ + ULONG Version; + ULONG Length; + ULONG CdbLength; + ULONG StorAddressLength; + UCHAR ScsiStatus; + UCHAR SenseInfoLength; + UCHAR DataDirection; + UCHAR Reserved; + ULONG TimeOutValue; + ULONG StorAddressOffset; + ULONG SenseInfoOffset; + ULONG DataOutTransferLength; + ULONG DataInTransferLength; + ULONG32 DataOutBufferOffset; + ULONG32 DataInBufferOffset; + UCHAR Cdb[ANYSIZE_ARRAY]; +} SCSI_PASS_THROUGH32_EX, *PSCSI_PASS_THROUGH32_EX; + +typedef struct _SCSI_PASS_THROUGH_DIRECT32_EX +{ + ULONG Version; + ULONG Length; + ULONG CdbLength; + ULONG StorAddressLength; + UCHAR ScsiStatus; + UCHAR SenseInfoLength; + UCHAR DataDirection; + UCHAR Reserved; + ULONG TimeOutValue; + ULONG StorAddressOffset; + ULONG SenseInfoOffset; + ULONG DataOutTransferLength; + ULONG DataInTransferLength; + VOID * POINTER_32 DataOutBuffer; + VOID * POINTER_32 DataInBuffer; + UCHAR Cdb[ANYSIZE_ARRAY]; +} SCSI_PASS_THROUGH_DIRECT32_EX, *PSCSI_PASS_THROUGH_DIRECT32_EX; +#endif + typedef struct _ATA_PASS_THROUGH_EX { USHORT Length; USHORT AtaFlags;