-
Trouver une machine à partir du nom par gethostbyname :
#include <netdb.h>
struct hostent *gethostbyname(char *name);
- Tout est dans la structure hostent :
struct hostent {
char *h_name; /* nom officiel */
char **h_aliases; /* liste des surnoms */
int h_addrtype; /* type de l'adressage */
int h_length; /* taille des adresses */
char **h_addr_list; /* liste des adresses */
};
#define h_addr h_addr_list[0]
- Trouver une machine à partir de l'adresse par gethostbyaddr :
#include <netdb.h>
struct hostent *gethostbyaddr(char *address,int length,int type);
- En pratique le type type est AF_INET ;
- L'adresse address doit être en binaire ;
- L'adresse peut être obtenue par inet_aton :
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
int inet_aton(const char *string, struct in_addr *address);