INET_CIDR(3)               UNIX Programmer's Manual               INET_CIDR(3)

     inet_cidr_ntop, inet_cidr_pton - network translation routines

     #include <sys/types.h>
     #include <sys/socket.h>
     #include <netinet/in.h>
     #include <arpa/inet.h>

     inet_cidr_ntop(int af, const void *src, int bits, char *dst, size_t size)

     inet_cidr_pton(int af, const char *src, void *dst, int *bits)

     These routines are used for converting addresses to and from network and
     presentation forms with CIDR (Classless Inter-Domain Routing) representa-
     tion, embedded net mask.


     inet_cidr_ntop() converts an address from network to presentation format.

     af describes the type of address that is being passed in src.  Currently
     only AF_INET is supported.

     src is an address in network byte order, its length is determined from

     bits specifies the number of bits in the netmask unless it is -1 in which
     case the CIDR representation is omitted.

     dst is a caller supplied buffer of at least size bytes.

     inet_cidr_ntop() returns dst on success or NULL.  Check errno for reason.

     inet_cidr_pton() converts and address from presentation format, with op-
     tional CIDR reperesentation, to network format.  The resulting address is
     zero filled if there were insufficint bits in src.

     af describes the type of address that is being passed in via src and de-
     termines the size of dst.

     src is an address in presentation format.

     bits returns the number of bits in the netmask or -1 if a CIDR represen-
     tation was not supplied.

     inet_cidr_pton() returns 0 on succces or -1 on error.  Check errno for
     reason.  ENOENT indicates an invalid netmask.


4th Berkeley Distribution      October 19, 1998                              1