Index of Section 3 Manual Pages

Interix / SUAne_iaddr_print.3Interix / SUA

NE_IADDR_MAKE(3)        neon API reference       NE_IADDR_MAKE(3)



NAME
       ne_iaddr_make, ne_iaddr_cmp, ne_iaddr_print,
       ne_iaddr_typeof, ne_iaddr_free - functions to manipulate
       and compare network addresses

SYNOPSIS
       #include 

       typedef enum {
           ne_iaddr_ipv4 = 0,
           ne_iaddr_ipv6
       } ne_iaddr_type;

       ne_inet_addr *ne_iaddr_make(ne_iaddr_type type,
                                   const unsigned char *raw);

       int ne_iaddr_cmp(const ne_inet_addr *ia1,
                        const ne_inet_addr *ia2);

       char *ne_iaddr_print(const ne_inet_addr *ia, char *buffer,
                            size_t bufsiz);

       ne_iaddr_type ne_iaddr_typeof(const ne_inet_addr *ia);

       void ne_iaddr_free(const ne_inet_addr *ia);

DESCRIPTION
       ne_iaddr_make creates an ne_inet_addr object from a raw
       binary network address; for instance the four bytes 0x7f
       0x00 0x00 0x01 represent the IPv4 address 127.0.0.1. The
       object returned is suitable for passing to
       ne_sock_connect. A binary IPv4 address contains four
       bytes; a binary IPv6 address contains sixteen bytes;
       addresses passed must be in network byte order.

       ne_iaddr_cmp can be used to compare two network addresses;
       returning zero only if they are identical. The addresses
       need not be of the same address type; if the addresses are
       not of the same type, the return value is guaranteed to be
       non-zero.

       ne_iaddr_print can be used to print the human-readable
       string representation of a network address into a buffer,
       for instance the string "127.0.0.1".

       ne_iaddr_typeof returns the type of the given network
       address.

       ne_iaddr_free releases the memory associated with a
       network address object.

RETURN VALUE
       ne_iaddr_make returns NULL if the address type passed is
       not supported (for instance on a platform which does not
       support IPv6).

       ne_iaddr_print returns the buffer pointer, and never NULL.

EXAMPLES
       The following example connects a socket to port 80 at the
       address 127.0.0.1.

           unsigned char addr[] = "\0x7f\0x00\0x00\0x01";
           ne_inet_addr *ia;

           ia = ne_iaddr_make(ne_iaddr_ipv4, addr);
           if (ia != NULL) {
               ne_socket *sock = ne_sock_connect(ia, 80);
               ne_iaddr_free(ia);
               /* ... */
           } else {
               /* ... */
           }

SEE ALSO
       ne_addr_resolve

AUTHOR
       Joe Orton 
           Author.

COPYRIGHT
neon 0.28.2                3 April 2008          NE_IADDR_MAKE(3)

Interix / SUAHosted at SUA Community for Interix, SUA and SFUInterix / SUA