#include "srb.h"
Go to the source code of this file.
|
#define | IOCTL_SCSI_BASE FILE_DEVICE_CONTROLLER |
|
#define | DD_SCSI_DEVICE_NAME "\\Device\\ScsiPort" |
|
#define | IOCTL_SCSI_PASS_THROUGH CTL_CODE(IOCTL_SCSI_BASE, 0x0401, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS) |
|
#define | IOCTL_SCSI_MINIPORT CTL_CODE(IOCTL_SCSI_BASE, 0x0402, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS) |
|
#define | IOCTL_SCSI_GET_INQUIRY_DATA CTL_CODE(IOCTL_SCSI_BASE, 0x0403, METHOD_BUFFERED, FILE_ANY_ACCESS) |
|
#define | IOCTL_SCSI_GET_CAPABILITIES CTL_CODE(IOCTL_SCSI_BASE, 0x0404, METHOD_BUFFERED, FILE_ANY_ACCESS) |
|
#define | IOCTL_SCSI_PASS_THROUGH_DIRECT CTL_CODE(IOCTL_SCSI_BASE, 0x0405, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS) |
|
#define | IOCTL_SCSI_GET_ADDRESS CTL_CODE(IOCTL_SCSI_BASE, 0x0406, METHOD_BUFFERED, FILE_ANY_ACCESS) |
|
#define | IOCTL_SCSI_RESCAN_BUS CTL_CODE(IOCTL_SCSI_BASE, 0x0407, METHOD_BUFFERED, FILE_ANY_ACCESS) |
|
#define | IOCTL_SCSI_GET_DUMP_POINTERS CTL_CODE(IOCTL_SCSI_BASE, 0x0408, METHOD_BUFFERED, FILE_ANY_ACCESS) |
|
#define | SCSI_IOCTL_DATA_OUT 0 |
|
#define | SCSI_IOCTL_DATA_IN 1 |
|
#define | SCSI_IOCTL_DATA_UNSPECIFIED 2 |
|
#define | CLASS_SPECIAL_CAUSE_NOT_REPORTABLE_HACK 0x00000020 |
|
#define | SCSIPORT_API |
|
|
NTSTATUS | ScsiClassGetInquiryData (IN PDEVICE_OBJECT PortDeviceObject, IN PSCSI_ADAPTER_BUS_INFO *ConfigInfo) |
|
NTSTATUS | ScsiClassReadDeviceInquiryData (IN PDEVICE_OBJECT DeviceObject, IN BOOLEAN DirectAccess) |
|
NTSTATUS | ScsiClassReadDriveCapacity (IN PDEVICE_OBJECT DeviceObject) |
|
NTSTATUS | ScsiClassGetCapabilities (IN PDEVICE_OBJECT PortDeviceObject, OUT PIO_SCSI_CAPABILITIES *PortCapabilities) |
|
NTSTATUS | ScsiClassGetAddress (IN PDEVICE_OBJECT ClassDeviceObject, OUT PSCSI_ADDRESS Address) |
|
VOID | ScsiClassReleaseQueue (IN PDEVICE_OBJECT DeviceObject) |
|
NTSTATUS | ScsiClassRemoveDevice (IN PDEVICE_OBJECT PortDeviceObject, IN UCHAR PathId, IN UCHAR TargetId, IN UCHAR Lun) |
|
NTSTATUS | ScsiClassClaimDevice (IN PDEVICE_OBJECT PortDeviceObject, IN PSCSI_INQUIRY_DATA LunInfo, IN BOOLEAN Release, OUT PDEVICE_OBJECT *NewPortDeviceObject OPTIONAL) |
|
NTSTATUS | ScsiClassInternalIoControl (IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp) |
|
NTSTATUS | ScsiClassIoCompletion (IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp, IN PVOID Context) |
|
NTSTATUS | ScsiClassSendSrbSynchronous (IN PDEVICE_OBJECT TargetDeviceObject, IN PSCSI_REQUEST_BLOCK _srb, IN PKEVENT event) |
|
VOID | ScsiClassInitSrbBusAddr (PSCSI_REQUEST_BLOCK Srb, PVOID DeviceExtension) |
|
NTSTATUS | DbgWaitForSingleObject_ (IN PVOID Object, IN PLARGE_INTEGER Timeout OPTIONAL) |
|
◆ CLASS_SPECIAL_CAUSE_NOT_REPORTABLE_HACK
#define CLASS_SPECIAL_CAUSE_NOT_REPORTABLE_HACK 0x00000020 |
◆ DD_SCSI_DEVICE_NAME
#define DD_SCSI_DEVICE_NAME "\\Device\\ScsiPort" |
◆ IOCTL_SCSI_BASE
◆ IOCTL_SCSI_GET_ADDRESS
◆ IOCTL_SCSI_GET_CAPABILITIES
◆ IOCTL_SCSI_GET_DUMP_POINTERS
◆ IOCTL_SCSI_GET_INQUIRY_DATA
◆ IOCTL_SCSI_MINIPORT
◆ IOCTL_SCSI_PASS_THROUGH
◆ IOCTL_SCSI_PASS_THROUGH_DIRECT
◆ IOCTL_SCSI_RESCAN_BUS
◆ SCSI_IOCTL_DATA_IN
◆ SCSI_IOCTL_DATA_OUT
◆ SCSI_IOCTL_DATA_UNSPECIFIED
#define SCSI_IOCTL_DATA_UNSPECIFIED 2 |
◆ SCSIPORT_API
◆ DUMP_POINTERS
◆ IO_SCSI_CAPABILITIES
◆ PDUMP_POINTERS
◆ PIO_SCSI_CAPABILITIES
◆ PSCSI_ADAPTER_BUS_INFO
◆ PSCSI_ADDRESS
◆ PSCSI_BUS_DATA
◆ PSCSI_INQUIRY_DATA
◆ PSCSI_PASS_THROUGH
◆ PSCSI_PASS_THROUGH_DIRECT
◆ PSRB_IO_CONTROL
◆ SCSI_ADAPTER_BUS_INFO
◆ SCSI_ADDRESS
◆ SCSI_BUS_DATA
◆ SCSI_INQUIRY_DATA
◆ SCSI_PASS_THROUGH
◆ SCSI_PASS_THROUGH_DIRECT
◆ SRB_IO_CONTROL
◆ DbgWaitForSingleObject_()
◆ ScsiClassClaimDevice()
◆ ScsiClassGetAddress()
◆ ScsiClassGetCapabilities()
◆ ScsiClassGetInquiryData()
◆ ScsiClassInitSrbBusAddr()
◆ ScsiClassInternalIoControl()
◆ ScsiClassIoCompletion()
◆ ScsiClassReadDeviceInquiryData()
◆ ScsiClassReadDriveCapacity()
◆ ScsiClassReleaseQueue()
◆ ScsiClassRemoveDevice()
◆ ScsiClassSendSrbSynchronous()