1
0
mirror of https://github.com/SoftEtherVPN/SoftEtherVPN.git synced 2024-11-25 02:49:52 +03:00
Commit Graph

1900 Commits

Author SHA1 Message Date
Davide Beatrici
6a45921f41 OpenVPN: Add packet scrambling/obfuscation feature
This allows an OpenVPN client to bypass a firewall which is aware of the protocol and is able to block it.
The XOR mask set on the server has to be the same on the client, otherwise it will not be able to connect with certain obfuscation modes.
A special OpenVPN client built with the "XOR patch" is required in order to use this function, because it has never been merged in the official OpenVPN repository.

Two parameters are added to the server configuration: "OpenVPNObfuscationMethod" and "OpenVPNObfuscationMask".
Their value can be retrieved with "OpenVpnObfuscationGet" and set with "OpenVpnObfuscationEnable" in the VPN Command Line Management Utility.
2018-11-12 22:32:37 +01:00
Davide Beatrici
25c99a7e04
Merge PR #807: gitlab-ci: enable SAST 2018-11-10 19:19:58 +01:00
Ilya Shipitsin
759d3f8709 gitlab-ci: enable SAST 2018-11-10 22:39:22 +05:00
Davide Beatrici
e5fdbfd1e1
Merge PR #805: travis-ci: add libressl build, make builds parallel, remove not needed brew 2018-11-10 17:44:52 +01:00
Davide Beatrici
b51ebabbf4
Merge PR #806: src/Cedar/Protocol, src/Cedar/Session: cleanup, remove unused functions, variables 2018-11-10 17:43:30 +01:00
Ilya Shipitsin
304893c139 src/Cedar/Protocol, src/Cedar/Session: cleanup, remove unused functions, variables,
resolve possible null pointer dereference

found by cppcheck

[src/Cedar/Protocol.c:3138] -> [src/Cedar/Protocol.c:3071]: (warning) Either the condition 's!=NULL' is redundant or there is possible null pointer dereference: s.
[src/Cedar/Protocol.c:916]: (style) Variable 'save' is assigned a value that is never used.
[src/Cedar/Protocol.c:6242]: (style) Variable 'size' is assigned a value that is never used.
[src/Cedar/Protocol.c:778]: (style) Variable 'old_disable' is assigned a value that is never used.
[src/Cedar/Protocol.c:1021]: (style) Variable 'save' is assigned a value that is never used.
[src/Cedar/Protocol.c:3708]: (style) Variable 'is_vgc' is assigned a value that is never used.
[src/Cedar/Protocol.c:5785]: (style) Variable 's' is assigned a value that is never used.
[src/Cedar/Protocol.c:6164]: (style) The function 'SocksConnectEx' is never used.
[src/Cedar/Protocol.c:907]: (style) The function 'CompareNodeInfo' is never used.
[src/Cedar/Protocol.c:6968]: (style) The function 'ProxyConnect' is never used.
[src/Cedar/Protocol.c:3986]: (style) The function 'SecureDelete' is never used.
[src/Cedar/Protocol.c:4042]: (style) The function 'SecureEnum' is never used.
[src/Cedar/Protocol.c:4127]: (style) The function 'SecureWrite' is never used.
[src/Cedar/Protocol.c:6463]: (style) The function 'SocksConnect' is never used.
[src/Cedar/Protocol.c:7185]: (style) The function 'TcpConnectEx2' is never used.
[src/Cedar/Protocol.c:7206]: (style) The function 'TcpIpConnect' is never used.
2018-11-10 14:18:18 +05:00
Ilya Shipitsin
3e042e093b travis-ci: add libressl build, make builds parallel, remove not needed brew 2018-11-10 12:32:21 +05:00
Ilya Shipitsin
da13915d1e
Merge pull request #804 from davidebeatrici/openbsd-aead-tag-macro-build-fix
Merge PR #804: Mayaqua/Encrypt.h: fix missing AEAD macro for OpenBSD
2018-11-09 00:23:19 +05:00
Ilya Shipitsin
aa9effbf4e
AppVeyor: automatically upload releases to github 2018-11-09 00:20:08 +05:00
Davide Beatrici
f154cf1cec Mayaqua/Encrypt.h: fix missing AEAD macro for OpenBSD 2018-11-08 19:24:42 +01:00
Ilya Shipitsin
555c7c46c6
Merge pull request #802 from davidebeatrici/windows-rc-no-afsres.h
Merge PR #802: src: change "afxres.h" to "winres.h" in all resource files, to remove MFC dependency
2018-11-08 21:04:07 +05:00
Davide Beatrici
c259138225 src/BUILD_WINDOWS.md: remove ATL/MFC step 2018-11-08 15:44:52 +01:00
Davide Beatrici
0bc6a9ba5e src: change "afxres.h" to "winres.h" in all resource files, to remove MFC dependency 2018-11-07 21:23:55 +00:00
Ilya Shipitsin
da518914c1 release v5.01.9663
Signed-off-by: Ilya Shipitsin <chipitsine@gmail.com>
2018-11-07 02:15:14 +00:00
Davide Beatrici
a5f18087cd
Merge PR #790: Add support for SOCKS5 proxy protocol 2018-11-07 01:30:56 +01:00
Davide Beatrici
6322497023
Merge PR #524: Cedar/Proto_PPP.c: push 192.0.0.8 instead of 1.0.0.1 as gateway IP address 2018-11-07 00:32:20 +01:00
Davide Beatrici
85ebba5e39 Cedar/Proto_PPP.c: push 192.0.0.8 instead of 1.0.0.1 as gateway IP address
1.0.0.1 is a real IP address, owned by CloudFlare and used for their DNS service.

This commit changes the IP address we push to 192.0.0.8, which is defined in RFC7600 as dummy IPv4 address.
2018-11-07 00:07:01 +01:00
Davide Beatrici
540dffda05
Merge PR #793: Added Windows CMake setup info 2018-11-04 04:11:37 +01:00
Fox
7b148d8db0 Added Windows CMake setup info 2018-11-04 01:50:18 -06:00
Davide Beatrici
ba930668ba
Merge PR #796: Cedar/Proto_OpenVPN: add support for GCM ciphers 2018-11-04 01:01:10 +01:00
Davide Beatrici
ac16d0e882
Merge PR #799: Cedar, Mayaqua: remove unused functions and redundant checks 2018-11-03 21:24:41 +01:00
Ilya Shipitsin
6440521f81 src/Mayaqua/Network.c: remove reccuring check
found by PVS analyzer

src/Mayaqua/Network.c	18715	err	V571 Recurring check. The 'if (u->GetNatTIpThread == NULL)' condition was already verified in line 18712.
2018-11-04 01:04:58 +05:00
Ilya Shipitsin
dcc684ea28 src/Cedar/Admin.c: remove reccuring check
found by PVS analyzer

src/Cedar/Admin.c	5583	err	V571 Recurring check. The 'if (no_include)' condition was already verified in line 5581.
2018-11-04 01:02:51 +05:00
Ilya Shipitsin
87702f0f7d src/Mayaqua/OS: remove unused functions
found by cppcheck

[src/Mayaqua/OS.c:493]: (style) The function 'OSDec32' is never used.
[src/Mayaqua/OS.c:373]: (style) The function 'OSDeleteDir' is never used.
[src/Mayaqua/OS.c:393]: (style) The function 'OSFileCreate' is never used.
[src/Mayaqua/OS.c:353]: (style) The function 'OSFileDelete' is never used.
[src/Mayaqua/OS.c:383]: (style) The function 'OSFileOpen' is never used.
[src/Mayaqua/OS.c:331]: (style) The function 'OSFileRename' is never used.
[src/Mayaqua/OS.c:487]: (style) The function 'OSInc32' is never used.
[src/Mayaqua/OS.c:363]: (style) The function 'OSMakeDir' is never used.
[src/Mayaqua/OS.c:541]: (style) The function 'OSResetEvent' is never used.
2018-11-04 00:41:12 +05:00
Ilya Shipitsin
f219feda2c
Merge pull request #798 from chipitsine/cleanup
Merge PR #798: src/Cedar/Proto_IkePacket: remove unused functions, redundant assignment
2018-11-04 00:30:16 +05:00
Ilya Shipitsin
bfe8ee8127 src/Cedar/Proto_IkePacket: remove unused functions, redundant assignments
found by cppcheck

[src/Cedar/Proto_IkePacket.c:958]: (style) The function 'IkeNewCertPayload' is never used.
[src/Cedar/Proto_IkePacket.c:942]: (style) The function 'IkeNewCertRequestPayload' is never used.
[src/Cedar/Proto_IkePacket.c:875]: (style) The function 'IkeNewNoticeErrorInvalidExchangeTypePayload' is never used.
[src/Cedar/Proto_IkePacket.c:2542]: (style) The function 'IkeNewSpi' is never used.
[src/Cedar/Proto_IkePacket.c:142]: (style) The function 'IkePhase1CryptIdToKeySize' is never used.
[src/Cedar/Proto_IkePacket.c:157]: (style) The function 'IkePhase2CryptIdToKeySize' is never used.
[src/Cedar/Proto_IkePacket.c:172]: (style) The function 'IkeStrToPhase1CryptId' is never used.
[src/Cedar/Proto_IkePacket.c:187]: (style) The function 'IkeStrToPhase1HashId' is never used.
[src/Cedar/Proto_IkePacket.c:196]: (style) The function 'IkeStrToPhase2CryptId' is never used.
[src/Cedar/Proto_IkePacket.c:211]: (style) The function 'IkeStrToPhase2HashId' is never used.
[src/Cedar/Proto_IkePacket.c:2168]: (style) Condition 'b==NULL' is always true
2018-11-04 00:13:51 +05:00
Ilya Shipitsin
90902f1364
Merge pull request #797 from chipitsine/test
Merge PR #797: AppVeyor: enable parallel builds and push systemctl log as artifact
2018-11-04 00:10:51 +05:00
Ilya Shipitsin
cdc3551ad3 AppVeyor: enable parralel builds 2018-11-03 23:51:09 +05:00
Ilya Shipitsin
f97a20a9cc AppVeyor: only add systemctl log when appropriate 2018-11-03 23:49:22 +05:00
Davide Beatrici
0357024e62 hamcore/openvpn_sample.ovpn: improve "cipher" and "auth" documentation, remove list of supported ciphers 2018-11-03 16:44:56 +01:00
Davide Beatrici
9afcc91ae1 Cedar/Proto_OpenVPN: add support for GCM ciphers 2018-11-03 16:14:56 +01:00
Davide Beatrici
aae9ec0492 Mayaqua/Encrypt: add CipherProcessAead() function to encrypt/decrypt with AEAD ciphers 2018-11-03 15:14:56 +01:00
Davide Beatrici
8b7b45b301
Merge PR #794: Proto_OpenVPN.c: move encrypt and decrypt process into dedicated functions 2018-11-01 00:04:18 +01:00
Davide Beatrici
17dd802be3
Merge PR #795: docs(BUILD_UNIX): add macOS specifics 2018-10-31 20:31:39 +01:00
Nate Stuyvesant
c0731ee9b5
docs(BUILD_UNIX): add macOS specifics 2018-10-31 15:14:39 -04:00
Davide Beatrici
953989d344 Proto_OpenVPN.c: move encrypt and decrypt process into dedicated functions 2018-10-31 18:14:38 +01:00
Ilya Shipitsin
080edcdb81 v5.01.9662
Signed-off-by: Ilya Shipitsin <chipitsine@gmail.com>
2018-10-30 16:47:37 +00:00
Davide Beatrici
53e0a2e5e2 Add support for SOCKS5 proxy protocol 2018-10-30 15:11:16 +01:00
Davide Beatrici
079ef10e1f
Merge PR #789: gitlab-ci: add "vpntest" memory tests 2018-10-30 12:52:24 +01:00
Ilya Shipitsin
b02dd7ca53 gitlab-ci: add "vpntest" memory tests 2018-10-30 01:30:11 +05:00
Davide Beatrici
919cb2ae75
Merge PR #788: travis-ci: add "vpntest" memory checks 2018-10-29 20:33:42 +01:00
Ilya Shipitsin
5f7d9b8c11 travis-ci: add "vpntest" memory checks 2018-10-29 23:21:08 +05:00
Ilya Shipitsin
3411625177
Merge pull request #785 from chipitsine/gitlab_badge
Merge PR #785: README.md: add gitlab-ci badge
2018-10-29 20:56:48 +05:00
Ilya Shipitsin
32ccec317a README.md: add gitlab-ci badge 2018-10-29 20:28:13 +05:00
Davide Beatrici
7f8926e0c1
Merge PR #782: AppVeyor: run "vpntest" for ubuntu 18.04 2018-10-29 13:59:21 +01:00
Ilya Shipitsin
1af74e50ad AppVeyor: run "vpntest" for ubuntu 18.04 2018-10-29 15:53:42 +05:00
Ilya Shipitsin
8da2464831
Merge pull request #781 from chipitsine/BN_free
Merge PR #781: src/Mayaqua/Encrypt.c: fix memory leak occasionally found by valgrind
2018-10-29 14:22:45 +05:00
Ilya Shipitsin
b5125e566c
Merge pull request #780 from dnobori/181029_fixmemoryleak
Merge PR #780: Fix a single memory leak in loading the string table
2018-10-29 11:32:08 +05:00
Ilya Shipitsin
5e75a1fb99 src/Mayaqua/Encrypt.c: fix memory leak occasionally found by valgrind 2018-10-29 10:52:56 +05:00
Daiyuu Nobori
0e4f2a3864 Add .suo (Visual Studio user setting) file to the .gitignore file. 2018-10-29 14:49:09 +09:00