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

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).
┌─────────────┬────────────────────────┬───────────────────────────┐
│ 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 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.
Linux 2016-03-15 GETHOSTID(3)