oracular (3) sethostid.3.gz

Provided by: manpages-pl-dev_4.23.1-1_all bug

NAZWA

       gethostid, sethostid - pobiera lub ustawia unikatowy identyfikator bieżącego komputera

BIBLIOTEKA

       Standardowa biblioteka C (libc, -lc)

SKŁADNIA

       #include <unistd.h>

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

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

       gethostid():
           Od glibc 2.20:
               _DEFAULT_SOURCE || _XOPEN_SOURCE >= 500
           Do glibc 2.19 włącznie:
               _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 bieżącego
       komputera. 32-bitowy  identyfikator  miał  być  niepowtarzalny  wśród  wszystkich  istniejących  systemów
       uniksowych.  Normalnie  jest  to  podobne  do  adresu internetowego lokalnego komputera, 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 bieżącego komputera, 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żącego komputera.

       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-bezpieczne hostid env locale                                  │
       ├────────────┼────────────────────────┼──────────────────────────────────────────────────────────────────┤
       │sethostid() │ Bezpieczeństwo wątkowe │ MT-niebezpieczne const:hostid                                    │
       └────────────┴────────────────────────┴──────────────────────────────────────────────────────────────────┘

WERSJE

       W  implementacji  biblioteki  glibc  hostid  jest  przechowywane w pliku /etc/hostid (przed glibc 2.2 był
       używany plik /var/adm/hostid).

       W implementacji glibc, jeśli gethostid() nie może otworzyć pliku zawierającego ID komputera,  to  pobiera
       jego 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).

STANDARDY

       gethostid()
              POSIX.1-2008.

       sethostid()
              Brak.

HISTORIA

       4.2BSD; porzucono w 4.4BSD. SVr4 i POSIX.1-2001 zawiera gethostid(), lecz brak tam sethostid().

USTERKI

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

ZOBACZ TAKŻE

       hostid(1), gethostbyname(3)

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>, Robert Luberda  <robert@debian.org>  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⟩.