-.(z
-.ft CW
- /*
- * The variable descriptor may be the descriptor of either a file
- * or of a socket.
- */
- cc = read(descriptor, buf, nbytes)
- int cc, descriptor; char *buf; int nbytes;
-
- /*
- * An iovec can include several source buffers.
- */
- cc = readv(descriptor, iov, iovcnt)
- int cc, descriptor; struct iovec *iov; int iovcnt;
-
- cc = write(descriptor, buf, nbytes)
- int cc, descriptor; char *buf; int nbytes;
-
- cc = writev(descriptor, iovec, ioveclen)
- int cc, descriptor; struct iovec *iovec; int ioveclen;
-
- /*
- * The variable ``sock'' must be the descriptor of a socket.
- * Flags may include MSG_OOB and MSG_PEEK.
- */
- cc = send(sock, msg, len, flags)
- int cc, sock; char *msg; int len, flags;
-
- cc = sendto(sock, msg, len, flags, to, tolen)
- int cc, sock; char *msg; int len, flags;
- struct sockaddr *to; int tolen;
-
- cc = sendmsg(sock, msg, flags)
- int cc, sock; struct msghdr msg[]; int flags;
-
- cc = recv(sock, buf, len, flags)
- int cc, sock; char *buf; int len, flags;
-
- cc = recvfrom(sock, buf, len, flags, from, fromlen)
- int cc, sock; char *buf; int len, flags;
- struct sockaddr *from; int *fromlen;
-
- cc = recvmsg(sock, msg, flags)
- int cc, socket; struct msghdr msg[]; int flags;
-.ft
-.sp 1
-.ce 1
-Figure 10\ \ Varieties of read and write commands
-.)z