*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->IRIX man pages -> inet (3c)              
Title
Content
Arch
Section
 

Contents


INET(3N)							      INET(3N)


NAME    [Toc]    [Back]

     inet_aton,	inet_addr, inet_network, inet_isaddr, inet_ntoa,
     inet_makeaddr, inet_lnaof,	inet_netof - Internet address manipulation
     routines

SYNOPSIS    [Toc]    [Back]

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

     int inet_aton(const char *cp, struct in_addr *pin);

     unsigned long inet_addr(const char	*cp);

     unsigned long inet_network(const char *cp);

     int inet_isaddr(const char	*cp, uint32_t *addr);

     char *inet_ntoa(struct in_addr in);

     struct in_addr inet_makeaddr(int net, int lna);

     unsigned long inet_lnaof(struct in_addr in);

     unsigned long inet_netof(struct in_addr in);

DESCRIPTION    [Toc]    [Back]

     The routines inet_aton, inet_addr and inet_network	interpret character
     strings representing numbers expressed in the Internet standard "." (dot)
     notation.	The inet_aton routine interprets the specified character
     string as an Internet address, placing the	address	into the structure
     provided.	It returns 1 if	the string was successfully interpreted, or 0
     if	the string is invalid.	The inet_addr and inet_network functions
     return numbers suitable for use as	Internet addresses and Internet
     network numbers, respectively.  To	determine if an	ASCII string is	a
     valid representation of an	IPv4 address, the function inet_isaddr may be
     used.  It takes a pointer to the string, cp, and returns a	1 if the
     address is	valid, 0 otherwise.  Additionally, if the addr parameter is
     non-NULL, the converted address will be stored at the address pointed to
     by	addr.  The routine inet_ntoa takes an Internet address and returns an
     ASCII string representing the address in "." notation.  The routine
     inet_makeaddr takes an Internet network number and	a local	network
     address and constructs an Internet	address	from it.  The routines
     inet_netof	and inet_lnaof break apart Internet host addresses, returning
     the network number	and local network address part,	respectively.

     All Internet addresses are	returned in network order (bytes ordered from
     left to right).  All network numbers and local address parts are returned
     as	machine	format integer values.






									Page 1






INET(3N)							      INET(3N)


INTERNET ADDRESSES    [Toc]    [Back]

     Values specified using the	"." notation take one of the following forms:
	  a.b.c.d
	  a.b.c
	  a.b
	  a
     When four parts are specified, each is interpreted	as a byte of data and
     assigned, from left to right, to the four bytes of	an Internet address.

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

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

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

     All numbers supplied as "parts" in	a "." notation may be decimal, octal,
     or	hexadecimal, as	specified in the C language (i.e., a leading 0x	or 0X
     implies hexadecimal; otherwise, a leading 0 implies octal;	otherwise, the
     number is interpreted as decimal).

DIAGNOSTICS    [Toc]    [Back]

     The constant INADDR_NONE is returned by inet_addr and inet_network	for
     malformed requests.

SEE ALSO    [Toc]    [Back]

      
      
     gethostbyname(3N),	getnetent(3N), hosts(4), networks(4)

BUGS    [Toc]    [Back]

     The value INADDR_NONE (0xffffffff)	is a valid broadcast address, but
     inet_addr cannot return that value	without	indicating failure.  The newer
     inet_aton function	does not share this problem.

     The string	returned by inet_ntoa resides in a static memory area.	Thus

	  printf("%s %s0, inet_ntoa(addr1), inet_ntoa(addr2));

     will print	the same address twice.

     Inet_addr should return a struct in_addr.

     The problem of host byte ordering versus network byte ordering is
     confusing.






									Page 2






INET(3N)							      INET(3N)



     A simple way to specify Class C network addresses in a manner similar to
     that for Class B and Class	A is needed.


									PPPPaaaaggggeeee 3333
[ Back ]
 Similar pages
Name OS Title
inet IRIX Internet address manipulation
inet_addr Tru64 Translate an Internet network address string to an Internet address integer
inet_net_pton NetBSD Internet network number manipulation routines
inet_net_pton OpenBSD Internet network number manipulation routines
inet_net FreeBSD Internet network number manipulation routines
inet_net OpenBSD Internet network number manipulation routines
inet_net_ntop FreeBSD Internet network number manipulation routines
inet_net_pton FreeBSD Internet network number manipulation routines
inet_net_ntop OpenBSD Internet network number manipulation routines
inet_net NetBSD Internet network number manipulation routines
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service