z3APA3A
c1c5875356
better memory allocation errors handling, countall/nocountall corrected
2020-11-03 02:05:18 +03:00
z3APA3A
624c3e6ae1
correct IPv6 parsing where hostname is expected
2020-10-16 22:51:02 +03:00
z3APA3A
eb829b062b
Major code refactoring
...
- sockmapping rewritten from stratch to minimilse polling. poll() is now
only called if blocking is actually expected, splice pipes are now
polled if splice fails, buffers flushing is much more accurate.
- logging code moved to separate files
- signal masks added to client threads to prevent unneeded interruptions
- bandwidth limitation will not delay the thread after client or server
shutdown
2020-10-09 15:42:34 +03:00
z3APA3A
3dd1969657
Move logging to log.c
2020-10-07 19:03:59 +03:00
z3APA3A
1fd759d327
Correct typo (name resolution could fail on some platforms)
2020-08-07 12:14:03 +03:00
z3APA3A
8c511a19e9
Do not resolve hostname to IP on ACL destination
2020-08-06 17:56:28 +03:00
z3APA3A
859713d10f
Fail if can not bind to device
2020-06-17 16:05:23 +03:00
z3APA3A
930d9823ea
Use futex instead of pthread_mutex on Linux
2018-12-28 18:49:45 +03:00
z3APA3A
eb09ae7c58
Support socket options for connback sockets and connection timeouts
2018-05-05 17:16:51 +03:00
z3APA3A
a42bb38d76
Use WSAPoll on Windows (except lite version)
2018-04-21 23:57:42 +03:00
z3APA3A
83441eebc7
Move log buffer to stack
...
Move log bufer to stack and remove mutex
2018-04-21 01:37:31 +03:00
z3APA3A
e469e9e369
Increase default stacksize
2018-04-21 01:29:15 +03:00
z3APA3A
d1b527b523
Minor logging changes
2018-04-21 01:24:18 +03:00
z3APA3A
50277692f4
Replace fclose+fopen with freopen where possible
2018-04-21 00:30:02 +03:00
z3APA3A
ff91a6fe72
connlim / noconnlim commands added to support connection / connectio rate limits
2018-01-12 19:09:42 +03:00
z3APA3A
105522b24e
Fix: recursion detection was not working
2017-10-17 15:19:47 +03:00
z3APA3A
8e2a87421c
Fix: %n terminated log string on IPv6 address
2017-10-10 18:21:34 +03:00
z3APA3A
b17b36cbce
Add support to bind to interface (-Di / -Do) via SO_BINDTODEVICE
2017-08-14 18:22:15 +03:00
z3APA3A
b4043e944c
Unify RADIUS code for logging
2017-06-25 18:40:26 +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
e2884b182a
Add timeout for connect in all modules
2016-12-23 00:56:16 +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
f709255d62
Copyrights cleaned, authradius.c added
2016-12-20 15:47:02 +03:00
z3apa3a
1ab549036c
Changed -a / -s options handling for 'anonymous' after last commit
2016-12-19 03:19:17 +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
6426ed0c1a
fix %i logging
2016-06-07 15:39:14 +03:00
z3APA3A
84664a203b
support %i in loformat
2016-06-06 17:54:23 +03:00
z3APA3A
f347b37770
support port number in 'nserver' / 'authnserver'
2016-05-18 00:05:23 +03:00
z3APA3A
8cdf341d0e
workaround for broken getsockname() in FTP proxy
2016-05-14 00:09:51 +03:00
Vladimir Dubrovin
9bfae5faaa
force / no force commands added
2016-04-02 11:43:25 +03:00
z3APA3A
6cac541e33
fix broken extip functionality
2016-03-30 19:16:12 +03:00
z3APA3A
eeb2d78fb1
re-authenticate user on
2016-03-28 17:49:27 +03:00
z3APA3A
5d0504cd33
Always reset bind sa on connect
2016-03-04 13:44:53 +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
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
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
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
fec0da52af
fixed: use SASIZE() instead of sizeof() in connect() for FreeBSD compatibility
2016-01-25 14:49:17 +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
4af5f2fde7
Use SASIZE() instead of sizeof() in bind() for FreeBSD compatibility
2016-01-22 15:59:40 +03:00
z3APA3A
75c63d2de6
add support for -u2 in socks
2016-01-15 15:29:57 +03:00
z3APA3A
bef5b6f473
minor logging correction
2016-01-06 22:06:33 +03:00
z3APA3A
889c5caa1f
typo in logsyslog()
2016-01-03 19:57:51 +03:00
z3APA3A
b56702e670
Increase static bufer
2015-12-27 19:44:21 +03:00
z3APA3A
7df2461a26
Unify logging (make it always blocking in exchange for memory)
2015-12-27 19:27:17 +03:00
z3APA3A
fa2679555e
print IPv6 address in []
2015-12-21 13:40:30 +03:00
z3APA3A
40f9430623
Force use of IPv6 translated address instead of IPv4 with -6
2015-12-07 22:58:31 +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
74772de341
Fixed handling of [] IPv6 addresses in hostnames
2015-11-29 12:38:16 +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
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
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
e37a7f48d7
Older CVS comments removed
2014-12-13 23:20:00 +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
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
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
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
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
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
z3APA3A
f4c6c9d962
legacy counters code removed
2014-04-14 02:14:34 +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
z3APA3A
a060376f1e
initial import to git
2014-04-08 13:03:21 +04:00