Provided by: manpages-pl-dev_0.7-1_all bug

NAZWA

       gethostid, sethostid - pobranie lub ustawienie unikatowego identyfikatora obecnej maszyny

SKŁADNIA

       #include <unistd.h>

       long gethostid(void);
       int sethostid(long hostid);

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

       gethostid():
           _BSD_SOURCE || _XOPEN_SOURCE >= 500
       sethostid():
           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

       gethostid()  oraz  sethostid  odpowiednio  pobiera  lub ustawia unikatowy 32-bitowy identyfikator obecnej
       maszyny. 32-bitowy identyfikator powinien  być  niepowtarzalny  wśród  wszystkich  istniejących  systemów
       uniksowych.  Normalnie  jest  to  podobne  do  adresu  internetowego  lokalnej  maszyny, zwracanego przez
       gethostbyname(3) i dlatego zwykle nie musi być ustawiane.

       Wywołanie sethostid() jest zastrzeżone dla superużytkownika.

WARTOŚĆ ZWRACANA

       gethostid() zwraca 32-bitowy identyfikator obecnej maszyny, jaki został ustawiony przez sethostid().

       W przypadku powodzenia sethostid() zwraca zero. W razie wystąpienia błędu zwracane jest  -1  i  ustawiana
       jest odpowiednia wartość zmiennej errno.

BŁĘDY

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

       EACCES Proces wywołujący nie ma prawa zapisu do pliku używanego do przechowywania identyfikatora bieżącej
              maszyny.

       EPERM  Efektywny identyfikator  użytkownika  lub  grupy  procesu  wywołującego  nie  jest  taki  sam  jak
              odpowiadający mu identyfikator rzeczywisty.

ATRYBUTY

       Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku attributes(7).

       ┌────────────┬────────────────────────┬───────────────────────────┐
       │InterfejsAtrybutWartość                   │
       ├────────────┼────────────────────────┼───────────────────────────┤
       │gethostid() │ Bezpieczeństwo wątkowe │ MT-Safe hostid env locale │
       ├────────────┼────────────────────────┼───────────────────────────┤
       │sethostid() │ Bezpieczeństwo wątkowe │ MT-Unsafe const:hostid    │
       └────────────┴────────────────────────┴───────────────────────────┘

ZGODNE Z

       4.2BSD. Funkcje te porzucono w 4.4BSD. SVr4 zawiera gethostid(), lecz brak tam sethostid().

       POSIX.1-2001 i POSIX.1-2008 zawiera gethostid(), ale nie sethostid().

UWAGI

       W  implementacji  biblioteki  glibc  hostid  jest  przechowywane  w  pliku /etc/hostid. (W wersjach glibc
       wcześniejszych niż 2.2 był używany plik /var/adm/hostid).

       W implementacji glibc, jeśli gethostid() nie może otworzyć pliku zawierającego ID maszyny, to pobiera jej
       nazwę,  używając  gethostname(2),  następnie  przekazuje  ją do gethostbyname_r(3), aby dostać adres IPv4
       komputera, by w końcu zwrócić wartość utworzoną przez pomieszanie bitów adresu IPv4. (Taka  wartość  może
       nie być unikatowa).

BŁĘDY

       Nie da się zapewnić, że ten identyfikator jest globalnie niepowtarzalny.

ZOBACZ TAKŻE

       hostid(1), gethostbyname(3)

O STRONIE

       Angielska  wersja  tej strony pochodzi z wydania 4.07 projektu Linux man-pages. Opis projektu, informacje
       dotyczące  zgłaszania  błędów  można  oraz  najnowszą  wersję  oryginału   można  znaleźć   pod   adresem
       https://www.kernel.org/doc/man-pages/.

TŁUMACZENIE

       Autorami   polskiego   tłumaczenia   niniejszej   strony   podręcznika   man   są:  Przemek  Borys  (PTM)
       <pborys@dione.ids.pl>, Andrzej  M.  Krzysztofowicz  (PTM)  <ankry@green.mf.pg.gda.pl>  i  Robert  Luberda
       <robert@debian.org>.

       Polskie  tłumaczenie  jest  częścią  projektu  manpages-pl;  uwagi,  pomoc,  zgłaszanie błędów na stronie
       http://sourceforge.net/projects/manpages-pl/. Jest zgodne z wersją  4.07 oryginału.