aboutsummaryrefslogtreecommitdiff
path: root/app
AgeCommit message (Collapse)Author
2020-08-18Add SSHJ backend for OpenKeychain authentication (#995)Fabian Henneke
* Update sshj to 0.30.0 and improve algorithm order Updates sshj to 0.30.0, which brings support for rsa-sha2-* key types and bugfixes related to RSA certificates and Android Keystore backed keys. Along the way, this improves the algorithm preferences to be consistent with the Mozilla Intermediate SSH configuration (as far as possible, given that most certificate types and some encryption algorithms are not yet supported). We also add "ext-info-c" to the kex algorithm proposal to work around certain kinds of "user agent sniffing" that limits the support of rsa-sha2-* key types. * Add SSHJ backend for OpenKeychain authentication * Address review comments Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
2020-08-18build: prepare next development versionHarsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-08-18build: bump versionv1.11.0Harsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-08-18Preserve SSH key passphrase on connection errors (#979)Fabian Henneke
* Update sshj to 0.30.0 and improve algorithm order Updates sshj to 0.30.0, which brings support for rsa-sha2-* key types and bugfixes related to RSA certificates and Android Keystore backed keys. Along the way, this improves the algorithm preferences to be consistent with the Mozilla Intermediate SSH configuration (as far as possible, given that most certificate types and some encryption algorithms are not yet supported). We also add "ext-info-c" to the kex algorithm proposal to work around certain kinds of "user agent sniffing" that limits the support of rsa-sha2-* key types. * Preserve SSH key passphrase on connection errors Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
2020-08-18Update sshj to 0.30.0 and improve algorithm order (#1026)Fabian Henneke
Updates sshj to 0.30.0, which brings support for rsa-sha2-* key types and bugfixes related to RSA certificates and Android Keystore backed keys. Along the way, this improves the algorithm preferences to be consistent with the Mozilla Intermediate SSH configuration (as far as possible, given that most certificate types and some encryption algorithms are not yet supported). We also add "ext-info-c" to the kex algorithm proposal to work around certain kinds of "user agent sniffing" that limits the support of rsa-sha2-* key types.
2020-08-17Allow adding digits and symbols in XkPasswd generator using mask-like values ↵glowinthedark
(#1023) * - XkPasswordGeneratorDialogFragment: add symbol/number mask to allow appending numbers+symbols via a mask such as `ddds` which would generate random.password123!; position of `d` and `s` is not currently considered; only the count is relevant * - update CHANGELOG.md * - update CHANGELOG.md * - rename constants * Update CHANGELOG.md Co-authored-by: Harsh Shandilya <me@msfjarvis.dev> * - add missing marginTop * - add missing marginTop Co-authored-by: null <null> Co-authored-by: Harsh Shandilya <me@msfjarvis.dev> Co-authored-by: glowinthedark <glowinthedark> Co-authored-by: Harsh Shandilya <msfjarvis@gmail.com>
2020-08-16Also invert copy_on_decrypt preference value (#1024)Harsh Shandilya
Fixes: e0350043d0cb ("Disable automatic copy on decrypt by default (#1006)") Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-08-15Fix external storage UX (#1022)Harsh Shandilya
* build: update to Kotlin 1.4 Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * UserPreference: finish if directory selection was triggered from an intent Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * PasswordStore: switch permission request to ActivityResultContracts Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * PasswordStore: fix activity reference Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * GitOperationActivity: make invalid values more obvious Would have caught this issue much sooner if I had just done this Fixes: 3d8cea596600 ("Improve permission handling logic (#732)") Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Assorted collection of hackery to make external storage use palatable Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Update changelog Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-08-14Reland symlink support (#1020)Fabian Henneke
* Add symlink support to JGit (#1016) * Add symlink support to JGit * Fix a typo Co-authored-by: Harsh Shandilya <me@msfjarvis.dev> * Prevent crash when following a broken symlink Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
2020-08-13Restore workaround for preventing empty commits (#1019)Harsh Shandilya
* Revert "Add symlink support to JGit (#1016)" This reverts commit 5032696cec9da86c2ad97b9931e8d85feb18da0c. * Restore workaround for empty commits and document commands Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Update app/src/main/java/com/zeapo/pwdstore/git/GitCommandExecutor.kt
2020-08-13Add symlink support to JGit (#1016)Fabian Henneke
* Add symlink support to JGit * Fix a typo Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
2020-08-13Update R8 rules (#1017)Fabian Henneke
Removes superfluous dontwarn rules, adds relevant new ones and removes a keep rule for SearchView that has meanwhile been added to the dependency.
2020-08-12Create only one SSH session per GitOperation (#1012)Fabian Henneke
2020-08-12Improve Git error message handling (#1011)Fabian Henneke
Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
2020-08-12Improve clone operation semantics (#1010)Harsh Shandilya
* Improve clone operation semantics Fixes #1003 Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Update changelog Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-08-11Notify user when remote branch is up-to-date (#1009)Harsh Shandilya
* Notify user when remote branch is up-to-date Fixes #1000 Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Update changelog Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-08-11Switch to URL-based Git config and refactor Git settings (#1008)Fabian Henneke
* Make Git config URL-based and refactor * Use Kotlin style null handling for string prefs * Also show an error if generated URL can't be parsed * Add some testcases for migration strategy Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
2020-08-11Uprev Gradle and dependencies (#1007)Harsh Shandilya
* build: uprev Gradle Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * build: uprev dependencies Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * app/proguard: remove Tink rules I'm assuming the R8 problems fixed by the Tink upgrade cover this as well Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-08-10Replicate key selection flow for directory creation (#999)Harsh Shandilya
* Replicate key selection flow Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Review fixes Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Set --user 0 in adb options to prevent automatically installing to work profile Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Fix committing regression Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Update changelog Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-08-10Disable automatic copy on decrypt by default (#1006)Harsh Shandilya
Fixes #476 Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-08-10Prompt user to install OpenKeychain when missing (#1005)Harsh Shandilya
* Prompt user to install OpenKeychain when missing Fixes #996 Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Update changelog Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-08-06Refactor uses of applicationContext and startActivityForResult (#997)Fabian Henneke
* Refactor uses of applicationContext and startActivityForResult This commit applies three types of refactoring: 1. Remove context argument from PasswordRepository companion functions by relying on Application.instance. 2. Introduce a sharedPrefs extension function on Context that returns the default SharedPreferences for the applicationContext. 3. Use OpenDocument() and OpenDocumentTree() contracts. * Drop toPasswordItem argument
2020-08-05Remove GitAsyncTask and replace with non-blocking coroutines (#865)Harsh Shandilya
Co-authored-by: Fabian Henneke <fabian@henneke.me>
2020-07-31Merge branch 'release' into developHarsh Shandilya
* release: build: bump version Downgrade coroutines to 1.3.6 to fix VerifyErrors Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-07-31build: bump versionv1.10.3Harsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-07-31Switch to non-deprecated stdlib methods (#990)Harsh Shandilya
min and max were deprecated in favor of minOrNull and maxOrNull respectively to match their names to the typical naming format used by stdlib methods with nullable return types Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-07-30Merge branch 'release' into developHarsh Shandilya
* release: build: bump version Prepare release 1.10.2 Fix two SMS Autofill crashes (#985) Fix TOTP import button check semantics (#982) Properly handle files without passwords (#969) Expand OTP and PasswordEntry tests (#968) Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-07-30build: bump versionv1.10.2Harsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-07-30Fix two SMS Autofill crashes (#985)Fabian Henneke
SMS OTP Autofill currently crashes for two reasons: 1. Tasks.await has a precondition of not running on the UI thread. 2. Exceptions thrown from Tasks are always wrapped into ExecutionExceptions and need to be unwrapped before they can be identified as ResolvableApiException. This commit addresses both issues by making waitForSms a proper coroutine using withContext and a custom wrapper around Task<T> that relies on suspendCoroutine and automatically unwraps exceptions. (cherry picked from commit 3afeff45d8bd5fff66e1d0fa2c15fa2527487af1)
2020-07-30Fix TOTP import button check semantics (#982)Harsh Shandilya
* Improve TOTP checking semantics Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Fix return label Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * update CHANGELOG Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Move updateViewState() call outside with(binding) scope Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> (cherry picked from commit ecf96aa0668a758b2408284facda41ac70fe10aa)
2020-07-30Fix two SMS Autofill crashes (#985)Fabian Henneke
SMS OTP Autofill currently crashes for two reasons: 1. Tasks.await has a precondition of not running on the UI thread. 2. Exceptions thrown from Tasks are always wrapped into ExecutionExceptions and need to be unwrapped before they can be identified as ResolvableApiException. This commit addresses both issues by making waitForSms a proper coroutine using withContext and a custom wrapper around Task<T> that relies on suspendCoroutine and automatically unwraps exceptions.
2020-07-30Properly handle files without passwords (#969)Harsh Shandilya
* Properly handle files without passwords Fixes #967 Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Fix tests Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Only look for TOTP URI Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> (cherry picked from commit 62dbc183d52d93860228316b209ec5aa15f16a08)
2020-07-30Expand OTP and PasswordEntry tests (#968)Harsh Shandilya
(cherry picked from commit e3cf73885c112bc553d6a0cc01d594a87728f448)
2020-07-30Add "challenge" and "verification" to OTP heuristic terms (#984)Fabian Henneke
2020-07-29Upgrade to Kotlin 1.4 (#978)Harsh Shandilya
* build: uprev to Kotlin 1.4 Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Remove explicit type argument Not required anymore with Kotlin 1.4 Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * build: enable Kotlin 1.4 language features Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * all: add trailing commas where reasonable Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> Co-authored-by: Fabian Henneke <FabianHenneke@users.noreply.github.com>
2020-07-29Add ability to change default branch (#977)Harsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-07-29Fix TOTP import button check semantics (#982)Harsh Shandilya
* Improve TOTP checking semantics Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Fix return label Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * update CHANGELOG Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Move updateViewState() call outside with(binding) scope Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-07-28PasswordFragment: bring back dividers (#980)Harsh Shandilya
2020-07-27Disable Autofill compatibility for Firefox (#976)Fabian Henneke
Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
2020-07-27Fix delete store message formatting (#975)Fabian Henneke
2020-07-27Add specific warning for short key IDs in .gpg-id (#974)Fabian Henneke
2020-07-26Correctly set error on incorrect credentials (#972)Harsh Shandilya
2020-07-26Allow creating nested directoriesHarsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-07-26Show parent path on all typesHarsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-07-26build: update APK cruft exclusion listHarsh Shandilya
Generates a fairly decent size difference from the current release build $ diskus app/build/outputs/apk/free/release/app-free-release.apk 4.31 MB (4,308,992 bytes) $ diskus ~/APS-free_v1.10.1.apk 4.44 MB (4,444,160 bytes) Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-07-25Properly handle files without passwords (#969)Harsh Shandilya
* Properly handle files without passwords Fixes #967 Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Fix tests Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Only look for TOTP URI Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-07-24Expand OTP and PasswordEntry tests (#968)Harsh Shandilya
2020-07-23Merge remote-tracking branch 'origin/release' into developHarsh Shandilya
* origin/release: build: prepare next development version build: bump version Prepare release 1.10.1 Add CHANGELOG entries for 1.10.1 (#961) Wire in fallback key selection flow (#958) Fix OpenPgpApi extra type confusion (#960) Fix a crash when parsing long key IDs (#959) Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-07-23build: prepare next development versionHarsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-07-23build: bump versionv1.10.1Harsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>