IOCTL_SCSISCAN_SET_TIMEOUT - NtDoc

Native API online documentation, based on the System Informer (formerly Process Hacker) phnt headers
// scsiscan.h

// CTL_CODE(0x0019, 0x007, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_SCSISCAN_SET_TIMEOUT 0x0019001C
View the official Windows Driver Kit DDI reference

NtDoc

No description available.

Windows Driver Kit DDI reference (ni-scsiscan-ioctl_scsiscan_set_timeout)

IOCTL_SCSISCAN_SET_TIMEOUT IOCTL

Description

The IOCTL_SCSISCAN_SET_TIMEOUT control code modifies the time-out value used by the kernel-mode still image driver for SCSI buses when it accesses a device.

Parameters

Major code

Input buffer

The location containing a time-out value, in half seconds.

Input buffer length

Size of the input buffer

Output buffer

Set to NULL.

Output buffer length

Set to 0.

Input/output buffer

Input/output buffer length

Status block

Irp->IoStatus.Status is set to STATUS_SUCCESS if the request is successful. Otherwise, Status to the appropriate error condition as a NTSTATUS code.

Remarks

When the kernel-mode SCSI still image driver sends a SCSI command to a device, by default the driver waits 30 seconds before timing out the operation. You can change the time-out value for a device by calling the DeviceloControl function with the IOCTL_SCSISCAN_CMD control code. The specified time-out value stays in effect until the device is closed.

Time-out values are specified in half seconds. Thus a specified value of 100 causes the driver to wait 50 seconds before timing out the device.

For more information, see Accessing Kernel-Mode Drivers for Still Image Devices.

Code example

ULONG timeout = 240;
fRet = DeviceIoControl( m_DeviceDataHandle,
        (DWORD)IOCTL_SCSISCAN_SET_TIMEOUT,
        &timeout,
        sizeof(ULONG),
        NULL, NULL, &dwBytesReturned, NULL);

See also

Creating IOCTL Requests in Drivers

WdfIoTargetSendInternalIoctlOthersSynchronously

WdfIoTargetSendInternalIoctlSynchronously

WdfIoTargetSendIoctlSynchronously