*** UNIX MANUAL PAGE BROWSER ***

A Nergahak database for man pages research.

Navigation

Directory Browser

1Browse 4.4BSD4.4BSD
1Browse Digital UNIXDigital UNIX 4.0e
1Browse FreeBSDFreeBSD 14.3
1Browse MINIXMINIX 3.4.0rc6-d5e4fc0
1Browse NetBSDNetBSD 10.1
1Browse OpenBSDOpenBSD 7.7
1Browse UNIX v7Version 7 UNIX
1Browse UNIX v10Version 10 UNIX

Manual Page Search

Manual Page Result

0 Command: bindresvport | Section: 3 | Source: OpenBSD | File: bindresvport.3
BINDRESVPORT(3) FreeBSD Library Functions Manual BINDRESVPORT(3) NAME bindresvport, bindresvport_sa - bind a socket to a privileged IP port SYNOPSIS #include <sys/types.h> #include <netinet/in.h> int bindresvport(int sd, struct sockaddr_in *sin); int bindresvport_sa(int sd, struct sockaddr *sa); DESCRIPTION The bindresvport() and bindresvport_sa() functions are used to bind a socket descriptor to a privileged IP port, that is, a port number in the range 0-1023. The bindresvport() function operates solely on AF_INET sockets, whereas the bindresvport_sa() function is capable of binding both AF_INET and AF_INET6 sockets. Only the superuser may bind to a privileged port; these functions will fail for any other user. sd should be a socket descriptor that was returned by a call to socket(2). If sin is not the NULL pointer, sin->sin_family must be initialized to the address family of the socket sd. If the value of sin->sin_port is non-zero, bindresvport() will attempt to use the specified port. Otherwise, a free port in the range 600-1023 will be chosen and, if the bind(2) succeeds, sin->sin_port will be updated with the port that was assigned. If sin is the NULL pointer, a free port in the range 600-1023 will be chosen (as above), but in this case there is no way for bindresvport() to communicate to the caller which port was assigned. RETURN VALUES bindresvport() returns 0 if it is successful, otherwise -1 is returned and errno set to reflect the cause of the error. ERRORS The bindresvport() function fails if: [EBADF] sd is not a valid descriptor. [ENOTSOCK] sd is not a socket. [EADDRNOTAVAIL] The specified address is not available from the local machine. [EADDRINUSE] The specified address is already in use. [EINVAL] The socket is already bound to an address. [EINVAL] The family of the socket and that requested in sa->sa_family are not equivalent. [EACCES] The requested address is protected, and the current user has inadequate permission to access it. [EFAULT] The name parameter is not in a valid part of the user address space. [ENOBUFS] Insufficient resources were available in the system to perform the operation. [EPFNOSUPPORT] The protocol family has not been configured into the system, no implementation for it exists, or address family did not match between arguments. SEE ALSO bind(2), socket(2), rresvport(3), rresvport_af(3) FreeBSD 14.1-RELEASE-p8 June 5, 2013 FreeBSD 14.1-RELEASE-p8

Navigation Options