gethostbyname

GETHOSTBYNAME(3)	 Linux - prirucka programatora	      GETHOSTBYNAME(3)



JMENO
       gethostbyname,  gethostbyaddr,  sethostent, endhostent, herror - ziskej
       zaznam z databaze pocitacu

SYNTAXE
       #include <netdb.h>
       extern int h_errno;

       struct hostent *gethostbyname(const char *name);

       struct hostent *gethostbyaddr(const char *addr, int len, int type);

       void sethostent(int stayopen);

       void endhostent(void);

       void herror(const char *s);

POPIS
       Funkce gethostbyname() vraci strukturu typu hostent pro zadany  pocitac
       name.  Domena  pocitace	a  ji nadrazene jsou prohledavany pouze tehdy,
       nekonci-li name teckou.	Pokud name nekonci teckou a promenna prostredi
       HOSTALIASES  je nastavena, bude prvne prohledavan soubor, na ktery uka-
       zuje promenna HOSTALIASES.

       Funkce gethostbyaddr() vraci strukturu typu hostent pro pocitac,	 jehoz
       adresa  addr  (delky len a typu type) byla zadana. Jedinym platny typem
       adresy je nyni AF_INET.

       Funkce sethostent() specifikuje, je-li  stayopen	 pravdive  (1),	 ze  k
       dotazovani budou pouzity spojene TCP sokety a spojeni zustane mezi jed-
       notlivymi dotazy otevreno. Jinak budou k dotazovani pouzity UDP	datag-
       ramy.

       Funkce endhostent() ukonci TCP spojeni pro dotazy na nameserver.

       Funkce  herror()	 vytiskne  chybovou  zpravu,  ktera  prislusi  hodnote
       promenne h_errno.

       Funkce gethostbyname() a gethostbyaddr() pouzivaji pri sve cinnosti jak
       nameservery  named(8), tak soubor /etc/hosts, ale samozrejme i NIS nebo
       YP,  to	zalezi	na  poradi   definovanem   v   /etc/host.conf.	  (Viz
       resolv+(8)).   Standardne  je  prvne  dotazovan named(8) a potom soubor
       /etc/hosts.

       Struktura hostent je definovana v <netdb.h> nasledovne:

	      struct hostent {
		      char    *h_name;	      /* official name of host */
		      char    **h_aliases;    /* alias list */
		      int     h_addrtype;     /* host address type */
		      int     h_length;	      /* length of address */
		      char    **h_addr_list;  /* list of addresses */
	      }
	      #define h_addr  h_addr_list[0]  /* for backward compatibility */

       Prvky struktury hostent jsou:

       h_name Oficialni jmeno pocitace.

       h_aliases
	      Nulou ukoncene pole alternativnich jmen pocitacu.

       h_addrtype
	      Typ adres, v soucasne dobe vzdy AF_INET.

       h_length
	      Delka adresy v bajtech.

       h_addr_list
	      Nulou ukoncene pole sitovych adres  pocitace  v  sitovem	poradi
	      dat.

       h_addr Prvni adresa v h_addr_list kvuli zpetne kompatibilite.

NAVRATOVA HODNOTA
       Funkce  gethostbyname()	a gethostbyaddr() vraci strukturu hostent nebo
       ukazatel NULL v pripade vyskytu	chyby.	Potom  je  nastavena  promenna
       h_errno.

CHYBY
       Promenna h_errno muze obsahovat nasledujici hodnoty:

       HOST_NOT_FOUND
	      Specifikovany pocitac je neznamy.

       NO_ADDRESS
	      Jmeno je platne, ale nema zadnou IP adresu.

       NO_RECOVERY
	      Doslo k vyskytu neodstranitelne chyby nameserveru.

       TRY_AGAIN
	      Doslo   k	 docasne  chybe	 autoritativniho  nameserveru.	Zkuste
	      pozdeji.

SOUBORY
       /etc/host.conf
	      konfiguracni soubor resolveru.

       /etc/hosts
	      databaze pocitacu.

SPLNUJE STANDARDY
       BSD 4.3

DALSI INFORMACE
       resolver(3), hosts(5), hostname(7), resolv+ (8), named(8)



BSD				30. brezna 1997		      GETHOSTBYNAME(3)

Personal Tools