briar issueshttps://code.briarproject.org/groups/briar/-/issues2021-07-02T11:11:31Zhttps://code.briarproject.org/briar/briar/-/issues/2069Integration test for transport key agreement client2021-07-02T11:11:31ZakwizgranIntegration test for transport key agreement clientTransfer content securely via SD cards and USB memory sticksTorsten GroteTorsten Grote2021-07-31https://code.briarproject.org/briar/briar/-/issues/2065Implement UI of transfer data feature2021-07-06T09:41:34ZTorsten GroteImplement UI of transfer data featureTransfer content securely via SD cards and USB memory sticksTorsten GroteTorsten Grote2021-07-31https://code.briarproject.org/briar/briar/-/issues/2063Allow messages to be resent before they expire2021-07-06T09:41:53ZakwizgranAllow messages to be resent before they expireWhen sending data via removable drives, the strategy of waiting for one maximum round-trip time (twice the maximum latency of the transport) before allowing messages to be resent is likely to cause problems. For example:
* Alice exports...When sending data via removable drives, the strategy of waiting for one maximum round-trip time (twice the maximum latency of the transport) before allowing messages to be resent is likely to cause problems. For example:
* Alice exports messages to a removable drive. Before sending the drive to Bob, Alice realises that she accidentally used a drive belonging to her elderly mother, Carol, who uses the drive to store episodes of Desperate Housewives that she watches on the long bus ride to San Pedro de Atacama (Carol doesn't enjoy the austere beauty of the Atacama Desert, for reasons that are beyond the scope of this user story). Alice deletes the file and exports her messages again, using the right drive this time. Alice may expect that the new file contains all messages not seen by Bob, but in fact it doesn't contain any messages. The messages in the deleted file won't be sendable again for one max round-trip time
* Alice exports messages to a removable drive. Before sending the drive to Bob, Alice writes another message and wants to send this too. So she exports messages to the drive again. Alice may expect that if she overwrites the file she created the first time, the new file will contain all messages not seen by Bob. But in fact it will only contain the most recent message. The messages in the overwritten file won't be sendable again for one max round-trip time
* Alice exports messages to a removable drive and attaches it to a carrier pigeon. Knowing that the Atacama Desert is a harsh environment for pigeons, Alice also exports messages to a second drive, which she attaches to a carrier tortoise as a backup in case the pigeon succumbs to the arid climate. Alice may expect that the second drive contains the same messages as the first one, but in fact it doesn't contain any messages. The messages attached to the unfortunate pigeon won't be sendable again for one max round-trip time
To address these user stories we should send all unacked messages when syncing via removable drives. When syncing via mailboxes we should continue to use the current strategy of sending only messages that have not been sent before, or that were last sent more than one max round-trip time ago.Transfer content securely via SD cards and USB memory sticksakwizgranakwizgran2021-07-31https://code.briarproject.org/briar/briar/-/issues/2055Hide hotspot offline sharing feature behind feature flag2021-07-06T09:38:53ZTorsten GroteHide hotspot offline sharing feature behind feature flagInstall via Bluetooth or Wi-FiSebastianSebastian2021-07-31https://code.briarproject.org/briar/briar/-/issues/2051Rename app.apk to briar-X.Y.apk2021-07-06T09:39:08ZSebastianRename app.apk to briar-X.Y.apkIt probably makes sense to rename `app.apk` to something meaningful like `briar-X.Y.apk` on the hotspot download page, because that's the name it will end up with in the Downloads folder of the recipient. In case someone wants to copy th...It probably makes sense to rename `app.apk` to something meaningful like `briar-X.Y.apk` on the hotspot download page, because that's the name it will end up with in the Downloads folder of the recipient. In case someone wants to copy that over some other medium like email or USB stick, it's going to be easier to find.Install via Bluetooth or Wi-FiSebastianSebastian2021-07-31https://code.briarproject.org/briar/briar/-/issues/2045Make retransmissions in the sync protocol more flexible2021-07-06T09:41:41ZDaniel LublinMake retransmissions in the sync protocol more flexibleDifferent transports need different retransmission behaviour. Retransmission is currently coupled with key rotation period.
For the Removable Drive we might want cause retransmissions every time that the data for a contact is written to...Different transports need different retransmission behaviour. Retransmission is currently coupled with key rotation period.
For the Removable Drive we might want cause retransmissions every time that the data for a contact is written to storage.
- user might might not be sure that the file was correctly saved, and on the actual removable drive, and immediately repeat the process
- user might be accumulating data daily for several days before removable drive is eventually dispatched
- drive might soon break or get lost in transit, and user want to repeat the process, retransmitting all messages again (getting them all onto the removable drive again)Transfer content securely via SD cards and USB memory sticksakwizgranakwizgran2021-07-31https://code.briarproject.org/briar/briar/-/issues/2040Investigate the effect of errors when stopping hotspot2023-03-15T12:41:30ZTorsten GroteInvestigate the effect of errors when stopping hotspot`WifiP2pManager#removeGroup()` can call `ActionListener#onFailure()` with `BUSY` or other error codes. We should check the effect of those and if the system is reliably taking down hotspots or if we need to do some extra work here oursel...`WifiP2pManager#removeGroup()` can call `ActionListener#onFailure()` with `BUSY` or other error codes. We should check the effect of those and if the system is reliably taking down hotspots or if we need to do some extra work here ourselves.SebastianSebastianhttps://code.briarproject.org/briar/briar/-/issues/2039Implement HotspotErrorFragment2021-07-06T09:38:42ZTorsten GroteImplement HotspotErrorFragmentWhen the hotspot or the webserver can't start, we should show an error page and include an option to get to the feedback sender, so we can be notified about the issue.When the hotspot or the webserver can't start, we should show an error page and include an option to get to the feedback sender, so we can be notified about the issue.Install via Bluetooth or Wi-FiSebastianSebastian2021-07-31https://code.briarproject.org/briar/briar/-/issues/2038Sync client to establish keys for newly added transports2021-06-17T13:36:49ZakwizgranSync client to establish keys for newly added transportsWrite a sync client that establishes transport keys with each contact for any transports that were added more recently than the contact was added.
Subtask of #1802Write a sync client that establishes transport keys with each contact for any transports that were added more recently than the contact was added.
Subtask of #1802Transfer content securely via SD cards and USB memory sticksakwizgranakwizgran2021-07-31https://code.briarproject.org/briar/briar/-/issues/2037Create RemovableDriveViewModel2021-06-22T19:04:27ZDaniel LublinCreate RemovableDriveViewModelTransfer content securely via SD cards and USB memory sticksDaniel LublinDaniel Lublin2021-07-31https://code.briarproject.org/briar/briar/-/issues/2036Detect when someone connects to Wi-Fi hotspot and prompt user to show downloa...2021-05-26T13:01:27ZTorsten GroteDetect when someone connects to Wi-Fi hotspot and prompt user to show download infoWe might be able to continue to requesting the Wi-Fi group info and inspect it for connection information. When the first connection was made, we can stop requesting it and trigger an UI update like a Snackbar to make the hotspot providi...We might be able to continue to requesting the Wi-Fi group info and inspect it for connection information. When the first connection was made, we can stop requesting it and trigger an UI update like a Snackbar to make the hotspot providing user aware that they can now proceed to the next screen.Install via Bluetooth or Wi-FiTorsten GroteTorsten Grote2021-07-31https://code.briarproject.org/briar/briar/-/issues/2035Create AndroidRemovableDrivePlugin2021-05-11T11:23:14ZakwizgranCreate AndroidRemovableDrivePluginCreate an Android subclass of RemovableDrivePlugin that uses URIs and the ContentResolver to obtain input/output streams.
Subtask of #1802Create an Android subclass of RemovableDrivePlugin that uses URIs and the ContentResolver to obtain input/output streams.
Subtask of #1802Transfer content securely via SD cards and USB memory sticksakwizgranakwizgran2021-07-31https://code.briarproject.org/briar/briar/-/issues/2031Increase max latency to 28 days2021-07-06T20:10:51ZakwizgranIncrease max latency to 28 daysTransfer content securely via SD cards and USB memory sticksakwizgranakwizgran2021-07-31https://code.briarproject.org/briar/briar/-/issues/2029Make Wi-Fi hotspot SSID and password persistent on API 29+2021-07-06T09:39:02ZTorsten GroteMake Wi-Fi hotspot SSID and password persistent on API 29+This should improve the UX, if they don't change on subsequent attempts.
Subtask of #1081This should improve the UX, if they don't change on subsequent attempts.
Subtask of #1081Install via Bluetooth or Wi-FiTorsten GroteTorsten Grote2021-07-31https://code.briarproject.org/briar/briar/-/issues/2028Show a notification for as long as Wi-Fi hotspot is active2021-07-06T09:40:37ZTorsten GroteShow a notification for as long as Wi-Fi hotspot is activeThe notification should have a `Stop sharing` button.
Subtask of #1081The notification should have a `Stop sharing` button.
Subtask of #1081Install via Bluetooth or Wi-FiTorsten GroteTorsten Grote2021-07-31https://code.briarproject.org/briar/briar/-/issues/2025Implement fallback option for when Wi-Fi hotspot does not work2022-04-20T14:52:38ZTorsten GroteImplement fallback option for when Wi-Fi hotspot does not workWe could offer to copy the APK to some storage medium or to use Bluetooth file-transfer (with the drawback that the sent file needs to be renamed - #1010).
Subtask of #1081We could offer to copy the APK to some storage medium or to use Bluetooth file-transfer (with the drawback that the sent file needs to be renamed - #1010).
Subtask of #1081Install via Bluetooth or Wi-FiTorsten GroteTorsten Grote2021-07-31https://code.briarproject.org/briar/briar/-/issues/2024Port code from hotspot test app to Briar2021-07-06T09:40:31ZTorsten GrotePort code from hotspot test app to BriarThe `MainViewModel` and the `WebServer` from the hotspot test app need to be ported to Briar.
Subtask of #1081The `MainViewModel` and the `WebServer` from the hotspot test app need to be ported to Briar.
Subtask of #1081Install via Bluetooth or Wi-FiTorsten GroteTorsten Grote2021-07-31https://code.briarproject.org/briar/briar/-/issues/2023List of Wi-Fi hotspot troubleshooting tips2021-08-11T07:48:33ZTorsten GroteList of Wi-Fi hotspot troubleshooting tipsWhen sharing the app via a hotspot doesn't work, we should provide a list of things the user can try to make things work.
This ticket is about assembling this list.
Subtask of #1081When sharing the app via a hotspot doesn't work, we should provide a list of things the user can try to make things work.
This ticket is about assembling this list.
Subtask of #1081Install via Bluetooth or Wi-FiTorsten GroteTorsten Grote2021-07-31https://code.briarproject.org/briar/briar/-/issues/2022Implement website for app sharing2021-07-06T09:39:13ZSebastianImplement website for app sharingSubtask of #1081Subtask of #1081Install via Bluetooth or Wi-FiTorsten GroteTorsten Grote2021-07-31https://code.briarproject.org/briar/briar/-/issues/2021Permission requests cleanup in hotspot test app2021-07-06T09:40:50ZTorsten GrotePermission requests cleanup in hotspot test appThe hotspot test app currently asks for permissions once when it starts and then just refuses to work if they were not granted. We should probably introduce some sort of PermissionController that encapsulates all that logic and ensures t...The hotspot test app currently asks for permissions once when it starts and then just refuses to work if they were not granted. We should probably introduce some sort of PermissionController that encapsulates all that logic and ensures that the necessary permissions and enabled system settings (wi-fi, location) are requested properly.
Subtask of #1081Install via Bluetooth or Wi-FiTorsten GroteTorsten Grote2021-07-31