briar merge requestshttps://code.briarproject.org/briar/briar/-/merge_requests2017-04-04T12:44:53Zhttps://code.briarproject.org/briar/briar/-/merge_requests/505Don't cast Context to BaseActivity2017-04-04T12:44:53ZakwizgranDon't cast Context to BaseActivityCloses #926Closes #926Milestone Ghttps://code.briarproject.org/briar/briar/-/merge_requests/504Prevent multiple instances of PasswordActivity2017-03-31T13:42:13ZakwizgranPrevent multiple instances of PasswordActivityThis branch fixes the last part of #909: multiple instances of PasswordActivity being shown when multiple activities are started via intents. It also fixes a bug where PasswordActivity would be shown after signing out if the account was ...This branch fixes the last part of #909: multiple instances of PasswordActivity being shown when multiple activities are started via intents. It also fixes a bug where PasswordActivity would be shown after signing out if the account was deleted at the previous sign in. (I thought we had a ticket for that but I can't find it.)
Closes #909Milestone Ghttps://code.briarproject.org/briar/briar/-/merge_requests/503Don't allow other apps to open the panic prefs activity2017-03-31T08:25:36ZakwizgranDon't allow other apps to open the panic prefs activityThe branch prevents other apps from opening PanicPreferencesActivity.
Briar still shows up in Ripple's list of responders (presumably because we listen for TRIGGER intents), and there's no change to the way panic actions are handled. ...The branch prevents other apps from opening PanicPreferencesActivity.
Briar still shows up in Ripple's list of responders (presumably because we listen for TRIGGER intents), and there's no change to the way panic actions are handled. Touching Briar in Ripple's list of responders has no effect (it used to launch PanicPreferencesActivity). The text next to Briar in Ripple's list of responders says "App hides when triggered" (it used to say "EDIT"). This text is wrong, but it seems to be a default supplied by Ripple.
Depends on !501.
Fixes the second part of #909.Milestone Ghttps://code.briarproject.org/briar/briar/-/merge_requests/502Add tapjacking protection2017-04-06T14:31:38ZJulian DehmAdd tapjacking protection* Set filterTouchesWhenObscured for all views
* Warn the user if Apps using the SYSTEM_ALERT_WINDOW permission are installed
* Warn the user if an App using the permission is installed while Briar is running
Fixes #906
Signed-of...* Set filterTouchesWhenObscured for all views
* Warn the user if Apps using the SYSTEM_ALERT_WINDOW permission are installed
* Warn the user if an App using the permission is installed while Briar is running
Fixes #906
Signed-off-by: goapunk <noobie@goapunks.net>Milestone Ghttps://code.briarproject.org/briar/briar/-/merge_requests/501Require a system permission to open the settings activity2017-03-30T12:58:19ZakwizgranRequire a system permission to open the settings activityThis branch adds a permission to SettingsActivity so it can only be opened by our own app or an app with the READ_NETWORK_USAGE_HISTORY permission, which is only granted to system apps.
This allows the system settings app to open Settin...This branch adds a permission to SettingsActivity so it can only be opened by our own app or an app with the READ_NETWORK_USAGE_HISTORY permission, which is only granted to system apps.
This allows the system settings app to open SettingsActivity but prevents other apps from doing so (including `am` on the command line).
Tested on Android 4.0.4 and 6.0.1 (CM 13).
Fixes the first part of #909Milestone Ghttps://code.briarproject.org/briar/briar/-/merge_requests/500Remove Fortuna generator, fix Android SecureRandom bug2017-04-05T10:56:05ZakwizgranRemove Fortuna generator, fix Android SecureRandom bugThis branch removes the Fortuna generator and the CombinedSecureRandom that mixes Fortuna's output with the output of the JVM's default SecureRandom implementation. Instead, it installs a single strong SecureRandom implementation.
On Li...This branch removes the Fortuna generator and the CombinedSecureRandom that mixes Fortuna's output with the output of the JVM's default SecureRandom implementation. Instead, it installs a single strong SecureRandom implementation.
On Linux and Android, the SecureRandom implementation reads from /dev/urandom. This avoids any weaknesses in the JVM's default SecureRandom implementation, such as [CVE-2013-7372](https://nvd.nist.gov/vuln/detail/CVE-2013-7372).
This branch provides further protection against CVE-2013-7372 on Android by properly seeding the OpenSSL PRNG, in case any libraries use the OpenSSL PRNG directly rather than via SecureRandom.
Closes #914Milestone Ghttps://code.briarproject.org/briar/briar/-/merge_requests/499Fix possible intent hijacking for implicit pending intents2017-04-04T16:35:14ZTorsten GroteFix possible intent hijacking for implicit pending intentsThe intents in questions have simply been removed. See the commit message for more details.
Closes #910The intents in questions have simply been removed. See the commit message for more details.
Closes #910Milestone Ghttps://code.briarproject.org/briar/briar/-/merge_requests/498Run configurations for tests2017-04-07T10:04:50ZakwizgranRun configurations for testsThe "all tests" configuration runs tests in all modules. Android Studio's "across module dependencies" option seems to behave differently in different versions of Android Studio, so I just chained the module configurations together manua...The "all tests" configuration runs tests in all modules. Android Studio's "across module dependencies" option seems to behave differently in different versions of Android Studio, so I just chained the module configurations together manually.Milestone Ghttps://code.briarproject.org/briar/briar/-/merge_requests/497Validate arguments to StreamEncrypter#writeFrame()2017-03-29T16:53:15ZakwizgranValidate arguments to StreamEncrypter#writeFrame()Closes #912Closes #912Milestone Ghttps://code.briarproject.org/briar/briar/-/merge_requests/496Fix ForumActivityTest2017-04-07T10:04:37ZTorsten GroteFix ForumActivityTestCloses #915Closes #915Milestone Ghttps://code.briarproject.org/briar/briar/-/merge_requests/495Simpler password strength estimation2017-04-07T10:04:44ZakwizgranSimpler password strength estimationMy first attempt at fixing this issue used the zxcvbn library, but although it encourages high-quality passwords, the results it produces are confusing without feedback about the rules that have been applied, which would have meant redes...My first attempt at fixing this issue used the zxcvbn library, but although it encourages high-quality passwords, the results it produces are confusing without feedback about the rules that have been applied, which would have meant redesigning the UI. So I went with the simpler approach of counting the unique characters in the password, which produces clear results and follows the auditors' advice of putting more emphasis on password length and less on the types of characters used.
Closes #913Milestone Ghttps://code.briarproject.org/briar/briar/-/merge_requests/494Set TESTING from BuildConfig2017-03-28T14:41:12ZJulian DehmSet TESTING from BuildConfigSet TESTING according to the gradle build.
Fixes #905
Signed-off-by: goapunk <noobie@goapunks.net>Set TESTING according to the gradle build.
Fixes #905
Signed-off-by: goapunk <noobie@goapunks.net>Milestone Ghttps://code.briarproject.org/briar/briar/-/merge_requests/493Sanitize all HTML before displaying it2017-03-31T09:54:33ZTorsten GroteSanitize all HTML before displaying itCloses #911Closes #911Milestone Ghttps://code.briarproject.org/briar/briar/-/merge_requests/492Require a panic app to be set before executing any panic actions2017-03-28T14:41:12ZTorsten GroteRequire a panic app to be set before executing any panic actionsThis MR prevents panic intents to sign out the user if the app has not been allowed to do so.
This removes the "destructive actions" category and lists all panic actions under the panic app. All actions are disabled until an app has bee...This MR prevents panic intents to sign out the user if the app has not been allowed to do so.
This removes the "destructive actions" category and lists all panic actions under the panic app. All actions are disabled until an app has been set.
Closes #907Milestone Ghttps://code.briarproject.org/briar/briar/-/merge_requests/491Remove placeholder tests2017-03-28T14:41:13ZakwizgranRemove placeholder testsEvidently this way of nagging myself to write tests doesn't work, because some of these are ancient.Evidently this way of nagging myself to write tests doesn't work, because some of these are ancient.Milestone Ghttps://code.briarproject.org/briar/briar/-/merge_requests/490Fix potential NPE when getting soft reference2017-03-28T14:41:13ZakwizgranFix potential NPE when getting soft referenceThis is an old branch I had lying around that fixes a potential NPE in EmojiProvider if a SoftReference becomes null between two calls to SoftReference#get(). The branch also changes the error handling slightly so that if there's an exce...This is an old branch I had lying around that fixes a potential NPE in EmojiProvider if a SoftReference becomes null between two calls to SoftReference#get(). The branch also changes the error handling slightly so that if there's an exception while loading a bitmap, listeners learn of the failure rather than getting a null result.Milestone Ghttps://code.briarproject.org/briar/briar/-/merge_requests/489Add a setting to disable Tor2017-03-28T14:41:14ZakwizgranAdd a setting to disable TorThis is something the auditors asked for, which I thought might be worth merging into master.
The branch also fixes a bug with settings namespaces (the UI was using "tor" and "bt" whereas the plugins were using their transport IDs, whic...This is something the auditors asked for, which I thought might be worth merging into master.
The branch also fixes a bug with settings namespaces (the UI was using "tor" and "bt" whereas the plugins were using their transport IDs, which are no longer "tor' and "bt"), and replaces some string literals with constants to avoid similar bugs in the future.Milestone Ghttps://code.briarproject.org/briar/briar/-/merge_requests/488Don't make DNS lookups during RSS import2017-03-24T10:02:21ZakwizgranDon't make DNS lookups during RSS importWe use a custom socket factory to work around the lack of proper SOCKS support on Android - the socket factory implements SOCKS, but OkHttp doesn't know that.
When OkHttp doesn't think it's behind a SOCKS proxy it does local name resolu...We use a custom socket factory to work around the lack of proper SOCKS support on Android - the socket factory implements SOCKS, but OkHttp doesn't know that.
When OkHttp doesn't think it's behind a SOCKS proxy it does local name resolution so it can make one connection attempt per address when there are multiple addresses for a name. This leaks the server's identity to the local network and the internet (#908).
Fortunately, we can configure OkHttp to use a custom DNS resolver as well as a custom socket factory. This allows us to capture the local name lookup. We return 0.0.0.0 as the address, which OkHttp passes through to the socket factory, where we discard the fake address and pass the hostname to Tor to be resolved remotely.
In case a future version of OkHttp decides to do local name lookups in some other way, we also check that any name/address pairs passed into the socket factory have 0.0.0.0 as the address.
Closes #908Milestone Ghttps://code.briarproject.org/briar/briar/-/merge_requests/487Use ProcessBuilder instead of Runtime to start tor2017-03-28T14:41:14ZJulian DehmUse ProcessBuilder instead of Runtime to start tor* ProcessBuilder copies the ENV from the current proc
and preserves ANDROID_ROOT and ANDROID_DATA
Signed-off-by: goapunk <noobie@goapunks.net>* ProcessBuilder copies the ENV from the current proc
and preserves ANDROID_ROOT and ANDROID_DATA
Signed-off-by: goapunk <noobie@goapunks.net>Milestone Ghttps://code.briarproject.org/briar/briar/-/merge_requests/486Make Tor boot more verbose2017-03-28T14:41:14ZJulian DehmMake Tor boot more verboseInclude stderr into the output from Tor.
Signed-off-by: noobie <noobie@goapunks.net>Include stderr into the output from Tor.
Signed-off-by: noobie <noobie@goapunks.net>Milestone G