.\" -*- coding: UTF-8 -*- .\" Copyright 1993 Rickard E. Faith (faith@cs.unc.edu) .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\" Modified 1995-07-22 by Michael Chastain : .\" 'gethostname' is real system call on Linux/Alpha. .\" Modified 1997-01-31 by Eric S. Raymond .\" Modified 2000-06-04, 2001-12-15 by aeb .\" Modified 2004-06-17 by mtk .\" Modified 2008-11-27 by mtk .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH gethostname 2 "30 marca 2023 r." "Linux man\-pages 6.05.01" .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 .PP \fBint gethostname(char *\fP\fIname\fP\fB, size_t \fP\fIlen\fP\fB);\fP \fBint sethostname(const char *\fP\fIname\fP\fB, size_t \fP\fIlen\fP\fB);\fP .fi .PP .RS -4 Wymagane ustawienia makr biblioteki glibc (patrz \fBfeature_test_macros\fP(7)): .RE .PP \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 .PP \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. .PP \fBsethostname\fP() ustawia nazwę komputera na wartość określoną w tablicy znakowej \fIname\fP. Argument \fIlen\fP argument określa liczbę bajtów w \fIname\fP (dlatego \fIname\fP nie wymaga końcowego bajtu null). .PP \fBgethostname\fP() zwraca nazwę komputera, zakończoną znakiem null, w tablicy znakowej \fIname\fP, o długości \fIlen\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. UWAGI 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 jest \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 'len' has an .\" unsigned type; can occur for the underlying system call. \fIlen\fP jest ujemne lub, przy \fBsethostname\fP(), \fIlen\fP jest większe niż maksymalny dopuszczalny rozmiar. .TP \fBENAMETOOLONG\fP (glibc \fBgethostname\fP()) \fIlen\fP jest mniejsze 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 \fIlen\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 \fIlen\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\-2008. .TP \fBsethostname\fP() Brak. .SH HISTORIA SVr4, 4.4BSD (interfejsy te pierwotnie pojawiły się w 4.2BSD). POSIX.1\-2001 i POSIX.1\-2008 definiuje \fBgethostname\fP() ale nie \fBsethostname\fP(). .PP .\" 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 \fIlen\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 Autorami polskiego tłumaczenia niniejszej strony podręcznika są: 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 .