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
    Dans glibc 2.19 et 2.20 :
        _DEFAULT_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)
    Jusqu'à et y compris la glibc 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 :

EACCES
    L'appelant n'a pas les permissions d'écrire dans le fichier utilisé pour sauvegarder l'ID de l'hôte.

EPERM
    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

VERSIONS
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).

STANDARDS

gethostid()
    POSIX.1-2008.

sethostid()
    Aucune.

HISTORIQUE
4.2BSD. Abandonnées dans 4.4BSD. SVr4 er POSIX.1-2001 spécifient gethostid(), mais pas sethostid().

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 (https://www.gnu.org/licenses/gpl-3.0.html) 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.