getdomainname(2)

NAZWA
getdomainname, setdomainname - pobiera/ustawia nazwę domeny NIS

BIBLIOTEKA
Standardowa biblioteka C (libc, -lc)

SKŁADNIA
#include <unistd.h>

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

    Wymagane ustawienia makr biblioteki glibc (patrz feature_test_macros(7)):

getdomainname(), setdomainname():
    Od glibc 2.21:
        _DEFAULT_SOURCE
    W glibc 2.19 i 2.20:
        _DEFAULT_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)
    Do glibc 2.19 włącznie:
        _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)

OPIS
Funkcje te służą do uzyskania dostępu lub zmiany nazwy domeny NIS systemu. Mówiąc precyzyjniej, działają na nazwie domeny NIS, związanej z przestrzenią nazw UTS procesu wywołującego.

setdomainname() ustawia nazwę domeny na wartość określoną w tablicy znakowej name. Argument len określa liczbę bajtów w name (dlatego name nie wymaga końcowego bajtu null).

getdomainname() zwraca nazwę domeny, zakończoną znakiem null, w tablicy znakowej name o długości len bajtów. Jeśli zakończona znakiem null nazwa domeny wymaga więcej niż len bajtów, getdomainname() zwraca pierwsze len bajtów (glibc) lub zwraca błąd (libc).

WARTOŚĆ ZWRACANA
Po pomyślnym zakończeniu zwracane jest zero. Po błędzie zwracane jest -1 i ustawiane errno, wskazując błąd.

BŁĘDY
setdomainname() może zawieść z powodu następujących błędów:

EFAULT
    name wskazywało poza przestrzeń adresową użytkownika.

EINVAL
    len było ujemne lub zbyt duże.

EPERM
    Wywołujący nie posiadał przywileju (ang. capability) CAP_SYS_ADMIN w przestrzeni nazw użytkownika związanej z jego przestrzenią nazw UTS (zob. namespaces(7)).

getdomainname() może zawieść z powodu następujących błędów:

EINVAL
    Dla getdomainname() pod libc: name jest równe NULL lub name jest dłuższe niż len bajtów.

WERSJE
W większości architektur linuksowych (w tym x86), nie występuje wywołanie systemowe getdomainname(), zamiast tego glibc implementuje getdomainname() jako funkcję biblioteczną, zwracającą kopię pola domainname zwróconą przez wywołanie do uname(2).

STANDARDY
Brak.

HISTORIA
Od Linuksa 1.0, limitem długości nazwy domeny, w tym kończącego bajtu null, jest 64 bajtów. W starszych jądrach było to 8 bajtów.

ZOBACZ TAKŻE
gethostname(2), sethostname(2), uname(2), uts_namespaces(7)

TŁUMACZENIE
Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Przemek Borys <pborys@dione.ids.pl>, Andrzej Krzysztofowicz <ankry@green.mf.pg.gda.pl> i Michał Kułach <michal.kulach@gmail.com>

Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 (https://www.gnu.org/licenses/gpl-3.0.html) lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.

Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej manpages-pl-list@lists.sourceforge.net.