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

95 Commits

Author SHA1 Message Date
James Yonan
f8f2cb5a81 Added special build for Private Tunnel. 2012-04-18 00:42:33 +00:00
James Yonan
d5a32c5a75 Copyright updates.
OpenSSL license now embedded in core.
Added OpenVPNClient::copyright() method.
Beta expire extended to 2012.6.1.
2012-04-17 22:12:27 +00:00
James Yonan
6fb53c3abb Fixed a race condition issue with "hot connect", i.e. sending a
connect intent to service when already connected.  

One of the ramifications of the "hot connect" fix above is that
OpenVPNClientBase.is_active() will now return a value that is
instantaneously up-to-date, whereas events might lag because
of the mechanics of inter-thread message posting.  Keep this in
mind when correlating received events to is_active() values.

For C++ core threads, increased allowed thread-stop delay to 2.5
seconds before thread is marked as unresponsive and abandoned.
Previous delay was 1 second.  This delay can't be made too long,
otherwise Android will tell the user that the app is unresponsive
and invite them to kill it.

When closing out an abandoned core thread, indicate this condition
with a new event type called CORE_THREAD_ABANDONED.  If the thread
is abandoned due to lack of response to a disconnect request, then
the CORE_THREAD_ABANDONED event will occur followed by
CORE_THREAD_INACTIVE.  For core threads that properly exit,
the DISCONNECTED event will be followed by CORE_THREAD_INACTIVE.

Added save_as_filename parameter to importProfileRemote method for
controlling the filename that the imported profile is saved as.
This parameter may be set to null to have the method choose an
appropriate name.  To have an imported profile replace an existing
profile, the filenames much match.

Added UI_OVERLOADED debugging constant to OpenVPNClient to allow
the UI to connect to a profile when already connected to another
profile in order to test "hot connect".

Added new events CLIENT_HALT and CLIENT_RESTART for compatibility
with an Access Server feature that allows the server to remotely
kill or restart the client.

When connecting a profile, the core will now automatically fill in
the username if it is not specified for userlocked profiles.

Version 0.902.
2012-03-31 16:08:20 +00:00
James Yonan
7fd2b81ca7 Use -fvisibility=hidden instead of -fwhole-program for Linux
builds as well.
2012-03-25 00:35:26 +00:00
James Yonan
8528564b51 For Android builds, moved away from gcc -fwhole-program in favor
of -fvisibility=hidden.
2012-03-25 00:26:50 +00:00
James Yonan
e7cc39a99f Change build script for java-wrapped core to use a two-step
build process, one for core and one for java wrapper.
This is so that different optimization flags can be applied
to each step.  In particular, the wrapper needs
-fno-strict-aliasing, but the core does not.
2012-03-24 20:22:24 +00:00
James Yonan
d4066b10a2 Minor tweaks to previous commit (PolarSSL use of OpenSSL ciphers/digests). 2012-03-23 20:43:09 +00:00
James Yonan
04c68e3e7a Android 4 -- Added Import from Access Server. 2012-03-19 16:13:06 +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
1b0088ab2e PolarSSL support fully implemented (except for External PKI). 2012-03-14 00:51:40 +00:00
James Yonan
12a648bc1a Minor debug var edits. 2012-03-12 12:42:02 +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
e82d3986d9 Android 4:
* Added beta expiration capability.  Current expiration is May 1, 2012.

* Fixed issue where closing the OpenVPNClient activity would sometimes
  wrongly shut down the service.

* Moved additional methods from OpenVPNClient into OpenVPNClientBase.
2012-03-10 04:55:32 +00:00
James Yonan
31fd2f7437 Fix some breakage between Android and JDK clients. 2012-03-08 10:50:26 +00:00
James Yonan
b13a527308 Android 4:
* Implemented connection timeout.
* Implemented show raw stats page.
* Work around issue where sometimes core doesn't stop when
  stop() method is called, because of delays in canceling
  Asio DNS resolution thread.
2012-03-07 11:21:09 +00:00
James Yonan
deffceea7e Android 4 -- Implemented External PKI. 2012-03-06 06:06:54 +00:00
James Yonan
d77865d0a5 Android 4 -- Interim checkpoint for External PKI development. 2012-03-04 23:05:26 +00:00
James Yonan
a1626d3149 Android 4 client & core -- implemented server and protocol override. 2012-03-03 11:09:05 +00:00
James Yonan
3a04648684 Android 4 client -- Implemented dynamic challenge/response. 2012-03-03 02:56:58 +00:00
James Yonan
efd1139571 Implemented base64 so static challenge/response now works.
Refactored some of the base Activity stuff into
OpenVPNClientBase.java.

Clients sending intents to OpenVPNService should use
OpenVPNService.INTENT_PREFIX as a key prefix when
calling putExtra.
2012-03-01 22:50:57 +00:00
James Yonan
82d4a24489 Android 4 UI work:
* Multi-profile support.
* UI now only shows required fields for each profile.
* Added support for server field.
* Added support for static challenge/response.
* Persist profile/server settings to preferences store.
2012-03-01 08:11:00 +00:00
James Yonan
7c418424ca Android 4 client fixes:
Fixed session ID -> password replacement.

Allow username to be specified as profile/username.
2012-02-27 23:00:29 +00:00
James Yonan
b29109c6c2 explicit-exit-notify fixes. 2012-02-27 08:16:27 +00:00
James Yonan
f8d60013de In Android 4 client, implemented a Connectivity message receiver which
pauses client when the network is unavailable.
2012-02-27 05:11:22 +00:00
James Yonan
0ded1a4dd7 Comment reformatting for rendering header files to PDF.
Fixed minor issue on Linux build of Java client relating to TunBuilder.
2012-02-25 07:37:31 +00:00
James Yonan
c1970047d7 Android UI enhancements. 2012-02-24 19:50:14 +00:00
James Yonan
e1410fd891 Minor UI improvements:
* Added OpenVPN icon
* Show only important events in UI
2012-02-20 05:38:52 +00:00
James Yonan
41a454815a First fully-working Android build. 2012-02-20 03:27:20 +00:00
James Yonan
5aedea3066 Added #define USE_TUN_BUILDER for enabling TunBuilderBase functionality.
Fix regressions in Linux JDK test build (Main.java).

Other misc fixes.
2012-02-19 19:06:44 +00:00
James Yonan
3f30ffc74f Added additional files missing from previous commit. 2012-02-19 17:43:42 +00:00
James Yonan
6f96b363c2 Fix minor regression in test code. 2012-02-19 02:07:54 +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
540c58e5d8 Android client successfully tested with null tun/tap. 2012-02-16 20:46:38 +00:00
James Yonan
f2ab7971f9 checkpoint 2012-02-15 22:32:45 +00:00
James Yonan
db2a195dff In OpenVPNClientThread, make wait_thread() void, and get status
instead from connect_status().
2012-02-15 19:39:51 +00:00
James Yonan
17ba45b487 Allow OpenVPNClientThread.wait_thread() to be called repeatedly
without issue.
2012-02-15 19:07:33 +00:00
James Yonan
bc02566ed9 Split OpenVPNClientThread.connect() into two methods: (1) connect()
establishes the client connection thread, and (2) wait_thread()
waits for client connection thread completion.
2012-02-15 18:59:24 +00:00
James Yonan
7573a2dea6 Added AuthFailed as an event type. 2012-02-15 18:19:34 +00:00
James Yonan
736dc3a0b8 Additional minor refactoring. 2012-02-15 15:13:35 +00:00
James Yonan
8b3a5d9c3a Refactored java client using ClientEventReceiver interface. 2012-02-15 14:45:55 +00:00
James Yonan
aa43f81e04 Renamed Java-wrapped class OpenVPNClient to OpenVPNClientBase to avoid naming conflicts. 2012-02-14 17:47:01 +00:00
James Yonan
5394a28d2e Added script to build libovpncli.so (Java-wrapped client) for Android.
Required r12868 from swig svn:

http://swig.svn.sourceforge.net/viewvc/swig/trunk/Lib/java/director.swg?view=log
2012-02-14 15:20:15 +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