(libc.info.gz) Host Address Data Type

Info Catalog (libc.info.gz) Abstract Host Addresses (libc.info.gz) Host Addresses (libc.info.gz) Host Address Functions
 
 16.6.2.2 Host Address Data Type
 ...............................
 
 IPv4 Internet host addresses are represented in some contexts as
 integers (type 'uint32_t').  In other contexts, the integer is packaged
 inside a structure of type 'struct in_addr'.  It would be better if the
 usage were made consistent, but it is not hard to extract the integer
 from the structure or put the integer into a structure.
 
    You will find older code that uses 'unsigned long int' for IPv4
 Internet host addresses instead of 'uint32_t' or 'struct in_addr'.
 Historically 'unsigned long int' was a 32-bit number but with 64-bit
 machines this has changed.  Using 'unsigned long int' might break the
 code if it is used on machines where this type doesn't have 32 bits.
 'uint32_t' is specified by Unix98 and guaranteed to have 32 bits.
 
    IPv6 Internet host addresses have 128 bits and are packaged inside a
 structure of type 'struct in6_addr'.
 
    The following basic definitions for Internet addresses are declared
 in the header file 'netinet/in.h':
 
  -- Data Type: struct in_addr
      This data type is used in certain contexts to contain an IPv4
      Internet host address.  It has just one field, named 's_addr',
      which records the host address number as an 'uint32_t'.
 
  -- Macro: uint32_t INADDR_LOOPBACK
      You can use this constant to stand for "the address of this
      machine," instead of finding its actual address.  It is the IPv4
      Internet address '127.0.0.1', which is usually called 'localhost'.
      This special constant saves you the trouble of looking up the
      address of your own machine.  Also, the system usually implements
      'INADDR_LOOPBACK' specially, avoiding any network traffic for the
      case of one machine talking to itself.
 
  -- Macro: uint32_t INADDR_ANY
      You can use this constant to stand for "any incoming address" when
      binding to an address.   Setting Address.  This is the usual
      address to give in the 'sin_addr' member of 'struct sockaddr_in'
      when you want to accept Internet connections.
 
  -- Macro: uint32_t INADDR_BROADCAST
      This constant is the address you use to send a broadcast message.
 
  -- Macro: uint32_t INADDR_NONE
      This constant is returned by some functions to indicate an error.
 
  -- Data Type: struct in6_addr
      This data type is used to store an IPv6 address.  It stores 128
      bits of data, which can be accessed (via a union) in a variety of
      ways.
 
  -- Constant: struct in6_addr in6addr_loopback
      This constant is the IPv6 address '::1', the loopback address.  See
      above for a description of what this means.  The macro
      'IN6ADDR_LOOPBACK_INIT' is provided to allow you to initialize your
      own variables to this value.
 
  -- Constant: struct in6_addr in6addr_any
      This constant is the IPv6 address '::', the unspecified address.
      See above for a description of what this means.  The macro
      'IN6ADDR_ANY_INIT' is provided to allow you to initialize your own
      variables to this value.
 
Info Catalog (libc.info.gz) Abstract Host Addresses (libc.info.gz) Host Addresses (libc.info.gz) Host Address Functions
automatically generated by info2html