TdiBuildSetInformation

VOID
TdiBuildSetInformation (
IN PIRP Irp,
IN PDEVICE_OBJECT DeviceObject,
IN PFILE_OBJECT FileObject,
IN PVOID CompletionRoutine,
IN PVOID Context,
IN UINT SetType,
IN PMDL MdlAddress
);

TdiBuildSetInformation builds an IRP containing a TDI_SET_INFORMATION request message. It sets up the request message in the minor function code member of the I/O stack location and sets IRP_MJ_INTERNAL_DEVICE_CONTROL as a major function code.

Parameters

Irp

Points to the I/O stack location for the kernel-mode client IRP. The current stack location must point to the location in which TdiBuildSetInformation places the parameter list. IRP members related to the set information request are:

IRP Component Meaning
IoStatus.Status Specifies the final status of the set information request.
IoStatus.Information Contains the number of data bytes the internal driver set information function uses.
IrpSp->MajorFunction Specifies IRP_MJ_INTERNAL_DEVICE_CONTROL.
IrpSp->MinorFunction Specifies TDI_SET_INFORMATION.
IrpSp->FileObject Points to an address, connection endpoint, or control channel file object.
MdlAddress Points to a chain of MDLs describing the buffer that contains the information to set.
IrpSp->Parameters Points to a TDI_REQUEST_KERNEL_SET_INFORMATION structure.

DeviceObject

Points to the device object that describes the TDI driver.

FileObject

Points to an address, connection endpoint, or control channel file object.

CompletionRoutine

Points to the client completion function the I/O subsystem can call when I/O is complete. This parameter must be NULL if the I/O subsystem calls no completion function.

Context

Points to the context the client associates with its completion function.

SetType

Specifies the information the client is setting. For set types, see TDI_SET_INFORMATION.

MdlAddress

Points to the MDL chain describing the data the client sets.

See Also

TDI_REQUEST_KERNEL_SET_INFORMATION, TDI_SET_INFORMATION, TdiBuildQueryInformation