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

46 Commits

Author SHA1 Message Date
James Yonan
1c7f9e2577 Completed HTTP proxy backend implementation
in new client core:

* Added NTLMv2 authentication
2012-10-28 10:07:32 +00:00
James Yonan
48ab9cbbe9 Added our own system() implementation to allow args to be passed as
array instead of concatenated string, and to resolve issue on OS X
where signals were being ignored after system() was called.

C++ iterators incremented in a for statement should usually use
a preincrement syntax.
2012-09-12 04:24:05 +00:00
James Yonan
a6b6d487ef Global edit to add copyright notice at head of each source file. 2012-08-24 21:13:42 +00:00
James Yonan
7331ee349b Full iOS beta for OpenVPN Connect. 2012-08-01 12:28:13 +00:00
James Yonan
f91339e739 First working iOS build. 2012-07-01 15:37:46 +00:00
James Yonan
53fa94260f Added clang/LLVM support. 2012-05-22 12:25:33 +00:00
James Yonan
3c99b8976b C++ core fixes for Windows. 2012-04-21 04:47:30 +00:00
James Yonan
abbe662dcb Android 4 client changes:
* Allow protocol to be specified by "proto" directive instead
  of requiring it to be present in "remote" directive.

* Throw error if tls-remote is specified in client config file.

Updated Android client.txt notes.
2012-04-18 12:13:29 +00:00
James Yonan
ae1afc453d Fixed minor build regression. 2012-03-24 17:54:28 +00:00
James Yonan
ca680ba568 Added capability for PolarSSL to use OpenSSL ciphers/digests. 2012-03-23 20:04:33 +00:00
James Yonan
1531bb6f8f Implemented AppleCryptoAPI for Mac. 2012-03-15 12:13:16 +00:00
James Yonan
65eef6cb5d Android 4 client -- Added External PKI support for PolarSSL usage. 2012-03-14 10:37:19 +00:00
James Yonan
0146e7f262 First working version of Android 4 client with PolarSSL.
Added build-android-polar and supporting scripts.
2012-03-14 06:11:07 +00:00
James Yonan
c4d19c69ea Minor reorg in SSLContext classes. 2012-03-14 03:24:45 +00:00
James Yonan
1b0088ab2e PolarSSL support fully implemented (except for External PKI). 2012-03-14 00:51:40 +00:00
James Yonan
801bfae881 Added Polar SSL crypto support via PolarSSLCryptoAPI. 2012-03-13 04:51:52 +00:00
James Yonan
34dc950815 Core refactor to abstract random and crypto APIs using
static polymorphism.  Only OpenSSL crypto API is
presently implemented.  Still need to implement Apple
and PolarSSL.
2012-03-12 12:24:40 +00:00
James Yonan
74503a4efa Started PolarSSL port. Initially just add RNG support.
Because PolarSSL RNG requires state object, add state
objects for all other RNG providers (OpenSSL, Apple SSL)
to maintain a polymorphic model.
2012-03-11 12:09:25 +00:00
James Yonan
eca10fa23d Minor changes to Android 4 client and core:
* clear_auth() now clears username field.

* OpenSSL impl in core now logs TLS handshake details.

* Added build-openssl-small to build a trimmed-down version
  of OpenSSL.
2012-03-11 04:59:51 +00:00
James Yonan
d6be1cf2ee Android 4 client:
* Added OpenVPN log file page view in advanced preferences.

* Added OpenSSL verify_callback.

* Support ns-cert-type

* Sanitize logged data to remove Session ID.
2012-03-08 10:30:43 +00:00
James Yonan
deffceea7e Android 4 -- Implemented External PKI. 2012-03-06 06:06:54 +00:00
James Yonan
f13ed3e7a8 Implemented Java client using Swig. 2012-02-11 14:02:51 +00:00
James Yonan
aa35d332ff Initialize OpenSSL "auto" engine in InitProcess::init().
Workaround bug in OpenSSL <= 0.9.8 that caused class DH
compile fail.
2012-02-10 14:25:52 +00:00
James Yonan
7371bd8e14 First working version of cli that can be entirely driven from config
file.  Currently limited to UDP, runs only on Linux, and supports
pushed redirect-gateway but not route directives.
2011-12-18 10:50:08 +00:00
James Yonan
6260957c37 Added AES-NI support.
Disable logging in Packet ID code unless OPENVPN_DEBUG_PACKET_ID
is defined.
2011-12-17 05:06:39 +00:00
James Yonan
990231b226 First successful negotiation with AS.
Still need to parse and apply PUSH_REPLY options.
2011-12-16 10:02:15 +00:00
James Yonan
1b5fa38adb Comment additions.
Catch buffer exceptions and increment BUFFER_ERRORS.
2011-12-13 11:13:27 +00:00
James Yonan
f3e9239d80 Full-protocol unit test using ProtoContext, w/o soft resets.
Test in test/ssl/proto.cpp.
2011-12-11 08:28:55 +00:00
James Yonan
16f2021000 Add ssl_started differentiation to ProtoStackBase. 2011-12-04 20:50:24 +00:00
James Yonan
d21c7de80c Coded hmac2 methods, for dealing with HMAC operations where HMAC
signature exists within data range being signed.

In ProtoStack, add raw_write method sending raw packets
that will NOT be encrypted via SSL, but will still be
encapsulated and tracked via reliability layer.

Other misc changes.
2011-12-04 01:34:32 +00:00
James Yonan
2b7e81e55b Added new constructor to AppleSSLContext so it can be
initialized via an SSLConfig.
2011-11-29 05:38:19 +00:00
James Yonan
3e91be1849 Added AppleSSLContext.
Cleaned up test/osx/ssl.cpp.  Old (messy) version
moved to ssl1.cpp.
2011-11-28 06:53:44 +00:00
James Yonan
bfbed01e12 Work around an issue in older versions of OpenSSL
where DHparams_dup is defined as a macro.
2011-11-25 07:06:30 +00:00
James Yonan
f3ec4429ba Minor fixes related to previous commit. 2011-11-25 05:38:40 +00:00
James Yonan
e56f1c6b11 Added OpenSSLContext data transfer test. 2011-11-24 10:47:11 +00:00
James Yonan
71eaaaac9d Started process of abstracting SSL Context object to be independent
of the underlying crypto library.
2011-11-24 02:09:11 +00:00
James Yonan
671df2bb14 Reorganized files so that all code that references OpenSSL
is either under openvpn/openssl (implementation) or
openvpn/gencrypto (generic crypto selector).

Reorganized applecrypto with evp files under crypto so
that we can eventually build out applecrypto as a full
crypto/ssl replacement for OpenSSL.
2011-11-23 06:08:26 +00:00
James Yonan
7dd61393ab Move crypto random number headers out of openvpn/openssl
into openvpn/random.  Also move boostrand.hpp into
openvpn/random.
2011-11-21 06:11:06 +00:00
James Yonan
b45e9c2e15 Started on ProtoContext object (master OpenVPN protocol
context object).

Implemented TLS PRF functions.
2011-11-21 04:58:54 +00:00
James Yonan
f09b9ae12a Added reltest.cpp for testing ReliableRecv and ReliableSend
objects by simulating an unreliable packet stream.

Modified packet_id code so that current time (now) is passed
via function calls rather than accessed as a global.

Added integer random number support via boost::random.
2011-11-09 05:52:52 +00:00
James Yonan
1fcf65fbda Started PKI tree for wrapping OpenSSL PKI objects.
Started SSL Context class.

Implemented dgram & stream buffer queues that can operate as
OpenSSL BIOs.

Reworked Frame class to make it more flexible.
2011-10-25 17:32:26 +00:00
James Yonan
7822e9e298 Make Buffer/BufferAllocated into BufferType/BufferAllocatedType
templates.

Obsolete SimpleArray (all SimpleArray functionality is now
supported by BufferAllocatedType).
2011-10-02 18:55:55 +00:00
James Yonan
f2423aad9d Misc fixes:
* Changes to make library more properly "header only".
* Make Allocator argument to SimpleArray a template parameter.
2011-09-30 23:20:30 +00:00
James Yonan
4d66859513 Added PRNG. 2011-09-29 22:42:37 +00:00
James Yonan
f25c9b37ef Added SimpleArray class template.
Misc cleanup.
2011-09-29 06:35:23 +00:00
James Yonan
f11af8460f Commit of misc C/C++ code:
* test/cascli -- call AS client API from C++ by embedding python
* test/embed -- misc test code for embedding python
* test/dtls -- DTLS proof-of-concept code
* test/tunflood -- test boost::asio wrapper around linux tun/tap device
2010-09-23 09:01:19 +00:00