Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Also disable penaltyDeath by default as thjere is some Android internal
leak that I am unable to track down.
|
|
|
|
|
|
|
|
This ensure the profile counter is incremented and the profile is
saved to disk to avoid the race condition of not getting the user/pass
which was started.
Closes #1342
|
|
Also throw an error if neither of CA or peer-fingerprint is configured
|
|
|
|
|
|
|
|
Ice cream sandwich was the first Android version to support the
VPNService API, which also gave the project its name as it was an
Android port to ICS. Now that the NDK does no longer support API 14 and
15, this project needs to say farewell to Ice cream sandwich.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Fixes: Implement support of openvpn://import-profile/ support
E AndroidRuntime: FATAL EXCEPTION: main
E AndroidRuntime: Process: de.blinkt.openvpn, PID: 15364
E AndroidRuntime: java.lang.RuntimeException: Unable to resume activity
{de.blinkt.openvpn/de.blinkt.openvpn.activities.MainActivity}: java.lang.NullPointerException:
Attempt to invoke virtual method 'boolean java.lang.String.equals(java.lang.Object)' on a null object reference
E AndroidRuntime: at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3454)
E AndroidRuntime: at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:3494)
E AndroidRuntime: at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2757)
E AndroidRuntime: at android.app.ActivityThread.-wrap12(ActivityThread.java)
E AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1496)
E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:102)
E AndroidRuntime: at android.os.Looper.loop(Looper.java:154)
E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:6186)
E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
E AndroidRuntime: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:889)
E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:779)
E AndroidRuntime: Caused by: java.lang.NullPointerException: Attempt to invoke virtual method
'boolean java.lang.String.equals(java.lang.Object)' on a null object reference
E AndroidRuntime: at de.blinkt.openvpn.activities.MainActivity.onResume(MainActivity.java:82)
E AndroidRuntime: at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1270)
E AndroidRuntime: at android.app.Activity.performResume(Activity.java:6788)
E AndroidRuntime: at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3431)
E AndroidRuntime: ... 10 more
|
|
|
|
For details about the protocol see
https://github.com/OpenVPN/openvpn3/blob/master/doc/webauth.md
|
|
|
|
|
|
|
|
|
|
opvpn is a rather unusual abbreviation for openvpn
|
|
We have found an issue that we couldn't install any of our apps next to each other, and also next to the official OpenVPN for Android app.
The reason is that the provider authorities must be unique globally on the device. Since the class name is hardcoded, it will be the same for all of the implementors of this library.
Although this issue can be easily fixed by changing this manually, I think it is important to do it, because it might be missed by most developers, since we usually do not test 2 VPN apps next to each other. By doing this change, the authority will always start with the final application package ID, so it should be unique globally.
|
|
To preserve backward compatibility, a new method is created: IOpenVPNAPIService#startVPNwithExtras(String, Bundle).
Currently only one parameter is supported:
de.blinkt.openvpn.api.ALLOW_VPN_BYPASS – boolean.
|
|
|
|
|
|
|
|
|