Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ ip(ADMP) — OpenDesktop 1.1.0

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

getsockopt(SSC)

send(SSC)

recv(SSC)

sockcf(SFF)

intro(ADMP)

icmp(ADMP)

inet(ADMP)

IP(ADMP)


     IP(ADMP)                                   UNIX System V



     Name
          ip - Internet Protocol


     Syntax
          #include <sys/socket.h>
          #include <netinet/in.h>

          s = socket(AFINET, SOCKRAW, proto);


     Description
          IP is the  network  layer  protocol  used  by  the  Internet
          protocol  family.   Options  may be set at the IP level when
          using higher-level protocols that are based on IP  (such  as
          TCP  and  UDP).   It  may  also  be accessed through a ``raw
          socket'' or device when developing new protocols or  special
          purpose applications.

          A single generic option IP_OPTIONS, is supported at  the  IP
          level,  and  may  be  used  to  provide  IP  options  to  be
          transmitted in  the  IP  header  of  each  outgoing  packet.
          Options are set with setsockopt and examined with getsockopt
          . [See getsockopt(SSC).] The format of IP options to be sent
          is that specified by the IP protocol specification, with one
          exception: the list of addresses for  Source  Route  options
          must  include  the first-hop gateway at the beginning of the
          list of gateways.  The first-hop  gateway  address  will  be
          extracted  from  the  option  list  and  the  size  adjusted
          accordingly before use.  IP options may  be  used  with  any
          socket type in the Internet family.

          Raw IP sockets are connectionless,  and  are  normally  used
          with  the  sendto  and recvfrom calls; the connect(SSC) call
          may also be used to fix the destination for  future  packets
          (in  which  case,  the read(S) or recv(SSC), and write(S) or
          send(SSC) system calls may be used).

          If proto is 0, the default protocol IPPROTO_RAW is used  for
          outgoing  packets,  and  only  incoming packets destined for
          that protocol are received.   If  proto  is  non-zero,  that
          protocol  number  will  be  used  on outgoing packets and to
          filter  incoming  packets.   Proto  must  be  specified   in
          sockcf(SFF).

          Outgoing packets automatically have an IP  header  prepended
          to  them  (based  on  the  destination address given and the
          protocol number  the  socket  is  created  with).   Incoming
          packets are received with IP header and options intact.


     Diagnostics
          A socket operation may fail with one of the following errors
          returned:

     [EISCONN]
                         when trying to establish a  connection  on  a
                         socket  which already has one, or when trying
                         to  send  a  datagram  with  the  destination
                         address  specified  and  the  socket  already
                         connected;

     [ENOTCONN]
                         when  trying  to  send  a  datagram,  but  no
                         destination  address  is  specified,  and the
                         socket has not been connected;

     [ENOSR]
                         when the system runs out  of  memory  for  an
                         internal data structure;

     [EADDRNOTAVAIL]
                         when an attempt is made to  create  a  socket
                         with  a  network address for which no network
                         interface exists.

          The following errors specific to IP may occur  when  setting
          or getting IP options:

     [EINVAL]
                         An unknown socket option name was given.

     [EINVAL]
                         The IP option field was improperly formed; an
                         option  field  was  shorter  than the minimum
                         value  or  longer  than  the  option   buffer
                         provided.


     Files
          /dev/inet/ip
          /dev/inet/rip


     See Also
          getsockopt(SSC),    send(SSC),    recv(SSC),    sockcf(SFF),
          intro(ADMP), icmp(ADMP), inet(ADMP).


     (printed 8/17/89)                                  IP(ADMP)

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