Provided by: manpages-pl-dev_20060617-3_all bug

NAZWA

       getipnodebyname,   getipnodebyaddr,  freehostent  -  okrelenie  nazw  i
       adresow sieciowych hosta

SK/LADNIA

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

       struct hostent *getipnodebyname(const char *name,
                                int af, int flags,
                                int *error_num);

       struct hostent *getipnodebyaddr(const void *addr,
                                size_t len, int af,
                                int *error_num);

       void freehostent(struct hostent *ip);

OPIS

       Te funkcje s przestarzale. Zamiast nich  naley  uywa  getaddrinfo(3)  i
       getnameinfo(3).

       Funkcje  getipnodebyname(3) i getipnodebyaddr(3) zwracaj nazwy i adresy
       hosta sieciowego.  Wynik jest  wskanikiem  do  struktury  o  nastpujcej
       postaci:

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

       Funkcje  te zastpily funkcje gethostbyname(3) i gethostbyaddr(3), ktore
       mogly udostpnia jedynie adresy nalece  do  rodziny  adresow  sieciowych
       IPv4.  Funkcje  getipnodebyname(3)  i  getipnodebyaddr(3) mog udostpnia
       adresy nalece do wielu rodzin adresow sieciowych.

       W odronieniu od funkcji  gethostby,  funkcje  te  zwracaj  wskaniki  do
       pamici  przydzielonej  dynamicznie.   Funkcja  freehostent(3)  sluy  do
       zwalniania przydzielonej  dynamicznie  pamici,  gdy  wywolujcy  ju  nie
       potrzebuje struktury hostent.

   parametry getipnodebyname
       Funkcja  getipnodebyname(3)  wyszukuje adresy sieciowe hosta podanego w
       parametrze name.  Parametr af moe zawiera jedn z nastpujcych wartoci:

       AF_INET
              Parametr  name  wskazuje  na  adres  IPv4  (w  postaci  czterech
              rozdzielonych kropkami liczb) lub na nazw hosta sieci IPv4.

       AF_INET6
              Parametr  name  wskazuje na adres IPv6 (w postaci szesnastkowej)
              lub na nazw hosta sieci IPv6.

       Parametr flags zawiera dodatkowe opcje.  Mona poda wicej ni  jedn  opcj
       poprzez wykonanie na nich logicznego OR.  flags powinno by ustawione na
       0, gdy adne opcje nie s potrzebne.

       AI_V4MAPPED
              Ten znacznik uyty lcznie  z  AF_INET6  okrela,  e  zapytanie  ma
              dotyczy  adresow IPv4, a nie IPv6; adresy IPv4 bd odwzorowane na
              adresy IPv6.

       AI_ALL Ten znacznik uyty lcznie z AI_V4MAPPED okrela,  e  zapytanie  ma
              dotyczy  zarowno  adresow  IPv4,  jak i IPv6.  Znalezione adresy
              IPv4 zostan odwzorowane na adresy IPv6.

       AI_ADDRCONFIG
              Ten znacznik uyty lcznie z AF_INET6 oznacza, e dalsze  zapytania
              dotyczce  adresow  IPv6  nie powinny by wykonywane, jeeli system
              nie posiada adresu IPv6 przydzielonego do ktorego z  interfejsow
              sieciowych  oraz,  e  dalsze zapytania dotyczce adresow IPv4 nie
              powinny by wykonywane, jeeli  system  nie  posiada  adresu  IPv4
              przydzielonego  do  ktorego  z interfejsow sieciowych.  Znacznik
              ten moe  zosta  uyty  samodzielnie  lub  lcznie  ze  znacznikiem
              AI_V4MAPPED.

       AI_ALL Ten znacznik jest rownowany (AI_ADDRCONFIG | AI_V4MAPPED).

   parametry getipnodebyaddr
       Funkcja   getipnodebyaddr(3)   poszukuje  nazwy  hista,  ktorego  adres
       sieciowy jest podany w parametrze addr.  Parametr af  moe  mie  jedn  z
       nastpujcych wartoci:

       AF_INET
              Parametr  addr wskazuje na struktur struct in_addr; len musi mie
              wowczas warto sizeof(struct in_addr).

       AF_INET6
              Parametr addr wskazuje na struktur struct in6_addr; len musi mie
              wowczas warto sizeof(struct in6_addr).

WARTO ZWRACANA

       Gdy  wystpi  bld,  zwrocony  zostanie  wskanik  NULL  a error_num bdzie
       zawiera kod bldu wedlug nastpujcej listy:

       HOST_NOT_FOUND
              Nie znaleziono nazwy lub adresu sieciowego hosta.

       NO_ADDRESS
              Serwer DNS rozpoznal adres sieciowy  lub  nazw  hosta,  ale  nie
              zwrocil  odpowiedzi.  Moe si to zdarzy, gdy host posiada jedynie
              adresy IPv4, a zapytanie dotyczylo jedynie  informacji  o  IPv6,
              lub odwrotnie.

       NO_RECOVERY
              Serwer DNS zwrocil bld trwaly.

       TRY_AGAIN
              Serwer  DNS  zwrocil  bld  tymczasowy. Moe nastpnym razem bedzie
              wicej szczcia.

       W przypadku pomylnego  wyniku  zapytania  zwraca  ny  jest  wskanik  do
       struktury hostent zawierajcej nastpujce pola:

       h_name Oficjalna nazwa tego hosta.

       h_aliases
              Tablica  wskanikow  do nieoficjalnych aliasow tego samego hosta.
              Tablica jest zakoczona wskanikiem NULL.

       h_addrtype
              Kopia    parametru    af    funkcji    getipnodebyname(3)    lub
              getipnodebyaddr(3).    h_addrtype   bdzie   rowne  AF_INET,  gdy
              parametr af byl rowny AF_INET.  h_addrtype bdzie rowne AF_INET6,
              gdy parametr af byl rowny AF_INET6.

       h_length
              Bdzie  rowne  sizeof(struct  in_addr), gdy h_addrtype jest rowne
              AF_INET a sizeof(struct in6_addr),  gdy  h_addrtype  jest  rowne
              AF_INET6.

       h_addr_list
              Tablica zawierajca jeden lub wicej wskanikow do struktur adresow
              sieciowych danego hosta. Tablica jest zakoczona wskanikiem NULL.

UWAGI

       Funkcje te byly obecne w glibc 2.1.91-95, ale zostaly ponownie usunite.
       Wspieraj  je  niektore systemy uniksopodobne, lecz wszystkie traktuj te
       funkcje jako niezalecane.

ZGODNE Z

       RFC 2553.

ZOBACZ TAKE

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

INFORMACJE O T/LUMACZENIU

       Powysze tlumaczenie pochodzi z nieistniejcego ju  Projektu  Tlumaczenia
       Manuali  i  moe nie by aktualne. W razie zauwaenia ronic midzy powyszym
       opisem a rzeczywistym zachowaniem  opisywanego  programu  lub  funkcji,
       prosimy o zapoznanie si z oryginaln (angielsk) wersj strony podrcznika.