ISO_ADDR(3) BSD Programmer's Manual ISO_ADDR(3)
NAME
isoaddr, isontoa - elementary network address conversion routines for
Open System Interconnection
SYNOPSIS
#include <sys/types.h>
#include <netiso/iso.h>
struct isoaddr *
isoaddr(char *cp)
char *
isontoa(struct isoaddr *isoa)
DESCRIPTION
The routine isoaddr() interprets character strings representing OSI ad-
dresses, returning binary information suitable for use in system calls.
The routine isontoa() takes OSI addresses and returns ASCII strings rep-
resenting NSAPs (network service access points) in a notation inverse to
that accepted by isoaddr().
Unfortunately, no universal standard exists for representing OSI network
addresses.
The format employed by isoaddr() is a sequence of hexadecimal ``digits''
(optionally separated by periods), of the form:
<hex digits>.<hex digits>.<hex digits>
Each pair of hexadecimal digits represents a byte with the leading digit
indicating the higher-ordered bits. A period following an even number of
bytes has no effect (but may be used to increase legibility). A period
following an odd number of bytes has the effect of causing the byte of
address being translated to have its higher order bits filled with zeros.
RETURN VALUES
isontoa() always returns a null terminated string. isoaddr() always
returns a pointer to a struct iso_addr. (See BUGS.)
SEE ALSO
iso(4)
HISTORY
The isoaddr() and isontoa() functions appeared in 4.3BSD-Reno.
BUGS
The returned values reside in a static memory area.
The function isoaddr() should diagnose improperly formed input, and
there should be an unambiguous way to recognize this.
BSDI BSD/386 March 26, 1993 1