man pages section 9: DDI and DKI Properties and Data Structures

Exit Print View

Updated: July 2014
 
 

stroptions(9S)

Name

stroptions - options structure for M_SETOPTS message

Synopsis

#include <sys/stream.h>
#include <sys/stropts.h>
#include <sys/ddi.h>
#include <sys/sunddi.h>

Interface Level

Architecture independent level 1 (DDI/DKI)

Description

The M_SETOPTS message contains a stroptions structure and is used to control options in the stream head.

Structure Members


uint_t           so_flags;      /* options to set */
short            so_readopt;    /* read option */
ushort_t         so_wroff;      /* write offset */
ssize_t          so_minpsz;     /* minimum read packet size */
ssize_t          so_maxpsz;     /* maximum read packet size */
size_t           so_hiwat;      /* read queue high water mark */
size_t           so_lowat;      /* read queue low water mark */
unsigned char    so_band;       /* band for water marks */
ushort_t         so_erropt;     /* error option */

The following are the flags that can be set in the so_flags bit mask in the stroptions structure. Note that multiple flags can be set.

SO_READOPT

Set read option.

SO_WROFF

Set write offset.

SO_MINPSZ

Set minimum packet size

SO_MAXPSZ

Set maximum packet size.

SO_HIWAT

Set high water mark.

SO_LOWAT

Set low water mark.

SO_MREADON

Set read notification ON.

SO_MREADOFF

Set read notification OFF.

SO_NDELON

Old TTY semantics for NDELAY reads and writes.

SO_NDELOFFSTREAMS

Semantics for NDELAY reads and writes.

SO_ISTTY

The stream is acting as a terminal.

SO_ISNTTY

The stream is not acting as a terminal.

SO_TOSTOP

Stop on background writes to this stream.

SO_TONSTOP

Do not stop on background writes to this stream.

SO_BAND

Water marks affect band.

SO_ERROPT

Set error option.

When SO_READOPT is set, the so_readopt field of the stroptions structure can take one of the following values. See read (2).

RNORM

Read message normal.

RMSGD

Read message discard.

RMSGN

Read message, no discard.

When SO_BAND is set, so_band determines to which band so_hiwat and so_lowat apply.

When SO_ERROPT is set, the so_erropt field of the stroptions structure can take a value that is either none or one of:

RERRNORM

Persistent read errors; default.

RERRNONPERSIST

Non-persistent read errors.

OR'ed with either none or one of:

WERRNORM

Persistent write errors; default.

WERRNONPERSIST

Non-persistent write errors.

See also

read(2), streamio(7I)

STREAMS Programming Guide