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

289 Commits

Author SHA1 Message Date
James Yonan
58efad3b74 Updated linux scripts to work with latest core and library
organization.

Added scripts under scripts/linux for building dependent
libraries.

Added test/ovpncli/cli.cpp to provide a command line client that
exercises ovpncli.hpp API and can be built via build script.
2012-09-09 23:10:20 +00:00
James Yonan
da1ae7be57 More additions to debugging code for KeyContext state
transitions in proto.hpp.
2012-08-31 21:39:01 +00:00
James Yonan
0622cd2878 Minor refactoring to help bracket rare session invalidated
exception in proto.hpp.
2012-08-31 06:50:43 +00:00
James Yonan
7331ee349b Full iOS beta for OpenVPN Connect. 2012-08-01 12:28:13 +00:00
James Yonan
eccd2cf64f Extended build script to build static libraries.
First version of static libovpncli tested on
iPad (without tun support yet).
2012-05-29 21:15:28 +00:00
James Yonan
2206210562 Misc fixes to update PolarSSL support for 1.1.3. 2012-05-29 16:29:11 +00:00
James Yonan
7b55f4d767 Refactored Mac build scripts to easily switch between OS X, iOS, and iOS simulator. 2012-05-27 09:55:44 +00:00
James Yonan
dafe931877 Build script changes when CLANG=1:
* use -fvisibility=hidden
* use -O4 (LTO) by default
2012-05-23 04:45:01 +00:00
James Yonan
53fa94260f Added clang/LLVM support. 2012-05-22 12:25:33 +00:00
James Yonan
130364c1a5 Add sha2/sha4 to PolarSSL/OpenSSL bridge.
Clean up PolarSSL build scripts, allow testing target.
2012-03-25 22:07:45 +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
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
da248a8fbd Search/replace of:
std::exception& e

to:

  const std::exception& e
2012-02-17 19:28:44 +00:00
James Yonan
1f5e50d733 Implemented OpenVPNClient stats methods.
Simplified autologin sensing.
Java test client will now dump stats on exit.
2012-02-12 23:09:28 +00:00
James Yonan
f13ed3e7a8 Implemented Java client using Swig. 2012-02-11 14:02:51 +00:00
James Yonan
f57c9da3a8 Added QUIET option to proto.cpp.
Other minor fixes to proto.cpp.
2012-02-07 12:56:32 +00:00
James Yonan
e7a5d9f55b Start process of moving client logic out of cli.cpp into
general-purpose classes.

Rename ProtoStats to SessionStats and make it more flexible
by using an abstract base class model.

Add a client event queue for the beginnings of a client-backend
API.

Added logic to ProtoContext to invalidate session on certain
kinds of errors in TCP that would be normally be okay in UDP
such as HMAC_ERROR, DECRYPT_ERROR, etc.

Add some alignment adjustment logic for READ_LINK_TCP (3 bytes)
and READ_LINK_UDP (1 byte).
2012-02-04 10:24:54 +00:00
James Yonan
d9e8a028c8 Ported core to Windows except for TAP driver support. 2012-01-25 08:32:27 +00:00
James Yonan
29bc40bf09 Added TCP transport support.
Disable retransmission of control channel packets
when running in TCP mode.
2012-01-20 23:13:48 +00:00
James Yonan
ac32190acf Minor changes to proto.cpp on Apple to conform with new
SSL context Config class semantics.
2011-12-18 11:33:15 +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
fb163b65f4 ProtoContext object can now be reused via reset() method.
Fixed rare bug where client receives auth, goes ACTIVE, but the ACK
response back to the server is dropped causing the server to receive
post-ACTIVE app messages from the client while it's still stuck
in the S_WAIT_AUTH_ACK state.
2011-12-17 10:53:21 +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
c8f7b0ff2f Keepalive implementation. 2011-12-15 08:48:14 +00:00
James Yonan
3bcc32f696 Implemented auth methods in ProtoContext. 2011-12-14 16:20:07 +00:00
James Yonan
44ee74f374 Added compression framework.
Implemented LZO_STUB compressor.

Added methods to generate options and peer info strings.
2011-12-14 11:34:33 +00:00
James Yonan
3f73d56afb Added some string parsing classes/functions for parsing OpenVPN options
given as a comma-separated list.
2011-12-13 19:51:29 +00:00
James Yonan
1b5fa38adb Comment additions.
Catch buffer exceptions and increment BUFFER_ERRORS.
2011-12-13 11:13:27 +00:00
James Yonan
1aa65c259b Implemented soft reset in proto.hpp. 2011-12-13 04:46:56 +00:00
James Yonan
d2acef57e2 Minor README edit. 2011-12-11 08:34:26 +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
3684fe3c05 ssl.cpp test should include crypto-lib-independent
gencrypto/gensslctx.hpp instead of openssl/ssl/sslctx.hpp.
2011-11-25 06:08:19 +00:00
James Yonan
e56f1c6b11 Added OpenSSLContext data transfer test. 2011-11-24 10:47:11 +00:00