STREAMS/UX for the HP 9000 Reference Manual

38
Differences Between STREAMS/UX and System V Release 4 STREAMS
HP-UX Changes to STREAMS/UX System Calls
A select exception event is returned if a poll event POLLPRI or
POLLRDBAND exists on the STREAM. More specifically, an exception
event is returned if a high-priority message or a banded message is waiting
to be read.
signal Modifications
STREAMS/UX supports signals and the HP-UX signal system call.
However, STREAMS/UX does not support extended signals or the siginfo_t
structure described in the siginfo(5) manpage.
write and writev Modifications
Maximum and Minimum Data Buffer Size
The size of the user's data buffer must be within the minimum and maximum
packet size range specified in the topmost STREAM module's streamtab. If
the number of bytes to transfer is not in this range, ERANGE will be
returned. Two exceptions exist in which no error occurs. The first exception
is if the data buffer is too large and either the maximum packet size is
infinite or the minimum packet size is less than or equal to zero. (An infinite
packet size is specified using the define INFPSZ in the stream.h file.) The
second exception occurs if the buffer is too small and the minimum packet
size is less than or equal to zero. With either exception, ERANGE is not
returned, and the data is transferred.
Data Buffer Segmentation
The user's data buffer may be sent in multiple messages. The maximum
amount of data that can be sent in one message is the lower value of the
topmost module's maximum packet size and STRMSGSZ. If the maximum
packet size is infinite, then the top module’s high water mark is taken into
consideration. If the high water mark is more than zero, half of the high
water mark is used; otherwise the page size is used.