home   contributing   bugs   download   online pages  

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | FILES | CONFORMING TO | SEE ALSO | COLOPHON


GETSERVENT(3)                 Linux Programmer's Manual                 GETSERVENT(3)

NAME         top

       getservent, getservbyname, getservbyport, setservent, endservent - get service
       entry

SYNOPSIS         top

       #include <netdb.h>

       struct servent *getservent(void);

       struct servent *getservbyname(const char *name, const char *proto);

       struct servent *getservbyport(int port, const char *proto);

       void setservent(int stayopen);

       void endservent(void);

DESCRIPTION         top

       The getservent() function reads the next entry from the services database (see
       services(5)) and returns a servent structure containing the broken-out fields
       from the entry.  A connection is opened to the database if necessary.

       The getservbyname() function returns a servent structure for the entry from
       the database that matches the service name using protocol proto.  If proto is
       NULL, any protocol will be matched.  A connection is opened to the database if
       necessary.

       The getservbyport() function returns a servent structure for the entry from
       the database that matches the port port (given in network byte order) using
       protocol proto.  If proto is NULL, any protocol will be matched.  A connection
       is opened to the database if necessary.

       The setservent() function opens a connection to the database, and sets the
       next entry to the first entry.  If stayopen is non-zero, then the connection
       to the database will not be closed between calls to one of the getserv*()
       functions.

       The endservent() function closes the connection to the database.

       The servent structure is defined in <netdb.h> as follows:

           struct servent {
               char  *s_name;       /* official service name */
               char **s_aliases;    /* alias list */
               int    s_port;       /* port number */
               char  *s_proto;      /* protocol to use */
           }

       The members of the servent structure are:

       s_name The official name of the service.

       s_aliases
              A NULL-terminated list of alternative names for the service.

       s_port The port number for the service given in network byte order.

       s_proto
              The name of the protocol to use with this service.

RETURN VALUE         top

       The getservent(), getservbyname() and getservbyport() functions return a
       pointer to a statically allocated servent structure, or a NULL pointer if an
       error occurs or the end of the file is reached.

FILES         top

       /etc/services
              services database file

CONFORMING TO         top

       4.3BSD, POSIX.1-2001.

SEE ALSO         top

       getnetent(3), getprotoent(3), getservent_r(3), services(5)

COLOPHON         top

       This page is part of release 3.23 of the Linux man-pages project.  A
       description of the project, and information about reporting bugs, can be found
       at http://www.kernel.org/doc/man-pages/.

GNU                                   2008-08-19                        GETSERVENT(3)