uniaddr(3)

NAME

unimsg, uni_str2nsap, uni_nsap2str, uni_prefix2str,
uni_e1642nsap,
uni_nsap2e164 - ATM signalling library - address handling

LIBRARY

Begemot ATM signalling library (libunimsg, -lunimsg)

SYNOPSIS

#include <netnatm/addr.h>
int
uni_str2nsap(u_char *nsap, const char *str);
void
uni_nsap2str(char *str, const u_char *nsap, int dots);
void
uni_prefix2str(char  *str,  const u_char *prefix, u_int len,
int dots);
int
uni_e1642nsap(u_char *nsap, const char *e164);
int
uni_nsap2e164(char *e164, const u_char *nsap, int check);

DESCRIPTION

The UNI message library contains a number of utility func
tions to handle
NSAP and E.164 addresses.
The function uni_str2nsap() parses a string and interprets
it as an NSAP
address. The string should consist of exact 40 hexadecimal
digits (upper
and lower case are allowed) and any number of dots at any
position. Any
other character is illegal. The resulting NSAP address is
written to the
buffer pointed to by nsap. This buffer should be at least
20 bytes. On
success the funtion returns 0. If an parsing error happens
-1 is
returned.
The function uni_nsap2str() converts the NSAP address point
ed to by nsap
into a string. For some commonly used NSAP formats (those
with leading
octets 0x39, 0x45 or 0x47) dots may be inserted to make the
address more
readable by passing a non-0 value in dots. The buffer
pointed to by str
should be large enough to hold the resulting string plus the
terminating
NUL. A size of 80 byte is large enough for all cases.
The function uni_prefix2str() converts an NSAP prefix to a
string. The
length of the NSAP prefix in bytes is passed in len.
uni_nsap2str(str,
nsap, dots) is equivalent to uni_prefix2str(str, nsap, 20,
dots).
The function uni_e1642nsap() converts an E.164 address given
as an ASCII
string to an embedded E.164 NSAP address. The string point
ed to by e164
must consist of at least 1 and not more than 15 ASCII dig
its. The function returns 0 on success and -1 if the E.164 address was
malformed.
The function uni_nsap2e164() extracts the E.164 address from
an embedded
E.164 NSAP address. The argument check specifies whether
the NSAP
address should be checked for correct syntax. If check is 0
the last 11
bytes of the address are ignored. If check is 1 the last 11
bytes except
the selector byte must be zero. If check is 2 the last 11
bytes must be
zero. The function returns 0 on success and -1 when the
NSAP address was
not an embedded E.164 NSAP or one of the additional checks
failed.

SEE ALSO

libngatm(3)

AUTHORS

Hartmut Brandt <harti@freebsd.org>
BSD May 23, 2005
Copyright © 2010-2025 Platon Technologies, s.r.o.           Home | Man pages | tLDP | Documents | Utilities | About
Design by styleshout