summaryrefslogtreecommitdiff
path: root/contrib/ngatm/man/unistruct.3
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/ngatm/man/unistruct.3')
-rw-r--r--contrib/ngatm/man/unistruct.3320
1 files changed, 0 insertions, 320 deletions
diff --git a/contrib/ngatm/man/unistruct.3 b/contrib/ngatm/man/unistruct.3
deleted file mode 100644
index 6f7a651c9fd15..0000000000000
--- a/contrib/ngatm/man/unistruct.3
+++ /dev/null
@@ -1,320 +0,0 @@
-.\"
-.\" Copyright (c) 2001-2003
-.\" Fraunhofer Institute for Open Communication Systems (FhG Fokus).
-.\" All rights reserved.
-.\"
-.\" Author: Hartmut Brandt <harti@freebsd.org>
-.\"
-.\" 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.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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.
-.\"
-.\" $Begemot: libunimsg/man/unistruct.3,v 1.3 2004/07/08 08:21:43 brandt Exp $
-.\"
-.Dd October 30, 2003
-.Dt unistruct 3
-.Os
-.Sh NAME
-.Nm libngatm
-.Nd "ATM signalling library"
-.Sh LIBRARY
-Begemot ATM signalling library
-.Pq libngatm, -lngatm
-.Sh SYNOPSIS
-.In netnatm/msg/unistruct.h
-.In netnatm/msg/unimsglib.h
-.Sh DESCRIPTION
-The
-.Nm
-library handles UNI 4.0 messages.
-For each information element and message
-type the header files contain a structure definition.
-Additionally there
-are a number of help structures and a global context structure for some
-of the library functions.
-This document only describes the common structures.
-For information element and message structures see the header files.
-.Ss LIBRARY CONFIGURATION
-When the library is compiled a number of constants are define in the file
-.Pa uni_config.h .
-They define certain limits.
-Because of the use of these definitions a change
-in any of them requires a complete recompilation of all library code and
-all code that uses the library.
-The following constants are defined (they
-value behind the name is the default value):
-.Bl -tag -width XXXX
-.It Dv UNI_MAX_ERRIE ( Li 50 )
-When decoding information elements and analyzing them the library fills
-an array in the context with the identifiers of IEs that had errors.
-This is the size of this array.
-.It Dv UNI_NUM_IE_GIT ( Li 3 )
-A message is allowed to contain more than one General Identifier Transport
-information element.
-This is the maximum supported number of these IEs.
-.It Dv UNI_NUM_IE_BLLI ( Li 3 )
-The maximum number of BLLI information elements in a SETUP message.
-.It Dv UNI_NUM_IE_CALLEDSUB ( Li 2 )
-The maximum number of Called Subaddress information elements in a SETUP message.
-.It Dv UNI_NUM_IE_CALLINGSUB ( Li 2 )
-The maximum number of Calling Subaddress information elements in a SETUP
-message.
-.It Dv UNI_NUM_IE_TNS ( Li 4 )
-The maximum number of Transit Network Selection information elements in a SETUP
-message.
-.It Dv UNI_TNS_MAXLEN ( Li 4 )
-The maximum size of a name in the TNS IE.
-.It Dv UNI_UU_MAXLEN ( Li 128 )
-Maximum size of user data in the UU IE.
-.It Dv UNI_ADDR_MAXLEN ( Li 20 )
-Maximum address size.
-.It Dv UNI_SUBADDR_MAXLEN ( Li 20 )
-Maximum subaddress size.
-.It Dv UNI_NUM_IE_DTL ( Li 10 )
-Maximum number of DTL information elements in a SETUP message.
-.It Dv UNI_DTL_MAXNUM ( Li 20 )
-Maximum number of identifiers in one DTL information element.
-.El
-.Ss INFORMATION ELEMENTS
-Each information element structure starts with a field of type:
-.Bd -literal -offset indent
-struct uni_iehdr {
- enum uni_coding coding; /* coding standard */
- enum uni_ieact act; /* action indicator */
- u_int pass:1; /* PNNI pass along request */
- u_int present;/* which optional elements are present */
-};
-.Ed
-.Pp
-The
-.Fa coding
-field is the coding standard of the information element and may be one of
-.Dv UNI_CODING_ITU
-or
-.Dv UNI_CODING_NET .
-The action indicator
-.Fa act
-is used for error processing and is one of:
-.Bl -tag -width XXXX
-.It Dv UNI_IEACT_CLEAR
-clear call
-.It Dv UNI_IEACT_IGNORE
-ignore IE and proceed
-.It Dv UNI_IEACT_REPORT
-ignore IE, report and proceed
-.It Dv UNI_IEACT_MSG_IGNORE
-ignore message
-.It Dv UNI_IEACT_MSG_REPORT
-ignore message and report
-.It Dv UNI_IEACT_DEFAULT
-the use action indicator flag was not set.
-.El
-.Pp
-For information elements in PNNI message the
-.Fa pass
-fields contains the pass along flag from the IE header.
-.Pp
-The
-.Fa present
-field is a bit field, which contains four common bits describing the current
-state of the information element.
-The rest of the bits are used by the
-information elements to indicate which of the optional fields of the IE are
-present.
-Most of the IE header files contain definitions for those bits.
-The common bits are:
-.Bd -literal -offset indent
-#define UNI_IE_EMPTY 0x80000000
-#define UNI_IE_PRESENT 0x40000000
-#define UNI_IE_ERROR 0x20000000
-#define UNI_IE_XXX 0x10000000
-.Ed
-.Pp
-The flag
-.Dv UNI_IE_EMPTY
-indicates that the information element is present, but empty (its length is
-zero).
-This is legal for all information elements.
-The flag
-.Dv UNI_IE_PRESENT
-indicates that the IE is present in the message and the flag
-.Dv UNI_IE_ERROR
-indicates that the IE had an error.
-The flag
-.Dv UNI_IE_XXX
-is currently not used.
-.Pp
-The following macros may be used to test or change these flags:
-.Bl -tag -width XXXX
-.It Dv IE_ISPRESENT
-Check whether the IE is present and not empty.
-Returns true in this case.
-.It Dv IE_SETPRESENT
-Set the IE to be present and not empty.
-.It Dv IE_ISEMPTY
-Check whether the IE is present and empty.
-Returns true in this case.
-.It Dv IE_SETEMPTY
-Set the IE to be present and empty.
-.It Dv IE_ISERROR
-Check whether the IE is present and has an error.
-Returns true in this case.
-.It Dv IE_SETERROR
-Sets the IE to be present and to have an error.
-.It Dv IE_ISGOOD
-Checks whether the IE is present, not empty and without error.
-Returns true in this case.
-.El
-.Pp
-For each IE type there is an
-.Vt enum uni_ietype
-definition of the form
-.Dv UNI_IE_*
-in
-.Pa uni_hdr.h .
-.Pp
-.Pa unistruct.h
-contains a
-.Vt union uni_ieall
-that is the union of all IE structures and a
-.Bd -literal -offset indent
-struct uni_ie {
- enum uni_ietype ietype;
- union uni_ieall u;
-};
-.Ed
-.Ss MESSAGES
-Each message structure starts with a
-.Bd -literal -offset indent
-struct uni_msghdr {
- struct uni_cref cref;
- enum uni_msgact act; /* action indicator */
- u_int pass:1; /* PNNI pass along request */
-};
-.Ed
-.Pp
-The
-.Fa cref
-is the call reference:
-.Bd -literal -offset indent
-struct uni_cref {
- u_int flag;
- u_int cref;
-};
-.Ed
-.Pp
-There are two special call references:
-.Dv CREF_GLOBAL
-and
-.Dv CREF_DUMMY .
-The
-.Fa act
-field is the message action indicator and has one of the following values:
-.Bl -tag -width XXXX
-.It Dv UNI_MSGACT_CLEAR
-clear call
-.It Dv UNI_MSGACT_IGNORE
-ignore message
-.It Dv UNI_MSGACT_REPORT
-send STATUS message
-.It Dv UNI_MSGACT_DEFAULT
-default handling for this message type
-.El
-.Pp
-The
-.Fa pass
-field is the pass along indicator in the case of PNNI messages.
-.Pp
-For each message type there is a
-.Vt enum uni_msgtype
-definition of the form
-.Dv UNI_*
-in
-.Pa uni_hdr.h .
-.Pa uni_struct.h
-contains a
-.Vt union_msgall
-that is the union of all message structures and a
-.Bd -literal -offset indent
-struct uni_all {
- enum uni_msgtype mtype;
- union uni_msgall u;
-};
-.Ed
-.Ss CONTEXTS
-The header file
-.Pa unimsglib.h
-contains a definition of a
-.Vt struct uni_context
-that is used to minimize the number of arguments passed to certain functions
-and to avoid the use of global variables.
-This structure has the following
-public fields (all other fields are used internally by the library):
-.Bl -tag -width XXXX
-.It Fa err
-This is an array consisting of the following structures:
-.Bd -literal -offset indent
-struct uni_ierr {
- enum uni_ierr_type err; /* what error */
- enum uni_ieact act; /* the action indicator */
- u_int ie:8; /* the ie type */
- u_int man:1; /* mandatory flag */
- u_int epref:1;/* Q.2971 9.5.3.2.1 low-pri epref */
-};
-.Ed
-When decoding information elements the information about IEs with errors is
-stuffed into this array.
-.It Fa errcnt
-The current number of IEs in
-.Fa err .
-.It Fa q2932
-Enable the Q.2932.1 Generic Functional Protocol.
-Currently only message
-and IE decoding/encoding is supported.
-The signalling part is still missing.
-.It Fa pnni
-Enable PNNI extensions.
-Currently only message and IE decoding/encoding
-is supported.
-The signalling part is still missing.
-.It Fa git_hard
-Do hard checking on GIT information elements.
-.It Fa bearer_hard
-Do hard checking on Broadband Bearer IEs.
-This involves rejecting old bearer
-type values.
-.It Fa cause_hard
-Do hard checking on Cause information elements.
-.It Fa multiline
-This is used by the printing routines.
-Legal values are 0 to 4 and give
-different kinds of printout.
-.It Fa tabsiz
-The size of tabulation to use in printing.
-4 is a good value.
-.El
-.Sh SEE ALSO
-.Xr libunimsg 3 ,
-.Sh STANDARDS
-This implementation conforms to the applicable ITU-T
-recommendations and ATM Forum standards with the exception of some limitations
-(see the Configuration section).
-.Sh AUTHORS
-.An Hartmut Brandt Aq harti@freebsd.org