GETSERVENT
Section: C Library Functions (3)
Index
Return to Main Contents
BSD mandoc
BSD 4.2
NAME
getservent
getservbyport
getservbyname
setservent
endservent
- get service entry
SYNOPSIS
Fd #include <netdb.h>
Ft struct servent *
Fn getservent
Ft struct servent *
Fn getservbyname char *name char *proto
Ft struct servent *
Fn getservbyport int port proto
Ft void
Fn setservent int stayopen
Ft void
Fn endservent void
DESCRIPTION
The
Fn getservent ,
Fn getservbyname ,
and
Fn getservbyport
functions
each return a pointer to an object with the
following structure
containing the broken-out
fields of a line in the network services data base,
/etc/services
struct servent {
char *s_name; /* official name of service */
char **s_aliases; /* alias list */
int s_port; /* port service resides at */
char *s_proto; /* protocol to use */
};
The members of this structure are:
- Fa s_name
-
The official name of the service.
- Fa s_aliases
-
A zero terminated list of alternate names for the service.
- Fa s_port
-
The port number at which the service resides.
Port numbers are returned in network byte order.
- Fa s_proto
-
The name of the protocol to use when contacting the
service.
The
Fn getservent
function
reads the next line of the file, opening the file if necessary.
The
Fn setservent
function
opens and rewinds the file. If the
Fa stayopen
flag is non-zero,
the net data base will not be closed after each call to
Fn getservbyname
or
Fn getservbyport .
The
Fn endservent
function
closes the file.
The
Fn getservbyname
and
Fn getservbyport
functions
sequentially search from the beginning
of the file until a matching
protocol name or
port number is found,
or until
EOF
is encountered.
If a protocol name is also supplied (non-
NULL ) ,
searches must also match the protocol.
FILES
- /etc/services
-
DIAGNOSTICS
Null pointer
(0) returned on
EOF
or error.
SEE ALSO
getprotoent(3),
services(5)
HISTORY
The
Fn getservent ,
Fn getservbyport ,
Fn getservbyname ,
Fn setservent ,
and
Fn endservent
functions appeared in
BSD 4.2
BUGS
These functions use static data storage;
if the data is needed for future use, it should be
copied before any subsequent calls overwrite it.
Expecting port numbers to fit in a 32 bit
quantity is probably naive.
Index
- NAME
-
- SYNOPSIS
-
- DESCRIPTION
-
- FILES
-
- DIAGNOSTICS
-
- SEE ALSO
-
- HISTORY
-
- BUGS
-
This document was created by
man2html,
using the manual pages.
Time: 15:52:53 GMT, January 15, 2023