0
0
mirror of https://github.com/OpenVPN/openvpn3.git synced 2024-09-20 04:02:15 +02:00
Commit Graph

142 Commits

Author SHA1 Message Date
Frank Lichtenheld
1fa0e9589f deps: update mbedTLS to 2.28.4
We're specifically interested in the fix for the unit tests.
("Update test data to avoid failures of unit tests after
2023-08-07")

Signed-off-by: Frank Lichtenheld <frank@lichtenheld.com>
2023-08-23 11:58:44 +02:00
Arne Schwabe
171fd2f0af
Fix mbed TLS AEAD encrypt/decrypt with newer mbed TLS 2.x versions
Newer mbed TLS version changed the API. This fixes our usage of the API and
also removed the micro optimisation of reusing the buffer for plain and cipher
text.

It also adds a unit test to ensure the data is correctly encrypted/decrypted.

Signed-off-by: Arne Schwabe <arne@openvpn.net>
2023-03-08 17:06:24 +01:00
Lev Stipakov
e01375daa0
vcpkg-ports: remove ovpn-dco-win port
The UAPI header (ovpn-dco.h) is now part of openvpn3 core
repo, so no need in separate vcpkg port.

Signed-off-by: Lev Stipakov <lev@openvpn.net>
2022-10-13 15:16:21 +02:00
Lev Stipakov
544522d990
asio: bump version to 1.24.0
Rebase "async_connect_post_open" patch.

Signed-off-by: Lev Stipakov <lev@openvpn.net>
2022-10-13 15:16:17 +02:00
Arne Schwabe
664b3d6651
Remove several no longer used or supported build scripts
- the OpenSSL build script for all platform, was only
  used on macOS and better alternatives like homebrew exit there
- mac build scripts in general, cmake/homebrew is a better alternative
- vars for Android, Android uses CMake based build, see ics-openvpn for an example
- lzo build scripts. Core can do lzo decompress witout it and if used, system lzo can
  be used

Signed-off-by: Arne Schwabe <arne@openvpn.net>
2022-08-24 17:09:13 +02:00
Frank Lichtenheld
88f7f7c70b
deps/lib-versions: update OpenSSL to 1.1.1n
Signed-off-by: Frank Lichtenheld <frank@lichtenheld.com>
2022-03-17 18:13:01 +01:00
Arne Schwabe
a219ce0303 update mbed TLS to latest 2.7 version
Signed-off-by: Arne Schwabe <arne@openvpn.net>
2022-02-10 18:59:01 +01:00
Frank Lichtenheld
e82303ad2a deps: remove unused dependencies
Most of these haven't been used in years and are
probably useless now. If required they can always
be recovered from the git history.

Signed-off-by: Frank Lichtenheld <frank@lichtenheld.com>
2022-01-28 12:18:39 +01:00
Frank Lichtenheld
b3e70d8a58 asio: add patch to fix unitialized warning with gcc 10+
Submitted to upstream: https://github.com/chriskohlhoff/asio/pull/968

Signed-off-by: Frank Lichtenheld <frank@lichtenheld.com>
2021-12-27 10:23:30 +01:00
Frank Lichtenheld
b9e0d776fd
vcpkg-ports: add patch for jsoncpp
See https://github.com/open-source-parsers/jsoncpp/issues/1356

Signed-off-by: Frank Lichtenheld <frank@lichtenheld.com>
2021-11-18 18:33:45 +01:00
Frank Lichtenheld
8bafab1ebb OVPN3-800 build: enable LTO by default on linux
No need to set LTO flag.
2021-10-20 19:53:38 +02:00
Frank Lichtenheld
f0c02a7341
OVPN3-799 openssl: reproducible builds
Set SOURCE_EPOCH_DATE to handle "built on" information.

Make sure we use the same RANLIB during install_sw
as we use during build_libs.
2021-10-20 18:13:18 +02:00
Frank Lichtenheld
603a5758ea
OVPN3-799 build/deps: make AR and RANLIB more flexible
Make it possible to specify arguments for both.
2021-10-20 18:12:29 +02:00
Frank Lichtenheld
9c520dff14 OVPN3-800 build: re-enable -flto for linux deps
lz4 and mbedtls are currently the only deps
that are built for linux (asio and xxHash
are only copied, not built).

If LTO flag is specified (which is a variable
already supported by scrips/build) and target
is linux then enable -flto but allow to
speficy a random-seed to allow reproducibility.
2021-10-19 14:24:34 +02:00
Lev Stipakov
fd0655969d
Merge release of OpenVPN Core library 3.6.4 to master 2021-09-22 13:56:37 +02:00
Lev Stipakov
a32137f7e7
vcpkg-ports: remove openssl port and use the latest version from repo
We want to upgrade to OpenSSL 1.1.1l, but instead of upgrading
our local port we can now rely on the OpenSSL version shipped
with the vcpkg's upstream repo.

We can now do so because starting from vcpkg's commit
06f8fd63 ("[OpenSSL] support for "no-autoload-config" config option
(#18389)") support for the OpenSSL no-autoload-config build option
has been added upstream. This option is required by our builds.

Until now this option was hardcoded in our custom port, but now we
can turn it on by defining our custom triplets "<arch>-windows-ovpn3".

Given the above, we can now drop the custom port and directly rely
on the upstream repo shipping the most recent OpenSSL version.

Signed-off-by: Lev Stipakov <lev@openvpn.net>
2021-09-09 10:41:19 +02:00
Arne Schwabe
1af2a38e82 Update OpenSSL to 1.1.1l 2021-08-25 18:03:43 +02:00
Arne Schwabe
f3634251fb
Update ASIO to 1.19.2 2021-08-18 19:38:37 +02:00
Arne Schwabe
2f28336749 Update to OpenSSL 1.1.1k 2021-07-30 14:00:21 +02:00
Lev Stipakov
fa03fa7d6c
vcpkg-ports/mbedtls: remove references to deleted patches
Signed-off-by: Lev Stipakov <lev@openvpn.net>
2021-06-16 15:56:29 +03:00
David Sommerseth
6530f876c8 OpenVPN 3 Core library version 3.6.3
Jira: VULREP-15
 URL: https://openvpn.atlassian.net/browse/VULREP-15
 -----BEGIN PGP SIGNATURE-----
 
 iQJHBAABCAAxFiEEgDq5E1p1aZrNLFFkhs+UTJZx/fIFAmDHst8THGRhdmlkc0Bv
 cGVudnBuLm5ldAAKCRCGz5RMlnH98pEaD/9VaUW4M9q7hpwzoCDqktrdaUzpRgvx
 hCYLSzAuIkAgPO1UXQTL6DWazTAI+vUAfuV+a4dgPmSs52qQ3K1UNUtuuQLurBiQ
 AopeNYY2VVZeVhAzDQDQTPsqCLn0Bigy4m4quJZBVOir+hGoSNnK7XTllNDCc8Li
 6PBIzM408B+6ARISxmxIdqlpsYwthYhRSPRPGTFuYqrbaRC85seHeRUTHTTQ/LVi
 uoAikYHm/IuY/CCNQoYX26M9FAtLA6zKWpPtJ4RzB+Muw8kToT5tpsKVZvjgwvN7
 YvcipYeALqQTf/WX7q8BKF24XzOYaZ1DHEuS8H3KLx66ESXHWZlfsb0uoj0Nv0AV
 HDloyhK5W7l+IfNmW4ZrPm2YZnvemLWYJwPQMZqfVkUiqqBmJIvidoAdiyWJUu5r
 YPkwidx3pjfoAqgWUZWYgEuW9hBkTgcj67HpyrCUvdDMby7yf9y+KKEu1hvVnYFw
 Mwq+UbEGagNBkQns5xAMCjhyIDaJhcXFmvIj7p3t4uTmotX2iybV3msdqTc5WEa+
 f5OuBskMhOUaL3DKhVmoUZL3IC7Wz9aoWnwXEUhcHnt7MYlIqL+k41hZZ4WDiIa3
 VsNMdW+dL63duLTfW1yaUSA7ptvni3Q8+6GCB9AWqO9ERdzxWBcXhufh4IO9L79j
 9QC60f/gPhjcnQ==
 =8Jg2
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJHBAABCAAxFiEEgDq5E1p1aZrNLFFkhs+UTJZx/fIFAmDHtPgTHGRhdmlkc0Bv
 cGVudnBuLm5ldAAKCRCGz5RMlnH98mX5D/4kBPuzRqYKxveM5jBZwV4sSM6rC7iS
 N5xAQr2HSVFPhKQFykxAjc5gAPqXEnxGScICCCjCj0a0LNlLT80HukeeClGZQtdC
 L/XwNjkxNUjaBXrqQKm7zehSKUAlmpG8cP+rs+qOKWRQwNfMXkYhMfXAnf7URk1C
 2uu0G8KfK46QyY5eRruNv/V5F2lvIu1Evux1ePVtp4X/kz6axEQFAC4O5ZCDJkZN
 QxbmXh2VJP3MOYO/vOh+OG47kAVxDb3b2eK5xGvwMVikcbqcA50hlX1oj/zntCBQ
 pP/lUPnym7C7xRmRL8v2RoDRLtLvmhld1D8bLOTFdeGrIbrFX0PXWIekHR3RnegG
 TP3CGvwga7iZDF1Ovn6i+fykxkMIxLe6bcVZZTr3oH2djl+LBoahy/wZIRmP1Fwv
 Pf9qyYEjkLcjueIiTPCygONJ5Bo6Q6VcZO8FPmKRzIMP5uFKqOPPlOqfYRsKrNAP
 m1YFFI8+j01bkvPayUgOSYjrHcgfSOm8VhB7EPg+twwcbYrGE4WQFRMAfpKVJd6a
 Cikjx/i79NDTqC6wk2FHm1/ViVlSP5qPZkludSKrK58xz9G6TA9Vhnp0SfWWhXIw
 KmG7sbe9moC3W7o8gQf1SnlK5r+grpNvh+IGAl4sMggvCiZIsxwCK1Ptet8ag5AQ
 rI99XAaeje6snQ==
 =KuRd
 -----END PGP SIGNATURE-----

Merge tag 'release/3.6.3'

OpenVPN 3 Core library version 3.6.3

Signed-off-by: David Sommerseth <davids@openvpn.net>
2021-06-14 21:58:27 +02:00
Lev Stipakov
f746588d45
vcpkg: add openssl port with no-autoload-conf
In default configuration OpenSSL loads config from
certain location on disk, which may pose a security risk.

There is "no-autoload-config" config option for OpenSSL
which disables this functionality:

   https://github.com/openssl/openssl/pull/5959

however it is not "exported" to vcpkg.

This adds openssl port overlay which sets "no-autoload-config"
config option. Here is the diff:

diff --git a/ports/openssl/windows/portfile.cmake
b/ports/openssl/windows/portfile.cmake
index 7a3bf08ed..c873eb756 100644
--- a/ports/openssl/windows/portfile.cmake
+++ b/ports/openssl/windows/portfile.cmake
@@ -21,6 +21,7 @@ set(CONFIGURE_OPTIONS
     enable-capieng
     no-ssl2
     no-tests
+    no-autoload-config
     -utf-8
     ${OPENSSL_SHARED}
)

There is also corresponsing PR to vcpkg:

  https://github.com/microsoft/vcpkg/pull/18389

When above PR is merged, this port overlay can be removed.

Signed-off-by: Lev Stipakov <lev@openvpn.net>
2021-06-11 13:01:09 +03:00
Lev Stipakov
d31620d0c6
agent mac: move from common
Windows agent has been moved from common to core,
so for consistency move mac agent too.

Since agent and agent-enabled client depend on jsoncpp,
also move jsoncpp build scripts.

Signed-off-by: Lev Stipakov <lev@openvpn.net>
2021-06-10 23:06:24 +02:00
Lev Stipakov
8cae2a770b
asio: support for version 1.18
ASIO 1.18 enabled UNIX domain sockets on Windows,
which breaks our code, since we use Linux-specific
API to work with sockets.

Fix by disabling UNIX domain (local in ASIO terminology)
sockets on Windows.

Bump ASIO version to 1.18.

Signed-off-by: Lev Stipakov <lev@openvpn.net>
2021-06-10 22:43:26 +02:00
David Sommerseth
3c86a086e1
Merge changes from Core library v3.6.1 release 2021-04-14 22:46:43 +02:00
Lev Stipakov
e9c62c1b08
Add vcpkg port for dco-win
Port script only copies uapi header, same way it is done for tap-windows6.

Signed-off-by: Lev Stipakov <lev@openvpn.net>
Signed-off-by: Heiko Hund <heiko@openvpn.net>
2021-04-14 22:44:52 +02:00
Heiko Hund
f7910bb885 remove references to deleted mbedTLS patches
Signed-off-by: Heiko Hund <heiko@openvpn.net>
2021-03-24 17:31:21 +01:00
Arne Schwabe
ac8083edd9 Update OpenSSL to 1.1.1j
Signed-off-by: Arne Schwabe <arne@openvpn.net>
2021-03-10 16:11:32 +01:00
Arne Schwabe
3905ec3592 Update OpenSSL to 1.1.1i
(cherry picked from commit 58b9256923cf5f5f116ff09f226b5d1374cacaff)
2021-03-10 16:11:31 +01:00
Arne Schwabe
af43bf0145
Add script for building xxHash
The code that requires xxHash requires a fairly new xxHash version, so
add a local copy of 0.8.0 to build with this header only library.

Signed-off-by: Arne Schwabe <arne@openvpn.net>
2021-01-20 17:02:30 +01:00
David Sommerseth
5b15dbe940
Merge changes from Core library v3.5 2020-09-23 20:13:07 +02:00
Arne Schwabe
2952f5611a Update OpenSSL to 1.1.1h
Signed-off-by: Arne Schwabe <arne@openvpn.net>
2020-09-23 09:28:42 +02:00
Arne Schwabe
7eaa2893d4
Remove unused patch to fix compilation on Android
Signed-off-by: Arne Schwabe <arne@openvpn.net>
2020-09-09 18:58:54 +02:00
Arne Schwabe
1c751cc55b
Remove patch/code to allow unsupported name constraints in mbed TLS
This code was originally used in the Connect clients to allow PKIs that
use the (not commonly used) Name constraints feature. This is a
potential security risk but was done to allow PKIs that used that
feature. OpenSSL natively supports Name constraints and will check these.

Remove this hacky feature as feature as it also breaks compiling with
an unpatched mbed TLS and is not used by code anymore.
2020-09-09 18:58:53 +02:00
James Yonan
fd11e37ca8
Asio patches: in basic_resolver_results, added data() and cdata() members for access to underlying storage vector
This seems like a more general solution for developing resolver results mutators
such as randomize and filter by IP version.

Signed-off-by: James Yonan <james@openvpn.net>
2020-08-19 18:52:55 +02:00
Arne Schwabe
d7f4c1611d Modify asio patch to avoid warning about non virtual destructor
The asio patch adds a virtual method to basic_socket. This triggers
compiler warnings about a non-virtual destructor. Fix this by also
making the destructor virtual.

Signed-off-by: Arne Schwabe <arne@openvpn.net>
2020-04-29 11:55:38 +02:00
Arne Schwabe
531c29f177 Update ASIO to 1.16.1
Signed-off-by: Arne Schwabe <arne@openvpn.net>
2020-04-29 11:55:38 +02:00
Arne Schwabe
e6d544b8a5 Add support building deps with clang/libc++
Signed-off-by: Arne Schwabe <arne@openvpn.net>
2020-04-29 11:55:38 +02:00
David Sommerseth
492661fd02
Merging release/3.5.5 into master 2020-04-24 17:33:51 +02:00
Arne Schwabe
bbcf90171f Upgrade OpenSSL to 1.1.1g
Signed-off-by: Arne Schwabe <arne@openvpn.net>
2020-04-22 14:59:00 +02:00
Dmitriy Dudnik
abb7857452 Bump openssl version to 1.1.1f
Signed-off-by: Dmitriy Dudnik <dmytro.dudnik@openvpn.net>
2020-04-09 14:35:21 +03:00
Dmitriy Dudnik
89a3283944 Fix variable name typo in build-openssl
Signed-off-by: Dmitriy Dudnik <dmytro.dudnik@openvpn.net>
2020-04-09 14:35:21 +03:00
Jani Väyrynen
afc40b78d3 Add asio patch that adds kovpn route_id support
Adds a patch formed from ovpn-asio repository:

 - branch 1-14-ovpn
 - commit df7759c141a31159d0ca4267b63f64dfd2a385b1

The patch adds kovpn route_id support to endpoints for sendto/recvfrom.

Signed-off-by: Jani Väyrynen <jani.vayrynen@openvpn.net>
2020-03-27 15:35:42 +02:00
Arne Schwabe
d5471e1846 Increase OpenSSL version to 1.1.1e 2020-03-18 18:51:15 +01:00
David Sommerseth
6daf928edb
Merge branch 'hotfix/3.4' into released 2020-03-03 22:14:32 +01:00
David Sommerseth
40f1419b38
Merge branch 'hotfix/3.3' into hotfix/3.4
This also finalizes the Core release of version 3.4.3

Signed-off-by: David Sommerseth <davids@openvpn.net>
2020-03-03 22:10:36 +01:00
David Sommerseth
c824c032b1
deps: Update to mbedtls-2.7.13
This release contains several critical security fixes.

URL: https://tls.mbed.org/tech-updates/releases/mbedtls-2.16.4-and-2.7.13-released
URL: https://tls.mbed.org/tech-updates/security-advisories/mbedtls-security-advisory-2019-12
CVE: CVE-2019-18222
Signed-off-by: David Sommerseth <davids@openvpn.net>
2020-02-27 14:19:51 +01:00
David Sommerseth
d0ab53a5d5
Merge changes applied to coming Core release 2019-12-10 15:20:49 +01:00
Arne Schwabe
a8e2e15ac0 Fix cityhash build on aarch64 2019-12-02 11:54:09 +01:00
Arne Schwabe
8cc348228c Update OpenSSL to 1.1.1d and fix mac build script
Remove universal libraries and 32 bit support.
Allow user to enable/disable SSL libraries with OSSL=1 MTLS=0
2019-11-27 13:54:57 +01:00