1
0
mirror of https://github.com/SoftEtherVPN/SoftEtherVPN.git synced 2024-12-25 09:39:52 +03:00
Commit Graph

372 Commits

Author SHA1 Message Date
Ilya Shipitsin
1c21b949b4 Add Coverity Scan badge 2018-07-27 12:26:46 +05:00
Davide Beatrici
110f2291a2
Merge PR #582: Encrypt.c: check whether OpenSSL compression and FIPS features are available 2018-07-27 08:40:15 +02:00
Davide Beatrici
14eb17e6ad
Merge PR #581: src: split CMakeLists.txt for each subdirectory 2018-07-27 04:47:26 +02:00
Andy Walsh
1b3f969fb0 add OPENSSL_NO_COMP feature check
Signed-off-by: Andy Walsh <andy.walsh44+github@gmail.com>
2018-07-26 13:21:10 +02:00
Andy Walsh
ed5ae4a8fe fix missing openssl feature checks
* add OPENSSL_FIPS feature check

Signed-off-by: Andy Walsh <andy.walsh44+github@gmail.com>
2018-07-26 13:18:47 +02:00
Davide Beatrici
be0e3cfb61
Merge PR #438: Solaris: use DLPI style 1 attachment and check for /dev/net used by Illumos and Solaris 10+. 2018-07-26 09:06:54 +02:00
Davide Beatrici
8f3a4cc3b3
Merge PR #481: Encrypt: set default RSA key size to 1024 everywhere, using the RSA_KEY_SIZE macro 2018-07-26 07:29:28 +02:00
Davide Beatrici
0a839bcc0b
Merge PR #559: Windows: suppress detailed build output 2018-07-26 06:51:10 +02:00
Davide Beatrici
07ed7e1626 src: split CMakeLists.txt for each subdirectory 2018-07-26 06:44:19 +02:00
Davide Beatrici
16291e22c9
Merge PR #578: Git: ensure that line endings are normalized 2018-07-26 05:28:55 +02:00
William Welliver
e3e38873d1 Solaris: use DLPI style 1 attachment and check for /dev/net used by Illumos and Solaris 10+. 2018-07-26 03:21:05 +02:00
Ilya Shipitsin
65bda6a44d
Merge pull request #484 from davidebeatrici/openssl
Encrypt: improve FreeOpenSSLThreadState() and FreeCryptLibrary(), in order to clean up the library correctly
2018-07-26 02:50:55 +05:00
Davide Beatrici
b42d099109
Merge PR #580: BUILD_UNIX.md: improve documentation as discussed in #558 2018-07-25 23:35:53 +02:00
Davide Beatrici
19f08ae96e
Merge PR #579: debian: resolve "nonexistent" path in packaging 2018-07-25 23:32:16 +02:00
Ilya Shipitsin
6d7ab487b4 improve unix build documentation as discussed in PR#558 2018-07-26 00:41:21 +05:00
Ilya Shipitsin
a0c2b5891c
Merge pull request #558 from scegg/patch-1
change ./configure to cmake .
2018-07-26 00:21:46 +05:00
Ilya Shipitsin
3f9f28f542 this resolves "nonexistent" path in debian packaging
found in issue 572

also, not needed debian/makefile.patch is removed
2018-07-26 00:10:09 +05:00
Ilya Shipitsin
1b14bd24ed change line endings to LF 2018-07-25 22:57:30 +05:00
Davide Beatrici
949c5670d1
Merge PR #577: CMake: fix pthread detection 2018-07-25 13:08:11 +02:00
Andy Walsh
4f6bedf6d9 cmake fix pthread detection
* dont treat pthreads like a normal lib

Signed-off-by: Andy Walsh <andy.walsh44+github@gmail.com>
2018-07-25 12:50:17 +02:00
Davide Beatrici
879dc8f6b8 Mayaqua.c: fix code style broken by #560 2018-07-21 10:27:21 +02:00
Ilya Shipitsin
1b4cc1fb8d
Merge pull request #560 from jbwdevries/certificate_date_fixes
Certificate date fixes
2018-07-21 10:45:09 +05:00
Ilya Shipitsin
fced312842 README.md: add myself to the list of members 2018-07-21 10:10:47 +05:00
Davide Beatrici
412a5aea71
Merge PR #485: Encrypt: use OpenSSL's EVP interface, which supports AES-NI without the need of another library 2018-07-21 05:31:09 +02:00
Davide Beatrici
23fd1fc94e
Merge PR #473: IPC: use hostname as client identifier, if available 2018-07-21 05:19:14 +02:00
Davide Beatrici
360273b912
Merge PR #472: OpenVPN: hostname support 2018-07-21 05:15:14 +02:00
Davide Beatrici
6313c4a747
Merge PR #567: changelog was not correct from Launchpad point of view 2018-07-21 05:11:29 +02:00
Davide Beatrici
4b58f3f2e4
Merge PR #566: HubName has to be set after Copy 2018-07-21 05:11:05 +02:00
Davide Beatrici
749cf3d9f0
Merge PR #354: Using client parameter in function CtConnect 2018-07-21 05:10:03 +02:00
Davide Beatrici
9950574852
Merge PR #555: src/Mayaqua/Network: remove unused functions 2018-07-21 04:44:00 +02:00
Davide Beatrici
84eb2dc423 README.md: add myself to the list of members 2018-07-21 04:40:25 +02:00
Ilya Shipitsin
f09664bb5e
changelog was not correct from Launchpad point of view 2018-06-30 21:56:45 +05:00
hoppler
b0a2a95540
HubName has to be set after Copy
Hubname has to be set after copy or it will be an empty string. To get the real hubname (correct casing) we use it directly from the hub instead of the given parameter
2018-06-30 10:51:49 +02:00
Ilya Shipitsin
be0ebb65c1 fix debian package builds (#554)
* fix debian builds

issue described: https://github.com/SoftEtherVPN/SoftEtherVPN/issues/550

* add cmake3 dependency (for ubuntu 14.04)

* "compat" belongs to debian/ subfolder

that file is not needed in root folder

* update debian package version

* compare debian/changelog and src/CurrentBuild.txt
2018-06-28 13:23:21 +02:00
Johan de Vries
41f9cdadc4 src/Mayaqua/Kernel.c: Fix for times before 1970
Before, it would end up far in the future. Now it gets clamped
to 1970. This should be fine since dates before 1970 are not
actively used. If they are, then the UINT64 should be replaced
by the time64t in quite a few places.
2018-06-21 10:03:58 +02:00
Johan de Vries
3d0e87cf57 src/Mayaqua/Encrypt.c: Add support for certificates with full year 2018-06-21 10:03:23 +02:00
Ilya Shipitsin
c84d7e4a27 supress even more detailed messages 2018-06-17 13:02:58 +05:00
Ilya Shipitsin
16a1d1f7a0 suppress detailed output 2018-06-17 12:42:33 +05:00
Ilya Shipitsin
6a1876ad06 src/Mayaqua/Network: remove unused functions
[src/Mayaqua/Network.c:7831]: (style) The function 'CheckSubnetLength6' is never used.
[src/Mayaqua/Network.c:14663]: (style) The function 'CheckTCPPortThread' is never used.
[src/Mayaqua/Network.c:6876]: (style) The function 'CheckUnicastAddress' is never used.
[src/Mayaqua/Network.c:8220]: (style) The function 'CompareTcpTable' is never used.
[src/Mayaqua/Network.c:7825]: (style) The function 'CopyIP' is never used.
[src/Mayaqua/Network.c:18436]: (style) The function 'DelSockList' is never used.
[src/Mayaqua/Network.c:549]: (style) The function 'DisableRUDPRegisterGlobally' is never used.
[src/Mayaqua/Network.c:12161]: (style) The function 'DisableUDPChecksum' is never used.
[src/Mayaqua/Network.c:6679]: (style) The function 'GenerateEui64GlobalAddress' is never used.
[src/Mayaqua/Network.c:6953]: (style) The function 'GenerateMulticastMacAddress6' is never used.
[src/Mayaqua/Network.c:7055]: (style) The function 'GetAllFilledAddress6' is never used.
[src/Mayaqua/Network.c:11415]: (style) The function 'GetBestRouteEntryFromRouteTable' is never used.
[src/Mayaqua/Network.c:16738]: (style) The function 'GetIP46Any4' is never used.
[src/Mayaqua/Network.c:16771]: (style) The function 'GetIP46Any6' is never used.
[src/Mayaqua/Network.c:16250]: (style) The function 'GetMachineIp' is never used.
[src/Mayaqua/Network.c:12192]: (style) The function 'GetNewAvailableUdpPortRand' is never used.
[src/Mayaqua/Network.c:11073]: (style) The function 'GetNumWaitThread' is never used.
[src/Mayaqua/Network.c:561]: (style) The function 'GetSimpleHostname' is never used.
[src/Mayaqua/Network.c:22688]: (style) The function 'GetSniNameFromPreSslConnection' is never used.
[src/Mayaqua/Network.c:15761]: (style) The function 'GetSocketBufferSize' is never used.
[src/Mayaqua/Network.c:6924]: (style) The function 'GetSoliciationMulticastAddr6' is never used.
[src/Mayaqua/Network.c:7842]: (style) The function 'GetTcpProcessIdFromSocket' is never used.
[src/Mayaqua/Network.c:7871]: (style) The function 'GetTcpProcessIdFromSocketReverse' is never used.
[src/Mayaqua/Network.c:20709]: (style) The function 'GetUdpListenerPortList' is never used.
[src/Mayaqua/Network.c:21971]: (style) The function 'HttpSendServerError' is never used.
[src/Mayaqua/Network.c:7119]: (style) The function 'IPNot4' is never used.
[src/Mayaqua/Network.c:7134]: (style) The function 'IPOr4' is never used.
[src/Mayaqua/Network.c:17392]: (style) The function 'IPToStr128' is never used.
[src/Mayaqua/Network.c:12182]: (style) The function 'InitAsyncSocket' is never used.
[src/Mayaqua/Network.c:18091]: (style) The function 'IsIPLocalOrPrivate' is never used.
[src/Mayaqua/Network.c:6813]: (style) The function 'IsInSameLocalNetworkToMe4' is never used.
[src/Mayaqua/Network.c:467]: (style) The function 'IsInStrByStrList' is never used.
[src/Mayaqua/Network.c:504]: (style) The function 'IsIpInStrList' is never used.
[src/Mayaqua/Network.c:18793]: (style) The function 'IsIpStr46' is never used.
[src/Mayaqua/Network.c:738]: (style) The function 'IsMacAddressLocal' is never used.
[src/Mayaqua/Network.c:8495]: (style) The function 'IsNetworkAddress' is never used.
[src/Mayaqua/Network.c:7803]: (style) The function 'IsSameIPVer' is never used.
[src/Mayaqua/Network.c:14140]: (style) The function 'Listen6' is never used.
[src/Mayaqua/Network.c:5792]: (style) The function 'ListenAnyPortEx' is never used.
[src/Mayaqua/Network.c:11938]: (style) The function 'LockOpenSSL' is never used.
[src/Mayaqua/Network.c:12266]: (style) The function 'NewRandPortByMachineAndExePath' is never used.
[src/Mayaqua/Network.c:8191]: (style) The function 'PrintTcpTableList' is never used.
[src/Mayaqua/Network.c:4773]: (style) The function 'RUDPGetRandPortNumber' is never used.
[src/Mayaqua/Network.c:1637]: (style) The function 'RUDPSetSourceIpValidationForceDisable' is never used.
[src/Mayaqua/Network.c:11157]: (style) The function 'RenewDhcp' is never used.
[src/Mayaqua/Network.c:12057]: (style) The function 'SendTo6' is never used.
[src/Mayaqua/Network.c:8691]: (style) The function 'SetNetworkReleaseMode' is never used.
[src/Mayaqua/Network.c:18903]: (style) The function 'StrToMask46' is never used.
[src/Mayaqua/Network.c:20013]: (style) The function 'UdpListenerGetPublicPortList' is never used.
[src/Mayaqua/Network.c:20608]: (style) The function 'UdpListenerSendPacket' is never used.
[src/Mayaqua/Network.c:17545]: (style) The function 'UniStrToIP' is never used.
[src/Mayaqua/Network.c:8746]: (style) The function 'UnixCompareRouteEntryByMetric' is never used.
[src/Mayaqua/Network.c:8736]: (style) The function 'UnixIpForwardRowToRouteEntry' is never used.
[src/Mayaqua/Network.c:8741]: (style) The function 'UnixRouteEntryToIpForwardRow' is never used.
[src/Mayaqua/Network.c:11944]: (style) The function 'UnlockOpenSSL' is never used.
[src/Mayaqua/Network.c:7787]: (style) The function 'FreeTcpTableList' is never used.
[src/Mayaqua/Network.c:16024]: (style) The function 'GetIP46' is never used.
[src/Mayaqua/Network.c:7488]: (style) The function 'GetTcpTableFromEndPoint' is never used.
[src/Mayaqua/Network.c:7777]: (style) The function 'GetTcpTableList' is never used.
[src/Mayaqua/Network.c:6865]: (style) The function 'IPOr6' is never used.
[src/Mayaqua/Network.c:6642]: (style) The function 'IsNetworkAddress6' is never used.
[src/Mayaqua/Network.c:17942]: (style) The function 'StrToMask4' is never used.
[src/Mayaqua/Network.c:8296]: (style) The function 'UnixRenewDhcp' is never used.
[src/Mayaqua/Network.c:9337]: (style) The function 'Win32RenewDhcp' is never used.
2018-06-10 23:16:53 +05:00
Davide Beatrici
4029f3ae8d Rename IsIntelAesNiSupported() to IsAesNiSupported() 2018-06-09 20:31:27 +02:00
Davide Beatrici
420e575ab1 Remove Intel AES-NI library 2018-06-09 19:57:45 +02:00
Davide Beatrici
a7be140f85 Encrypt: use OpenSSL's EVP interface, which supports AES-NI without the need of another library 2018-06-09 19:57:45 +02:00
Davide Beatrici
2da755135a Encrypt: improve FreeOpenSSLThreadState() and FreeCryptLibrary(), in order to clean up the library correctly
https://wiki.openssl.org/index.php/Library_Initialization#Cleanup
2018-06-09 19:57:18 +02:00
Davide Beatrici
1fad008e1a Encrypt: set default RSA key size to 1024 everywhere, using the RSA_KEY_SIZE macro
This commit also fixes the problem described in #31, which was caused by the test key generated in RsaCheck() being too small for newer OpenSSL versions.
2018-06-09 19:56:51 +02:00
Davide Beatrici
ba75a32a9f IPC: use hostname as client identifier, if available
This allows a DHCP server to use the client ID as unique identifier, in order to correctly assign a static lease.

Previously this wasn't possible, as the client identifier was set to its MAC address, which is randomly generated.
2018-06-09 19:56:16 +02:00
Davide Beatrici
a5bd4b33da Hamcore: add "push-peer-info" and "UV_HOSTNAME" to the OpenVPN sample configuration 2018-06-09 19:55:03 +02:00
Davide Beatrici
970e217380 OpenVPN: merge OvsParseOptions() and OvsParsePeerInfo() into a single function 2018-06-09 19:55:03 +02:00
Davide Beatrici
86c82b8ccf OpenVPN: rename generic functions 2018-06-09 19:55:03 +02:00
Davide Beatrici
3ceee41d33 OpenVPN: hostname support
OpenVPN sends the default gateway's MAC address, if the option --push-peer-info is enabled.
It also sends the client's environment variables whose names start with "UV_".

This commit adds some lines of code in OvsBeginIPCAsyncConnectionIfEmpty(), in order to set the hostname to "UV_HOSTNAME"'s value, which is defined by the user on their device.
In case "UV_HOSTNAME" is not available, "IV_HWADDR"'s value (the default gateway's MAC address) is used instead.

OvsParseOptions() has been adapted into a new function called OvsParsePeerInfo(), in order to parse the peer info string.
2018-06-09 19:55:03 +02:00
Allen Cui
afa72b0aef
change ./configure to cmake . 2018-06-03 01:49:28 +08:00