.\" -*- coding: UTF-8 -*- .\" Copyright 1993, Rickard E. Faith .\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH gethostname 2 "8 lutego 2026 r." "Linux man\-pages 6.17" .SH NAZWA gethostname, sethostname \- pobiera/ustawia nazwę stacji .SH BIBLIOTEKA Standardowa biblioteka C (\fIlibc\fP,\ \fI\-lc\fP) .SH SKŁADNIA .nf \fB#include \fP .P \fBint gethostname(char *\fP\fIname\fP\fB, size_t \fP\fIsize\fP\fB);\fP \fBint sethostname(const char *\fP\fIname\fP\fB, size_t \fP\fIsize\fP\fB);\fP .fi .P .RS -4 Wymagane ustawienia makr biblioteki glibc (patrz \fBfeature_test_macros\fP(7)): .RE .P \fBgethostname\fP(): .nf .\" The above is something of a simplification .\" also before glibc 2.3 there was a bit churn _XOPEN_SOURCE >= 500 || _POSIX_C_SOURCE >= 200112L || /* glibc 2.19 i wcześniejsze */ _BSD_SOURCE .fi .P \fBsethostname\fP(): .nf .\" commit 266865c0e7b79d4196e2cc393693463f03c90bd8 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) .fi .SH OPIS Wywołania systemowe służą do uzyskania dostępu lub zmiany systemowej nazwy komputera. Mówiąc precyzyjniej, działają na nazwie komputera, związanej z przestrzenią nazw UTS procesu wywołującego. .P \fBsethostname\fP() ustawia nazwę komputera na wartość określoną w tablicy znakowej \fIname\fP. Argument \fIsize\fP określa liczbę bajtów w \fIname\fP (dlatego \fIname\fP nie wymaga końcowego bajtu null). .P \fBgethostname\fP() zwraca nazwę komputera, zakończoną znakiem null, w tablicy znakowej \fIname\fP, o rozmiarze \fIsize\fP bajtów. Jeśli zakończona znakiem null nazwa komputera jest zbyt długa, aby się zmieścić, to nazwa jest obcinana i nie jest zwracany żaden błąd (ale zob. WERSJE poniżej). POSIX.1 określa, że jeśli takie obcięcie występuje, to nie jest określone, czy zwracany bufor zawiera końcowy bajt null. .SH "WARTOŚĆ ZWRACANA" Po pomyślnym zakończeniu zwracane jest zero. Po błędzie zwracane jest \-1 i ustawiane \fIerrno\fP, wskazując błąd. .SH BŁĘDY .TP \fBEFAULT\fP \fIname\fP jest nieprawidłowym adresem. .TP \fBEINVAL\fP .\" Can't occur for gethostbyname() wrapper, since 'size' has an .\" unsigned type; can occur for the underlying system call. \fIsize\fP jest ujemny lub, przy \fBsethostname\fP(), \fIsize\fP jest większy niż maksymalny dopuszczalny rozmiar. .TP \fBENAMETOOLONG\fP (glibc \fBgethostname\fP()) \fIsize\fP jest mniejszy niż rzeczywisty rozmiar. Przed glibc 2.1, glibc w tym przypadku używało \fBEINVAL\fP. .TP \fBEPERM\fP W przypadku \fBsethostname\fP(), wywołujący nie posiadał przywileju (ang. capability) \fBCAP_SYS_ADMIN\fP w przestrzeni nazw użytkownika związanej z jego przestrzenią nazw UTS (zob. \fBnamespaces\fP(7)). .SH WERSJE SUSv2 gwarantuje, że \[Bq]nazwy stacji są ograniczone do 255 bajtów\[rq]. POSIX 1003.1\-2001 gwarantuje, że \[Bq]nazwy stacji (bez kończącego NUL) są ograniczone do \fBHOST_NAME_MAX\fP bajtów\[rq]. W Linuksie \fBHOST_NAME_MAX\fP jest zdefiniowane z wartością 64, co stanowiło limit od Linuksa 1.0 (wcześniejsze jądra narzucały limit 8 bajtów). .SS "Różnice biblioteki C/jądra" Biblioteka GNU C nie używa wywołania systemowego \fBgethostname\fP(); w zamian korzysta z \fBgethostname\fP() jako funkcji bibliotecznej wywołującej \fBuname\fP(2) i kopiuje do \fIsize\fP bajtów ze zwracanego pola \fInodename\fP do \fIname\fP. Po przeprowadzeniu kopiowania, funkcja sprawdza, czy długość \fInodename\fP była większa lub równa \fIsize\fP i jeśli tak było, funkcja zwraca \-1 z \fIerrno\fP ustawionym na \fBENAMETOOLONG\fP; w takim przypadku końcowy bajt null nie jest umieszczany w zwracanym \fIname\fP. .SH STANDARDY .TP \fBgethostname\fP() POSIX.1\-2024. .TP \fBsethostname\fP() Brak. .SH HISTORIA .TP \fBgethostname\fP() 4.2BSD, SVr4, POSIX.1\-2001. .TP \fBsethostname\fP() 4.2BSD, SVr4. .P .\" At least glibc 2.0 and glibc 2.1, older versions not checked Wersje glibc przed glibc 2.2 obsługują przypadek, w którym długość \fInodename\fP była większa lub równa \fIsize\fP w odmienny sposób: nic nie jest kopiowane do \fIname\fP, a funkcja zwraca \-1 z \fIerrno\fP ustawionym na \fBENAMETOOLONG\fP. .SH "ZOBACZ TAKŻE" \fBhostname\fP(1), \fBgetdomainname\fP(2), \fBsetdomainname\fP(2), \fBuname\fP(2), \fButs_namespaces\fP(7) .PP .SH TŁUMACZENIE Tłumaczenie niniejszej strony podręcznika: Przemek Borys , Andrzej Krzysztofowicz i Michał Kułach . .PP Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z .UR https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License w wersji 3 .UE lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI. .PP Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej .MT manpages-pl-list@lists.sourceforge.net .ME .