struct
iso_addr
*
iso_addr(
const char *cp
)
char
*
iso_ntoa(
struct iso_addr *isoa
)
)
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.
)
always returns a null terminated string.
iso_addr(
)
always returns a pointer to a struct iso_addr.
(See
BUGS.)
)
and
iso_ntoa(
)
functions appeared in
4.3BSDReno.
The function
iso_addr()
should diagnose improperly formed input, and there should be an unambiguous
way to recognize this.