INET(3) Linux - prirucka programatora INET(3)
JMENO
inet_aton, inet_addr, inet_network, inet_ntoa, inet_makeaddr,
inet_lnaof, inet_netof - funkce pro manipulace s adresami pocitacu
SYNTAXE
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
int inet_aton(const char *cp, struct in_addr *inp);
unsigned long int inet_addr(const char *cp);
unsigned long int inet_network(const char *cp);
char *inet_ntoa(struct in_addr in);
struct in_addr inet_makeaddr(int net, int host);
unsigned long int inet_lnaof(struct in_addr in);
unsigned long int inet_netof(struct in_addr in);
POPIS
inet_aton() konvertuje adresu pocitace v Internetu cp v klasicke
teckove notaci do binarnich dat a ulozi ji do struktury, na kterou uka-
zuje inp. inet_aton vraci nenulove cislo, kdyz je adresa platna, jinak
vraci 0.
Funkce inet_addr() konvertuje Internetovou adresu cp ve standardni
teckove notaci do binarni formy. neni-li vstupni hodnota platna, je
vraceno cislo -1. Tato funkce je zastaralym rozhranim k funkci
inet_aton, popsane vyse; je zbytecna, protoze -1 je platna adresa
(255.255.255.255) a funkce inet_aton poskytuje lepsi moznosti indikace
chyby.
Funkce inet_network() extrahuje cislo site z adresy cp, zadane ve stan-
dardni teckove notaci. Neni-li vstupni hodnota platna, je vracena -1.
Funkce inet_ntoa() konvertuje Internetovou adresu pocitace in do
retezce ve standardni teckove notaci. Navratova hodnota je ukazatel na
staticky alokovany retezec. Dalsi volani stejne funkce by jej mohlo
prepsat, proto byste jej meli zkopirovat, bude-li jej chtit jeste
pouzit.
Funkce inet_makeaddr() vytvori Internetovou adresu pocitace spojenim
cisla site net a lokalniho cisla v siti host.
Funkce inet_lnaof() vraci adresu pocitace v siti z Internetove adresy
in.
Funkce inet_netof() vraci adresu site z Internetove adresy in.
Struktura in_addr jak je pouzita v inet_ntoa(), inet_makeaddr(),
inet_lnoaf() a inet_netof() je definovana v netinet/in.h jako:
struct in_addr {
unsigned long int s_addr;
}
Pozor poradi bytu na i80x86 je LSB (little endian), ale adresy na
Internetu jsou v MSB (big endian).
SPLNUJE STANDARDY
BSD 4.3
DALSI INFORMACE
gethostbyname(3), getnetent(3), hosts(5), networks(5)
BSD 29. brezna 1997 INET(3)