read
read(S)
may be used to retrieve data that has arrived over the transport
connection.
The
tirdwr
module will pass data through to the user from the transport provider.
However, any other event or indication passed to the user
from the provider will be processed by
tirdwr
as follows:
-
read
cannot process expedited data because it cannot distinguish expedited
data from normal data for the user.
If an expedited data indication is received,
tirdwr
will generate a fatal protocol error,
EPROTO,
on that Stream.
This error causes further system calls to fail.
You should therefore not communicate with a process that is sending
expedited data.
-
If an abortive disconnect indication is received,
tirdwr
will discard it and generate a
STREAMS
hangup condition on that Stream.
Subsequent
read
calls will retrieve any remaining data, and then
read
will return zero for all further calls (indicating end-of-file).
-
If an orderly release indication is received,
tirdwr
will discard the indication and deliver a zero-length
STREAMS
message to the user.
As described in
read(S),
this notifies the user of end-of-file by returning 0.
-
If any other Transport Interface indication is received,
tirdwr
generates a fatal protocol error,
EPROTO,
on that Stream.
This causes further system calls to fail.
If a user pushes
tirdwr
onto a Stream after the connection has been established, no indication
will be generated.
© 2005 The SCO Group, Inc. All rights reserved.
SCO OpenServer Release 6.0.0 -- 02 June 2005