Commit Graph

322 Commits

Author SHA1 Message Date
z3APA3A
93967af747 publishing as devel 2016-01-09 21:09:00 +03:00
z3APA3A
bef5b6f473 minor logging correction 2016-01-06 22:06:33 +03:00
z3APA3A
7f90b6eae2 fixed parent IPv6 connect proxy 2016-01-06 21:09:17 +03:00
z3APA3A
9dda666d8d minor changes in clientnegotiate()
1. Use [] for hostname in form of IPv6 address
2. Remove large buffer from stack
2016-01-04 01:30:49 +03:00
z3APA3A
4c3f19cd20 publish as devel 2016-01-03 20:03:17 +03:00
z3APA3A
889c5caa1f typo in logsyslog() 2016-01-03 19:57:51 +03:00
z3APA3A
0e9cc9e330 http connect parent proxy fixed 2016-01-03 19:44:48 +03:00
z3APA3A
d49a19cb29 invalid source port selection in socls 2016-01-03 19:43:16 +03:00
z3APA3A
e312a1aa11 Fileplugin: commands added
file_cachedir /path/to/cache/
h_preview 32768
2015-12-28 17:11:07 +03:00
z3APA3A
22e7d9cdae SSL plugin commands renamed
plugin /path/to/SslPlugin.dll ssl_plugin
ssl_certcache /path/to/cache/
ssl_mitm
proxy -p3128
ssl_nomitm
proxy -p3129
2015-12-28 16:28:26 +03:00
z3APA3A
347d7736c7 ssl_plugin: configuration commands added
plugin /path_to/SslPlugin.dll ssl_plugin
ssl_certpath /path_to/certificates/
ssl_strip
proxy -p3128
ssl_nostrip
proxy -p3129
2015-12-28 15:57:47 +03:00
z3APA3A
d9271bfec8 + Increase static buffer size 2015-12-27 19:45:15 +03:00
z3APA3A
b56702e670 Increase static bufer 2015-12-27 19:44:21 +03:00
z3APA3A
9876172e0b Reduce stack usage for threads
Reduce stack usage, because large logging buffers are removed from
stack.
2015-12-27 19:43:04 +03:00
z3APA3A
7df2461a26 Unify logging (make it always blocking in exchange for memory) 2015-12-27 19:27:17 +03:00
z3APA3A
0487084161 Publish as devel 2015-12-21 21:23:47 +03:00
z3APA3A
a4e0f1fb9a NULL pointer deferefence (depends on libc) if no "log" in config 2015-12-21 13:41:35 +03:00
z3APA3A
fa2679555e print IPv6 address in [] 2015-12-21 13:40:30 +03:00
z3APA3A
c263428cf6 published as devel 2015-12-11 02:28:14 +03:00
z3APA3A
1be800c334 Fixed: request by host name in SOCKSv5 2015-12-11 02:20:22 +03:00
z3APA3A
f1ab0771a9 remove unused defines 2015-12-08 01:45:17 +03:00
z3APA3A
fdb1fad9f7 publish as devel 2015-12-07 23:01:21 +03:00
z3APA3A
40f9430623 Force use of IPv6 translated address instead of IPv4 with -6 2015-12-07 22:58:31 +03:00
z3APA3A
da52669995 NULL pointer dereference fixed in configuration load
introduced with latest commits
2015-12-07 19:06:16 +03:00
z3APA3A
55fb037b48 Avoid overflow in external
Use sockaddr_in6 for extsa if compiled with IPv6 support to be uniform
and avoid overflows.
2015-12-04 01:23:19 +03:00
z3APA3A
bd37ffa2f7 Race conditions fixed on config reload
Race conditions on logging and name resolution
2015-12-04 00:59:52 +03:00
z3APA3A
b2e415b8cb Code restructure
! configuration moved to config.c
- msnpr.c removed
- countersutil.c removed
2015-12-03 02:17:15 +03:00
z3APA3A
4709f7a7b9 Fixed race conditions with users on configuration reload 2015-12-03 01:13:34 +03:00
z3APA3A
fcbb000b0e publish as devel 2015-11-30 22:51:18 +03:00
z3APA3A
74772de341 Fixed handling of [] IPv6 addresses in hostnames 2015-11-29 12:38:16 +03:00
z3APA3A
271d9bb91a memcpy() replaced with memmove() in bitmap alloc
not used by default
2015-11-29 12:20:35 +03:00
z3APA3A
62775da1d5 race condition fixed on configuration reload
Race condition on service free'ing
2015-11-29 00:01:41 +03:00
z3APA3A
0e4a507dd8 publish as devel 2015-11-28 23:02:26 +03:00
z3APA3A
355d31f8aa minor cleanups 2015-11-28 22:59:02 +03:00
z3APA3A
54bcff710c Fix for external connections
linger was used without init, set bind port to zero
2015-11-28 22:57:52 +03:00
z3APA3A
6c187d167b Memory safety issues on configuration reload
memcpy for potentially overlapped regions replaced with memmove
2015-11-28 22:56:20 +03:00
z3APA3A
4ab2da228b Typo with Forwarded: header corrected in proxy.c 2015-11-09 17:05:31 +03:00
z3APA3A
a4e54079b5 Show internal interface on service startup 2015-10-16 18:04:00 +03:00
z3APA3A
f1beddc85a optimize Forwarded: generation 2015-10-16 18:03:08 +03:00
z3APA3A
3c6eef6bb0 Add Forwarded: header instead of X-Forwarded-For and Via
Add Forwarded: header instead of X-Forwarded-For and Via in HTTP proxy.
proxy -a3 changes to old behavior.
2015-10-16 17:14:01 +03:00
z3APA3A
3e6b230128 better listen/connection accept errors handling 2015-09-24 01:17:50 +03:00
z3APA3A
c538d0c2f8 Prevent too fast connections on connect back
Prevent to fast connections on connect back proxy if port is not
reachable
2015-09-20 22:46:35 +03:00
z3APA3A
a9ec5a085c Fixes infinite loop in previous commit 2015-09-20 22:36:54 +03:00
z3APA3A
a2b5af6dab Connect back proxy functionality added
-r and -R options added to support connect back functionality between
two instances of proxy
2015-09-20 21:01:50 +03:00
z3APA3A
6529b9cea1 3proxy.cfg manual pages updated to reflect 0.8 changes
Pv6 functionality
IP ranges in ACLs
DNS over TCP redirection functionality
dnspr -s
behavior for NTLM
2015-09-04 01:45:07 +03:00
z3APA3A
d21f6b198d fix static memory free() attempt 2015-09-04 00:28:26 +03:00
z3APA3A
4ca8988831 Fix FTP over HTTP authentication request parsing 2015-09-01 16:24:40 +03:00
z3APA3A
3198f1614f Fix FTP over HTTP authentication
Send WWW-Authenticate instead of Proxy-Authenticate
2015-09-01 15:24:03 +03:00
z3APA3A
59cc68e8dd Move FTP login prompt in proxy to common section 2015-08-31 22:01:31 +03:00
z3APA3A
ef67ef4072 infinite loop in admin interface fixed 2015-08-24 17:56:12 +03:00
z3APA3A
184eede38a Typo in pamauth corrected 2015-07-05 14:51:30 +03:00
z3APA3A
a93ffc825b bugfix: archiver doesn't add suffix on logname with macro 2015-06-05 15:56:49 +03:00
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
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
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
Vladimir Dubrovin
6b99de69c4 getip46() added
int getip46(int family, unsigned char *name,  struct sockaddr_storage
*sa)
family: IPv4/IPv6 preference order 4, 6, 46, 64 or 0 for getip()
compatibility.
name - hostname,
sa - destination sockaddr (must be large enougth)
returns:
0 fo failed resolution
IP address for family = 0
AF_INET/AF_INET6 overwise.
2014-05-12 01:10:31 +04:00
Vladimir Dubrovin
aad2559004 FTP proxy debugging output removed, bind to same IP with control connection for active FTP
FTP proxy debugging output removed, bind to same IP with control
connection for active FTP
2014-05-07 01:42:22 +04:00
Vladimir Dubrovin
e3144dc61b ldapauth memory leak fixed
Привет !
Исправил старую багу по утечки памяти в плагине .. теперь вообще не
течет ,
глупая ошибка.. Вот так 3,5  года не попрограммируеш , срузу ошибку
найдеш :)

--
Kirill Lopuchov
2014-05-04 23:10:14 +04:00
Vladimir Dubrovin
9ab9c2524b Merge remote-tracking branch 'origin/master' into devel 2014-04-21 01:27:28 +04:00
Vladimir Dubrovin
8f4243ffe1 ftppr NLSD command added 2014-04-21 01:17:23 +04:00
z3APA3A
cb590049b3 More legacy code removed 2014-04-16 15:39:38 +04:00
Vladimir Dubrovin
cb7d48c9c5 Merge remote-tracking branch 'origin/master' into devel 2014-04-15 02:15:08 +04:00
Vladimir Dubrovin
618673c335 Ignore NTLM handshake unless NTLM is configured 2014-04-15 02:10:41 +04:00
Vladimir Dubrovin
17835c4d66 resolving compilation issues 2014-04-14 23:58:11 +04:00
z3APA3A
1b5fb4e8d4 Merge remote-tracking branch 'origin/master' into devel 2014-04-14 02:15:39 +04:00
z3APA3A
f4c6c9d962 legacy counters code removed 2014-04-14 02:14:34 +04:00
z3APA3A
f452009079 Some useful warnings added
Checks for most common misconfigurations
2014-04-14 01:50:17 +04:00
Vladimir Dubrovin
5543b3052d Moving icons compilation to Makefiles 2014-04-13 19:21:18 +04:00
Vladimir Dubrovin
6a0b78268f Adding icons, resolving MinGW compilation 2014-04-13 18:41:25 +04:00
Vladimir Dubrovin
2b0f8bbcfc Add icon, resolve MinGW compilation issues 2014-04-13 18:26:32 +04:00
Vladimir Dubrovin
90ca18b3c1 Revert "temp debugging"
This reverts commit 97d811fbfd.
2014-04-10 04:11:55 +04:00
Vladimir Dubrovin
97d811fbfd temp debugging 2014-04-10 04:11:48 +04:00
Vladimir Dubrovin
2890f06488 traffic counters are changed to 64-bit
traffic counters are changed to 64-bit using pstdint.h
2014-04-10 03:34:59 +04:00
Vladimir Dubrovin
d255b703a5 and some more files removed 2014-04-09 02:03:01 +04:00
Vladimir Dubrovin
094a4440e6 more files removed 2014-04-09 01:45:13 +04:00
Vladimir Dubrovin
a3ffc7dc3b removing autogenerated files 2014-04-09 01:37:27 +04:00
z3APA3A
a060376f1e initial import to git 2014-04-08 13:03:21 +04:00