IOCTL_GENERICUSBFN_TRANSFER_IN_APPEND_ZERO_PKT - NtDoc

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

// CTL_CODE(0x0022, 0x004, METHOD_IN_DIRECT, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_GENERICUSBFN_TRANSFER_IN_APPEND_ZERO_PKT 0x0022C011
View the official Win32 API reference

NtDoc

No description available.

Win32 API reference (ni-genericusbfnioctl-ioctl_genericusbfn_transfer_in_append_zero_pkt)

IOCTL_GENERICUSBFN_TRANSFER_IN_APPEND_ZERO_PKT IOCTL

Description

This I/O control code (IOCTL) is sent by a user-mode service or application to issue an IN direction transfer on the endpoint that corresponds to the specified pipe ID in the input buffer. A zero-length packet is automatically appended after the data in the output buffer is successfully sent and the transfer payload size is a multiple of the endpoint's maximum packet size. This should be used on the last I/O request that corresponds to a Universal Serial Bus (USB) transfer.

Parameters

Input buffer

A USBFNPIPEID that specifies the ID of the pipe to conduct the transfer on.

Input buffer length

The size of a USBFNPIPEID.

Output buffer

The data to send to the host.

Output buffer length

The size of the output buffer in bytes.

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

If this I/O control code (IOCTL) is being called synchronously, set the lpOverlapped parameter to NULL. If this IOCTL is called asynchronously, assign the lpOverlapped parameter to a pointer to an OVERLAPPED structure that contains a handle to an event object. The event objects signal when the operation is completed.

The return value is a BOOL value that indicates success or failure of the operation. TRUE indicates success, FALSE otherwise.

See also

DeviceIoControl

IOCTL_GENERICUSBFN_TRANSFER_IN

IOCTL_GENERICUSBFN_TRANSFER_OUT