diff options
Diffstat (limited to 'share/man/man4/clnp.4')
-rw-r--r-- | share/man/man4/clnp.4 | 169 |
1 files changed, 169 insertions, 0 deletions
diff --git a/share/man/man4/clnp.4 b/share/man/man4/clnp.4 new file mode 100644 index 00000000000..9c2bed61a6b --- /dev/null +++ b/share/man/man4/clnp.4 @@ -0,0 +1,169 @@ +.\" $NetBSD: clnp.4,v 1.4 1994/11/30 16:22:07 jtc Exp $ +.\" +.\" Copyright (c) 1990, 1991, 1993 +.\" The Regents of the University of California. All rights reserved. +.\" +.\" 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. +.\" +.\" 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. +.\" +.\" @(#)clnp.4 8.2 (Berkeley) 4/2/94 +.\" +.Dd April 2, 1994 +.Dt CLNP 4 +.Os +.Sh NAME +.Nm clnp +.Nd Connectionless-Mode Network Protocol +.Sh SYNOPSIS +.Fd #include <sys/socket.h> +.Fd #include <netiso/iso.h> +.Fd #include <netiso/clnp.h> +.Ft int +.Fn socket AF_ISO SOCK_RAW 0 +.Sh DESCRIPTION +.Tn CLNP +is the connectionless-mode network protocol used by the +connectionless-mode network service. This protocol is specified in +.Tn ISO +8473. +It may be accessed +through a +.Dq raw socket +for debugging purposes only. +.Tn CLNP +sockets are connectionless, +and are normally used with the +.Xr sendto +and +.Xr recvfrom +calls, though the +.Xr connect 2 +call may also be used to fix the destination for future +packets (in which case the +.Xr read 2 +or +.Xr recv 2 +and +.Xr write 2 +or +.Xr send 2 +system calls may be used). +.Pp +Outgoing packets automatically have a +.Tn CLNP +header prepended to +them. Incoming packets received by the user contain the full +.Tn CLNP +header. +The following +.Xr setsockopt +options apply to +.Tn CLNP : +.Bl -tag -width CLNPOPT_FLAGS +.It Dv CLNPOPT_FLAGS +Sets the flags which are passed to clnp when sending a datagram. +Valid flags are: +.Pp +.Bl -tag -width "CLNP_NO_CKSUM" -offset indent -compact +.It Dv CLNP_NO_SEG +Do not allow segmentation +.It Dv CLNP_NO_ER +Suppress ER pdus +.It Dv CLNP_NO_CKSUM +Do not generate the +.Tn CLNP +checksum +.El +.Pp +.It Dv CLNPOPT_OPTS +Sets +.Tn CLNP +options. The options must be formatted exactly as specified by +.Tn ISO +8473, section 7.5 +.Dq Options Part. +Once an option has been set, it will +be sent on all packets until a different option is set. +.El +.Sh CONGESTION EXPERIENCE BIT +Whenever a packet is transmitted, the globally unique quality of +service option is added to the packet. The sequencing preferred bit and +the low transit delay bit are set in this option. +.Pp +If a packet is forwarded containing the globally unique quality of +service option, and the interface through which the packet will be +transmitted has a queue length greater than +.Em congest_threshold , +then the congestion experienced bit is set in the quality of service option. +.Pp +The threshold value stored in +.Em congest_threshold +may be tuned. +.Pp +When a packet is received with the +globally unique quality of service option present, and the +congestion experienced bit is set, then the transport congestion +control function is called. +.Sh DIAGNOSTICS +A socket operation may fail with one of the following errors returned: +.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; +.It Bq Er ENOTCONN +When trying to send a datagram, but +no destination address is specified, and the socket hasn't been +connected; +.It Bq Er ENOBUFS +When the system runs out of memory for +an internal data structure; +.It Bq Er EADDRNOTAVAIL +When an attempt is made to create a +socket with a network address for which no network interface +exists; +.It Bq Er EHOSTUNREACH +When trying to send a datagram, but no route to the destination +address exists. +.It Bq Er EINVAL +When specifying unsupported options. +.El +.Sh SEE ALSO +.Xr send 2 , +.Xr recv 2 , +.Xr intro 4 , +.Xr iso 4 +.Sh BUGS +Packets are sent with the type code of 0x1d (technically an invalid +packet type) for lack of a better way to identify raw +.Tn CLNP +packets. +.Pp +No more than +.Dv MLEN +bytes of options can be specified. |