Barra laterale

programmazione:c:una_funzione_per_risolvere_i_nomi_di_dominio

Una funzione per risolvere i nomi di dominio

Autore: Fabio Di Matteo
Ultima revisione: 26/07/2008

#include <netdb.h>
 
 
 
char* resolv(char* host){
	//Raccolgo in questa struttura informazioni sull'host
	//che serviranno per la risoluzione del nome.
	struct hostent *address=gethostbyname(host);
 
 
	if (address!=NULL){
		//struttura che servira per leggere l'ip
		struct in_addr addr;
 
		/*le info sull host sono racchiuse nel puntatore address
	 	*a noi serve sapere solo l'indirizzo ip, ovvero  address->h_name.
	 	*ma per stamparlo correttamente si deve mettere address->h_name in 
	 	*addr.s_addr in questo modo: addr.s_addr = *( (unsigned long *)address->h_addr);
	 	*in caso di fallimento la funzione gethostbyname restituisce NULL*/
		addr.s_addr = *( (unsigned long *)address->h_addr);
 
		return  inet_ntoa(addr);
	}else{
		return NULL ;
	}
}

programmazione/c/una_funzione_per_risolvere_i_nomi_di_dominio.txt · Ultima modifica: 18/04/2018 - 15:49 (modifica esterna)