BINDRESVPORT(3)

NOM
bindresvport - Affecter une socket à un port IP privilégié

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

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

DESCRIPTION

bindresvport() sert à affecter un descripteur de socket à un port IP privilégié, c'est-à-dire dans l'intervalle 0-1023. Si in->sin_port vaut 0, un port anonyme dans l'intervalle 600-1023 sera choisi. Si l'appel bind(2) effectué par bindresvport() réussi, sin->sin_port retourne le numéro de port actuellement alloué. sin peut être NULL, auquel cas sin->sin_family vaut implicitement AF_INET, et un port anonyme est alloué (comme ci-dessus). Toutefois, dans ce cas, bindresvport() n'a pas les moyens de retourner le numéro de port actuellement alloué.

VALEUR RENVOYÉE
bindresvport() renvoie 0 si elle réussit, ou -1 en cas d'échec, auquel cas errno contient le code d'erreur.

ERREURS
bindresvport() peut échouer pour les mêmes raisons que bind(2).

CONFORMITÉ
Pas dans POSIX.1-2001. Présente sur les BSD, Solaris et beaucoup d'autres systèmes.

NOTES

Seul le superutilisateur peut affecter une socket à un port privilégié. Cette fonction échouera pour tous les autres utilisateurs. De plus, l'erreur suivante peut se produire :

EPFNOSUPPORT
    sin n'est pas NULL et sin->sin_family n'est pas AF_INET.

VOIR AUSSI
bind(2)

TRADUCTION

Ce document est une traduction réalisée par Christophe Blaess <http://www.blaess.fr/christophe/> le 4 janvier 2000 et révisée le 17 juillet 2008.

L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=C man 3 bindresvport ». N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.