&reftitle.constants; &extension.constants;

Constant | Description
`STREAM_FILTER_READ` | Used with `stream_filter_append` and `stream_filter_prepend` to indicate that the specified filter should only be applied when reading
`STREAM_FILTER_WRITE` | Used with `stream_filter_append` and `stream_filter_prepend` to indicate that the specified filter should only be applied when writing
`STREAM_FILTER_ALL` | This constant is equivalent to `STREAM_FILTER_READ | STREAM_FILTER_WRITE`
`PSFS_PASS_ON` | `Return Code` indicating that the userspace filter returned buckets in `$out`.
`PSFS_FEED_ME` | `Return Code` indicating that the userspace filter did not return buckets in `$out` (i.e. No data available).
`PSFS_ERR_FATAL` | `Return Code` indicating that the userspace filter encountered an unrecoverable error (i.e. Invalid data received).
`PSFS_FLAG_NORMAL` | Regular read/write.
`PSFS_FLAG_FLUSH_INC` | An incremental flush.
`PSFS_FLAG_FLUSH_CLOSE` | Final flush prior to closing.
`STREAM_USE_PATH` | `Flag` indicating if the `stream` used the include path.
`STREAM_REPORT_ERRORS` | `Flag` indicating if the `wrapper` is responsible for raising errors using `trigger_error` during opening of the stream. If this flag is not set, you should not raise any errors.
`STREAM_CLIENT_ASYNC_CONNECT` | Open client socket asynchronously. This option must be used together with the `STREAM_CLIENT_CONNECT` flag. Used with `stream_socket_client`.
`STREAM_CLIENT_CONNECT` | Open client socket connection. Client sockets should always include this flag. Used with `stream_socket_client`.
`STREAM_CLIENT_PERSISTENT` | Client socket opened with `stream_socket_client` should remain persistent between page loads.
`STREAM_SERVER_BIND` | Tells a stream created with `stream_socket_server` to bind to the specified target. Server sockets should always include this flag.
`STREAM_SERVER_LISTEN` | Tells a stream created with `stream_socket_server` and bound using the `STREAM_SERVER_BIND` flag to start listening on the socket. Connection-orientated transports (such as TCP) must use this flag, otherwise the server socket will not be enabled. Using this flag for connect-less transports (such as UDP) is an error.
`STREAM_NOTIFY_RESOLVE` | A remote address required for this stream has been resolved, or the resolution failed. See `severity` for an indication of which happened.
`STREAM_NOTIFY_CONNECT` | A connection with an external resource has been established.
`STREAM_NOTIFY_AUTH_REQUIRED` | Additional authorization is required to access the specified resource. Typical issued with `severity` level of `STREAM_NOTIFY_SEVERITY_ERR`.
`STREAM_NOTIFY_MIME_TYPE_IS` | The `mime-type` of resource has been identified, refer to `message` for a description of the discovered type.
`STREAM_NOTIFY_FILE_SIZE_IS` | The `size` of the resource has been discovered.
`STREAM_NOTIFY_REDIRECTED` | The external resource has redirected the stream to an alternate location. Refer to `message`.
`STREAM_NOTIFY_PROGRESS` | Indicates current progress of the stream transfer in `bytes_transferred` and possibly `bytes_max` as well.
`STREAM_NOTIFY_COMPLETED` | There is no more data available on the stream.
`STREAM_NOTIFY_FAILURE` | A generic error occurred on the stream, consult `message` and `message_code` for details.
`STREAM_NOTIFY_AUTH_RESULT` | Authorization has been completed (with or without success).
`STREAM_NOTIFY_SEVERITY_INFO` | Normal, non-error related, notification.
`STREAM_NOTIFY_SEVERITY_WARN` | Non critical error condition. Processing may continue.
`STREAM_NOTIFY_SEVERITY_ERR` | A critical error occurred. Processing cannot continue.
`STREAM_IPPROTO_ICMP` + | Provides a ICMP socket.
`STREAM_IPPROTO_IP` + | Provides a IP socket.
`STREAM_IPPROTO_RAW` + | Provides a RAW socket.
`STREAM_IPPROTO_TCP` + | Provides a TCP socket.
`STREAM_IPPROTO_UDP` + | Provides a UDP socket.
`STREAM_PF_INET` + | Internet Protocol Version 4 (IPv4).
`STREAM_PF_INET6` + | Internet Protocol Version 6 (IPv6).
`STREAM_PF_UNIX` + | Unix system internal protocols.
`STREAM_SOCK_DGRAM` + | Provides datagrams, which are connectionless messages (UDP, for example).
`STREAM_SOCK_RAW` + | Provides a raw socket, which provides access to internal network protocols and interfaces. Usually this type of socket is just available to the root user.
`STREAM_SOCK_RDM` + | Provides a RDM (Reliably-delivered messages) socket.
`STREAM_SOCK_SEQPACKET` + | Provides a sequenced packet stream socket.
`STREAM_SOCK_STREAM` + | Provides sequenced, two-way byte streams with a transmission mechanism for out-of-band data (TCP, for example).
`STREAM_SHUT_RD` | Used with `stream_socket_shutdown` to disable further receptions.
`STREAM_SHUT_WR` | Used with `stream_socket_shutdown` to disable further transmissions.
`STREAM_SHUT_RDWR` | Used with `stream_socket_shutdown` to disable further receptions and transmissions.
`STREAM_CAST_FOR_SELECT` | Stream casting, for when `stream_select` is calling `stream_cast`.
`STREAM_CAST_AS_STREAM` | Stream casting, when `stream_cast` is called otherwise (see above).
`STREAM_META_TOUCH` | Used with `stream_metadata`, to specify `touch` call.
`STREAM_META_OWNER` | Used with `stream_metadata`, to specify `chown` call.
`STREAM_META_OWNER_NAME` | Used with `stream_metadata`, to specify `chown` call.
`STREAM_META_GROUP` | Used with `stream_metadata`, to specify `chgrp` call.
`STREAM_META_GROUP_NAME` | Used with `stream_metadata`, to specify `chgrp` call.
`STREAM_META_ACCESS` | Used with `stream_metadata`, to specify `chmod` call.
`STREAM_BUFFER_NONE` | No buffering.
`STREAM_BUFFER_LINE` | Line buffering.
`STREAM_BUFFER_FULL` | Full buffering.

The constants marked with `+` are meant to be used with `stream_socket_pair`. Please note that some of these constants might not be available in your system.

The `STREAM_META_*` constants are meant to be used with `stream_metadata`.