struct
netconfig
*
getnetconfig(
void *handlep
)
void
*
setnetconfig(
void
)
int
endnetconfig(
void *handlep
)
struct
netconfig
*
getnetconfigent(
const char *netid
)
void
freenetconfigent(
struct netconfig *netconfigp
)
void
nc_perror(
const char *msg
)
char
*
nc_sperror(
void
)
/etc/netconfig
.
struct netconfig {
char *nc_netid; /* Network ID */
unsigned long nc_semantics; /* Semantics */
unsigned long nc_flag; /* Flags */
char *nc_protofmly; /* Protocol family */
char *nc_proto; /* Protocol name */
char *nc_device; /* Network device pathname */
unsigned long nc_nlookups; /* Number of directory lookup libs */
char **nc_lookups; /* Names of the libraries */
};
getnetconfig()
returns a pointer to the
current entry in the
netconfig
database, formatted as a struct netconfig.
Successive calls will return successive netconfig
entries in the netconfig database.
getnetconfig()
can be used to search the entire netconfig
file.
getnetconfig(
)
returns
NULL
at the end of the file.
handlep
is the handle obtained through
setnetconfig().
A call to
setnetconfig()
has the effect of ``binding'' to or
``rewinding'' the netconfig database.
setnetconfig(
)
must be called before the first call to
getnetconfig(
)
and may be called at any other time.
setnetconfig(
)
need not be called before a call to
getnetconfigent(
).
setnetconfig(
)
returns a unique handle to be used by
getnetconfig(
).
endnetconfig()
should be called when processing is complete to release resources for reuse.
handlep
is the handle obtained through
setnetconfig().
Programmers should be aware, however, that the last call to
endnetconfig(
)
frees all memory allocated by
getnetconfig(
)
for the
struct netconfig data structure.
endnetconfig(
)
may not be called before
setnetconfig(
).
getnetconfigent()
returns a pointer
to the netconfig structure corresponding
to
netid
.
It returns
NULL
if
netid
is invalid
(that is, does not name an entry in the netconfig database).
freenetconfigent()
frees the netconfig structure pointed to by
netconfigp
(previously returned by
getnetconfigent()).
nc_perror()
prints a message to the standard error indicating why any of the
above routines failed.
The message is prepended with the string
msg
and a colon.
A newline character is appended at the end of the message.
nc_sperror()
is similar to
nc_perror(
)
but instead of sending the message
to the standard error, will return a pointer to a string that
contains the error message.
nc_perror()
and
nc_sperror(
)
can also be used with the
NETPATH
access routines defined in
getnetpath(3).
)
returns a unique handle to be used by
getnetconfig(
).
In the case of an error,
setnetconfig(
)
returns NULL and
nc_perror(
)
or
nc_sperror(
)
can be used to print the reason for failure.
getnetconfig()
returns a pointer to the current entry in the netconfig
database, formatted as a struct netconfig.
getnetconfig(
)
returns NULL
at the end of the file, or upon failure.
endnetconfig()
returns 0 on success and -1 on failure
(for example, if
setnetconfig(
)
was not called previously).
On success,
getnetconfigent()
returns a pointer to the
struct
netconfig
structure corresponding to
netid;
otherwise it returns
NULL
.
nc_sperror()
returns a pointer to a buffer which contains the error message string.
This buffer is overwritten on each call.
In multithreaded applications, this buffer is
implemented as thread-specific data.
/etc/netconfig