#ifdef WIN32 #ifndef INET_PTON #define INET_PTON #include #include #include #include typedef int socklen_t; #define EAFNOSUPPORT 97 /* * WARNING: Don't even consider trying to compile this on a system where * sizeof(int) < 4. sizeof(int) 4 is fine; all the world's not a VAX. */ /* const char * * inet_ntop4(src, dst, size) * format an IPv4 address * return: * `dst' (as a const) * notes: * (1) uses no statics * (2) takes a u_char* not an in_addr as input * author: * Paul Vixie, 1996. */ extern const char * inet_ntop4(const u_char src, char *dst, socklen_t size); /* const char * * inet_ntop6(src, dst, size) * convert IPv6 binary address into presentation (printable) format * author: * Paul Vixie, 1996. */ #ifdef INET_IPV6 extern const char * inet_ntop6(src, dst, size); #endif /* INET_IPV6 */ /* int * inet_pton4(src, dst) * like inet_aton() but without all the hexadecimal and shorthand. * return: * 1 if `src' is a valid dotted quad, else 0. * notice: * does not touch `dst' unless it's returning 1. * author: * Paul Vixie, 1996. */ extern inet_pton4(const char *src,u_char *dst); /* int * inet_pton6(src, dst) * convert presentation level address to network order binary form. * return: * 1 if `src' is a valid [RFC1884 2.2] address, else 0. * notice: * (1) does not touch `dst' unless it's returning 1. * (2) :: in a full address is silently ignored. * credit: * inspired by Mark Andrews. * author: * Paul Vixie, 1996. */ #ifdef INET_IPV6 extern int inet_pton6(src, dst); #endif /* INET_IPV6 */ /* char * * inet_ntop(af, src, dst, size) * convert a network format address to presentation format. * return: * pointer to presentation format address (`dst'), or NULL (see errno). * author: * Paul Vixie, 1996. */ extern const char *inet_ntop(int af,const void *src,char *dst,socklen_t size); /* int * inet_pton(af, src, dst) * convert from presentation format (which usually means ASCII printable) * to network format (which is usually some kind of binary format). * return: * 1 if the address was valid for the specified address family * 0 if the address wasn't valid (`dst' is untouched in this case) * -1 if some other error occurred (`dst' is untouched in this case, too) * author: * Paul Vixie, 1996. */ extern int inet_pton(int af,const char *src,void *dst); #endif #endif