Provided by: manpages-ro-dev_4.27.0-1_all bug

NUME

       gethostname, sethostname - obține/stabilește numele gazdei

BIBLIOTECA

       Biblioteca C standard (libc, -lc)

SINOPSIS

       #include <unistd.h>

       int gethostname(char *name, size_t len);
       int sethostname(const char *name, size_t len);

   Cerințe pentru macrocomenzi de testare a caracteristicilor pentru glibc (consultați feature_test_macros(7)):

       gethostname():
           _XOPEN_SOURCE >= 500 || _POSIX_C_SOURCE >= 200112L
               || /* glibc 2.19 și versiunile anterioare */ _BSD_SOURCE

       sethostname():
           Începând cu glibc 2.21:
               _DEFAULT_SOURCE
           În glibc 2.19 și 2.20:
               _DEFAULT_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)
           Până la și inclusiv glibc 2.19:
               _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)

DESCRIERE

       Aceste  apeluri  de  sistem  sunt  utilizate  pentru  a  accesa  sau pentru a modifica numele de gazdă al
       sistemului. Mai exact, ele operează asupra numelui de gazdă asociat cu spațiul de nume UTS al  procesului
       apelant.

       sethostname()  stabilește numele de gazdă la valoarea dată în matricea de caractere name.  Argumentul len
       specifică numărul de octeți din name.  (Prin urmare, name nu necesită un octet de terminare nul).

       gethostname() returnează numele de gazdă cu un octet de terminare nul în matricea de caractere name, care
       are o lungime de len octeți. În cazul în care numele de gazdă cu un octet de terminare nul este prea mare
       pentru a încăpea, numele este trunchiat și nu se returnează nicio eroare (a se vedea însă rubrica NOTE de
       mai jos). POSIX.1 precizează că, dacă are loc o astfel de trunchiere, nu se specifică dacă memoria tampon
       returnată include sau nu un octet de terminare nul.

VALOAREA RETURNATĂ

       În caz de succes, se returnează zero. În caz de eroare, se returnează  -1,  iar  errno  este  configurată
       pentru a indica eroarea.

ERORI-IEȘIRE

       EFAULT name este o adresă nevalidă.

       EINVAL argumentul  len este negativ sau, pentru sethostname(), len este mai mare decât dimensiunea maximă
              permisă.

       ENAMETOOLONG
              (glibc gethostname()) argumentul len este mai mic decât dimensiunea reală; (înainte de glibc  2.1,
              glibc utiliza EINVAL pentru acest caz).

       EPERM  Pentru sethostname(), apelantul nu avea capacitatea CAP_SYS_ADMIN în spațiul de nume de utilizator
              asociat cu spațiul său de nume UTS (a se vedea namespaces(7)).

VERSIUNI

       SUSv2  garantează  că  „Numele  de  gazdă  sunt limitate la 255 de octeți”. POSIX.1 garantează că „Numele
       gazdelor (fără a include octetul nul de terminare) sunt limitate  la  HOST_NAME_MAX  octeți”.  În  Linux,
       HOST_NAME_MAX  este  definit  cu  valoarea 64, care a fost limita de la Linux 1.0 (nucleele anterioare au
       impus o limită de 8 octeți).

   Diferențe între biblioteca C și nucleu
       Biblioteca GNU C nu utilizează apelul de sistem gethostname(); în schimb, implementează gethostname()  ca
       o funcție de bibliotecă care apelează uname(2) și copiază până la len octeți din câmpul nodename returnat
       în  name.  După ce a efectuat copia, funcția verifică dacă lungimea câmpului nodename a fost mai mare sau
       egală cu len, iar dacă este așa, funcția returnează -1 cu errno stabilită la ENAMETOOLONG; în acest  caz,
       un octet de terminare nul nu este inclus în câmpul nodename returnat.

STANDARDE

       gethostname()
              POSIX.1-2008.

       sethostname()
              Niciunul.

ISTORIC

       SVr4,  4.4BSD  (aceste  interfețe  au  apărut  pentru prima dată în 4.2BSD). POSIX.1-2001 și POSIX.1-2008
       specifică gethostname(), dar nu și sethostname().

       Versiunile de glibc anterioare lui glibc 2.2 tratează diferit cazul în care lungimea lui nodename a  fost
       mai  mare  sau  egală  cu len: nu se copiază nimic în name și funcția returnează -1 cu errno stabilită la
       ENAMETOOLONG.

CONSULTAȚI ȘI

       hostname(1), getdomainname(2), setdomainname(2), uname(2), uts_namespaces(7)

TRADUCERE

       Traducerea   în   limba   română   a   acestui   manual   a   fost   făcută   de   Remus-Gabriel    Chelu
       <remusgabriel.chelu@disroot.org>

       Această  traducere  este  documentație  gratuită;  citiți  Licența publică generală GNU Versiunea 3 sau o
       versiune  ulterioară  cu  privire  la  condiții  privind  drepturile  de  autor.   NU  se   asumă   NICIO
       RESPONSABILITATE.

       Dacă  găsiți  erori  în  traducerea  acestui manual, vă rugăm să trimiteți un e-mail la translation-team-
       ro@lists.sourceforge.net.

Pagini de manual de Linux 6.9.1                    2 mai 2024                                     gethostname(2)