Come vedi in

return ((struct in_addr *)hostent_ptr->h_addr_list[0])->s_addr; /*get the first IP.*/

viene restituito il primo IP della lista trovata.

Prova a dare un'occhiata all'elemento

h_addr_list[1]