gethostid

GETHOSTID(3)             Podręcznik programisty Linuksa             GETHOSTID(3)



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():
           Since glibc 2.20:
               _DEFAULT_SOURCE || _XOPEN_SOURCE >= 500
           Up to and including glibc 2.19:
               _BSD_SOURCE || _XOPEN_SOURCE >= 500

       sethostid():
           Since glibc 2.21:
               _DEFAULT_SOURCE
           In glibc 2.19 and 2.20:
               _DEFAULT_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)
           Up to and including glibc 2.19:
               _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)

OPIS
       gethostid()  and sethostid()  respectively get or set a unique 32-bit
       identifier for the current machine.  The 32-bit identifier was intended
       to be unique among all UNIX systems in existence.  This normally
       resembles the Internet address for the local machine, as returned by
       gethostbyname(3), and thus usually never needs to be set.

       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).

       ┌────────────┬────────────────────────┬──────────────────────────────────┐
       │Interfejs   Atrybut                Wartość                          │
       ├────────────┼────────────────────────┼──────────────────────────────────┤
       │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 5.13 projektu Linux
       man-pages. Opis projektu, informacje dotyczące zgłaszania błędów 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 są: Przemek
       Borys <pborys@dione.ids.pl>, Andrzej Krzysztofowicz
       <ankry@green.mf.pg.gda.pl> i Robert Luberda <robert@debian.org>

       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
       manpages-pl-list@lists.sourceforge.net ⟨⟩.



Linux                           22 marca 2021 r.                    GETHOSTID(3)