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

NUME

       nodebyname, getipnodebyaddr, freehostent - obține nume de gazdă și adrese de rețea

BIBLIOTECA

       Biblioteca C standard (libc, -lc)

SINOPSIS

       #include <sys/types.h>
       #include <sys/socket.h>
       #include <netdb.h>

       [[deprecia]t] struct hostent *getipnodebyname(const char *name, int af,
                                                   int flags, int *error_num);
       [[depreciat]] struct hostent *getipnodebyaddr(const void addr[.len],
                                                   size_t len, int af,
                                                   int *error_num);
       [[depreciat]] void freehostent(struct hostent *ip);

DESCRIERE

       Aceste  funcții  sunt depreciate (și nu sunt disponibile în glibc). Utilizați în schimb getaddrinfo(3) și
       getnameinfo(3).

       Funcțiile getipnodebyname() și getipnodebyaddr() returnează numele  și  adresele  unei  gazde  de  rețea.
       Aceste funcții returnează un indicator la următoarea structură:

           struct hostent {
               char  *h_name;
               char **h_aliases;
               int    h_addrtype;
               int    h_length;
               char **h_addr_list;
           };

       Aceste  funcții  înlocuiesc  funcțiile  gethostbyname(3)  și  gethostbyaddr(3),  care puteau accesa numai
       familia de adrese de rețea IPv4. Funcțiile getipnodebyname() și getipnodebyaddr() pot  accesa  mai  multe
       familii de adrese de rețea.

       Spre  deosebire  de  funcțiile  gethostby,  aceste  funcții  returnează  indicatori către memoria alocată
       dinamic. Funcția freehostent() este utilizată pentru a elibera memoria alocată dinamic după ce  apelantul
       nu mai are nevoie de structura hostent.

   argumente getipnodebyname()
       Funcția  getipnodebyname()  caută  adresele  de  rețea  pentru  gazda  specificată  de  argumentul  name.
       Argumentul af specifică una dintre următoarele valori:

       AF_INET
              Argumentul name indică o adresă IPv4 cu patru grupe separate prin puncte sau un nume al unei gazde
              de rețea IPv4.

       AF_INET6
              Argumentul name indică o adresă IPv6 în hexazecimal sau un nume al unei gazde de rețea IPv6.

       Argumentul flags specifică opțiuni suplimentare. Se pot specifica mai multe opțiuni prin  combinarea  lor
       în mod binar OR- împreună. flags trebuie să fie stabilit la 0 dacă nu se dorește nicio opțiune.

       AI_V4MAPPED
              Acest  fanion este utilizat împreună cu AF_INET6 pentru a solicita o interogare pentru adrese IPv4
              în loc de adrese IPv6; adresele IPv4 vor fi convertite în adrese IPv6.

       AI_ALL Acest fanion este utilizat împreună cu AI_V4MAPPED pentru a  solicita  o  interogare  atât  pentru
              adresele  IPv4,  cât  și pentru cele IPv6. Orice adresă IPv4 găsită va fi convertită într-o adresă
              IPv6.

       AI_ADDRCONFIG
              Acest fanion este utilizat împreună cu AF_INET6 pentru a solicita în  continuare  ca  interogările
              pentru  adrese  IPv6 să nu fie efectuate decât dacă sistemul are cel puțin o adresă IPv6 atribuită
              unei interfețe de rețea și ca interogările pentru adrese IPv4  să  nu  fie  efectuate  decât  dacă
              sistemul  are  cel  puțin  o  adresă IPv4 atribuită unei interfețe de rețea. Acest fanion poate fi
              utilizat singur sau împreună cu fanionul AI_V4MAPPED.

       AI_DEFAULT
              Acest fanion este echivalent cu (AI_ADDRCONFIG | AI_V4MAPPED).

   argumente getipnodebyaddr()
       Funcția getipnodebyaddr() caută numele gazdei a cărei adresă de  rețea  este  specificată  de  argumentul
       addr.  Argumentul af specifică una dintre următoarele valori:

       AF_INET
              Argumentul  addr  indică  o  structură  struct  in_addr,  iar  len  trebuie  să  fie  stabilit  la
              sizeof(struct in_addr).

       AF_INET6
              Argumentul addr  indică  o  structură  struct  in6_addr,  iar  len  trebuie  să  fie  stabilit  la
              sizeof(struct in6_addr).

VALOAREA RETURNATĂ

       Se  returnează  NULL  dacă  s-a produs o eroare, iar error_num va conține un cod de eroare din următoarea
       listă:

       HOST_NOT_FOUND
              Numele de gazdă sau adresa de rețea nu au fost găsite.

       NO_ADDRESS
              Serverul de nume de domeniu a recunoscut adresa  sau  numele  rețelei,  dar  nu  a  primit  niciun
              răspuns.  Acest  lucru se poate întâmpla în cazul în care gazda rețelei are numai adrese IPv4 și a
              fost făcută o cerere pentru informații numai pentru IPv6 sau invers.

       NO_RECOVERY
              Serverul de nume de domeniu a returnat un răspuns de eșec permanent.

       TRY_AGAIN
              Serverul de nume de domeniu a returnat un răspuns de eșec temporar. S-ar putea să aveți  mai  mult
              noroc data viitoare.

       O interogare reușită returnează un indicator către o structură hostent care conține următoarele câmpuri:

       h_name Acesta este numele oficial al acestei gazde de rețea.

       h_aliases
              Aceasta  este  o matrice de indicatoare către nume alias neoficiale pentru aceeași gazdă. Matricea
              se termină cu un indicator nul.

       h_addrtype
              Aceasta este o copie a argumentului af pentru getipnodebyname() sau getipnodebyaddr().  h_addrtype
              va fi întotdeauna AF_INET dacă argumentul af a fost AF_INET. h_addrtype va fi întotdeauna AF_INET6
              dacă argumentul af a fost AF_INET6.

       h_length
              Acest  câmp  va  fi  stabilit  la  sizeof(struct  in_addr)  dacă  h_addrtype  este  AF_INET  și la
              sizeof(struct in6_addr) dacă h_addrtype este AF_INET6.

       h_addr_list
              Aceasta este o matrice de unul sau mai mulți indicatori la structurile de adrese de  rețea  pentru
              gazda rețelei.  Matricea se termină cu un indicator nul.

STANDARDE

       Niciunul.

ISTORIC

       RFC 2553.

       Prezente  în  glibc  2.1.91-95, dar au fost eliminate din nou.  Mai multe sisteme de tip UNIX le acceptă,
       dar toate le numesc depreciate.

CONSULTAȚI ȘI

       getaddrinfo(3), getnameinfo(3), inet_ntop(3), inet_pton(3)

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                                 getipnodebyname(3)