VOID
TdiBuildListen (
IN PIRP Irp,
IN PDEVICE_OBJECT DeviceObject,
IN PFILE_OBJECT FileObject,
IN PVOID CompletionRoutine,
IN PVOID Context,
IN ULONG ListenFlags,
IN PTDI_CONNECTION_INFORMATION RequestConnectionInformation,
OUT PTDI_CONNECTION_INFORMATION ReturnConnectionInformation
);
TdiBuildListen builds an IRP containing a TDI_LISTEN 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 TdiBuildListen places the parameter list. IRP members related to the listen request are:
IRP Component | Meaning |
IoStatus.Status | Specifies the final status of the listen request. |
IrpSp->MajorFunction | Specifies IRP_MJ_INTERNAL_DEVICE_CONTROL. |
IrpSp->MinorFunction | Specifies TDI_LISTEN. |
IrpSp->FileObject | Points to a connection endpoint file object. |
IrpSp->Parameters | Points to a TDI_REQUEST_KERNEL 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.
ListenFlags
Specifies flags the driver uses for the listen operation.
RequestConnectionInformation
Points to a TDI_CONNECTION_INFORMATION structure that defines the valid remote node client address from which the local node client can accept a connection.
ReturnConnectionInformation
Points to the caller–defined memory location to which the driver writes a TDI_CONNECTION_INFORMATION structure providing the remote node client address to which the local node client will listen. If the local node client requires no output information or if the TDI driver does not accommodate such information, this parameter is NULL.
See Also