bionic (3) inet_addr.3posix.gz

Provided by: manpages-posix-dev_2013a-2_all bug

PROLOG

       This  manual  page  is part of the POSIX Programmer's Manual.  The Linux implementation of this interface
       may differ (consult the corresponding Linux manual page for details of Linux behavior), or the  interface
       may not be implemented on Linux.

NAME

       inet_addr, inet_ntoa — IPv4 address manipulation

SYNOPSIS

       #include <arpa/inet.h>

       in_addr_t inet_addr(const char *cp);
       char *inet_ntoa(struct in_addr in);

DESCRIPTION

       The  inet_addr()  function shall convert the string pointed to by cp, in the standard IPv4 dotted decimal
       notation, to an integer value suitable for use as an Internet address.

       The inet_ntoa() function shall convert the Internet host address specified by  in  to  a  string  in  the
       Internet standard dot notation.

       The inet_ntoa() function need not be thread-safe.

       All Internet addresses shall be returned in network order (bytes ordered from left to right).

       Values specified using IPv4 dotted decimal notation take one of the following forms:

       a.b.c.d   When  four  parts are specified, each shall be interpreted as a byte of data and assigned, from
                 left to right, to the four bytes of an Internet address.

       a.b.c     When a three-part address is specified, the last part shall be interpreted as a 16-bit quantity
                 and placed in the rightmost two bytes of the network address. This makes the three-part address
                 format convenient for specifying Class B network addresses as "128.net.host".

       a.b       When a two-part address is supplied, the last part shall be interpreted as  a  24-bit  quantity
                 and placed in the rightmost three bytes of the network address. This makes the two-part address
                 format convenient for specifying Class A network addresses as "net.host".

       a         When only one part is given, the value shall be stored directly in the network address  without
                 any byte rearrangement.

       All  numbers  supplied as parts in IPv4 dotted decimal notation may be decimal, octal, or hexadecimal, as
       specified in the ISO C standard (that is, a leading 0x or 0X implies hexadecimal;  otherwise,  a  leading
       '0' implies octal; otherwise, the number is interpreted as decimal).

RETURN VALUE

       Upon  successful  completion,  inet_addr()  shall return the Internet address. Otherwise, it shall return
       (in_addr_t)(−1).

       The inet_ntoa() function shall return a pointer to the network address in Internet standard dot notation.

ERRORS

       No errors are defined.

       The following sections are informative.

EXAMPLES

       None.

APPLICATION USAGE

       The return value of inet_ntoa() may point to static data that may be overwritten by subsequent  calls  to
       inet_ntoa().

RATIONALE

       None.

FUTURE DIRECTIONS

       None.

SEE ALSO

       endhostent(), endnetent()

       The Base Definitions volume of POSIX.1‐2008, <arpa_inet.h>

       Portions of this text are reprinted and reproduced in electronic form from IEEE Std 1003.1, 2013 Edition,
       Standard for Information Technology -- Portable Operating System Interface (POSIX), The Open  Group  Base
       Specifications  Issue 7, Copyright (C) 2013 by the Institute of Electrical and Electronics Engineers, Inc
       and The Open Group.  (This is POSIX.1-2008 with the 2013 Technical Corrigendum 1 applied.) In  the  event
       of  any  discrepancy between this version and the original IEEE and The Open Group Standard, the original
       IEEE and The Open Group Standard is the referee document. The original Standard can be obtained online at
       http://www.unix.org/online.html .

       Any  typographical  or formatting errors that appear in this page are most likely to have been introduced
       during  the  conversion  of  the  source  files  to  man  page  format.  To  report  such   errors,   see
       https://www.kernel.org/doc/man-pages/reporting_bugs.html .