B.2.2 STREAMS Driver and Module Registration Functions

STREAMS transport drivers and modules are compiled into NT drivers which are not linked into the kernel or the STREAMS binaries. They register their streamtab structure and other information needed by STREAMS by use of the following functions, detailed in the paragraphs below:

StrmRegisterDriver

The function StrmRegisterDriver registers a STREAMS driver with Windows NT.

NTSTATUS
StrmRegisterDriver(
    IN PDRIVER_OBJECT driverobject,
    IN struct streamtab *ptr,
    IN char *subsystem OPTIONAL,
    IN PSTREAMS_TDI_INFO ptdiinfo OPTIONAL
    );
 
Parameters
driverobject
Points to Windows NT driver object that contains the STREAMS driver.
ptr
Points to relevant STREAMS information.
subsystem
Optionally points to subsystem name, or NULL if stack is fully parallel.
ptdiinfo
Optionally points to information about driver for TDI.
StrmRegisterModule

The function StrmRegisterModule registers a STREAMS module with Windows NT.

NTSTATUS
StrmRegisterModule(
    IN PDRIVER_OBJECT driverobject,
    IN struct streamtab *ptr,
    IN char *subsystem OPTIONAL
    );
 
Parameters
driverobject
Points to Windows NT driver object that contains the STREAMS module.
ptr
Points to relevant STREAMS information.
subsystem
Optionally points to subsystem name, or NULL if stack is fully parallel.