gethostid(3) | Library Functions Manual | gethostid(3) |
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);
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:
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-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
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 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.
2 maja 2024 r. | Linux man-pages 6.8 |