IPX(3)

HOME || NAME LIBRARY SYNOPSIS DESCRIPTION RETURN VALUES SEE ALSO HISTORY BUGS
NAME
     ipx_addr, ipx_ntoa -- IPX address conversion routines
LIBRARY
     IPX Address Conversion Support Library (libipx, -lipx)
SYNOPSIS
     #include <sys/types.h>
     #include <netipx/ipx.h>

     struct ipx_addr
     ipx_addr(const char *cp);

     char *
     ipx_ntoa(struct ipx_addr ipx);
DESCRIPTION
     The routine ipx_addr() interprets character strings representing IPX
     addresses, returning binary information suitable for use in system calls.
     The routine ipx_ntoa() takes IPX addresses and returns ASCII strings rep-
     resenting the address in a notation in common use:

	   <network number>.<host number>.<port number>

     Trailing zero fields are suppressed, and each number is printed in hexa-
     decimal, in a format suitable for input to ipx_addr().  Any fields lack-
     ing super-decimal digits will have a trailing `H' appended.

     An effort has been made to insure that ipx_addr() be compatible with most
     formats in common use.  It will first separate an address into 1 to 3
     fields using a single delimiter chosen from period `.', colon `:' or
     pound-sign `#'.  Each field is then examined for byte separators (colon
     or period).  If there are byte separators, each subfield separated is
     taken to be a small hexadecimal number, and the entirety is taken as a
     network-byte-ordered quantity to be zero extended in the high-network-
     order bytes.  Next, the field is inspected for hyphens, in which case the
     field is assumed to be a number in decimal notation with hyphens separat-
     ing the millenia.	Next, the field is assumed to be a number: It is
     interpreted as hexadecimal if there is a leading `0x' (as in C), a trail-
     ing `H' (as in Mesa), or there are any super-decimal digits present.  It
     is interpreted as octal if there is a leading `0' and there are no super-
     octal digits.  Otherwise, it is converted as a decimal number.
RETURN VALUES
     None.  (See BUGS.)
SEE ALSO
     hosts(5), networks(5)
HISTORY
     The precursor ns_addr() and ns_toa() functions appeared in 4.3BSD.
BUGS
     The string returned by ipx_ntoa() resides in a static memory area.  The
     function ipx_addr() should diagnose improperly formed input, and there
     should be an unambiguous way to recognize this.