diff --git a/src/core.h b/src/core.h index 2a1d49d..57d9290 100644 --- a/src/core.h +++ b/src/core.h @@ -4,10 +4,8 @@ begin : Tue May 14 2002 copyright : netcreature (C) 2002 email : netcreature@users.sourceforge.net - ***************************************************************************/ -#include - /* GPL */ -/*************************************************************************** + *************************************************************************** + *************************************************************************** * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * @@ -15,6 +13,9 @@ * (at your option) any later version. * * * ***************************************************************************/ + +#include + #ifndef __CORE_HEADER #define __CORE_HEADER #define BUFF_SIZE 8*1024 // used to read responses from proxies. @@ -104,34 +105,29 @@ int connect_proxy_chain (int sock, ip_type target_ip, unsigned short target_port int proxychains_write_log(char *str,...); typedef int (*connect_t)(int, const struct sockaddr *, socklen_t); -connect_t true_connect; - typedef struct hostent* (*gethostbyname_t)(const char *); -gethostbyname_t true_gethostbyname; - -typedef int (*getaddrinfo_t)(const char *, const char *, - const struct addrinfo *, - struct addrinfo **); -getaddrinfo_t true_getaddrinfo; - typedef int (*freeaddrinfo_t)(struct addrinfo *); -freeaddrinfo_t true_freeaddrinfo; - -typedef int (*getnameinfo_t) (const struct sockaddr *, - socklen_t, char *, - socklen_t, char *, - socklen_t, int); -getnameinfo_t true_getnameinfo; - typedef struct hostent *(*gethostbyaddr_t) (const void *, socklen_t, int); -gethostbyaddr_t true_gethostbyaddr; + +typedef int (*getaddrinfo_t)(const char *, const char *, const struct addrinfo *, + struct addrinfo **); + +typedef int (*getnameinfo_t) (const struct sockaddr *, socklen_t, char *, + socklen_t, char *, socklen_t, int); + + +extern connect_t true_connect; +extern gethostbyname_t true_gethostbyname; +extern getaddrinfo_t true_getaddrinfo; +extern freeaddrinfo_t true_freeaddrinfo; +extern getnameinfo_t true_getnameinfo; +extern gethostbyaddr_t true_gethostbyaddr; + struct hostent* proxy_gethostbyname(const char *name); -int proxy_getaddrinfo(const char *node, const char *service, - const struct addrinfo *hints, - struct addrinfo **res); - +int proxy_getaddrinfo(const char *node, const char *service, + const struct addrinfo *hints, struct addrinfo **res); void pc_stringfromipv4(unsigned char *ip_buf_4_bytes, char *outbuf_16_bytes); diff --git a/src/libproxychains.c b/src/libproxychains.c index 3c4d7a2..d255952 100644 --- a/src/libproxychains.c +++ b/src/libproxychains.c @@ -43,6 +43,13 @@ #define SOCKFAMILY(x) (satosin(x)->sin_family) #define MAX_CHAIN 512 +connect_t true_connect; +gethostbyname_t true_gethostbyname; +getaddrinfo_t true_getaddrinfo; +freeaddrinfo_t true_freeaddrinfo; +getnameinfo_t true_getnameinfo; +gethostbyaddr_t true_gethostbyaddr; + int tcp_read_time_out; int tcp_connect_time_out; chain_type proxychains_ct;