summaryrefslogtreecommitdiff
path: root/src/se/leap/leapclient/ConfigHelper.java
AgeCommit message (Collapse)Author
2013-11-09bitmaskclient instead of leapclient in package pathcyBerta
2013-09-30Moved all constants from ConfigHelper.Parménides GV
They have been relocated to the corresponding classes.
2013-09-30Moved result constants to ProviderAPI.Parménides GV
2013-09-26Commented all manual cookie management.Parménides GV
I send session_id cookie in the request for 1/cert, getting it from LeapHttpClient directly.
2013-08-13Use java.security classes to validate string certificates and keys from providerSean Leonard
2013-08-01ProviderAPI intent receives actions and parameters.Parménides GV
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.
2013-07-26Include GPLv3+ file and header for files in se.leap.leapclient packageSean Leonard
2013-07-19Only parse eip-services.json if the serial has incrementedSean Leonard
2013-07-12New certificates are added without creating filesParménides GV
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.
2013-07-12ConfigurationWizard backstack and exit behavior.Parménides GV
Feature #3023 first solution. I don't like to tell anything to the user when s/he wants to exit pressing the back button. I assume s/he is saying: "Wanna go out!!" I've implemented the behaviour written in UI Rev II. If a user selects a new provider when coming back from Switch Provider, the previous provider is forgotten and we assume s/he wants to change of provider but he is not sure to which. That means that previous provider configuration will be removed (that means there is no provider selected and Dashboard will not be launched before a new provider is selected).
2013-07-12Added menu to ConfigurationWizard.Parménides GV
It only contains the "About LEAP" option. If the user clicks again that option while the About fragment is up, no new fragment is added and pressing 1 time the back button drives him/her to the ConfigurationWizard activity.
2013-07-12Back button from ConfigurationWizard quits.Parménides GV
If the user decides not to choose any provider, the app quits. I'll create another branch to handle this exit properly, warning the user with an AlertDialog as suggested in #3023.
2013-07-12Pressing back button, we don't choose any providerParménides GV
Once in the provider detail fragment, if the user presses the back button, provider.json is removed from sharedpreferences (so that Dashboard does not start as if the user had selected the canceled provider) and ConfigurationWizard gets the focus.
2013-07-12Coded new fragment appearanceParménides GV
Domain, name and description come from provider.json Next step: code buttons to login or to use anonymously.
2013-06-26The added provider is selected automatically.Parménides GV
I've also removed a lot of finishes when things go wrong (so that it should be returning to the previous activity/fragment).
2013-06-20Better control and UI feedback for VPNSean Leonard
2013-06-20Quite basic staring and stopping of VPNSean Leonard
2013-06-20No binary library needed.Parménides GV
I've decided not to include any lib, but to copy the SRPParameters class to our codebase and Util.trim method to ConfigHelper.
2013-06-20User messages are now in string.xmlParménides GV
Some more constants added to ConfigHelper. This solves #2908.
2013-06-19First round of comments.Parménides GV
This resolves the first step from issue #2908. Next step: Put user message strings into an appropiate place.
2013-06-13bitmask json files are downloaded.Parménides GV
There was a problem on the assets file "bitmask.url". It had an error in the eip-service url. We should use this file only for main url, and proceed as if it were a new provider but with a preseeded main url.
2013-06-11We are not using SD storage anymore.Parménides GV
We were using it to save certificate and provider.json files from chosen provider, so that exporting them was easily done. We don't need that files, because if we wanted to export that files we would be able to recover them easily and updated. This fixes #2783
2013-06-08Improve retrieving and saving SharedPreferences for different types (String, ↵Sean Leonard
boolean, JSONObject)
2013-05-14Anon certificate is downloaded if possible.Parménides GV
I download the anon certificate only if allow_anonymous is true, and before launching Dashboard. I store it in SharedPreferences, with "cert" key, as a JSON object.
2013-05-13A bit more clean.Parménides GV
I've upper cased ConfigHelper constants. I've created a new method in ConfigHelper, to send requests to a server, that it's used when sending A and M1.
2013-05-09Log in and Log out options are shown only if allow registration is true.Parménides GV
Allow registration is present in provider.json. Provider.json is downloaded from both preseeded and custom providers. Authentication success or fail is notified correctly to the user.
2013-05-08After loggin in successfully, the new client certificate is downloaded.Parménides GV
It is stored in SharedPrefs, with ConfigHelper.cert_key (="cert") key.
2013-05-01Logging in successfully to dev.bitmask.net :)Parménides GV
The problem was that I needed to append the api_version to the api_uri. I was doing well in tests because I hardcoded the api urls, but in production code I was getting from provider.json only api_url and not api_version.
2013-05-01If the app is restarted with a custom provider selected, the client canParménides GV
request a log in without certificates problems. I've removed the addition of the certificate when downloaded eip-service.json, because I already do that in LeapHttpClient. Solves issue 2367: https://leap.se/code/issues/2367
2013-04-29"Trust completely" checkbox saves that trust for the new providerParménides GV
entered, so that if in the future the client tries to log in or whatever, it can use the certificate downloaded when added. Log in dialog works ok, showing a toast when authentication fails (by this time, I have not managed to get a correct login due to dev.bitmask.net problems). dev.bitmask.net works perfectly, via adding it as a new provider (MeanderingCode, this is for you ;) ). All GET requests are done by default Android URL class, which means that certificates trusted by Android are also trusted by us. If there are problems when logging in due to certificates, the app is able to use only the certificate associated to the provider in the moment it was selected as the chosen provider.
2013-04-29Added danger mode: we can bypass dev.bitmask.net hostname io exception.Parménides GV
2013-04-29Coded dialog (now there is a button in the Dashboard), time to test.Parménides GV
I need to implement bypass for dev.bitmask.net, because bitmask.net is down.
2013-04-29Coded logout method, and tested.Parménides GV
2013-04-15Fixed bug 2231.Parménides GV
New provider dialog works OK.
2013-04-15Merge branch 'wizard' into feature/wizardParménides GV
Conflicts: src/se/leap/leapclient/ConfigHelper.java src/se/leap/leapclient/ConfigurationWizard.java src/se/leap/leapclient/ProviderAPI.java
2013-04-08Xor method fixed. I use BigInteger Java one.Parménides GV
Next step: understand why SHA-256 digest from NG_1024 is not equals to the one leap_web is calculating.
2013-03-20Ready to use with Android JellyBean (api 16)Parménides GV
2013-03-19The new certificate added by ConfigHelper.addTrustedCertificate did notParménides GV
used the provider alias, but a predefined (I forgot removing quotes from argument) string.
2013-03-18Loads bks file from assets.Parménides GV
2013-03-18If ca.crt from new provider is not trusted, we can download it withoutParménides GV
problems assuming user wanted to trust it since s/he entered by him/herself the URL. Next step: refactor a bit, to make code more beautiful.
2013-03-14After downloading provider.json successfully, ConfigurationWizard nowParménides GV
can download eip-service.json and ca.crt without having the latter as a predefined trusted certificate. It does not ask anything about trusting the new certificate as far as selecting a custom provider means that the user trusts that url. Next step: make provider.json also downloadable from https address using ca.cert not trusted.
2013-03-13ConfigurationWizard sets provider.json correctly for Dashboard once aParménides GV
custom provider is selected. Tested using https://bitmask.net as url for custom provider.
2013-03-07Changed POST by PUT in the sendM1 method. Parménides GV
Cleaned some code, pending the M2 one (testing with M1).
2013-03-05Registering method from ProviderAPI implemented and tested.Parménides GV
M1 is not OK, because errors (with null description, awkward) are received from posting M1 to the server instead of M2. Next step: purge user database from leap_webapp and start testing again.
2013-02-28Now, ProviderAPI sends result to ConfigurationWizard.Parménides GV
Refactored downloadJsonFiles in ProviderAPI, new method from block in the intent identification.
2013-02-25Finished first implementation of SRP.Parménides GV
Next step: get cookies understood, how do I get server's sent parameters?
2013-02-21Started SRP authentication. Using NG_1024 with g = 2, and SHA256 digest.Parménides GV
Next steps: Implement async communication with the server to receive salt, send A and receive B.
2013-02-12New custom provider dialog effectively adds the new provider to theparmegv
ProviderListFragment, and then the user can choose it.
2013-02-11Gets provider.json from custom url (assuming the file is at the root ofParménides GV
the website, just as bitmask.net/provider.json), and writes it to a file in ~/leap_android. Next steps: parse that file and download eip-service and cert.
2013-02-07Rearrange singleton Provider.class pattern, Fix isolated SharedPreferences silosSean Leonard