HPUX socket[7]

socket in anderen Kapiteln des hpux Handbuch:
socket.2
socket(7) socket(7)
NAME
socket - Interprocess communications
DESCRIPTION
Sockets are communication endpoints that allow processes to
communicate either locally or remotely. They are accessed by means of
a set of system calls (see socket(2)).
The following ioctl() requests are defined in <sys/ioctl.h> (see
ioctl(2)):
FIOSNBIO If the int with the address arg is non-zero, the socket
is put into non-blocking mode. Otherwise, the socket
is put into blocking mode. Blocking mode is the
default. The FIONBIO request is equivalent to the
FIOSNBIO request, although using FIONBIO is not
recommended. See accept(2), connect(2), recv(2), and
send(2) for an explanation of how non-blocking mode is
used.
FIONREAD For SOCK_STREAM sockets, the number of bytes currently
readable from this socket is returned in the integer
with the address arg. For SOCK_DGRAM sockets, the
number of bytes currently readable, plus the size of
the sockaddr structure (defined in <sys/socket.h>), is
returned in the integer with the address arg.
SIOCATMARK For SOCK_STREAM TCP sockets, on return the integer with
the address arg is non-zero if the inbound TCP stream
has been read up to where the out-of-band data byte
starts; otherwise the inbound TCP stream has not yet
been read up to where the out-of-band data byte starts.
For sockets other than SOCK_STREAM TCP sockets, on
return the integer with the address arg is always zero.
SIOCSPGRP This request sets the process group or process ID
associated with the socket to be the value of the
integer with the address arg. A process group or
process ID associated with the socket in this manner is
signaled when the state of the socket changes: SIGURG
is delivered upon the receipt of out-of-band data;
SIGIO is delivered if the socket is asynchronous, as
described in FIOASYNC below. If the value of the
integer with the address arg is positive, the signal is
sent to the process whose process ID matches the value
specified. If the value is negative, the signal is
sent to all the processes that have a process group
equal to the absolute value of the value specified. If
the value is zero, no signal is sent to any process.
It is necesary to issue this request with a non-zero
integer value to enable the signal delivery mechanism
Hewlett-Packard Company - 1 - HP-UX Release 9.0: August 1992
socket(7) socket(7)
described above; the default for the process group or
process ID value is zero.
SIOCGPGRP This request returns the process group or process ID
associated with the socket in the integer with the
address arg. See the explanation for SIOCSPGRP above
for more details on the meaning of the integer value
returned.
FIOASYNC If the integer whose address is arg is non-zero, this
request sets the state of the socket as asynchronous.
Otherwise, the socket is put into synchronous mode (the
default). Asynchronous mode enables the delivery of
the SIGIO signal when:
o New data arrives, or
o For connection-oriented protocols, whenever
additional outgoing buffer space becomes
available, or when the connection is
established or broken.
The process group or process ID associated with the
socket must be non-zero in order for SIGIO signals to
be sent; the signal is delivered according to the
semantics of SIOCSPGRP descibed above.
The fcntl(2) O_NDELAY and O_NONBLOCK flags (defined in <sys/file.h>)
are supported by sockets. If the O_NONBLOCK flag is set, the socket
is put into POSIX-style non-blocking mode. If the O_NDELAY flag is
set, the socket is put into non-blocking mode. Otherwise, the socket
is put into blocking mode. Blocking mode is the default. See
accept(2), connect(2), recv(2), and send(2) for an explanation of how
these form of non-blocking mode is used.
Since both the fcntl() O_NONBLOCK and O_NDELAY flags and ioctl()
FIOSNBIO requests are supported, some clarification on how these
features interact is necessary. If the O_NONBLOCK or O_NDELAY flag
has been set, recv() and send() requests behave accordingly,
regardless of any FIOSNBIO requests. If neither the O_NONBLOCK flag
nor the O_NDELAY flag has been set, FIOSNBIO requests control the the
behavior of recv() and send().
DEPENDENCIES
This entry describes the use of the TCP protocol as it applies to the
Berkeley Interprocess Communication utility. It does not apply to the
use of TCP for the NetIPC utility. Refer to the NetIPC Programmer's
Guide for information about NetIPC.
AF_CCITT Only
Only the FIOSNBIO, FIONREAD, SIOCGPGRP, and SIOCSPGRP ioctl() requests
Hewlett-Packard Company - 2 - HP-UX Release 9.0: August 1992
socket(7) socket(7)
are defined for af_ccitt sockets. See socketx25(7).
AUTHOR
socket was developed by the University of California, Berkeley.
SEE ALSO
fcntl(2), getsockopt(2), ioctl(2), socket(2), socketx25(7).
Hewlett-Packard Company - 3 - HP-UX Release 9.0: August 1992