NetBSD-5.0.2/share/man/man5/netconfig.5

Compare this file to the similar file:
Show the results in this format:

.\"	$NetBSD: netconfig.5,v 1.6 2002/01/21 17:44:45 wiz Exp $
.Dd November 17, 2000
.Dt NETCONFIG 5
.Sh NAME
.Nm netconfig
.Nd network configuration data base
.Sh SYNOPSIS
.Fa /etc/netconfig
.Sh DESCRIPTION
The
.Nm
file defines a list of
.Dq transport names ,
describing their semantics and protocol. In
.Nx ,
this file is only used by the RPC library code.
.Pp
Entries have the following format:
.Dl network_id semantics flags family protoname device libraries
.Pp
Entries consist of the following fields:
.Pp
.Bl -tag -width network_id
.It Em network_id
The name of the transport described.
.It Em semantics
Describes the semantics of the transport. This can be one of:
.Bl -tag -width tpi_cots_ord -offset indent
.It Sy tpi_clts
Connectionless transport.
.It Sy tpi_cots
Connection-oriented transport
.It Sy tpi_cots_ord
Connection-oriented, ordered transport.
.It Sy tpi_raw
A raw connection.
.El
.It Em flags
This field is  either blank (specified by
.Dq \&- ) ,
or contains a
.Dq v ,
meaning visible to the
.Xr getnetconfig 3
function.
.It Em family
The protocol family of the transport. This is currently one of:
.Bl -tag -width loopback -offset indent
.It Sy inet6
The IPv6
.Pq Dv PF_INET6
family of protocols.
.It Sy inet
The IPv4
.Pq Dv PF_INET
family of protocols.
.It Sy loopback
The
.Dv PF_LOCAL
protocol family.
.El
.It Em protoname
The name of the protocol used for this transport. Can currently be either
.Nm udp ,
.Nm tcp
or empty.
.It Em device
This field is always empty in
.Nx .
.It Em libraries
This field is always empty in
.Nx .
.El
.Pp
The order of entries in this file will determine which transport will
be preferred by the RPC library code, given a match on a specified
network type. For example, if a sample network config file would
look like this:
.Pp
.Bd -literal -offset indent
udp6       tpi_clts      v     inet6    udp     -       -
tcp6       tpi_cots_ord  v     inet6    tcp     -       -
udp        tpi_clts      v     inet     udp     -       -
tcp        tpi_cots_ord  v     inet     tcp     -       -
rawip      tpi_raw       -     inet      -      -       -
local      tpi_cots_ord  -     loopback  -      -       -
.Ed
.Pp
then using the network type
.Nm udp
in calls to the RPC library function (see
.Xr rpc 3 )
will make the code first try
.Nm udp6 ,
and then
.Nm udp .
.Pp
.Xr getnetconfig 3
and associated functions will parse this file and return structures of
the following format:
.Bd -literal
struct netconfig {
    char *nc_netid;              /* Network ID */
    unsigned long nc_semantics;  /* Semantics (see below) */
    unsigned long nc_flag;       /* Flags (see below) */
    char *nc_protofmly;          /* Protocol family */
    char *nc_proto;              /* Protocol name */
    char *nc_device;             /* Network device pathname (unused) */
    unsigned long nc_nlookups;   /* Number of lookup libs (unused) */
    char **nc_lookups;           /* Names of the libraries (unused) */
    unsigned long nc_unused[9];  /* reserved */
};
.Ed
.Sh FILES
.Nm /etc/netconfig
.Sh SEE ALSO
.Xr getnetconfig 3 ,
.Xr getnetpath 3