Age | Commit message (Collapse) | Author |
|
If a new provider is added, it gets selected automatically hiding all
other providers, as if it had been selected clicking on it.
|
|
The progressbar is always below the first row, because only the selected
provider row remain visible.
If the user cancels the ProviderDetailFragment, all providers appear
again.
Next step: implement the same behaviour with the new provider usecase.
|
|
I've created a new adapter using code from
http://www.sherif.mobi/2012/01/listview-with-ability-to-hide-rows.html
and my own getView (moved from ProviderListFragment).
|
|
|
|
|
|
New provider button has been converted to an action item, shown at the
bottom of the screen.
|
|
I've also changed the way we notify that the password should have 8
characters at least, to make it consistent to the way we notify username
is required.
|
|
Logging in, it was returning a "Bad response from server" due to the malinterpretation of the received JSON. It was looking for a field named "m2", but it was "M2".
|
|
|
|
If there is an error while downloading CA cert on downloadJsonFiles, false is returned and progress dialog is dismissed.
|
|
They have been relocated to the corresponding classes.
|
|
|
|
|
|
I do not manually manage cookies anymore, letting HttpURLConnection
manage them via default CookieHandler (using
CookiePolicy.ACCEPT_ORIGINAL_SERVER).
|
|
SRP parameter A tries to be sent via HttpsURLConnection. Right now, we
have a problem with certificates because I'm not using provider CA cert
to get the response. I'm going to merge the branch with better method
names to download response using already existing code.
|
|
I send session_id cookie in the request for 1/cert, getting it from
LeapHttpClient directly.
|
|
|
|
I still let one method to bypass hostname verifier, otherwise dev.bm
will not work.
I've reduced downloading functions to 3: download without CA, download
with commercial CA and download with provider CA.
I only download CA cert once, when the user selects the corresponding
provider. Each time a user switch provider, the cert is downloaded
(along with other json files).
|
|
|
|
|
|
|
|
develop
|
|
into develop
|
|
|
|
|
|
We were checking if eip existed before adding it again, but that check
can be removed if we make a replace instead of an add.
|
|
Added a new catch block in all downloads methods.
|
|
We no longer use BundleExtras named as the action ProviderAPI is
intended to perform, but we standardise this name
(ProviderAPI.PARAMETERS), and use setAction to pass that action string.
|
|
New login dialog shows the original username, so that if the user failed
writing his/her password, s/he does not have to write again the
username.
|
|
This fixes #3287
|
|
|
|
If login is successful, dialog is dismissed and toast is showed.
If login is not successful and the user cancels the new login dialog
presented to him/her, then Dashboard is showed.
|
|
If the CA cert was correctly downloaded, we assume it can be used to
validate the string download.
If CA cert cannot validate that connection, then if the trust completely
checkbox was checked it will try with the other methods. If it was not
checked, a certificate error is shown (telling the user the
provider is not trusted).
|
|
Only if all downloading methods fail and the last one throws an
IOException, the certificate error message toast is shown.
|
|
I've also rearranged how we handle SSL errors. In first place, if the
user checked the "Trust completely" checkbox, leap_android tries to use
the CA cert pointed out by provider.json.
If that does not succeed, it uses an always-returning-true hostname
verifier (this was previously done before using CA cert).
|
|
|
|
|
|
|
|
Fixes VPN reconnection when framework rebuilds view, triggering onCheckedChangeListener
|
|
|
|
|
|
Includes AlertDialog if the user attempts to stop EIP while a connection is being established
|
|
|
|
|
|
|
|
|
|
If an empty json string is received after sending M1 (that means no M2
in return), bad user/password message is shown.
This fixes bug 3153.
|
|
Login option is not shown if the user is already logged in, and logout
option is not shown if the user is not logged in.
I've also removed a debug line from ProviderDetailFragment, which
returned true when it returned false because of an exception.
|
|
LeapHttpClient can fetch the main CA certificate downloaded from the
provider and add it to its in-memory keystore, without saving the
certificate in a file.
This is a very important feature, I think it can be cherry picked (it has
little modifications, and very localized).
It's very important because authentication does not work without this
bug fix in the latest branches, because I removed the code that saved
the certificate in a file but didn't test the authentication part.
|
|
If a download didn't occurr due to an IOException, we assume it was for
an SSL error and notify the user telling him/her that LEAP provider is
not trusted.
|