Commit Graph

131 Commits

Author SHA1 Message Date
z3APA3A
1ab94fa002 SSLPlugin: add SNI to server request 2015-05-16 18:14:35 +03:00
z3APA3A
d4f4e4a807 Deadlock in SSLPlugin corrected
deadlock due to typo in previous SSL patch
2015-05-04 18:12:46 +03:00
z3APA3A
bc725189e3 bit more thread safety
One more potential race condition in hashtables
2015-05-04 18:06:07 +03:00
z3APA3A
aa4125a6f0 Avoid some potential hashtables race conditions 2015-05-04 17:39:24 +03:00
z3APA3A
8e6d8b3314 increase max address length in X-Forwarded-For 2015-05-04 17:33:30 +03:00
z3APA3A
252d481299 allow larger request size in HTTP proxy
allow larger request size in HTTP proxy & correctly nullify request
buffer
2015-05-04 17:27:24 +03:00
Vladimir Dubrovin
f287b94236 Merge pull request #3 from qwertydzen/devel
increasing a length of proxy's username specified in config till 128 chars
2015-05-04 17:26:54 +03:00
User
5787633665 increasing length of proxy username specified in config 2015-03-29 14:29:50 +03:00
z3APA3A
522e6732fe SSLPlugin race condition fix
+ minor corrections to PCREPlugin
2015-03-02 21:05:29 +03:00
z3APA3A
7951de875a Move icon compilations to makefiles 2015-02-17 16:05:55 +03:00
z3APA3A
bf8522321f nscache bug fixed
nscache caused crash
2014-12-17 00:20:21 +03:00
z3APA3A
5844e165b5 nscache6 command support + nsrecord with IPv6
nscache6 - new command for IPv6 addresses cache
nsrecord supports IPv6 addresses
dnsauth should work with IPv6 servers and clients
+ caching is now more accurate
2014-12-14 05:33:08 +03:00
z3APA3A
7fc43e3fbd add some entropy to DNS hashtable 2014-12-14 00:46:03 +03:00
z3APA3A
e37a7f48d7 Older CVS comments removed 2014-12-13 23:20:00 +03:00
z3APA3A
50db0015d3 IPv6 support for authnserver 2014-12-13 22:56:31 +03:00
z3APA3A
8a6632f0d1 Support IPv6 for parent proxy
Parent proxy can be on IPv6 network (except SOCKS4).
2014-12-13 22:38:03 +03:00
z3APA3A
d2437975b7 Fail IPv6 client in dnsauth
before IPv6 for dnsauth is implemented
2014-12-13 20:30:20 +03:00
z3APA3A
e39f4638cf Corrected ACLs handling + network ranges in ACLS
ACL handling corrected (affected all ACL-based operations like
allow/deny/banlimin/etc).
Network ranges like
10.0.0.0-10.0.0.1.64
are winally supported in ACLS.
2014-12-13 19:48:41 +03:00
z3APA3A
042fc2afde nserver address may be given as IPv6 2014-12-13 03:56:01 +03:00
z3APA3A
a4cb2f36b5 -s switch support for dnspr
dnspr -s switch to act as a simple DNS proxy and do not use 3proxy's
resolver and DNS cache.
2014-12-12 23:51:47 +03:00
z3APA3A
efdbaee29f return more random serial generation 2014-12-11 03:49:26 +03:00
z3APA3A
8c95f4efcf unused variables removed 2014-12-11 03:13:16 +03:00
z3APA3A
15f9f24f04 Name resolution via TCP support
Supports _real_ name resolution via parent proxy over TCP in nserver /
dnspr.
Can be used to create UDP->TCP name proxy, e.g.

nserver 127.0.0.1/tcp
nscache 65535
auth none
dnspr
auth iponly
tcppm 53 77.88.8.8 53

now, all names are resolved via TCP connection to 77.88.8.8
(dns.yandex.ru).
2014-12-11 03:06:34 +03:00
z3APA3A
e3645ee971 ftppr and -h option handling fixed 2014-12-10 19:00:35 +03:00
z3APA3A
f82d1e296b Redirection fixes 2014-11-26 01:50:14 +03:00
z3APA3A
b5bcb44e27 Fixes for NOIPV6
Fixes to compile without IPv6 support
2014-11-09 21:59:58 +03:00
z3APA3A
278955deef getip46 corrected 2014-11-09 20:56:26 +03:00
z3APA3A
7acf3cc4ed name resolution bugfixes 2014-11-03 22:17:22 +03:00
z3APA3A
f70e4adf47 IPv6 bugfixes 2014-11-03 21:25:06 +03:00
z3APA3A
db5c4b1255 more changes for IPv6 client support 2014-10-21 06:00:56 +04:00
z3APA3A
10bc0db2a8 add IPv4/IPv6 selection for outgoing connections 2014-10-19 22:02:15 +04:00
z3APA3A
c7310a2060 initial partial patches for IPv6 client support 2014-10-19 21:54:24 +04:00
z3APA3A
f1e017394d Added IPv6 support for 'external' command and -e
Now, 2 external addresses can be specified: one for IPv4 and one for
IPv6
2014-10-19 04:32:18 +04:00
z3APA3A
a425dc40b3 Correct error handling for thread creation
Error handling corrected for thread creation in case of e.g.
insufficient system resources.
2014-08-15 18:52:16 +04:00
z3APA3A
085b47d64e Fix compatibility issues
! avoid errno usage due to compatibility issues (and never use errno as
a lvalue). socks changed to use internal error codes instead.
! NOIPV6 compilation issues solved
! -lite version is switched to NOIPV6
2014-07-03 03:40:16 +04:00
Lubomir Rintel
f8cefb989c Try to use stdint.h with gcc <= 4.4
There's no way to tell whether the architecture has its stdint.h, as
__UINT_FAST64_TYPE__ built in define didn't exist yet. Redefining the
types would break the build, and chances are we're not on some exotic
architecture where stdint would be missing, so let's assume it exists.
2014-07-01 21:52:24 +04:00
Lubomir Rintel
ce6c2a069c Don't pad the text address with the binary form
The buf gets copied to hostname and is present verbatim in logs looking
like pure random garbage. Moreover you can't really strlen() it.

This was likely some silly typo in inet_ntoa -> inet_ntop conversion for
ipv6, since it used to be correct before.
2014-07-01 21:37:16 +04:00
z3APA3A
1f5198a238 Keep 2-digit error codes for socket operations
2 digit codes are common for all modules, should not be changed
2014-07-01 21:31:57 +04:00
Lubomir Rintel
6b579b8190 Communicate SOCKS error states properly
This used to look pretty random :(

Try to keep the last decimal digits of internal errors sensible for v5
error codes. For most cases we can't really do much better than using the
value of one.

One specific code paths where we can return something more useful is the
authentication, where we not communicate the underlying error code or
signal an ACL denial.

As for v4, there's not really much space to be too smart as only the code
of 91 is meaningful. Therefore we limit the last digit to zero and one now.
2014-07-01 21:29:15 +04:00
Lubomir Rintel
9416012a01 Fix some awkward NOIPV6 typoes and ommissions 2014-07-01 21:22:52 +04:00
z3APA3A
5cccf7cbdd Do not ignore version.h
version.h is required to build from sources

Conflicts:
	.gitignore
2014-06-28 17:37:57 +04:00
z3APA3A
8975b00cce better EINTR handling 2014-06-11 01:54:25 +04:00
z3APA3A
7bae6c4525 resolving compilation issues for *nix 2014-06-11 01:26:07 +04:00
z3APA3A
7ca32fc940 overlapped memcpy replaced with memmove 2014-06-11 00:57:18 +04:00
z3APA3A
4fef3a1df0 More changes for IPv6 suppot +nbname auth removed 2014-05-12 01:11:04 +04:00
Vladimir Dubrovin
a30d5d51a5 IPv6 server side code
+ IPv6 server side support
!!! Auth need to be fixed
2014-05-12 01:10:58 +04:00
Vladimir Dubrovin
ccf606fd9e ntoa changed to ntop 2014-05-12 01:10:53 +04:00
Vladimir Dubrovin
7897b009a1 intport removed, SA macro added 2014-05-12 01:10:47 +04:00
Vladimir Dubrovin
bc7ca3af09 intip changed to intsa
intip changed to intsa for IPv6 use
2014-05-12 01:10:42 +04:00
Vladimir Dubrovin
cce3a94f04 proxy.h getip46() description fixed 2014-05-12 01:10:36 +04:00