Commit Graph

559 Commits

Author SHA1 Message Date
Sergey Abramchuk
cf8318efb5 Add podspec template to the project 2018-07-18 16:13:32 +03:00
Sergey Abramchuk
a067fc2a95 Rename targets and schemes 2018-07-18 16:04:17 +03:00
Sergey Abramchuk
3cce7dab83 Change place of module file 2018-07-18 15:58:29 +03:00
Sergey Abramchuk
a1c153d2ed Reorganize project structure 2018-07-18 15:33:11 +03:00
Sergey Abramchuk
5440663b12 Update project configuration 2018-07-18 15:05:07 +03:00
Sergey Abramchuk
b6f7c0876a Fix warning about implicit capture 2018-07-18 15:04:17 +03:00
Sergey Abramchuk
4314f19258 Fix typo in property descriptions 2018-07-14 14:59:31 +03:00
Sergey Abramchuk
5d119fd7f6 Merge branch 'feature/certificate-serial' into develop 2018-05-16 09:50:16 +03:00
Sergey Abramchuk
660a65989d Add issuer, subject, version properties 2018-05-15 09:37:49 +03:00
Sergey Abramchuk
e08f85b801 Test reading certificate serial 2018-05-15 08:45:29 +03:00
Sergey Abramchuk
033b204722 Return certificate serial 2018-05-15 08:45:13 +03:00
Sergey Abramchuk
15d7eb22e4 Merge branch 'feature/update-dependencies' into develop 2018-05-03 13:03:28 +03:00
Sergey Abramchuk
a8701317bf Fix deprecation warning issue 2018-05-03 13:02:05 +03:00
Sergey Abramchuk
f0b20fd6ca Update lz4 library to 1.8.0 version 2018-05-03 12:51:23 +03:00
Sergey Abramchuk
826ace75b4 Apply patches to Asio library 2018-05-03 12:42:30 +03:00
Sergey Abramchuk
6ae50138a3 Merge commit '6f1fcb972a880cc429bbf32b2285328fecfab66b' into feature/update-dependencies 2018-05-03 12:28:44 +03:00
Sergey Abramchuk
6f1fcb972a Squashed 'OpenVPN Adapter/Vendors/asio/' changes from 524288cb4..82be891ba
b3d2ab725 asio version 1.12.0 released
d9161a36e Update release script to match new boost doc build.
54c7b85de Update revision history.
9eaa2a2e5 Update tutorial text to use 'io_context'.
41eb9dc20 Ignore tsified directory.
9229964dc Don't use inline namespace 'v1' in example code snippets.
10098abd6 Include inline namespace 'v1' in tsified code.
9bdbef19f Regenerate documentation.
8fa11a15d Exclude use_future_t implementation detail from documentation.
577b69806 Workaround broken doxygen typedef linking when primary template is undefined.
ea1b39f04 Fix tsify.pl to work with latest code.
694ed5284 Document the new concurrency hints.
3834d7363 Some updates to 'Using' notes.
00873ce91 Document Networking TS changes.
8f25ea4b5 Remove spurious value_type from buffer sequence requirements.
b33eb0219 gcc 4.7 is the minimum version required for std::allocator_traits.
036faf66a Use new move-enabled form of async_accept.
f72304319 Ensure that use_future<std::allocator<void>> is always constexpr default-constructible.
4ad7a397c Add missing variadic template emulation in use_future.
5c591a466 Disable buffer debugging for older MSVC, as it triggers compiler misbehaviour.
f8bd903af Add assign() and clear() functions to error_code.
db4c0e83f Disable boost.chrono error handling.
cca13eefa Document the new handler tracking features.
ff9d69e2f Add check for _DEFAULT_SOURCE in addition to _BSD_SOURCE.
52498bbc6 Suppress recv truncation errors on Windows, to match POSIX behaviour.
e87c37ec9 Add documentation examples of using asio::post to submit work.
ad52c82d2 Create C++11 versions of the fork, local, multicast and nonblocking examples.
f16e39e78 Don't directly include <chrono>, to keep header C++03-compatible.
c016e1aec Boostify the TS headers.
559013298 Suppress MSVC dynamic initialisation warning.
efa18153d Add tests to ensure the ts/* headers compile and are self-contained.
41fccd565 asio/use_future.hpp is already in the convenience header.
2e743f737 Add waitable timer headers to convenience header.
fe5470f4f Use new post() in serialization example.
45dcb33c2 Use asio::coroutine in latency tests.
e556aed8d Update invocation examples to use executors.
5a9d0721d Fix up reference to post().
24050d5ea Show how to associate an executor using nested type and member function.
b02c6c758 Update allocation overview and examples to use new form.
3218be74e Fix typo in strands overview.
3152e77f8 Increase number of buffers per operation for consuming_buffers.
5acae1971 Increase threshold for small memory block recycling to 1KB.
986ef7361 Make sure asio/system_context.hpp is self-contained.
c80c1cbd5 Don't call memcpy with length 0, to avoid passing null pointers.
ede4e7597 Fix description of std::getline's behaviour.
60170d625 Fix copy/paste error in comment.
cff2b4998 Fix clang narrowing warning.
a40570919 Fix incorrect hyperlink target.
fcaf75700 Remove last remaining instance of auto_ptr.
fddf89126 Restore binder support for 3, 4 and 5 arguments.
096660c47 Fix double delete issue introduced by 47b9319acbc45d3c1bcb805a4a03cd47df177c11.
b44805ff0 Add backward compatibility for the old ConnectCondition form.
09c69982e Ensure make_network_vX error_code overload doesn't throw on invalid prefix length.
f4fecdfe4 Fix the rights for event objects on UWP.
2943ee65f Suppress implicit fallthrough warning on newer gcc.
b441bf70b Fix clang version detection for suppression of unused typedef warning.
565c6e8fa Fix compile errors in some asio::connect overloads.
d52b81646 Bump minimum MSVC version required for C++11 allocators.
5618fadb1 Fix compile warning under Emscripten
b2367dab2 Use proper SSL_version() function so that asio can build with BoringSSL.
cfe47e71d Regenerate documentation.
6377b0466 Patch up some template links.
2bda4b85c Add new macros to doxygen configuration.
4a4d28b0d Qualify use of error_code.
e39a95a73 Fix boostify.pl to work with latest code.
2ccb648f4 Only obtain associated allocator when handler is known to be valid.
230c0d2ae Asynchronous accept should not check user-set non-blocking flag.
862aed305 Require gcc >= 4.7 to use standard atomics.
a0d28e5a7 Don't use auto_ptr.
15e136fa8 Use deregister_internal_descriptor in signal_set_service.
59330e825 Put detail/config.hpp include first in detail/string_view.hpp.
d6144828b Only enable string_view with /std:c++17 on MSVC.
c2cb5395e Use hook allocation strategy whenever associated allocator is std::allocator.
5b4aa5ef9 Make epoll_reactor resistant to events with duplicate user data.
47b9319ac Don't free the reactor's per-descriptor state until after close.
cbf687653 Fix compile errors in dev_poll_reactor.
870124ab5 Add missing 'else' in epoll_reactor's handler tracking support.
b37b9449e Clean up socket release() implementation for reactor-based platforms.
f5c570826 Add out_of_band_inline socket option.
7f849376c Expose the system_executor's execution context as system_context.
9f62b6791 Update io_context run* documentation.
ac89cf0ba Enable newer language features for recent MSVC versions.
64ae9bcae Add alias templates for associators.
e502a6b36 Use shorter enum name resolver_errc::try_again.
b3ebdd8f6 Use ADL for calls to buffer_size.
c516cd591 Fix non-dereferencing pointer overflow in basic_streambuf::commit.
b8a34a1dc Fix work counting issue in asynchronous resolver implementation.
48e7ef864 is_continuation misplaced in reactive socket service
5adce6e26 Use poll.h rather than sys/poll.h if possible.
ddef4994f Avoid exception throwing from `make_network_v{4,6}(str, ec)`
0442bc922 Disable Boost.Chrono's dependency on Boost.System.
6c5b04eff Conditionally enable iostream move constructor and assignment.
a3bba3394 Fix version check for string_view.
246f387e7 Fix compile error on gcc 4.8.
fd024792c Add -lrt when linking on linux.
0921ab3db Simplify automatic detection of boost source distributions.
6b34f88a5 Make SSL/TLS version handling more consistent across OpenSSL versions.
1517bd1a1 Add travis and appveyor configuration.
70249b796 Use GetModuleHandleA rather than GetModuleHandle.
582ed12f7 Update copyright notices.
b6ac42dde Remove unused error code variable.
d52f28a09 Add missing rvalue cast in use_future implementation.
b33b3ae01 Unlocked reactor I/O implies a concurrency hint of 1.
cf351c44a Don't use non-portable sockaddr_storage member ss_len.
bbe092b3d Simplify and improve performance of executor operations.
e5acea17d Add shallow-constness to strands.
00a85845e Eliminate redundant copy as executors are now shallow-const.

git-subtree-dir: OpenVPN Adapter/Vendors/asio
git-subtree-split: 82be891ba69c65be4c684d709d78a225da69c3c5
2018-05-03 12:28:44 +03:00
Sergey Abramchuk
dd126715b3 Recompile mbedTLS with applied patches 2018-05-03 12:15:48 +03:00
Sergey Abramchuk
9935faf056 Update mbedTLS headers 2018-05-03 12:14:02 +03:00
Sergey Abramchuk
d95f12c99a Merge commit '56284506fccdd38b3d45b1656809db8036d3ced0' into feature/update-dependencies 2018-05-03 11:46:13 +03:00
Sergey Abramchuk
56284506fc Squashed 'OpenVPN Adapter/Vendors/openvpn/' changes from e6d68831a..35bbca799
35bbca799 Merged in OVPN3-184-generate-warning (pull request #1)
a73d2ce68 Merged in antonio/OVPN3-169-pure-ssl-transport (pull request #3)
8d7f5f3c1 Merged in feature/docker (pull request #2)
d9b5055cd [OVPN3-169] cli.cpp: compile with -DOPENVPN_TLS_LINK when requested
2d99bbfea [OVPN3-169] cliopt.hpp: add support for TLS transport module
62c8461d2 [OVPN3-169] tcpcli.hpp: add runtime support for TLSLink
e0e76bb28 [OVPN3-169] tcplink: introduce LinkBase abstract class
a71014d40 [OVPN3-169] tcplink: create LinkCommon class and inherit from it
cfd6df5bc build system: fix 'git apply'
3e49de7de [OVPN3-210] ovpncli: handle "allow-name-constraints" for OpenSSL
08d72bd76 [OVPN3-184] mbedtls: handle Name Constraints
40c70113d [OVPN3-184] Add mbedTLS patch
ef8d11f34 [OVPN3-169] OpenSSL: implement write_ciphertext_unbuffered() function
37dc86378 [OVPN3-169] mbedTLS: implement write_ciphertext_unbuffered() function
5834ed401 [OVPN3-169] SSLAPI: add write_ciphertext_unbuffered() function
071050b5f vars-linux-dbg: update linux debug profile
5bbfe68c3 [OVPN3-169] Protocol: add support for TLS transport protocol type
dc12d3189 [OVPN3-223] build: add docker images

git-subtree-dir: OpenVPN Adapter/Vendors/openvpn
git-subtree-split: 35bbca799dfa3fbe8e17f8d6e94c3946c397b593
2018-05-03 11:46:13 +03:00
Sergey Abramchuk
c67e05a1ad Fix missing inline keyword 2018-04-04 13:08:45 +03:00
Sergey Abramchuk
84ad2a289f Squashed 'OpenVPN Adapter/Vendors/openvpn/' changes from 098fd412a..e6d68831a
e6d68831a deps: update mbedTLS to 2.7.0
59de63fa6 cli.cpp: added OPENVPN_REMOTE_OVERRIDE
caf9cf6c1 RedirectPipe: added additional flags for flexibility
68595de4d ClientAPI::RemoteOverride: added error status
37d848ca2 Log lines from C++ exceptions should contain the text "exception"
f05802cf9 Increase server validation of password size to 16KB to support bundling SAML messages.
52e4d4a5f Increase client validation of password/response size to 16KB to support bundling SAML messages.
a0416ed92 [OVPN3-209] win: add dependencies checksum verification
f6eadbc4d [OVPN3-206] Refactor Windows build system
7b30c2f12 [OVPN3-220] proto.hpp: send initial options set on rekeying
33dd2f29e mbedtls: backport fixes for CVE-2018-0487
0912a9b62 [OVPN3-213] build system: mbedtls timing tests
98fa55576 deps: update asio to 1.12.0
620531101 [OVPN3-215] asio: apply external patches
f4a73bde5 [OVPN3-215] asio: rebase external patches on top of our current commit ID
a61cac928 mbedtls: Patches from 2.7 to fix timing test failures
c892f41fb win: tune dependencies build
8a394a37d [OVPN3-213] build system: mbedtls timing tests
0a3dd67da [OVPN3-190] tun linux: add to/from_json methods
44c6cdfdc [OVPN3-206] readme: update Windows build instructions
0edec4a09 [OVPN3-206] win: update directories in VS projects
3d6fd62cb mac build: improve unittest stability
758ae98c6 [OVPN3-209] win: add dependencies checksum verification
a7642ee82 [OVPN3-205] win: apply mbedTLS patches
ac94b6eb7 [OVPN3-206] Refactor Windows build system
c5bc3859e mbedTLS: don't set endpoint twice in conf object
3d5dd9ee3 [OVPN3-199] mac build: do not overwrite DEP_DIR
b713762ba mbedtls: Patches from 2.7 to fix timing test failures
37ab79fa6 tun linux: apply changes from 362acf0
6a7aee2c9 [OVPN3-190] tun: implement persistence
1d2ebb07f [OVPN3-190] tun: move tun creation to separate class
53e33d634 [OVPN3-190] tun: move content of tun to tuncli
85d3377c2 [OVPN3-190] tun: move tun setup methods to separate file
735b985eb i/o layer:  wrap raw pointers embedded in closures
322ae24b5 OptionList: support variadic template parameter pack in constructors
8a012b454 lz4: added namespace and improved error handling
34998e94a zlib: removed verbose parameter
846ed217d OpenSSL: set SSL_MODE_RELEASE_BUFFERS to conserve memory by releasing unneeded buffers
32e3ea117 OptionList: added show_unused_options() method
fe38233a8 Buffer: added typedefs for thread-safe refcounts
b34b6271e compression: added compress_lz4() and decompress_lz4()
755e1a181 linux/core.hpp: added exclude_from_core() function
a7f6fe64f ManClientInstance::Send: added userprop_local_update() virtual method
94526ac19 BufferAllocated: fixed regression in buffer copy
33c16812e [OVPN3-144] mbedTLS: fix support for 4096bit encrypted keys
f249ab4bd [OVPN3-144] build-mbedtls: run make check before compiling
5040aef4c [OVPN3-144] build-mbedtls: apply patches using git-apply instead of patch
8a5e838ab [OVPN3-144] mbedTLS: fix incompatibility with PKI created by OpenSSL 1.1
e7badefd7 proto.hpp/tls-crypt: fix access to ACK IDs during packet validation
73fa974db proto.hpp: print buffer exception in case of packet access error
79ad5eded Estblishing a stable branch
1c5f20ab0 Hide the @ sign in logs if username is empty
01ee1f5a4 Added ClientAPI::Config::retryOnAuthFailed parameter
05880b136 Added ProfileParseLimits::MAX_SERVER_LIST_SIZE and raise limit to 4096
eedee4fa6 cli.cpp: allow -s server override to reference a friendly name
6e350e9f9 Linux tun setup: use LinuxGW46 to obtain gateway info
3e044c6c7 top-level .gitignore was missing a trailing newline
a27355ac7 Use C++11 push_back(std::move(...))) for pushing objects onto vectors
8c3af2704 HostPort::split_host_port: support unix socket filename as an alternative kind of host
14b588c86 asio: added asio_resolver_results_to_string()
fd6e8e9bf AsioPolySock: minor changes to remote_endpoint_str()
06f5e4d71 AsioBoundSocket::Socket: added to_string() method
8fd968532 RemoteList: minor cleanup in set_endpoint_range()
f9fc2f54e BufferAllocated: improve movability
8cb8d52cd string: added first_line() method
a26b1646b AsioPolySock: extend AltRouting support
ef3a40c27 Listen::Item: added AltRouting mode
02e786bc9 write_binary_atomic: support ConstBuffer
6745799c9 fileunix: added read_binary_unix_fast()
5689c2d9c write_binary_unix(): added ConstBuffer variant
2b0e76453 enum_dir: refactor to allow enumeration via lambda
116a5bd5e bufstr: added const_buf_from_string() method
f8ec81413 Buffer: added const_buffer_ref() variant accepting a const argument
ae98aa8b6 AsioPolySock: support AltRouting
8f81479f1 AsioBoundSocket::Socket: support inheritance
9598918e9 ServerProto: added schedule_disconnect() method.
4516cf67b ServerProto: reset CoarseTime object when AsioTimer is canceled
0ffc76a0b Route: implement operator< so Route objects can be used as map/set keys.
c4af9f68b event_loop_wait_barrier: raise default timeout to 30 seconds
d7fe87540 appversion.hpp: rename VERSION -> BUILD_VERSION

git-subtree-dir: OpenVPN Adapter/Vendors/openvpn
git-subtree-split: e6d68831a71131b7d92fbea93d3b9cbe10ba2068
2018-04-04 12:34:20 +03:00
Sergey Abramchuk
3030551e3d Merge commit '84ad2a289f33a43dd71276cc494f337d0fbb3ed6' into feature/update-dependencies 2018-04-04 12:34:20 +03:00
Sergey Abramchuk
f3baaed4df Merge branch 'feature/fix-issue-thread-local' into develop 2018-04-04 12:29:17 +03:00
Sergey Abramchuk
ff9b972634 Add USE_ASIO_THREADLOCAL flag 2018-04-04 12:28:45 +03:00
Sergey Abramchuk
fa558ff5df Update schemes 2018-04-04 12:25:42 +03:00
Sergey Abramchuk
c92becad0c Change project format to Xcode 8.0 compatible 2018-04-04 12:23:53 +03:00
Sergey Abramchuk
ba4ab84b92 Merge branch 'feature/update-dependencies' into develop 2018-03-08 18:13:55 +03:00
Sergey Abramchuk
7d62d32641 Compile C++ files as Objective-C++ 2018-02-25 14:14:11 +03:00
Sergey Abramchuk
78331c508f Update mbedTLS headers 2018-02-25 14:13:38 +03:00
Sergey Abramchuk
ec5ffdf50a Recompile mbedTLS libraries with optimization 2018-02-25 14:11:11 +03:00
Sergey Abramchuk
0a0eece4bf Update mbedTLS libs to version 2.7.0 2018-02-23 12:20:16 +03:00
Sergey Abramchuk
055bb04c14 Squashed 'OpenVPN Adapter/Vendors/openvpn/' changes from 3e002c83c..098fd412a
098fd412a [OVPN3-182] mac: add XCode project
fd5fa9403 [OI-29] Report IV_HWADDR on iOS
d3dd348c0 [OVPN3-165] send keydir opt string only when tls-auth is enabled
d0532df66 mbedTLS: add support for ECDSA
fa872c4ff [OVPN3-146] build: switch from sha256sum to shasum -a 256

git-subtree-dir: OpenVPN Adapter/Vendors/openvpn
git-subtree-split: 098fd412a26b681e55e8c3de924d133f5547fd2f
2018-02-23 12:14:04 +03:00
Sergey Abramchuk
e0c451870a Merge commit '055bb04c14f30cc627492680d1cf486d7b9b0f79' into feature/update-dependencies 2018-02-23 12:14:04 +03:00
Sergey Abramchuk
f016614ed3 Merge branch 'feature/documentation' into develop 2018-02-22 15:48:19 +03:00
Sergey Abramchuk
c71d2fbef9 Add missing comments to the code 2018-02-22 15:47:57 +03:00
Sergey Abramchuk
3eaf2a060d Add missing description to the configuration of NETunnelProviderManager 2018-02-22 15:32:54 +03:00
Jonathan Downing
134769f421 Add synchronousDNSLookup property (#51) 2018-02-16 10:13:30 +03:00
Sergey Abramchuk
3deaebcb3c Fulfill overview section 2018-02-13 17:47:05 +03:00
Sergey Abramchuk
239557e650 Add an example of NETunnelProviderManager configuration 2018-02-13 16:37:51 +03:00
Sergey Abramchuk
44c3eaed99 Fulfill acknowledgments section 2018-02-07 18:06:58 +03:00
Sergey Abramchuk
4ed405ced3 Add comments to the example 2018-02-07 17:37:54 +03:00
Sergey Abramchuk
7ff489782e Add a missing article 2018-02-06 16:39:39 +03:00
Sergey Abramchuk
9f99b4cdee Add links to LICENSE and NOTICE 2018-02-06 16:32:04 +03:00
Sergey Abramchuk
f442d987a2 Fulfill contributing section 2018-02-06 16:31:17 +03:00
Sergey Abramchuk
ad02563da3 Update formatting of license section 2018-02-06 16:19:03 +03:00
Sergey Abramchuk
d371503278 Fulfill license section 2018-02-06 16:04:00 +03:00
Sergey Abramchuk
cef7751879 Add example of configuration without comments 2018-02-06 15:33:40 +03:00
Sergey Abramchuk
497a410f38 Fulfill installation section 2018-02-05 13:29:19 +03:00