A.7 TCP/IP Interface Enhancements

The DEC C RTL provides the language bindings for a 4.4BSD-compatible TCP/IP implementation. The underlying 4.4BSD semantics for the specific TCP/IP routines are the responsibility of the TCP/IP back- end vendors.

With 4.4BSD semantics, gethostbyname and gethostbyaddr set the external variable h_errno. Other routines (see Table A-3) deal with 4.4BSD versions of the sockaddr and msghdr data structures. See the <socket.h> header file for a description of these structures.

The TCP/IP backend routines need to know the following:

This information is controlled by the _SOCKADDR_LEN feature-test macro (see Section 1.5).

Compiling with _SOCKADDR_LEN defined will enable the entry points that have 4.4BSD semantics. See Table A-3. Otherwise, entry points expecting pre-4.4BSD semantics are enabled.

Table A-3 4.4BSD Entry Points

__bsd44_accept   __bsd44_ gethostbyaddr  __bsd44_recvfrom 
__bsd44_bind   __bsd44_gethostbyname   __bsd44_recvmsg 
__bsd44_ connect   __bsd44_getpeername  __bsd44_ sendto 
  __bsd44_getsockname   __bsd44_sendmsg 


Previous Page | Next Page | Table of Contents | Index