Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ inet(3N) — Reliant UNIX 5.44c4

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

gethostent(3N)

getnetent(3N)

hosts(4)

networks(4)

inet(3N)                                                           inet(3N)

NAME
     inet: inetaddr, inetnetwork, inetmakeaddr, inetlnaof, inetnetof,
     inetntoa - Internet address manipulation

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

     unsigned long inetaddr(const char *cp);

     int inetnetwork(const char *cp);

     struct inaddr inetmakeaddr(int net, int lna);

     inetlnaof(struct inaddr in);

     inetnetof(struct inaddr in);

     char *inetntoa(struct inaddr in);

DESCRIPTION
     The routines inetaddr() and inetnetwork() each interpret character
     strings representing numbers expressed in the Internet standard "."
     notation, returning numbers suitable for use as Internet addresses and
     Internet network numbers, respectively. The routine inetmakeaddr()
     takes an Internet network number and a local network address and con-
     structs an Internet address from it. The routines inetnetof() and
     inetlnaof() break apart Internet host addresses, returning the net-
     work number and local network address part, respectively.

     The routine inetntoa() returns a pointer to a string in the base 256
     notation "d.d.d.d" described below.

     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.

INTERNET ADDRESSES
     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.




Page 1                       Reliant UNIX 5.44                Printed 11/98

inet(3N)                                                           inet(3N)

     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 net-
     work 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 net-
     work 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 (that is, a
     leading "0x" or "0X" implies hexadecimal; otherwise, a leading "0"
     implies octal; otherwise, the number is interpreted as decimal).

DIAGNOSTICS
     The value -1 is returned by inetaddr() and inetnetwork() for mal-
     formed requests.

NOTES
     The problem of host byte ordering versus network byte ordering is
     confusing. A simple way to specify Class C network addresses in a
     manner similar to that for Class B and Class A is needed.

     The return value from inetntoa() points to static information which
     is overwritten in each call.

SEE ALSO
     gethostent(3N), getnetent(3N), hosts(4), networks(4).






















Page 2                       Reliant UNIX 5.44                Printed 11/98

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026