X-Git-Url: https://git.subgeniuskitty.com/unix-history/.git/blobdiff_plain/1c15e88899094343f75aeba04122cd96a96b428e..ad7871609881e73855d0b04da49b486cd93efca7:/usr/src/share/man/man4/udp.4 diff --git a/usr/src/share/man/man4/udp.4 b/usr/src/share/man/man4/udp.4 index 9decba6fb1..939866b710 100644 --- a/usr/src/share/man/man4/udp.4 +++ b/usr/src/share/man/man4/udp.4 @@ -1,89 +1,137 @@ -.\" Copyright (c) 1983 The Regents of the University of California. -.\" All rights reserved. +.\" Copyright (c) 1983, 1991, 1993 +.\" The Regents of the University of California. All rights reserved. .\" -.\" Redistribution and use in source and binary forms are permitted provided -.\" that: (1) source distributions retain this entire copyright notice and -.\" comment, and (2) distributions including binaries display the following -.\" acknowledgement: ``This product includes software developed by the -.\" University of California, Berkeley and its contributors'' in the -.\" documentation or other materials provided with the distribution and in -.\" all advertising materials mentioning features or use of this software. -.\" Neither the name of the University nor the names of its contributors may -.\" be used to endorse or promote products derived from this software without -.\" specific prior written permission. -.\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED -.\" WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF -.\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. All advertising materials mentioning features or use of this software +.\" must display the following acknowledgement: +.\" This product includes software developed by the University of +.\" California, Berkeley and its contributors. +.\" 4. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. .\" -.\" @(#)udp.4 6.4 (Berkeley) 6/23/90 +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. .\" -.TH UDP 4 "June 23, 1990" -.UC 5 -.SH NAME -udp \- Internet User Datagram Protocol -.SH SYNOPSIS -.B #include -.br -.B #include -.PP -.B s = socket(AF_INET, SOCK_DGRAM, 0); -.SH DESCRIPTION -UDP is a simple, unreliable datagram protocol which is used -to support the SOCK_DGRAM abstraction for the Internet -protocol family. UDP sockets are connectionless, and are +.\" @(#)udp.4 8.1 (Berkeley) 6/5/93 +.\" +.Dd June 5, 1993 +.Dt UDP 4 +.Os BSD 4.2 +.Sh NAME +.Nm udp +.Nd Internet User Datagram Protocol +.Sh SYNOPSIS +.Fd #include +.Fd #include +.Ft int +.Fn socket AF_INET SOCK_DGRAM 0 +.Sh DESCRIPTION +.Tn UDP +is a simple, unreliable datagram protocol which is used +to support the +.Dv SOCK_DGRAM +abstraction for the Internet +protocol family. +.Tn UDP +sockets are connectionless, and are normally used with the -.I sendto +.Xr sendto and -.IR recvfrom +.Xr recvfrom calls, though the -.IR connect (2) +.Xr connect 2 call may also be used to fix the destination for future packets (in which case the -.IR recv (2) +.Xr recv 2 or -.IR read (2) +.Xr read 2 and -.IR send (2) +.Xr send 2 or -.IR write(2) +.Xr write 2 system calls may be used). -.PP -UDP address formats are identical to those used by -TCP. In particular UDP provides a port identifier in addition -to the normal Internet address format. Note that the UDP port -space is separate from the TCP port space (i.e. a UDP port -may not be \*(lqconnected\*(rq to a TCP port). In addition broadcast +.Pp +.Tn UDP +address formats are identical to those used by +.Tn TCP . +In particular +.Tn UDP +provides a port identifier in addition +to the normal Internet address format. Note that the +.Tn UDP +port +space is separate from the +.Tn TCP +port space (i.e. a +.Tn UDP +port +may not be +.Dq connected +to a +.Tn TCP +port). In addition broadcast packets may be sent (assuming the underlying network supports -this) by using a reserved \*(lqbroadcast address\*(rq; this address +this) by using a reserved +.Dq broadcast address ; +this address is network interface dependent. -.PP -Options at the IP transport level may be used with UDP; see -.IR ip (4). -.SH DIAGNOSTICS +.Pp +Options at the +.Tn IP +transport level may be used with +.Tn UDP ; +see +.Xr ip 4 . +.Sh DIAGNOSTICS A socket operation may fail with one of the following errors returned: -.TP 15 -[EISCONN] +.Bl -tag -width [EADDRNOTAVAIL] +.It Bq Er EISCONN when trying to establish a connection on a socket which already has one, or when trying to send a datagram with the destination address specified and the socket is already connected; -.TP 15 -[ENOTCONN] +.It Bq Er ENOTCONN when trying to send a datagram, but no destination address is specified, and the socket hasn't been connected; -.TP 15 -[ENOBUFS] +.It Bq Er ENOBUFS when the system runs out of memory for an internal data structure; -.TP 15 -[EADDRINUSE] +.It Bq Er EADDRINUSE when an attempt is made to create a socket with a port which has already been allocated; -.TP 15 -[EADDRNOTAVAIL] +.It Bq Er EADDRNOTAVAIL when an attempt is made to create a socket with a network address for which no network interface exists. -.SH SEE ALSO -getsockopt(2), recv(2), send(2), socket(2), intro(4), inet(4), ip(4) +.El +.Sh SEE ALSO +.Xr getsockopt 2 , +.Xr recv 2 , +.Xr send 2 , +.Xr socket 2 , +.Xr intro 4 , +.Xr inet 4 , +.Xr ip 4 +.Sh HISTORY +The +.Nm +protocol appeared in +.Bx 4.2 .