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.