diff --git a/src/3proxy.c b/src/3proxy.c index af4e085..ad686a3 100644 --- a/src/3proxy.c +++ b/src/3proxy.c @@ -647,7 +647,7 @@ static int h_proxy(int argc, unsigned char ** argv){ childdef.isudp = 0; childdef.service = S_PROXY; childdef.helpmessage = " -n - no NTLM support\n"; - if(!resolvfunc || (resolvfunc == myresolver && !dns_table->hashsize)){ + if(!resolvfunc || (resolvfunc == myresolver && !dns_table.hashsize)){ fprintf(stderr, "[line %d] Warning: no nserver/nscache configured, proxy may run very slow\n", linenum); } } @@ -678,7 +678,7 @@ static int h_proxy(int argc, unsigned char ** argv){ childdef.isudp = 0; childdef.service = S_SOCKS; childdef.helpmessage = " -n - no NTLM support\n"; - if(!resolvfunc || (resolvfunc == myresolver && !dns_table->hashsize)){ + if(!resolvfunc || (resolvfunc == myresolver && !dns_table.hashsize)){ fprintf(stderr, "[line %d] Warning: no nserver/nscache configured, socks may run very slow\n", linenum); } } @@ -721,7 +721,7 @@ static int h_proxy(int argc, unsigned char ** argv){ childdef.port = 53; childdef.isudp = 1; childdef.service = S_DNSPR; - if(!resolvfunc || (resolvfunc == myresolver && !dns_table->hashsize) || resolvfunc == fake_resolver){ + if(!resolvfunc || (resolvfunc == myresolver && !dns_table.hashsize) || resolvfunc == fakeresolver){ fprintf(stderr, "[line %d] Warning: no nserver/nscache configured, dnspr will not work as expected\n", linenum); } } diff --git a/src/auth.c b/src/auth.c index 8b22b11..3af7010 100644 --- a/src/auth.c +++ b/src/auth.c @@ -882,20 +882,6 @@ struct auth authfuncs[] = { }; -struct hashentry { - unsigned char hash[sizeof(unsigned)*4]; - unsigned long value; - time_t expires; - struct hashentry *next; -}; - -struct hashtable { - unsigned hashsize; - struct hashentry ** hashtable; - struct hashentry * hashvalues; - struct hashentry * hashempty; -}; - struct hashtable dns_table = {0, NULL, NULL, NULL}; diff --git a/src/proxy.c b/src/proxy.c index fa626d5..3006d4e 100644 --- a/src/proxy.c +++ b/src/proxy.c @@ -339,7 +339,7 @@ for(;;){ if(!isconnect){ if(se==sg)*se-- = ' '; *se = '/'; - memcpy(ss, se, i - (se - sb) + 1); + memmove(ss, se, i - (se - sb) + 1); } } reqlen = i = (int)strlen((char *)buf); diff --git a/src/structures.h b/src/structures.h index 52d8dee..c9057a2 100644 --- a/src/structures.h +++ b/src/structures.h @@ -657,6 +657,19 @@ typedef enum { TYPE_SERVER }DATA_TYPE; +struct hashentry { + unsigned char hash[sizeof(unsigned)*4]; + unsigned long value; + time_t expires; + struct hashentry *next; +}; + +struct hashtable { + unsigned hashsize; + struct hashentry ** hashtable; + struct hashentry * hashvalues; + struct hashentry * hashempty; +}; #ifdef __cplusplus }