Commit Graph

360 Commits

Author SHA1 Message Date
z3APA3A
b033b150b1 change strdup to mystrdup 2017-08-16 12:08:48 +03:00
z3APA3A
b17b36cbce Add support to bind to interface (-Di / -Do) via SO_BINDTODEVICE 2017-08-14 18:22:15 +03:00
z3APA3A
6010190940 fix: do not fail external with "0.0.0.0" with NOIPV6 (lite version) 2017-07-19 19:23:55 +03:00
z3APA3A
d9e118e754 Change EPSV reply code to 229 2017-06-28 12:33:08 +03:00
z3APA3A
481b9e389f EPSV support for ftppr 2017-06-27 23:28:17 +03:00
z3APA3A
305f01acb5 closecoket() is used instead of so._closesocket 2017-06-26 16:46:26 +03:00
z3APA3A
b4043e944c Unify RADIUS code for logging 2017-06-25 18:40:26 +03:00
z3APA3A
2983575952 banlimits for old connection may stop functioning on configuration reload 2017-06-25 18:37:19 +03:00
z3APA3A
1996b11451 Fix - sometime request may go to parent proxy where it shouldn't 2017-06-25 18:33:28 +03:00
z3APA3A
e75b329e62 Fix ACL copy for last patch 2017-03-07 15:06:22 +03:00
z3APA3A
4251322aad Support hostnames for chained socks5+/socks4+/connect+ requests 2017-03-07 01:19:04 +03:00
z3APA3A
d40e5d458c FIX: tcppm may not work with parent proxy 2017-02-02 00:36:59 +03:00
z3apa3a
34443d6515 Add netinet/tcp.h to includes to support TCP socket options on *nix. 2016-12-25 03:33:15 +03:00
z3APA3A
cfc10e9efd Support for few more socket options 2016-12-25 03:22:52 +03:00
z3APA3A
c1beee44ef Add support for -os, -oc, -ol
-ocOPTIONS, -osOPTIONS, -olOPTIONS - options for client (oc), server
(os) or listening (ol) socket
e.g.
proxy -ocTCP_NODELAY,SO_KEEPALIVE,SO_DONTROUTE
2016-12-25 02:46:30 +03:00
z3APA3A
2ed83b0d6e set TCP_NODELAY for DNS resolution over TCP 2016-12-25 01:28:16 +03:00
z3APA3A
68deec5bcd Update PCRE version 2016-12-24 01:48:52 +03:00
z3APA3A
e2884b182a Add timeout for connect in all modules 2016-12-23 00:56:16 +03:00
z3APA3A
3c9ff54ae8 SSL_Plugin: switch to SHA-256 signature 2016-12-22 19:16:50 +03:00
z3APA3A
16f094168a Correct EINPROGRESS for Windows 2016-12-22 17:46:06 +03:00
z3apa3a
42ca640769 Corrected connect() timeout on *nix 2016-12-22 17:31:17 +03:00
z3APA3A
d1d86ed9b3 implement timeout on connect()
STRING_S timeout is used (15 sec by default)
2016-12-22 17:11:44 +03:00
z3APA3A
c5f8a8e139 Add support for Reply-Message (may be used to send code with Auth-Reject). 2016-12-21 01:33:34 +03:00
z3APA3A
7b4a34f6fc Support for Framed-IP-Address / Framed-IPv6-Address in RADIUS server's reply 2016-12-21 00:30:05 +03:00
z3APA3A
bfe7e89bd0 RADIUS authentication corrected and tested 2016-12-20 23:38:06 +03:00
z3APA3A
e7433d633c 'radius' and 'auth radius' support added (not tested yet)
Example:
radius secret 192.168.0.1 192.168.0.2
authcache ip,user
auth cache radius
2016-12-20 19:50:50 +03:00
z3apa3a
5cb3947c45 radauth.c: implements RADIUS authentication for 3proxy 2016-12-20 18:39:06 +03:00
z3APA3A
f709255d62 Copyrights cleaned, authradius.c added 2016-12-20 15:47:02 +03:00
z3apa3a
d159c57e1f Add splice() support on Linux to proxy, socks, ftppt, smtpp, pop3p
usage example:
proxy -s
proxy -s2
-s - enable splice() for sockets mapping to avoid data to be copied to user space
-s2 - enable splice() and attempt to free user space buffer ASAP
2016-12-19 22:07:34 +03:00
z3APA3A
34876b7616 put usesplice within #ifdef WITHSPLICE 2016-12-19 13:01:34 +03:00
z3apa3a
1ab549036c Changed -a / -s options handling for 'anonymous' after last commit 2016-12-19 03:19:17 +03:00
z3apa3a
6696b35d74 Added -s option support for proxying with splice() for Liux
(without copying network data to
userspace). Currently only for tcppm.
2016-12-19 02:56:23 +03:00
z3APA3A
945c30c5ee Use pragma aux to export valid names from DLL in Watcom 2016-12-12 19:49:58 +03:00
z3APA3A
a9fb0ea969 Correct previous resolver patch 2016-12-12 12:38:33 +03:00
z3APA3A
afbc27eac4 Correct resolver to handle non-compressed answers 2016-12-11 03:25:18 +03:00
z3APA3A
953c7efafc Merge branch 'devel' of https://github.com/z3APA3A/3proxy into devel 2016-12-10 03:56:20 +03:00
z3APA3A
c650d32206 Compatibility with Watcom's DLL exports for plugins 2016-12-10 03:56:11 +03:00
Vladimir Dubrovin
88af9d6050 handle IPv6/name bind reply from parent 2016-11-20 22:24:04 +03:00
z3APA3A
88263ebde9 Return valid error code for name resolution problem in 'proxy' 2016-09-07 18:50:21 +03:00
z3APA3A
a8f8a4d624 'if' is not required 2016-09-07 18:35:01 +03:00
z3APA3A
9890823664 fix signess warning 2016-09-04 15:33:20 +03:00
z3APA3A
880255093a minor compilers compatibility issues 2016-09-04 15:11:15 +03:00
z3APA3A
4e96a66093 fix authentication via reverse name 2016-09-04 15:10:45 +03:00
z3APA3A
e2b406f27b Addition al fix for Linux (glibc?) specific daemon problem 2016-08-23 18:36:18 +03:00
z3APA3A
b242d6df8c Fix daemonize in *nix 2016-08-23 14:19:27 +03:00
z3APA3A
4e4f71712d Fix: 'extip' may fail with 9 error code 2016-08-16 15:21:02 +03:00
z3APA3A
6426ed0c1a fix %i logging 2016-06-07 15:39:14 +03:00
z3APA3A
cdc4210a0a Fix '%i' logging 2016-06-07 14:16:55 +03:00
z3APA3A
7742b08ec5 Revert "Delay service exit until new configuration is loaded"
This reverts commit 05f39246bf.
2016-06-07 14:16:17 +03:00
z3APA3A
05f39246bf Delay service exit until new configuration is loaded 2016-06-06 18:01:51 +03:00
z3APA3A
84664a203b support %i in loformat 2016-06-06 17:54:23 +03:00
z3APA3A
cd35215532 support -u2 for proxy 2016-05-28 00:24:26 +03:00
z3APA3A
f347b37770 support port number in 'nserver' / 'authnserver' 2016-05-18 00:05:23 +03:00
z3APA3A
fbcdcf3d7b Correct IP matching in cache auth 2016-05-17 23:27:10 +03:00
z3APA3A
8cdf341d0e workaround for broken getsockname() in FTP proxy 2016-05-14 00:09:51 +03:00
z3APA3A
ccbc94e06b Revert "pam_auth; lock only pam_start"
This reverts commit 556fea670e.
2016-05-11 22:05:45 +03:00
z3APA3A
556fea670e pam_auth; lock only pam_start 2016-05-11 20:51:14 +03:00
z3APA3A
32ff114787 Revert "pam_auth: Authenticate all users in single session"
This reverts commit 438a5bac9b.
2016-05-11 20:49:39 +03:00
z3APA3A
438a5bac9b pam_auth: Authenticate all users in single session 2016-05-11 19:56:40 +03:00
z3APA3A
4cb43b438f Use mutex with pam auth, because pam is not thread safe 2016-05-11 19:03:16 +03:00
z3APA3A
cfa4d11027 Do not fail connection with 333 error on configuration reload 2016-04-26 18:50:57 +03:00
z3APA3A
8b1c12005f avoid type mismatch in ?: operator 2016-04-08 15:08:18 +03:00
z3APA3A
3c8c866ac1 Fix counters time check for different platforms 2016-04-08 14:53:15 +03:00
z3APA3A
d3f9d80b65 Resolve races on log buffer without mutex 2016-04-05 19:12:18 +03:00
z3APA3A
1d162abec3 Merge branch 'devel' of https://github.com/z3APA3A/3proxy into devel 2016-04-04 13:43:30 +03:00
z3APA3A
d6f72a51fe fix race condition on 'log' command processing 2016-04-04 13:43:08 +03:00
Vladimir Dubrovin
e210f24194 fix for noforce 2016-04-02 12:00:53 +03:00
Vladimir Dubrovin
9bfae5faaa force / no force commands added 2016-04-02 11:43:25 +03:00
Vladimir Dubrovin
2fed299b9d warning fix 2016-04-02 11:22:33 +03:00
z3APA3A
6cac541e33 fix broken extip functionality 2016-03-30 19:16:12 +03:00
z3APA3A
938b1d1aab re-authenticate connection on configuration change 2016-03-28 17:57:37 +03:00
z3APA3A
eeb2d78fb1 re-authenticate user on 2016-03-28 17:49:27 +03:00
z3APA3A
dcec2cadaa support external username / password up to 128 octets 2016-03-10 17:05:56 +03:00
z3APA3A
f67c9a39f1 Use setreuid/setregid instead of setuid / setgid 2016-03-09 18:28:52 +03:00
z3APA3A
a44a32c484 Do not fail for zero address on SOCKSv5 BIND/UDPASSOC 2016-03-08 13:28:29 +03:00
z3APA3A
b513584fdb More distinct error codes for SOCKS 2016-03-08 12:43:07 +03:00
z3APA3A
5d0504cd33 Always reset bind sa on connect 2016-03-04 13:44:53 +03:00
z3APA3A
58a64924dd log_mutex used prior to initialization 2016-03-02 19:00:28 +03:00
z3APA3A
10a79faa32 publish as devel 2016-02-28 15:10:38 +03:00
z3APA3A
6db42f70e9 fix compilation warnings in PamAuth 2016-02-26 13:15:34 +03:00
z3APA3A
e2351034e6 Change encoding to utf-8 in strings 2016-02-22 22:43:22 +03:00
z3APA3A
57f1140734 Changes in makefiles to support LDAP plugin compilation 2016-02-22 21:46:32 +03:00
z3APA3A
c96d415020 Defer SSL init to first command in ssl_plugin 2016-02-22 21:14:17 +03:00
z3APA3A
604cc22d16 mark as 0.8.4 2016-02-22 00:53:10 +03:00
z3APA3A
01857354c8 Merge remote-tracking branch 'refs/remotes/origin/devel' 2016-02-22 00:22:01 +03:00
z3APA3A
021a8928bf Avoid windows compilation warnings 2016-02-22 00:18:45 +03:00
z3APA3A
cf3bae0f6b Revert "additional memset for hint on retry"
This reverts commit bb206869de.
2016-02-22 00:14:54 +03:00
z3APA3A
bb206869de additional memset for hint on retry 2016-02-20 15:45:44 +03:00
z3APA3A
5c5f4e258f Increase default stack size for *nix 2016-02-20 09:11:03 +03:00
z3APA3A
f8a7266bdf Handle malformed HTTP headers without \r 2016-02-19 20:47:56 +03:00
z3APA3A
ad9b0046d9 Fix thread init bug introduced 2016-02-19 20:21:16 +03:00
z3APA3A
b40e8fae4c increase stack size for FreeBSD 2016-02-19 19:44:38 +03:00
z3APA3A
6fcd12cb08 TransparentPlugin - remove debug output 2016-02-19 17:10:15 +03:00
Vladimir Dubrovin
9ddc1fb874 fix *nix warnings 2016-02-18 17:01:18 +03:00
z3APA3A
43a36ec813 Warnings cleanup 2016-02-18 16:43:37 +03:00
z3APA3A
3b8e7741b3 Compilation warnings cleanup 2016-02-16 15:29:51 +03:00
z3APA3A
5fc1d81e5c add stack size configuration
'stacksize' command and -S configuration option added
2016-02-11 16:16:44 +03:00
z3APA3A
3680f2d3b1 Do not negotiate handshake for extip redirection 2016-02-08 14:39:29 +03:00
z3APA3A
6713530fda log_mutex init moved to proxymain 2016-02-05 19:04:16 +03:00
z3APA3A
13a7d6be11 Replace memcpy with assignment where appropriate 2016-02-05 18:31:17 +03:00
z3APA3A
3cc9796583 Support for 'extip' and 'smtp' parent types added 2016-02-05 01:52:45 +03:00
z3APA3A
0e168f17f9 Merge remote-tracking branch 'refs/remotes/origin/devel' 2016-01-31 15:08:21 +03:00
z3APA3A
4202cee566 Merge remote-tracking branch 'refs/remotes/origin/devel'
# Conflicts:
#	src/version.h
2016-01-31 15:04:22 +03:00
z3APA3A
faf7f665c3 do memset for 'external' sockaddr structures 2016-01-31 15:01:17 +03:00
z3APA3A
485ccb3ab4 publish as devel 2016-01-28 01:21:13 +03:00
z3APA3A
e23dd7b746 minor logging changes 2016-01-28 01:18:16 +03:00
z3APA3A
95efeb8a93 Handle accept() errors more accurate 2016-01-28 01:07:09 +03:00
z3APA3A
43da6cc32b remove premake from makefile 2016-01-28 01:04:25 +03:00
z3APA3A
0473e1b2f7 publish as devel 2016-01-27 23:08:17 +03:00
z3APA3A
975b4ac445 Remove date from copyright notice in proxy.h 2016-01-27 17:56:01 +03:00
z3APA3A
48361db51c Add versioning information only to 3proxy.exe 2016-01-27 17:55:40 +03:00
z3APA3A
0883fb6e34 Show traffic limit in MBs 2016-01-27 15:38:47 +03:00
z3APA3A
79170af2bc publish as 0.8.3 2016-01-26 12:10:55 +03:00
z3APA3A
331c933508 publish as 0.8.3 2016-01-25 22:55:08 +03:00
z3APA3A
2de3f0c380 publish as devel 2016-01-25 22:48:09 +03:00
z3APA3A
d1334e5157 Merge remote-tracking branch 'refs/remotes/origin/devel'
# Conflicts:
#	src/version.h
2016-01-25 15:06:42 +03:00
z3APA3A
fec0da52af fixed: use SASIZE() instead of sizeof() in connect() for FreeBSD compatibility 2016-01-25 14:49:17 +03:00
z3APA3A
c2a7fdc2a2 release as devel 2016-01-23 19:26:20 +03:00
z3APA3A
3cbbe1aef7 publish as 0.8.2 2016-01-23 19:17:36 +03:00
z3APA3A
69cb310481 Merge remote-tracking branch 'refs/remotes/origin/devel' 2016-01-23 18:48:28 +03:00
z3APA3A
375a2c9f6e Do not use SO_REUSEADDR by default
to avoid misbehavior in some glibc versions
2016-01-23 18:43:30 +03:00
z3APA3A
1ed5229a54 Do not use SO_REUSEADDR by default
to avoid misbehavior in some glibc versions
2016-01-23 18:41:20 +03:00
z3APA3A
d6f29ac6df reset transparent flag on keep-alive connection 2016-01-23 17:16:49 +03:00
z3APA3A
82e76d1d2a Merge remote-tracking branch 'refs/remotes/origin/devel' 2016-01-22 16:20:12 +03:00
z3APA3A
4af5f2fde7 Use SASIZE() instead of sizeof() in bind() for FreeBSD compatibility 2016-01-22 15:59:40 +03:00
z3APA3A
3a4f3b5cd1 publish as 0.8.1 2016-01-21 16:26:08 +03:00
z3APA3A
a6383bbd10 Merge remote-tracking branch 'refs/remotes/origin/devel'
# Conflicts:
#	src/version.h
2016-01-21 15:50:17 +03:00
z3APA3A
359026cb5f !!Fix: destination IP may be not checked against ACL 2016-01-21 15:45:39 +03:00
z3APA3A
244be50405 publish as 0.8.0
only version number is changed
2016-01-20 01:20:05 +03:00
z3APA3A
e3fb268b64 publish as 0.8 2016-01-20 01:08:48 +03:00
z3APA3A
5e440b4482 publish as 0.9-devel 2016-01-20 01:04:03 +03:00
z3APA3A
fcbccf39ef Use configured timeouts for DNS operations instead static ones 2016-01-17 02:13:17 +03:00
z3APA3A
e59ccd22b1 typo corrected in last update 2016-01-16 00:38:53 +03:00
z3APA3A
75c63d2de6 add support for -u2 in socks 2016-01-15 15:29:57 +03:00
z3APA3A
1ef7308cbf Update documentation for connect back 2016-01-15 02:26:56 +03:00
z3APA3A
e78d9f8327 plugins documentation added 2016-01-13 23:35:35 +03:00
z3APA3A
8b7c95ff93 Update man pages 2016-01-13 02:13:49 +03:00
z3APA3A
9dd2170d6f publish as 0.8-pre 2016-01-13 00:42:48 +03:00
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