xref: /illumos-gate/usr/src/man/man9s/stroptions.9s (revision 2bbdd445a21f9d61f4a0ca0faf05d5ceb2bd91f3)
te
Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved.
Copyright 1989 AT&T
The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
STROPTIONS 9S "Nov 14, 1996"
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