getdomainname(2) Lire et écrire le nom de domaine NIS

Other Alias

setdomainname

SYNOPSIS

#include <unistd.h>

int getdomainname(char *name, size_t len);
int setdomainname(const char *name, size_t len);

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

getdomainname(), setdomainname() :

_BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)

DESCRIPTION

Ces fonctions sont utilisées pour obtenir ou changer le nom de domaine NIS de l'hôte système.

setdomainname() fice le nom de domaine à la valeur fournie dans le tableau de caractères name. Le paramètre len indique le nombre d'octets de name (name n'a donc pas à se terminer par un caractère nul).

Ces deux fonctions servent à lire ou à changer le nom de domaine de l'hôte concerné. Si le nom de domaine, suivi d'un caractère nul, nécessite plus de len octets pour être stocké, getdomainname() renvoie les len premiers octets (glibc), ou produit une erreur (libc).

VALEUR RENVOYÉE

S'il réussit, cet appel système renvoie 0. S'il échoue, il renvoie -1 et remplit errno en conséquence.

ERREURS

setdomainname() peut échouer avec les erreurs suivantes :
EFAULT
name pointe en-dehors de l'espace d'adressage utilisateur.
EINVAL
len est négatif ou trop large.
EPERM
l'appelant n'est pas privilégié (Linux : n'a pas la capacité CAP_SYS_ADMIN).

getdomainname() peut échouer avec les erreurs suivantes :

EINVAL
Avec getdomainname() et la Libc : name est NULL ou name est plus long que len.

CONFORMITÉ

Ces fonctions ne sont pas spécifiées par POSIX.

NOTES

Depuis Linux 1.0, la limite sur la taille d'un nom de domaine, octet nul de fin compris, est de 64 octets. Dans les noyaux plus anciens, elle était de 8 octets.

Sur la plupart des architectures Linux (x86 incluse), il n'y a pas d'appel système getdomainname() ; à la place, la glibc implémente getdomainname() comme une fonction de bibliothèque qui renvoie une copie du champ domainname renvoyé par un appel à uname(2).

COLOPHON

Cette page fait partie de la publication 3.65 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 à <[email protected]> ou par un rapport de bogue sur le paquet manpages-fr.

Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « man -L C <section> <page_de_man> ».