Scroll to navigation

gethostid(3) Library Functions Manual gethostid(3)

NOM

gethostid, sethostid - Lire/écrire l'identifiant unique de l'hôte

BIBLIOTHÈQUE

Bibliothèque C standard (libc, -lc)

SYNOPSIS

#include <unistd.h>
long gethostid(void);
int sethostid(long hostid);

Exigences de macros de test de fonctionnalités pour la glibc (consulter feature_test_macros(7)) :

gethostid() :


Depuis la glibc 2.20 :
_DEFAULT_SOURCE || _XOPEN_SOURCE >= 500
Pour la glibc antérieure et égale à 2.19 :
_BSD_SOURCE || _XOPEN_SOURCE >= 500

sethostid() :


Depuis la glibc 2.21 :
_DEFAULT_SOURCE
Pour la glibc 2.19 et 2.20 :
_DEFAULT_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)
Pour la glibc antérieure et égale à 2.19 :
_BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)

DESCRIPTION

gethostid() et sethostid() récupèrent et définissent respectivement un identifiant 32 bits unique pour la machine. L'identifiant 32 bits étaitt 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 errno est défini pour indiquer l'erreur.

ERREURS

sethostid() peut échouer pour les raisons suivantes :

L'appelant n'a pas les permissions d'écrire dans le fichier utilisé pour sauvegarder l'ID de l'hôte.
L'ID de l'utilisateur ou du groupe effectif du processus appelant ne correspond pas à l'ID réel.

ATTRIBUTS

Pour une explication des termes utilisés dans cette section, consulter attributes(7).

Interface Attribut Valeur
gethostid() Sécurité des threads MT-Safe hostid env locale
sethostid() Sécurité des threads MT-Unsafe const:hostid

STANDARDS

4.2BSD. Ces fonctions ont été abandonnées dans 4.4BSD. SVr4 contient gethostid() mais pas sethostid(). POSIX.1-2001 spécifie gethostid() mais pas sethostid().

POSIX.1-2001 et POSIX.1-2008 spécifient gethostid() mais pas sethostid().

NOTES

Dans l'implémentation de la glibc, hostid est sauvegardé dans le fichier /etc/hostid. (Avant la la glibc 2.2, le fichier /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

hostid(1), gethostbyname(3).

TRADUCTION

La traduction française de cette page de manuel a été créée par Christophe Blaess <https://www.blaess.fr/christophe/>, Stéphan Rafin <stephan.rafin@laposte.net>, Thierry Vignaud <tvignaud@mandriva.com>, François Micaux, Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard <fevrier@tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>, Thomas Huriaux <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis Barbier <barbier@debian.org>, David Prévot <david@tilapin.org> et Jean-Pierre Giraud <jean-pierregiraud@neuf.fr>

Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org.

15 décembre 2022 Pages du manuel de Linux 6.03