|
|
getservent(3) Library Functions Manual getservent(3) NAME
getservent, getservent_r - Get a services file entry from the /etc/services file. LIBRARY
Standard C Library (libc) SYNOPSIS
#include <netdb.h> struct servent *getservent(void); The following obsolete function is supported only for backward compatibility reasons. You should not use it in new designs. int getservent_r( struct servent *serv, struct servent_data *serv_data); STANDARDS
Interfaces documented on this reference page conform to industry standards as follows: getservent(): XNS5.0 Refer to the standards(5) reference page for more information about industry standards and associated tags. PARAMETERS
[Tru64 UNIX] For getservent_r() only, this points to the servent structure. The netdb.h header file defines the servent structure. [Tru64 UNIX] For getservent_r() only, this points to the servent_data structure. The netdb.h header file defines the servent_data struc- ture. DESCRIPTION
The getservent() (get service entry) function opens and reads the next line of either the local /etc/services file or the NIS distributed services file for the requested information. To determine which file or files to search, and in which order, the system uses the switches in the /etc/svc.conf file. An application program can use the getservent() function to retrieve information about network services and the protocol ports they use. The getservent() function returns a pointer to a servent structure, which contains fields for a line of information from the network ser- vices database file. The servent structure is defined in the netdb.h header file as follows: struct servent { char *s_name; /* official service name */ char **s_aliases; /* alias list */ int s_port; /* port # */ char *s_proto; /* protocol to use */ }; The network services database file remains open after a call by the getservent() function. Use the endservent() function to close the net- work services database file. Use the setservent() function to rewind. NOTES
The getservent() function returns a pointer to thread-specific data. Subsequent calls to this or a related function from the same thread overwrite this data. [Tru64 UNIX] The getservent_r() function is an obsolete reentrant version of the getservent() function and should not be used in new designs. Note that you must zero-fill the servent_data structure before its first access by the getservent_r() function. RETURN VALUES
Upon successful completion, the getservent() function returns a pointer to a servent structure. If it fails or reaches the end of the net- work services database file, it returns a null pointer. [Tru64 UNIX] Upon successful completion, the getservent_r() function stores the servent structure in the location pointed to by serv, and returns a value of 0 (zero). Upon failure, it returns a value of -1. ERRORS
Current industry standards do not define error values for the getservent() function. [Tru64 UNIX] If any of the following conditions occurs, the getservent_r() function sets errno to the corresponding value: The serv or serv_data parameter is invalid. The search failed. [Tru64 UNIX] In addition, if the function fails to open the file, it sets errno to indicate the cause of the failure. FILES
The DARPA Internet network service name database file. Each record in the file occupies a single line and has four fields: the official service name, the port number, the protocol name, and aliases. The database service selection configuration file. RELATED INFORMATION
Functions: getservbyport(3), getservbyname(3), endservent(3), setservent(3) Files: services(4), svc.conf(4) Networks: nis_intro(7) Standards: standards(5) delim off getservent(3)