1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-12-23 06:48:16 +00:00
Go to file
matejcik 5c93ecd53a core: create top-level storage module
This is to avoid including app-specific functionality in storage and
avoid circular imports. The following policy is now in effect: modules
from `storage` namespace must not import from `apps` namespace.

In most files, the change only involves changing import paths.

A minor refactor was needed in case of webauthn: basic get/set/delete
functionality was left in storage.webauthn, and more advanced logic on
top of it was moved to apps.webauthn.resident_credentials.

A significant refactor was needed for sd_salt, where application (and
UI) logic was tightly coupled with the IO code. This is now separated,
and storage.sd_salt deals exclusively with the IO side, while the app/UI
logic is implemented on top of it in apps.common.sd_salt and
apps.management.sd_protect.
2019-10-31 16:21:56 +01:00
ci ci: add artifacts to legacy fw debug build 2019-10-31 12:51:50 +00:00
common fix whitespaces 2019-10-30 10:07:30 +01:00
core core: create top-level storage module 2019-10-31 16:21:56 +01:00
crypto all: let's use -Wno-missing-braces because clang does not respect 2019-10-11 09:59:32 +02:00
docs docs: improve docs, add random.md 2019-10-24 13:36:54 +02:00
legacy legacy: use cryptoMultisigPubkeyCount where possible 2019-10-24 15:47:38 +02:00
python common/protob: remove ButtonRequest.data field 2019-10-24 11:11:43 +02:00
storage all: let's use -Wno-missing-braces because clang does not respect 2019-10-11 09:59:32 +02:00
tests tests: add upgrade test for recovery 2019-10-25 14:38:10 +00:00
tools tools/issues: fix weights and add auth 2019-10-03 12:01:27 +00:00
vendor pip: cleanup Pipfile, run pipenv lock, update vendor/fido2-tests 2019-10-28 16:37:55 +00:00
.clang-format style: fix weirdness in modtrezorio-fatfs.h 2019-09-12 16:49:51 +02:00
.gitignore ci: improve pipenv caching 2019-05-24 09:18:00 +02:00
.gitlab-ci.yml gitlab-ci: checking if pipenv exists 2019-10-16 10:27:27 +02:00
.gitmodules vendor: add testsuite for FIDO2; regenerate Pipfile 2019-10-17 16:32:50 +00:00
.travis.yml build: update protobuf dependency to 3.6.1 2019-10-02 13:07:48 +00:00
build-docker.sh all: replace /bin/bash with /usr/bin/env bash 2019-09-12 17:35:55 +02:00
create_monorepo.py all: replace /bin/bash with /usr/bin/env bash 2019-09-12 17:35:55 +02:00
Makefile build: add help to make style/style_check 2019-08-29 12:46:06 +02:00
Pipfile pip: cleanup Pipfile, run pipenv lock, update vendor/fido2-tests 2019-10-28 16:37:55 +00:00
Pipfile.lock pip: cleanup Pipfile, run pipenv lock, update vendor/fido2-tests 2019-10-28 16:37:55 +00:00
README-monorepo.md fix link in readme 2019-04-29 19:11:44 +02:00
README.md readme: add link to GitLab CI 2019-10-25 13:32:56 +00:00
SECURITY.md docs: use monospace for fingerprints 2019-08-16 18:47:46 +02:00
setup.cfg mypy: add show_error_codes to setup.cfg 2019-10-02 11:12:34 +02:00
shell.nix pip: cleanup Pipfile, run pipenv lock, update vendor/fido2-tests 2019-10-28 16:37:55 +00:00

Trezor Firmware

img

Repository Structure

  • ci: Gitlab CI configuration files
  • common/defs: JSON coin definitions and support tables
  • common/protob: Common protobuf definitions for the Trezor protocol
  • common/tools: Tools for managing coin definitions and related data
  • core: Trezor Core, firmware implementation for Trezor T
  • crypto: Stand-alone cryptography library used by both Trezor Core and the Trezor One firmware
  • docs: Assorted documentation
  • legacy: Trezor One firmware implementation
  • python: Python client library and the trezorctl command
  • storage: NORCOW storage implementation used by both Trezor Core and the Trezor One firmware
  • tests: Firmware unit test suite
  • tools: Miscellaneous build and helper scripts
  • vendor: Submodules for external dependencies

Contribute

Inspired by GitLab Contributing Guide

Make sure to check out general contribution guidelines on the Trezor Wiki. If you are contributing to Trezor Core (the Trezor T firmware), make sure to check out Trezor Core contribution guidelines as well.

Some useful assorted knowledge can be found in the docs subdirectory.

Security vulnerability disclosure

Please report suspected security vulnerabilities in private to security@satoshilabs.com, also see the disclosure section on the Trezor.io website. Please do NOT create publicly viewable issues for suspected security vulnerabilities.

Issue Labels

Priority

Label Meaning (SLA)
P1 Urgent The current release + potentially immediate hotfix (30 days)
P2 High The next release (60 days)
P3 Medium Within the next 3 releases (90 days)
P4 Low Anything outside the next 3 releases (120 days)

Severity

Label Impact
S1 Blocker Outage, broken feature with no workaround
S2 Critical Broken feature, workaround too complex & unacceptable
S3 Major Broken feature, workaround acceptable
S4 Low Functionality inconvenience or cosmetic issue

CI

The complete test suite is running on a public GitLab CI. If you are an external contributor, we also have a Travis instance where a small subset of tests is running as well - mostly style and easy fast checks, which are quite common to fail for new contributors.