Copyright (C) 2000-2012 |
GNU Info (libc.info)Services DatabaseThe Services Database --------------------- The database that keeps track of "well-known" services is usually either the file `/etc/services' or an equivalent from a name server. You can use these utilities, declared in `netdb.h', to access the services database. - Data Type: struct servent This data type holds information about entries from the services database. It has the following members: `char *s_name' This is the "official" name of the service. `char **s_aliases' These are alternate names for the service, represented as an array of strings. A null pointer terminates the array. `int s_port' This is the port number for the service. Port numbers are given in network byte order; see Note: Byte Order. `char *s_proto' This is the name of the protocol to use with this service. Note: Protocols Database. To get information about a particular service, use the `getservbyname' or `getservbyport' functions. The information is returned in a statically-allocated structure; you must copy the information if you need to save it across calls. - Function: struct servent * getservbyname (const char *NAME, const char *PROTO) The `getservbyname' function returns information about the service named NAME using protocol PROTO. If it can't find such a service, it returns a null pointer. This function is useful for servers as well as for clients; servers use it to determine which port they should listen on (Note: Listening). - Function: struct servent * getservbyport (int PORT, const char *PROTO) The `getservbyport' function returns information about the service at port PORT using protocol PROTO. If it can't find such a service, it returns a null pointer. You can also scan the services database using `setservent', `getservent' and `endservent'. Be careful when using these functions because they are not reentrant. - Function: void setservent (int STAYOPEN) This function opens the services database to begin scanning it. If the STAYOPEN argument is nonzero, this sets a flag so that subsequent calls to `getservbyname' or `getservbyport' will not close the database (as they usually would). This makes for more efficiency if you call those functions several times, by avoiding reopening the database for each call. - Function: struct servent * getservent (void) This function returns the next entry in the services database. If there are no more entries, it returns a null pointer. - Function: void endservent (void) This function closes the services database. automatically generated by info2www version 1.2.2.9 |