gethostname

Autres langues

Langue: fr

Version: 18 juillet 2003 (openSuse - 09/10/07)

Section: 2 (Appels système)

NOM

gethostname, sethostname - Lire / écrire le nom d'hôte.

SYNOPSIS

#include <unistd.h>

int gethostname(char *nom, size_t lg);
int sethostname(const char *nom, size_t lg);

DESCRIPTION

Ces fonctions sont utilisées pour lire, ou changer le nom d'hôte de la machine utilisée. La fonction gethostname() place le nom d'hôte terminé par un caractère NUL (précédemment fixé avec sethostname()) dans la table de caractères nom contenant au moins lg octets. Si le nom d'hôte suivi d'un NUL ne tient pas dans cette zone mémoire, il est tronqué sans qu'aucune erreur ne soit signalée. Il n'est pas précisé si le nom d'hôte tronqué est terminé ou non par un NUL.

VALEUR RENVOYÉE

gethostname et sethostname renvoient 0 s'ils réussissent, ou -1 s'ils échouent, auquel cas errno contient le code d'erreur.

ERREURS

EINVAL
len est négatif, ou pour sethostname, len est plus grand que la longueur maximale autorisée, ou encore, pour gethostname sur Linux/i386, len est plus petit que la taille nécessaire. (Dans ce dernier cas, la GlibC 2.1 utilise ENAMETOOLONG).
EPERM
Pour sethostname, l'appelant n'est pas le Super-User.
EFAULT
name pointe en dehors de l'espace d'adressage accessible.

CONFORMITÉ

SVr4, 4.4BSD (Cette fonction est apparue en premier dans 4.2BSD). POSIX.1003.1-2001 définit gethostname mais pas sethostname.

BOGUES

Sur de nombreux systèmes Linux / GlibC, gethostname renverra une erreur au lieu de tronquer le nom d'hôte.

NOTES

SUSv2 garantit que les "noms d'hôtes sont limités à 255 octets". Posix 1003.1-2001 garantit que les "noms d'hôtes (non compris le caractère NUL final) sont limités à HOST_NAME_MAX octets".

VOIR AUSSI

getdomainname(2), setdomainname(2), uname(2).

TRADUCTION

Christophe Blaess, 1996-2003.