1*219b2ee8SDavid du Colombier /* posix */ 2*219b2ee8SDavid du Colombier #include <sys/types.h> 3*219b2ee8SDavid du Colombier #include <unistd.h> 4*219b2ee8SDavid du Colombier 5*219b2ee8SDavid du Colombier /* bsd extensions */ 6*219b2ee8SDavid du Colombier #include <sys/uio.h> 7*219b2ee8SDavid du Colombier #include <sys/socket.h> 8*219b2ee8SDavid du Colombier #include <netinet/in.h> 9*219b2ee8SDavid du Colombier #include <netdb.h> 10*219b2ee8SDavid du Colombier 11*219b2ee8SDavid du Colombier int h_errno; 12*219b2ee8SDavid du Colombier 13*219b2ee8SDavid du Colombier struct hostent* 14*219b2ee8SDavid du Colombier gethostbyaddr(char *addr, int len, int type) 15*219b2ee8SDavid du Colombier { 16*219b2ee8SDavid du Colombier struct in_addr x; 17*219b2ee8SDavid du Colombier 18*219b2ee8SDavid du Colombier if(type != AF_INET){ 19*219b2ee8SDavid du Colombier h_errno = NO_RECOVERY; 20*219b2ee8SDavid du Colombier return 0; 21*219b2ee8SDavid du Colombier } 22*219b2ee8SDavid du Colombier 23*219b2ee8SDavid du Colombier x.s_addr = (addr[0]<<24)|(addr[1]<<16)|(addr[2]<<8)|addr[3]; 24*219b2ee8SDavid du Colombier 25*219b2ee8SDavid du Colombier return gethostbyname(inet_ntoa(x)); 26*219b2ee8SDavid du Colombier } 27