getdomainname(2)

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

BIBLIOTEKA
Standardowa biblioteka C (libc, -lc)

SKŁADNIA
#include <unistd.h>

int getdomainname(size_t size;
                  char name[size], size_t size);
int setdomainname(size_t size;
                  const char name[size], size_t size);

    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 size 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 rozmiarze size 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
    size był ujemny lub zbyt duży.

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 albo name jest równe lub dłuższe niż size 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 rozmiaru 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
Tłumaczenie niniejszej strony podręcznika: 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.