Commit graph

334 commits

Author SHA1 Message Date
bunnie
1c8eef910d chore: remove warning, and old notes 2023-01-30 22:14:59 +08:00
bunnie
d673cef1b0 cleanup minor UX issue (disappearing title when no items present) 2023-01-30 22:14:59 +08:00
bunnie
57ba858d99 update commit ref of opensk code 2023-01-30 22:14:59 +08:00
bunnie
224c4bccdb use bulk delete to speed up the reset process
this is necessary to pass the test after creating
dozens of credentials; it takes too long to process the
deletion if it's done one at a time
2023-01-30 22:14:59 +08:00
bunnie
be351b0562 improve debug output in storage layer 2023-01-30 22:14:59 +08:00
bunnie
d244466090 add some more time allowance for resets to process from boot 2023-01-30 22:14:59 +08:00
bunnie
28f3594de3 make reset timing a bit looser
currently 10 seconds from boot before cred reset can be issued;
automated testing can't always keep up with that. expand to
20 seconds. This is not "standards compliant" but the idea that
you unplug the device and it stays on is also not "standards compliant".
2023-01-30 22:14:59 +08:00
bunnie
091d35a377 fix PIN permissions; add support for autotest reset 2023-01-30 22:14:59 +08:00
bunnie
e1cb4898e5 allow vendor commands; get vaultbackup-rs working 2023-01-30 22:14:59 +08:00
bunnie
22dd62eeec refine the heuristic for detecting keys 2023-01-30 22:14:59 +08:00
bunnie
9c0c322d1d fix key deletion in fido2 2023-01-30 22:14:58 +08:00
bunnie
22bedae102 add migration from old to new version
confirmed this works for U2F and FIDO2 keys

however, the PIN is reset.
2023-01-30 22:14:58 +08:00
bunnie
15962925e7 initial integration of fido2.1 now passing some basic tests 2023-01-30 22:14:58 +08:00
bunnie
a00691dab7 first cut at porting in FIDO2.1 features from OpenSK
Code now builds, but, it doesn't fully work. Also,
the vault backup vendor routines have yet to be wedged in.

On the other hand, this edit is much more targeted than
the first one, so hopefully future port-ins of OpenSK
will be much smoother. In particular, OpenSK has a nice
`env` abstraction that has enough power now for us to
stick most of the Xous-specific stuff in there. There's
still a few patches needed to the main code loop, mainly
to accommodate our ability to display more information
than flash an LED.

The storage layer is also migrated to a totally new
dictionary, because the latest version also completely
redoes the storage with some sort of key/value system,
which maps nicely into the PDDB.
2023-01-30 22:14:58 +08:00
Tom Marble
275dee1ae1 mtxcli: chat room updates asynchronously
Added more predefined scalar messages
Checks WiFi status
Spawns separate thread for client_sync (reading the network)
Most all log messages are now INFO (to be shown by default)

Closes #300

Signed-off-by: Tom Marble <tmarble@info9.net>
2023-01-30 22:14:58 +08:00
bunnie
bfe87cadb3 fix search criteria to match case-insensitive listing 2023-01-30 22:14:58 +08:00
bunnie
b9f0f80d26 fix cached state to match disk state in UX for edit/delete in passwords 2023-01-30 22:14:58 +08:00
bunnie
0546f7a38c fix deletion UX in vault 2023-01-30 22:14:58 +08:00
Tom Marble
ba2e91fea0 Updates for #287
Allows a variable to be set to the EMPTY string
- by not setting a value `/set myvar`

During initialization now verifies that PDDB is mounted.

Added warnings for PDDB not mounted and WiFi not connected.
- the WiFi check is not yet implemented

Signed-off-by: Tom Marble <tmarble@info9.net>
2023-01-30 22:14:58 +08:00
Tom Marble
e48507a597 Completes fix for #287
Adds migrations framework
Delays mtxcli initialization until first user input, because we know:
- PDDB is mounted
- Timer is stable
- User actually using mtxcli
Adds send_async_msg scalar_async_msg
- basis for automatically updating chatroom

Signed-off-by: Tom Marble <tmarble@info9.net>
2023-01-30 22:14:58 +08:00
Tom Marble
feffc2e5be WIP: Fix mtxcli excessive memory usage #287
Adds migrations framework
- Migration for v0.9.11-0120: update the filter

Filter
- narrow filter to only the fields and events for the current room

Introduces "read only" variables (e.g. __version).

Signed-off-by: Tom Marble <tmarble@info9.net>
2023-01-30 22:14:58 +08:00
Tom Marble
b4566bc22e WIP #287: Adds /heap command to mtxcli
Signed-off-by: Tom Marble <tmarble@info9.net>
2023-01-30 22:14:57 +08:00
bunnie
232a4b6c6c bump xous version 2023-01-18 00:02:46 +08:00
bunnie
41d4837551 bump versions to absorb WDT change 2023-01-06 17:48:12 +08:00
bunnie
bb5d7b3adf bump versions to absorb hosted mode fix 2023-01-05 14:07:24 +08:00
bunnie
ec5435bd58 add basis cache clear on basis change callback as well 2023-01-04 04:15:44 +08:00
bunnie
57254ce47c clear local caches when basis state changes 2023-01-04 04:13:14 +08:00
bunnie
c3ecaa00eb refactor: remove allocs from vault inner loop
`vault` is changed so that instead of clearing the list of
data each time the screen is updated, it tries to compare it
against the existing data and modifies the record if it needs to,
or leaves it untouched.

Furthermore, at least in the password path, temporary strings
are pre-allocated and re-used, instead of freed and re-allocated
every time through the main loop.

The combination of these optimzations reduces the time to re-parse
a couple hundred records from about 1000ms to 200ms, reducing the
overall time to retrieve the database from 1.8s to 1.0s. It also
makes the loop much more stable over time; previously, as the heap
fragmented, performance would slowly degrade. Now that most
records are static and re-used, the performance seems to stay
constant.

The framwork is also put in place to re-use TOTP/U2F records,
but the code still uses the legacy method of clearing the
entire stored list and rebuilding it. However, it wasn't deemed
a priority to fix this because generally I haven't seen use cases
where users have hundreds of tokens or TOTP's; so long as the
number is about 20 or so, the performance difference should
be imperceptible with or without optimization.
2023-01-04 03:03:19 +08:00
bunnie
10b921e4e8 cleanup another format, add some more analytics 2023-01-03 23:36:46 +08:00
bunnie
59f06ff16f retrofit repl to use table cosine lookups, so it links with lto="fat" 2023-01-02 17:50:06 +08:00
bunnie
36398810dd bump version numbers to absorb new syscalls 2022-12-30 15:24:36 +08:00
bunnie
8d42feb051 increase heap for mtxcli; add memory usage reporting 2022-12-28 19:48:40 +08:00
bunnie
5370ce396d bump all revs due to SoC artifact update 2022-12-12 16:07:20 +08:00
bunnie
53c9af1033 bump readme's 2022-12-02 23:00:38 +08:00
bunnie
c8ec87b2d6 apply persistent field to other authentication methods 2022-11-30 15:11:56 +08:00
bunnie
d7a3f8962d update vault's password edit to use the new persistent field 2022-11-30 15:00:20 +08:00
bunnie
e8671650e3 add more test cases 2022-11-30 12:13:27 +08:00
bunnie
bf19a60369 add docs for CSV flow 2022-11-30 12:13:15 +08:00
bunnie
e63aaf8832 change wording of error on skipped entry 2022-11-30 12:12:43 +08:00
bunnie
a312432135 fix up some formatting & one missed string in the refactor 2022-11-30 11:31:57 +08:00
bunnie
9699cb761a avoid use of format!() to improve performance (#260) 2022-11-30 00:56:08 +08:00
bunnie
79c773e245 add basic CSV to password support 2022-11-29 23:53:27 +08:00
bunnie
c696f4eff0
Merge pull request #279 from gsora/feat/hotp-vaultbackup
fix: support HOTP codes in `vaultbackup`
2022-11-25 18:12:20 -08:00
bunnie
1d1b3a35b7 commit version bump 2022-11-26 10:00:44 +08:00
bunnie
aa9977cc58 bump all the things because we changed utralib again 2022-11-17 22:13:40 +08:00
bunnie
dabbfd6c35 bump all the things to absorb the SoC change 2022-11-17 19:39:18 +08:00
Gianguido Sorà
279ecbc748 fix: support HOTP codes in vaultbackup
While `vault` supports HOTP codes, `vaultbackup` didn't.

This commit brings it to feature parity.
2022-11-16 15:56:18 +01:00
bunnie
474a02c2cb refactor all vault db retrieval to use new API
This refactors the remaining vault accessor routines to use
the new more efficient key pre-fetching routine. This also
fixes up an error in test case generation and hopefully resolves
an issue with concurrency errors using the older version of
the access routine.
2022-11-09 15:06:51 +08:00
bunnie
e7e110ce76 cleanup and enhance test cases 2022-11-09 14:25:05 +08:00
bunnie
a7162fd03c bump xous-names dependents 2022-11-07 22:19:38 +08:00