table of contents
GETHOSTID(3) | Manuel du programmeur Linux | GETHOSTID(3) |
NOM¶
gethostid, sethostid - Lire/écrire l'identifiant unique de l'hôte
SYNOPSIS¶
#include <unistd.h>
long gethostid(void);
int sethostid(long hostid);
Exigences de macros de test de fonctionnalités pour la glibc (consultez
feature_test_macros(7)) :
gethostid() :
DESCRIPTION¶
gethostid() et sethostid() récupèrent et définissent respectivement un identifiant 32 bits unique pour la machine. L'identifiant 32 bits est supposé être unique pour tous les systèmes UNIX. En général, il ressemble à l'adresse internet de la machine local, comme renvoyée par gethostbyname(3) et il ne devrait pas être nécessaire de le définir.
L'appel de sethostid() est bien sûr limité au superutilisateur.
VALEUR RENVOYÉE¶
gethostid() retourne l'identifiant sur 32 bits de l'hôte, tel qu'il a été positionné par sethostid().
Si elle réussit, sethostid() renvoie 0. En cas d'erreur, elle renvoie -1 et remplit errno en conséquence.
ERREURS¶
sethostid() peut échouer pour les raisons suivantes :
CONFORMITɶ
BSD 4.2. Ces fonctions ont été abandonnées dans BSD 4.4. SVr4 contient gethostid() mais pas sethostid(). POSIX.1-2001 spécifie gethostid() mais pas sethostid().
NOTES¶
Dans l'implémentation de la glibc, hostid est sauvegardé dans le fichier /etc/hostid (pour les versions antérieures à la glibc 2.2, /var/adm/hostid était utilisé).
Dans l'implémentation de la glibc, si gethostid() ne peut pas ouvrir le fichier contenant l'ID de l'hôte, alors elle obtient le nom d'hôte avec gethostname(2), passe ce nom d'hôte à gethostbyname_r(3) de façon à obtenir l'adresse IPv4 de l'hôte, et renvoie l'adresse IPv4 modifée par manipulation de bits (« bit-twilling ») (cette valeur peut ne pas être unique).
BOGUES¶
Il est impossible de s'assurer que l'identifiant est globalement unique.
VOIR AUSSI¶
COLOPHON¶
Cette page fait partie de la publication 3.52 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse http://www.kernel.org/doc/man-pages/.
TRADUCTION¶
Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a <http://po4a.alioth.debian.org/> par l'équipe de traduction francophone au sein du projet perkamon <http://perkamon.alioth.debian.org/>.
Christophe Blaess <http://www.blaess.fr/christophe/> (1996-2003), Alain Portal <http://manpagesfr.free.fr/> (2003-2006). Julien Cristau et l'équipe francophone de traduction de Debian (2006-2009).
Veuillez signaler toute erreur de traduction en écrivant à <perkamon-fr@traduc.org>.
Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « LC_ALL=C man <section> <page_de_man> ».
20 septembre 2010 | Linux |