Mac Developer Library Developer


This manual page is part of Xcode Tools version 5.0

To obtain these tools:

If you are running a version of Xcode Tools other than 5.0, view the documentation locally:

  • In Xcode

  • In Terminal, using the man(1) command

Reading manual pages

Manual pages are intended as a quick reference for people who already understand a technology.

  • To learn how the manual is organized or to learn about command syntax, read the manual page for manpages(5).

  • For more information about this technology, look for other documentation in the Apple Developer Library.

  • For general information about writing shell scripts, read Shell Scripting Primer.

GETPROTOENT(3)           BSD Library Functions Manual           GETPROTOENT(3)

     getprotoent, getprotobynumber, getprotobyname, setprotoent, endprotoent -- get protocol entry

     Standard C Library (libc, -lc)

     #include <netdb.h>

     struct protoent *

     struct protoent *
     getprotobyname(const char *name);

     struct protoent *
     getprotobynumber(int proto);

     setprotoent(int stayopen);


     The getprotoent(), getprotobyname(), and getprotobynumber() functions each return a pointer to an
     object with the following structure containing the broken-out fields of a line in the network protocol
     data base, /etc/protocols.

           struct  protoent {
                   char    *p_name;        /* official name of protocol */
                   char    **p_aliases;    /* alias list */
                   int     p_proto;        /* protocol number */

     The members of this structure are:

     p_name     The official name of the protocol.

     p_aliases  A zero terminated list of alternate names for the protocol.

     p_proto    The protocol number.

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

     The setprotoent() function opens and rewinds the file.  If the stayopen flag is non-zero, the net data
     base will not be closed after each call to getprotobyname() or getprotobynumber().

     The endprotoent() function closes the file.

     The getprotobyname() function and getprotobynumber() sequentially search from the beginning of the file
     until a matching protocol name or protocol number is found, or until EOF is encountered.

     Null pointer (0) returned on EOF or error.



     The getprotoent(), getprotobynumber(), getprotobyname(), setprotoent(), and endprotoent() functions
     appeared in 4.2BSD.

     These functions use a thread-specific data space; if the data is needed for future use, it should be
     copied before any subsequent calls overwrite it.  Only the Internet protocols are currently understood.

BSD                              June 4, 1993                              BSD

Reporting Problems

The way to report a problem with this manual page depends on the type of problem:

Content errors
Report errors in the content of this documentation with the feedback links below.
Bug reports
Report bugs in the functionality of the described tool or API through Bug Reporter.
Formatting problems
Report formatting mistakes in the online version of these pages with the feedback links below.