bindresvport man page on Archlinux

Man page or keyword search:  
man Server   11224 pages
apropos Keyword Search (all sections)
Output format
Archlinux logo
[printable version]

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

       bindresvport - bind a socket to a privileged IP port

       #include <sys/types.h>
       #include <netinet/in.h>

       int bindresvport(int sockfd, struct sockaddr_in *sin);

       bindresvport()  is  used	 to  bind  a socket descriptor to a privileged
       anonymous IP port, that is, a port number arbitrarily selected from the
       range 512 to 1023.

       If  the	bind(2)	 performed by bindresvport() is successful, and sin is
       not NULL, then sin->sin_port returns the	 port  number  actually	 allo‐

       sin  can	 be NULL, in which case sin->sin_family is implicitly taken to
       be AF_INET.  However, in this case, bindresvport() has no way to return
       the  port  number  actually  allocated.	(This information can later be
       obtained using getsockname(2).)

       bindresvport() returns 0 on success; otherwise -1 is returned and errno
       set to indicate the cause of the error.

       bindresvport()  can  fail  for  any of the same reasons as bind(2).  In
       addition, the following errors may occur:

       EACCES The caller did not have superuser privilege (to be precise:  the
	      CAP_NET_BIND_SERVICE capability is required).

	      All privileged ports are in use.

       EAFNOSUPPORT (EPFNOSUPPORT in glibc 2.7 and earlier)
	      sin is not NULL and sin->sin_family is not AF_INET.

   Multithreading (see pthreads(7))
       Before  glibc  2.17, the bindresvport() function uses a static variable
       that is not protected, so it is not thread-safe.

       Since glibc 2.17, the bindresvport() function uses a  lock  to  protect
       static variable, so it is thread-safe.

       Not in POSIX.1-2001.  Present on the BSDs, Solaris, and many other sys‐

       Unlike some bindresvport() implementations,  the	 glibc	implementation
       ignores any value that the caller supplies in sin->sin_port.

       bind(2), getsockname(2)

       This  page  is  part of release 3.65 of the Linux man-pages project.  A
       description of the project, and information about reporting  bugs,  can
       be found at

				  2013-06-21		       BINDRESVPORT(3)

List of man pages available for Archlinux

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
Vote for polarhome
Free Shell Accounts :: the biggest list on the net