Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

ipx(3) [freebsd man page]

IPX(3)							   BSD Library Functions Manual 						    IPX(3)

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 representing 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 hexadecimal, in a format suitable for input to ipx_addr(). Any fields lacking super-decimal digits will have a trailing 'H' appended. An effort has been made to ensure 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 separating the millennia. Next, the field is assumed to be a number: It is interpreted as hexadecimal if there is a leading '0x' (as in C), a trailing '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. BSD
June 4, 1993 BSD

Check Out this Related Man Page

LINK_ADDR(3)						   BSD Library Functions Manual 					      LINK_ADDR(3)

link_addr, link_ntoa -- elementary address specification routines for link level access LIBRARY
Standard C Library (libc, -lc) SYNOPSIS
#include <sys/types.h> #include <sys/socket.h> #include <net/if_dl.h> void link_addr(const char *addr, struct sockaddr_dl *sdl); char * link_ntoa(const struct sockaddr_dl *sdl); DESCRIPTION
The routine link_addr() interprets character strings representing link-level addresses, returning binary information suitable for use in sys- tem calls. The routine link_ntoa() takes a link-level address and returns an ASCII string representing some of the information present, including the link level address itself, and the interface name or number, if present. This facility is experimental and is still subject to change. For link_addr(), the string addr may contain an optional network interface identifier of the form ``name unit-number'', suitable for the first argument to ifconfig(8), followed in all cases by a colon and an interface address in the form of groups of hexadecimal digits sepa- rated by periods. Each group represents a byte of address; address bytes are filled left to right from low order bytes through high order bytes. Thus le0: represents an ethernet address to be transmitted on the first Lance ethernet interface. RETURN VALUES
The link_ntoa() function always returns a null terminated string. The link_addr() function has no return value. (See BUGS.) SEE ALSO
getnameinfo(3) HISTORY
The link_addr() and link_ntoa() functions appeared in 4.3BSD-Reno. BUGS
The returned values for link_ntoa reside in a static memory area. The function link_addr() should diagnose improperly formed input, and there should be an unambiguous way to recognize this. If the sdl_len field of the link socket address sdl is 0, link_ntoa() will not insert a colon before the interface address bytes. If this translated address is given to link_addr() without inserting an initial colon, the latter will not interpret it correctly. BSD
February 28, 2007 BSD
Man Page