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

150 Commits

Author SHA1 Message Date
Antonio Quartulli
8e501c5373 Update version for mbedTLS and lz4
Signed-off-by: Antonio Quartulli <antonio@openvpn.net>
2017-12-22 17:59:38 +08:00
Antonio Quartulli
1b5a78439e asio: make sure to switch to DEP_DIR before building
Signed-off-by: Antonio Quartulli <antonio@openvpn.net>
2017-12-22 17:59:38 +08:00
James Yonan
14e2bb4c4a asio : added another patch (Android appears to not
support pthread_condattr_setclock).
2017-03-18 12:24:54 -06:00
James Yonan
b5b4e3a48f asio : added patches 2017-03-18 12:24:54 -06:00
James Yonan
f685303f6b asio : version update 2017-03-18 12:24:54 -06:00
James Yonan
052f565ed7 build-mbedtls : simplify mbedTLS build script to no longer
depend on cmake.
2017-03-18 12:24:54 -06:00
James Yonan
627e46e71e build-lz4 : removed some unused code 2017-03-18 12:24:54 -06:00
James Yonan
c51eb86b39 dependencies : updated dependency versions. 2017-03-18 12:24:54 -06:00
James Yonan
a6b7cf458f mbedTLS: Port from polarssl-1.3 to mbedtls-2.3 (functional)
This patch builds on work by David Sommerseth <davids@openvpn.net>
to move the PolarSSL API from polarssl-1.3 to mbedtls-2.3, which
has significant differences in some areas.

- Strings containing keys, certificates, CRLs, and DH parameters
  need to be NULL-terminated and the length argument provided to
  the corresponding mbedtls parse function must be able to read
  the NULL-terminator.  These places have been modified with a
  '+1' to the length argument (x509cert.hpp, x509crl.hpp, dh.hpp,
  pkctx.hpp).

- The SSL context object has been split up in mbedtls-2.3
  Now many of the SSL configurations are done in a separate
  SSL config object, which is added to the SSL context once
  configured.  In addition private/public keys are now stored
  in a separate pk_context, which is later on attached to the
  SSL context.  Due to this, many of the calls setting either
  SSL configuration parameters or working with pk_contexts have
  been refactored.  (sslctx.hpp)

- The older API loading the CA chain took a hostname argument.
  The new API requires mbedtls_ssl_set_hostname() explicitly to
  be called setting hostname.  Some refactoring was needed here
  too (sslctx.hpp).

- x509_oid_get_description() is now replaced by
  mbedtls_oid_get_extended_key_usage().

- when mbedTLS renamed OID_CMP to MBEDTLS_OID_CMP, the return
  value was changed so that a return value of 0 now means equal
  rather than not-equal.

- mbedtls/platform.h must be loaded before any other mbedtls
  include files (sslchoose.hpp).

- All functions and macros related to mbedTLS are now prefixed
  with mbedtls_/MBEDTLS_

- Refactored External PKI and added some options to cli.cpp
  to make it easier to test that the feature still works
  correctly.  This included removing the sig_type var and
  standardizing on a PKCS#1 digest prefix per RFC 3447.

- Updated test keys to 2048 bits.

- Updated dependency build scripts to build mbedTLS.

- Enable MD4 in mbedTLS build script (needed for NTLM auth).

- Use an allow-all X509 cert profile to preserve compatibility
  with older configs.  Going forward, we will implement new
  options to increase strictness on minimum RSA key size and
  required cert signing algs.

- Added human-readable reason strings that explain why
  a given cert in the chain wasn't accepted.

- This patch doesn't rename any files or rename internal
  OpenVPN 3 symbols such as PolarSSLContext.  This will
  be done in a separate commit.

Signed-off-by: James Yonan <james@openvpn.net>
2017-03-18 12:24:54 -06:00
James Yonan
85b893cf8a PolarSSL : Added relaxed-x509-date.patch patch to PolarSSL
which relaxes X509 date validity checks:

* Allow dates to omit the seconds field.
* Allow dates to specify a timezone (but ignore the
  timezone field).
2016-08-04 17:52:07 -06:00
James Yonan
6bc604e0a6 PolarSSL : minor change to build-polarssl to correctly
comment generating script in openvpn-polarssl.h
2016-08-04 17:49:17 -06:00
James Yonan
2b2fa0c0b1 PolarSSL : Added deps/polarssl/build-detail-patch to
generate a patch to stdout based on changes to the
source directory $DEP_DIR/$POLARSSL_VERSION
2016-08-04 17:41:59 -06:00
James Yonan
83a25a4b1d lib-versions : updated asio to asio-20160803 2016-08-03 13:58:29 -06:00
James Yonan
286ea35bbd polarssl build : in cmake build script, clear
CMAKE_OSX_ARCHITECTURES, CMAKE_OSX_DEPLOYMENT_TARGET,
and CMAKE_OSX_SYSROOT since their default settings
interfere with our own targeting.
2016-08-03 13:04:41 -06:00
James Yonan
0336f188b7 Updated mbedTLS/PolarSSL to 1.3.17. 2016-06-29 00:00:13 -06:00
James Yonan
8e5e23cbdb Updated OpenSSL to 1.0.2h 2016-05-05 17:26:57 -06:00
James Yonan
6b1c45f37b Updated linux build system to GCC-5. 2016-03-19 02:02:10 -06:00
James Yonan
40e6e1440c Dependency updates:
mbedtls-1.3.16
  openssl-1.0.2g
2016-03-19 02:01:05 -06:00
James Yonan
3707575c02 build-openssl needs a "make depend" before make. 2015-12-28 21:12:11 -07:00
James Yonan
e8108c38ec Dependency updates:
ASIO_VERSION=asio-20151228
POLARSSL_VERSION=mbedtls-1.3.15
OPENSSL_VERSION=openssl-1.0.2e
2015-12-28 21:11:00 -07:00
James Yonan
18bf3158a5 Updated ovpn3 dependencies:
* Updated all libraries to latest versions
* PolarSSL -> mbedTLS renaming
2015-12-28 17:47:18 -07:00
James Yonan
2ee8bbde1e Added scripts/snapshot tool to make it easier
to build .tar.gz files from git checkouts.
2015-12-28 17:47:18 -07:00
James Yonan
49ac3f0285 GCC LTO requires that build scripts use gcc-ar and gcc-ranlib. 2015-11-27 17:57:55 -07:00
James Yonan
5c76a94bf2 Moved deps/win to win for ease of reference. 2015-10-30 20:06:49 -06:00
James Yonan
5200ab2c38 Windows build system changes:
1. Use os.path.join(parms['BUILD'], parms['ARCH']) as the build
   directory, to allow concurrent build directories to exist for
   multiple architectures.

2. Allow extra build parameters to be specified out-of-tree
   in c:/src/ovpn3/common/deps/win/extra.py
2015-10-27 17:46:31 -06:00
James Yonan
a94b4815f4 Windows build system:
* Added support for x86_xp target for Windows XP, but
  note that this requires that vcvarsall.patch be
  applied.

* Fixed issue where wipetree() was failing if target
  directory didn't exist.

* build.py can now infer trailing .cpp on argument.
2015-10-25 21:21:31 -06:00
James Yonan
137bd7a07b Lowered the warning level of Windows build script to zero,
as higher values generate too many false positives.
2015-10-16 20:54:43 -06:00
James Yonan
a30cd2f689 Added jsoncpp to Windows build scripts as an
optional dependency.
2015-09-24 20:31:48 -06:00
James Yonan
4901f4d552 Updated Asio in Windows build config to asio-20150924. 2015-09-24 20:30:26 -06:00
James Yonan
4d3e015c6b Updated Asio to asio-20150924. 2015-09-24 14:53:58 -07:00
James Yonan
b0f41988eb Asio update to asio-20150718 2015-07-18 23:09:22 -07:00
James Yonan
a6c97c10c6 Updated OpenSSL to 1.0.2d. 2015-07-09 15:49:40 -06:00
James Yonan
88a4070908 Added /DASIO_NO_DEPRECATED to Windows build script. 2015-06-30 03:37:03 -06:00
James Yonan
df108086cb Updated OpenSSL to 1.0.2c. 2015-06-17 13:24:18 -06:00
James Yonan
c4a9cea3e1 Updated Windows client for VS 2015. 2015-06-09 11:21:41 -06:00
James Yonan
1563dca02f Added Asio to deps/lib-versions.
Removed Snappy dependency as ovpn3 clients now
standardize on LZ4 (with LZO-asym fallback).
2015-06-06 13:29:30 -06:00
James Yonan
c6a21c827b Boost dependency elimination -- final removal of Boost
dependency.  Asio is now included as a standalone,
header-only dependency.
2015-06-06 10:59:18 -06:00
James Yonan
a2b3a3a715 Updated OpenSSL to 1.0.2a. 2015-03-19 13:55:55 -06:00
James Yonan
d442e777de Updated Android build system to support ARM64:
* Updated SDK and NDK to Android 5:
    android-sdk_r24.0.2-macosx.zip
    android-ndk-r10d-darwin-x86_64.bin

* Updated build-toolchain to build both ARM
  and ARM64 toolchains.

* Added ARMv8-a architecture (64-bit) to all
  core builds.

* Patched "Page Size" issue in boost_1_57_0.
2015-02-27 09:20:35 -07:00
James Yonan
0d7e9488cb Echo build commands in OpenSSL build script. 2015-02-10 15:49:12 -07:00
James Yonan
f157e2807e Updated OpenSSL to openssl-1.0.2 final. 2015-01-26 21:22:26 -07:00
James Yonan
433f4e362d Minicrypto build fixes:
* Disable minicrypto for now in both Android and Apple builds.

* In deps/polarssl/build-polarssl, don't apply the minicrypto
  patch unless "$USE_MINICRYPTO" = "1".
2015-01-19 17:48:10 -07:00
James Yonan
18c31bca14 Updated PolarSSL to 1.3.9a for CVE-2015-1182. 2015-01-19 14:25:42 -07:00
James Yonan
3fe1a359c0 Added OpenSSL GCM support. 2014-12-31 00:24:54 -07:00
James Yonan
d863e940ba Added original config.h for PolarSSL 1.3.9 in
deps/polarssl/config.h.orig.
2014-12-22 23:49:55 -07:00
James Yonan
fc74dce715 Updated deps/polarssl/config.h for PolarSSL 1.3.9. 2014-12-22 23:38:25 -07:00
James Yonan
4c38c8f021 Updated PolarSSL and Boost libs:
1. polarssl-1.3.9
2. boost_1_57_0
2014-12-20 21:04:57 -07:00
James Yonan
5539a22684 Repo reorganization: standardize on $O3 representing the top-level
directory that contains core and possibly other components as well.
2014-08-29 18:42:02 -06:00
James Yonan
302046c3ea Updated build scripts for repo reorganization. 2014-08-28 13:33:14 -06:00
James Yonan
9373f515ee Cleaned up top-level directory by moving vars-* and dependency
build scripts to vars and deps.
2014-08-27 16:40:34 -06:00