iso_addr, iso_ntoa - elementary network address conversion routines for
Open System Interconnection
Standard C Library (libc, -lc)
#include <sys/types.h>
#include <netiso/iso.h>
struct iso_addr *
iso_addr(const char *cp);
char *
iso_ntoa(struct iso_addr *isoa);
The routine iso_addr() interprets character strings representing OSI
addresses, returning binary information suitable for use in system calls.
The routine iso_ntoa() takes OSI addresses and returns ASCII strings representing
NSAPs (network service access points) in a notation inverse to
that accepted by iso_addr().
Unfortunately, no universal standard exists for representing OSI network
addresses.
The format employed by iso_addr() 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.
iso_ntoa() always returns a null terminated string. iso_addr() always
returns a pointer to a struct iso_addr. (See BUGS.)
iso(4)
The iso_addr() and iso_ntoa() functions appeared in 4.3BSD-Reno.
The returned values reside in a static memory area.
The function iso_addr() should diagnose improperly formed input, and
there should be an unambiguous way to recognize this.
BSD June 4, 1993 BSD
[ Back ] |