Get a service entry, given a port
#include <netdb.h> struct servent * getservbyport( int port, const char * proto );
- The port number for the service.
- NULL, or the protocol for the service.
Use the -l socket option to qcc to link against this library.
The getservbyport() function gets the entry for the given port from the services database, /etc/services . This function returns a pointer to a structure of type servent , which contains the broken-out fields of a line in the network services database.
The setservent() function opens and rewinds the file. If you pass a nonzero stayopen argument to setservent(), the services database isn't closed after each call to getservbyname() or getservbyport().
The getservbyport() function sequentially searches 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.
A valid pointer to a servent structure, or NULL if an error occurs.
- Network services database file.
This function uses static data; if you need the data for future use, copy it before any subsequent calls overwrite it.