Vladimir Dubrovin
7fce892391
Use SSL_connect / SSL_accept in non-blocking mode
2026-04-08 19:21:26 +03:00
Vladimir Dubrovin
23551e53bf
Fixed: allow ssl server and client on the same service
2026-04-08 19:21:26 +03:00
Vladimir Dubrovin
35406e6b61
client_sni command added; do not send hostname from request as SNI in SSL client configuration
2026-04-08 19:21:26 +03:00
Vladimir Dubrovin
26534e9cbd
Close SSL on shutdown
2026-04-08 19:21:26 +03:00
Vladimir Dubrovin
2cd0a34fd5
maxseg / TCP_MAXSEG support added
2026-04-08 19:21:26 +03:00
Vladimir Dubrovin
d67a052aa8
Fixed: invalid config value initializers
2026-04-08 19:21:26 +03:00
Alexey Suslov
280c7c8976
Fix HTTPS proxy for HTTPS addresses ( #1175 )
2026-04-08 19:21:26 +03:00
Vladimir Dubrovin
bc7e9b2ac6
Fix: -P option for tlspr
2026-04-08 19:21:26 +03:00
Vladimir Dubrovin
5355af3112
Fix: WSAPoll fail in some Windows versions after e525ce913e
2026-04-08 19:21:26 +03:00
Vladimir Dubrovin
7b4e8b6d6b
Fixed: ssl_server_cert doesn't read full certificate chain
2026-04-08 19:21:25 +03:00
Vladimir Dubrovin
e945890613
Fixed: CONNECT does not work in standalone 'proxy' binary
2026-04-08 19:21:25 +03:00
Vladimir Dubrovin
5c7cc3c9b2
Fixed: Failed connect may result in success response on some Windows versions
2026-04-08 19:21:25 +03:00
Vladimir Dubrovin
6e55af7f48
Fixed: invalid timeout in socksendto / sockrecvfrom
2026-04-08 19:21:25 +03:00
Vladimir Dubrovin
8d744e16fb
Convert PAMAUTH.TXT to UTF-8
2026-04-08 19:21:25 +03:00
Vladimir Dubrovin
af25cb460f
Fixed service name detection for auto / tlspr
2026-04-08 19:21:25 +03:00
Vladimir Dubrovin
2508b89d96
Avoid sleep on service thread sync
2026-04-08 19:21:25 +03:00
Vladimir Dubrovin
09a3ddeeac
SOCKSTRACE fixed
2026-04-08 19:21:25 +03:00
Vladimir Dubrovin
66bdd86c6b
ssl_server_verify, ssl_server_ca_dir, ssl_server_ca_store added, ssl_server / ssl_client aliases added to ssl_serv / ssl_cli
2026-04-08 19:21:25 +03:00
Vladimir Dubrovin
b624da443a
ssl_noserv fixed, ssl_cli/ssl_nocli/ssl_client_cert/ssl_client_key added
2026-04-08 19:21:25 +03:00
Vladimir Dubrovin
3c51af3737
Remove legacy NTLMv1 code
2026-04-08 19:21:25 +03:00
Vladimir Dubrovin
7e7a0d4336
Support HAProxy proxy v1 protocol
...
Added:
-H option - expect HAProxy proxy v1 header, e.g. `proxy -H`
parent ha type - send HAProxy proxy v1 header (must be last in redirection), e.g.
allow *
parent 1000 ha
parent 1000 proxy 1.2.3.4 3128
socks
2026-04-08 19:21:25 +03:00
Vladimir Dubrovin
e373d84717
Support tlspr in auto
2026-04-08 19:21:25 +03:00
Vladimir Dubrovin
8d58e2618e
make compatible with openssl 1.x
2026-04-08 19:21:24 +03:00
Vladimir Dubrovin
1bfa64303a
rsa.h not required
2026-04-08 19:21:24 +03:00
Vladimir Dubrovin
81224b6708
Use PCRE_STATIC pcre_plugin.c
2026-04-08 19:21:24 +03:00
Vladimir Dubrovin
6944a012d9
use PCRE_STATIC
2026-04-08 19:21:24 +03:00
z3apa3a
bc92819572
Fix tlspr for compatibility with older compileres
2025-03-09 19:16:35 +03:00
z3apa3a
2900b80d88
Prepare for 0.9.5 release
2025-03-09 17:29:17 +03:00
z3apa3a
74134db09e
Fix ssl_plugin for Windows
2025-03-09 17:22:18 +03:00
Vladimir Dubrovin
6387bed4f2
Replace strcpy with memmove for overlapping regions
2024-12-20 14:38:58 +03:00
Vladimir Dubrovin
cf6946cc8b
Fix: IPv6 address may be invalid on some plafrorms for SOCKSv5 UDP ASSOCIATE
2024-07-18 12:50:59 +03:00
Vladimir Dubrovin
ab8db00b1f
Fix type for ssl_poll
2024-06-04 19:26:34 +03:00
Vladimir Dubrovin
94dfa195db
char * / unsigned char * conversions fixed
2024-05-31 19:53:28 +03:00
Vladimir Dubrovin
013d4bc333
tlspr (SNI proxy) implemented
...
Options -cN - level of TLS check
default - allow non-TLS traffic
1 - require TLS, only check client HELLO packet
2 - require TLS, check both client and server HELLO
3 - require TLS, check server send certificate (not compatible with TLS 1.3)
4 - require mutual TLS, check server send certificate request and client sends certificate (not compatible with TLS 1.3)
-P - default port
examples:
1.
tlspr -p1443 -P443 -c1
(port 1443 may be used to redirect traffic to destination port 143). SNI is used to find destination host
2.
allow * * * 80
parent 1000 http 0.0.0.0 0
allow * * * * CONNECT
parent 1000 tls 0.0.0.0 0
deny * * some.not.allowed.host
allow *
socks
attempts to take destination hostname from SNI in SOCKS
2024-05-20 13:01:38 +03:00
Vladimir Dubrovin
d347f0a058
More TLS commands added, ssl_srvkey / ssl_srvfile renamed
...
ssl_server_cert - certificate for SSL server (rename from ssl_srvkey)
ssl_server_key - key for ssl_server_cert of generated mirm certificate (renamed from ssl_srvkey)
ssl_server_ca_file - CA file for mitm
ssl_server_ca_key - key for mitm CA
ssl_client_ca_file, ssl_client_ca_dir, ssl_client_ca_store - locations for root CAs used with ssl_client_verify for TLS client
ssl_certcache is not optional, if ssl_server_ca_file / ssl_server_ca_key are configured
2024-03-10 16:20:42 +03:00
Vladimir Dubrovin
a316622a85
Added multiple TLS configuration parameters for SSLPlugin
...
ssl_client_ciphersuites - TLS client ciphers for TLS 1.3, e.g. ssl_client_ciphersuites TLS_AES_128_GCM_SHA256
ssl_server_ciphersuites - TLS server ciphers for TLS 1.3
ssl_client_cipher_list - TLS client ciphers for TLS 1.2 and below , e.g. ssl_client_cipher_list ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-CHACHA20-POLY1305
ssl_server_cipher_list - TLS server ciphers for TLS 1.2 and below
ssl_client_min_proto_version - TLS client min TLS version (e.g. TLSv1.2)
ssl_server_min_proto_version - TLS server min TLS version (e.g. TLSv1.2)
ssl_client_max_proto_version - TLS client max TLS version (e.g. TLSv1.2)
ssl_server_max_proto_version - TLS server max TLS version (e.g. TLSv1.2)
ssl_client_verify - verify certificate for upstream server in TLS client functionality
ssl_client_no_verify - do not verify certificate for upstream server in TLS client functionality (default)
2024-03-10 13:36:40 +03:00
Vladimir Dubrovin
d87241c487
Keep TLS server context
2024-03-09 18:37:44 +03:00
Vladimir Dubrovin
144af547fb
Keep TLS client context between requests
2024-03-09 16:23:03 +03:00
Vladimir Dubrovin
35d1de6f5e
Ffix use-after-free in freeparam
2024-02-22 17:30:50 +03:00
Vladimir Dubrovin
161cbbd452
fix crash on insufficient memory
2024-02-18 23:54:31 +03:00
Vladimir Dubrovin
067fdd7f95
support ssl_serv / ssl_noserv commands
...
example:
plugin /path/to/SSLPlugin.so ssl_plugin
ssl_srvcert path_to_cert
ssl_srvkey path_to_key
ssl_serv
proxy -p33128
ssl_noserv
proxy -p3128
2024-02-18 23:42:09 +03:00
Vladimir Dubrovin
d77e528847
minor fixes
2024-02-18 20:18:31 +03:00
Vladimir Dubrovin
2b4d8e67e4
Do not store CA cert subject
2024-02-18 19:53:35 +03:00
Vladimir Dubrovin
375e3a74d0
call local socket function
2024-02-18 19:41:45 +03:00
Vladimir Dubrovin
6dc145b16b
initial commit to TLS refactoring
2024-02-18 19:07:09 +03:00
Vladimir Dubrovin
d162ad5c38
Fix windows issues
2024-02-17 18:53:58 +03:00
Vladimir Dubrovin
8198db8617
adding state to socket functions
2024-02-17 17:31:25 +03:00
Vladimir Dubrovin
d83c1f47f8
Rollback commit in the wrong branch
2024-02-17 13:18:14 +03:00
Vladimir Dubrovin
20a929ca53
Add per-service sockfuncs
2024-02-17 12:57:36 +03:00
Michael Tautschnig
687ebafb1b
Fix plugin declarations of hashindex and nametohash
...
Plugins using these would fail to provide the required arguments.
2023-10-11 10:00:47 +00:00