*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->OpenBSD man pages -> getservbyname (3)              
Title
Content
Arch
Section
 

GETSERVENT(3)

Contents


NAME    [Toc]    [Back]

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

SYNOPSIS    [Toc]    [Back]

     #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    [Toc]    [Back]

     The getservent(), getservbyname(), and 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
database,
     /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:

     s_name     The official name of the service.

     s_aliases  A zero-terminated list of alternate names for the
service.

     s_port      The  port  number  at which the service resides.
Port numbers
                are returned in network byte order.

     s_proto    The name of the protocol to use  when  contacting
the service.

     The  getservent()  function reads the next line of the file,
opening the
     file if necessary.

     The setservent() function opens and rewinds  the  file.   If
the stayopen
     flag  is non-zero, the net database will not be closed after
each call to
     getservbyname() or getservbyport().

     The endservent() function closes the file.

     The getservbyname() and  getservbyport()  functions  sequentially search
     from  the  beginning  of  the file until a matching protocol
name or port
     number (specified in network byte order) is found, or  until
EOF is encountered.
   If a protocol name is also supplied (non-null),
searches must
     also match the protocol.

FILES    [Toc]    [Back]

     /etc/services

DIAGNOSTICS    [Toc]    [Back]

     Null pointer (0) returned on EOF or error.

SEE ALSO    [Toc]    [Back]

      
      
     getprotoent(3), services(5)

HISTORY    [Toc]    [Back]

     The    getservent(),    getservbyport(),    getservbyname(),
setservent(), and
     endservent() functions appeared in 4.2BSD.

BUGS    [Toc]    [Back]

     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.

OpenBSD     3.6                        January      12,      1994
[ Back ]
 Similar pages
Name OS Title
rpccp_add_member HP-UX Adds a member to a group in a name service entry; if the specified entry does not exist, creates the entry
rpccp_add_element HP-UX Adds an element to a profile in a name service entry; if the specified entry does not exist, creates the entry
rpccp_add_entry HP-UX Adds a name service entry to the name service database
rpccp_remove_entry HP-UX Removes a name service entry from the name service database
getservbyname_r Tru64 Get a service entry by name
getservbyname Tru64 Get a service entry by name
getservbyport Tru64 Get a service entry by port number
getservbyport_r Tru64 Get a service entry by port number
rpccp_show_entry HP-UX Shows the NSI attributes of a name service entry
rpccp_remove_profile HP-UX Removes all profile elements and the profile from the specified name service entry
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service