Commit Graph

1093 Commits

Author SHA1 Message Date
Julien Cretin
76b249c415 Merge branch 'env_flash' into firmware_protection 2022-03-04 11:34:03 +01:00
Julien Cretin
d16811fe25 Merge branch 'develop' into env_flash 2022-03-04 11:33:46 +01:00
Julien Cretin
91ba2c375e Merge pull request #430 from ia0/check_user_presence
Move check_user_presence to env::tock
2022-03-04 11:33:05 +01:00
Julien Cretin
bb40e3244a Add firmware protection to the environment 2022-03-04 11:24:10 +01:00
Julien Cretin
b80b67e2cf Factorize tock storage in assert_once 2022-03-04 10:23:44 +01:00
Julien Cretin
172e629987 Merge branch 'check_user_presence' into env_flash 2022-03-04 10:20:44 +01:00
Julien Cretin
3ebc63e964 Merge branch 'develop' into check_user_presence 2022-03-04 10:20:32 +01:00
kaczmarczyck
187111f9c5 Bootloader infrastructure and main logic (#404)
* adds bootloader code without a SHA256 implementation

* small fixes and typos
2022-03-03 22:01:42 +01:00
Julien Cretin
d476e58612 Merge branch 'check_user_presence' into env_flash 2022-03-03 17:52:13 +01:00
Julien Cretin
74c6c3da74 Merge branch 'develop' into check_user_presence 2022-03-03 17:50:43 +01:00
Julien Cretin
c401216544 Merge pull request #428 from ia0/env_feedback
Make user feedback fields private
2022-03-03 17:49:37 +01:00
Julien Cretin
c4a27bf935 Add Storage and UpgradeStorage to Env 2022-03-03 17:37:28 +01:00
Julien Cretin
d6e4c66562 Move check_user_presence to env::tock 2022-03-03 17:37:10 +01:00
Julien Cretin
5c59e809c2 Make user feedback fields private 2022-03-03 17:34:49 +01:00
Julien Cretin
7d39d4e2e8 Create a tock environment 2022-03-03 17:32:48 +01:00
Julien Cretin
6b8523ba93 Add documentation 2022-03-03 17:32:48 +01:00
Julien Cretin
18faf9f38f Introduce a trait to abstract the CTAP environment
The end goal is to provide users with:
- the Env trait that they should implement
- the Ctap struct that they can use
2022-03-03 17:32:48 +01:00
Julien Cretin
8a2e99960f Reduce maximum fuzz input size
The fuzzer timed out (60s) on a 17k input. On my machine it runs for 12s and 7s
after truncation to 10k.
2022-02-28 12:39:08 +01:00
Julien Cretin
d47ca7fa54 Add documentation 2022-01-26 11:05:02 +01:00
Julien Cretin
b59df7001f Remove the software-specific Decrypt16BytesBlock and Encrypt16BytesBlock traits
They assume blocks are encrypted/decrypted one at a time. To avoid one syscall
per block, it is preferable to encrypt/decrypt the data at once.

Change-Id: I795c8f5b7901a1b55fa3b06fa45fe57ab19d06ea
2022-01-26 11:05:02 +01:00
kaczmarczyck
98c9191679 HMAC: only 32 byte keys (#424)
* only support HMAC with 32 byte keys

* includes HMAC in the trait to be generic

* re-added HAMC test
2022-01-18 13:14:11 +01:00
Julien Cretin
ce08f82d68 Restrict Sha256 to be used sequentially
Also remove useless HashBlockSize64Bytes bound.
2022-01-17 15:36:51 +01:00
Julien Cretin
ca2ea2007e Add track_caller for flex_unwrap in libtock-drivers 2022-01-07 17:00:07 +01:00
DavidKorczynski
83b2a74ae6 cifuzz: add integration (#418)
Signed-off-by: David Korczynski <david@adalogics.com>

Co-authored-by: Jean-Michel Picod <jmichel@google.com>
2021-12-02 14:21:56 +01:00
Julien Cretin
37e9d6d64d Do not set the stack size outside prod (#415)
* Add support for multiple modules

* Add macos fix

* Update setup-submodules script
2021-11-30 18:11:42 +01:00
kaczmarczyck
522e6079e3 Forward desktop test fixes (#419)
* fixes clippy warnings for compilers until 2021-11-25

* fixes run_desktop_tests

* removes page_size
2021-11-30 11:07:17 +01:00
kaczmarczyck
8f96df53f2 Source-based coverage (#416)
* tweaks for grcov

* github action instead of run command

* branch name

* no branch name anymore
2021-11-23 20:12:32 +01:00
kaczmarczyck
402b708ab9 fix broken link (#412) 2021-11-19 13:10:16 +01:00
kaczmarczyck
5cf988c7fa allows silent certificate checks (#410) 2021-11-18 17:09:40 +01:00
kaczmarczyck
ae4e32ba4a New documentation for develop (#408)
* documentation refactoring

* documentation fixes

* distilled instructions for MDK

* remove deploy TODO after creating PR

* fixes typos
2021-11-18 16:57:58 +01:00
kaczmarczyck
40e912f8ac fixes the serde version (#407)
* fixes the serde version

* explicitly sets the version in the main Cargo.toml
2021-11-15 13:09:40 +01:00
kaczmarczyck
32da73772f Upgrade tooling (#400)
* upgrade tooling

* adds condition on nrfjprog
2021-11-04 16:31:37 +01:00
Julien Cretin
33e0d6bb74 Use POSIX sed (#403) 2021-11-04 12:13:16 +01:00
kaczmarczyck
330fa12d1a erase unused flash pages so hashes matches (#392)
* erase unused flash pages so hashes matches

* always pad the kernel, adds docstrings

* added type hints

* fix typos
2021-11-01 10:34:13 +01:00
Liam Murphy
44988695ab Report error when no devices found to configure. (#398) 2021-11-01 09:51:55 +01:00
Julien Cretin
4eb7f02985 Remove useless retry-loop
This was needed in the past although we would never enter the loop. But call
unwrap directly would fail.
2021-10-08 08:39:29 +02:00
kaczmarczyck
9b780ef7d7 New boards with layouts for dual partition setups (#387)
* upgradable boards

* updates the install manual for proper SSL config

* storage locations from build script

* deploy script improvements

* UTC time
2021-10-06 18:33:40 +02:00
Julien Cretin
d085d54878 Update test 2021-10-04 12:24:15 +02:00
Julien Cretin
af3bee64a5 Introduce window size to fix hidden entries 2021-10-04 12:24:15 +02:00
Julien Cretin
9dc5286633 Revert "Continue compacting until content fits window during compaction"
This reverts commit 67fa8bee0b.
2021-10-04 12:24:15 +02:00
Julien Cretin
daa16d948f Add test 2021-10-04 12:24:15 +02:00
Julien Cretin
67fa8bee0b Continue compacting until content fits window during compaction
Also increase the virtual window size.
2021-09-27 13:59:29 +02:00
Julien Cretin
a3965eac2d Also debug the model besides the storage 2021-09-27 13:59:29 +02:00
Julien Cretin
fbca34b1d1 Add test 2021-09-27 13:59:29 +02:00
kaczmarczyck
0f88d6502f Storage panic from oss-fuzz (#385)
* fixes the fuzzer flaw and adds tests for it

* out of bounds instead of empty okay
2021-09-24 17:46:00 +02:00
kaczmarczyck
930a44c105 Fix CBOR fuzzing timeout (#384)
* early return for map and array comparison

* leaner ordering assignment
2021-09-22 10:33:08 +02:00
kaczmarczyck
1adde220c4 Upgrade commands (#381)
* upgrade commands

* precise metadata length

* const METADATA_LEN for test
2021-09-17 14:22:21 +02:00
Fabian Kaczmarczyck
31df2ca45e use f-strings and test with 3.9 2021-09-17 14:12:58 +02:00
Julien Cretin
18ba4368e4 Revert the MPU hack by splitting the store in 2 2021-09-16 10:30:50 +02:00
kaczmarczyck
596b47886c Upgrade signing key generation (#379)
* adds the upgrade signing key generation and the partition offset

* use openssl in build.rs instead
2021-09-15 21:25:19 +02:00