Pushes a module onto the top of the current stream.
The I_PUSH operation pushes the module whose name is pointed to by the arg parameter onto the top of the current stream, just below the stream head. It then calls the open routine of the newly-pushed module.
This operation is part of STREAMS Kernel Extensions.
If unsuccessful, the errno global variable is set to one of the following values:
Value | Description |
---|---|
EINVAL | Incorrect module name. |
EFAULT | The arg parameter points outside the allocated address space. |
ENXIO | Open routine of new module failed. |
ENXIO | Hangup received on the fildes parameter. |