VOID
TdiBuildSend (
IN PIRP Irp,
IN PDEVICE_OBJECT DeviceObject,
IN PFILE_OBJECT FileObject,
IN PVOID CompletionRoutine,
IN PVOID Context,
IN PMDL MdlAddress,
IN ULONG SendFlags,
IN ULONG SendLength
);
TdiBuildSend builds an IRP containing a TDI_SEND 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 TdiBuildSend places the parameter list. IRP members related to the send request are:
IRP Component | Meaning |
IoStatus.Status | Specifies the final status of the send request. |
IoStatus.Information | Contains the number of data bytes the internal driver send function writes. |
IrpSp->MajorFunction | Specifies IRP_MJ_INTERNAL_DEVICE_CONTROL. |
IrpSp->MinorFunction | Specifies TDI_SEND. |
IrpSp->FileObject | Points to a connection endpoint file object. |
IrpSp->Parameters | Points to a TDI_REQUEST_KERNEL_SEND structure. |
DeviceObject
Points to the device object that describes the TDI driver.
FileObject
Points to a connection endpoint 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.
MdlAddress
Points to a chain of MDLs describing the data the client is sending.
SendFlags
Specifies flags that the internal driver send function uses for the send operation.
SendLength
Specifies the length, in bytes, of the send buffer.
See Also