Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Decouple business and hardware layers #183

Merged
merged 6 commits into from
Jun 18, 2024

Conversation

amendelzon
Copy link
Collaborator

Decoupling business layer from hardware layer in Signer component (#177)
- Added HAL headers
- Added HAL implementation for Ledger
- Refactored necessary common sources
- Refactored necessary Signer sources
- Updated Signer Makefile to include HAL code
- Removed HSM_SIMULATOR define in favor of HSM_PLATFORM_* defines
- Included X86 (partial) implemenations of some HAL modules (exceptions, logging, hashing)
- Renamed UI communication module to avoid name clashing with HAL
- Changed platform define in Makefile

Decoupling business layer from hardware layer in TCPSigner (#179)
- Implementing HAL for x86 based on the existing TCPSigner implementation
- Additional x86-only functions for HAL implementation
- Updating TCPSigner implementation to use HAL
- Added TCPSigner-specific UI dependencies to implement functions needed by UI only code
- Factoring HAL constants into a constants file
- New BIP32 parser for TCPSigner seed file
- Ensuring Firmware tests pass both on Ledger Nano S and TCPSigner
- Linting

Updating directory structure to accomodate for multiple platforms (#180)
- Moved 'ledger' directory to 'firmware'
- Unified Makefile, source and tests directory structure
- Updated Makefiles to account for new (unified) directory structure
- Updated paths within scripts
- Updated github workflows
- Updated script names to account for underlying platform
- Updated documentation references
- New 'run all' script for tcpsigner unit tests
- Incidentally fixing cross-module responsibility includes
- Incidentally fixing version number in Ledger app deployment scripts

Firmware unit test fixing (#181)
- Fixing existing unit tests
- New unit tests for the TCPSigner BIP32 library
- Moving TCPSigner unit tests to HAL (TCPSigner is now basically a shell)
- Moving Signer unit tests to PowHSM
- Fixing code coverage generation to:
- Forcibly terminate the TCPSigner after tests run
- Ignore unit test sources
- Unifying firmware .gitignore files
- Organising common unit test Makefile rules into common.mk files
- Removed unnecessary testing comments
- Incidentally fixing some include style (angle bracket x quotes)

Updating documentation to reflect the possibility of multiple platform implementations (#182)

- Added HAL headers
- Added HAL implementation for Ledger
- Refactored necessary common sources
- Refactored necessary Signer sources
- Updated Signer Makefile to include HAL code
- Removed HSM_SIMULATOR define in favor of HSM_PLATFORM_* defines
- Included X86 (partial) implemenations of some HAL modules (exceptions, logging, hashing)
- Renamed UI communication module to avoid name clashing with HAL
- Changed platform define in Makefile
- Implementing HAL for x86 based on the existing TCPSigner implementation
- Additional x86-only functions for HAL implementation
- Updating TCPSigner implementation to use HAL
- Added TCPSigner-specific UI dependencies to implement functions needed by UI only code
- Factoring HAL constants into a constants file
- New BIP32 parser for TCPSigner seed file
- Ensuring Firmware tests pass both on Ledger Nano S and TCPSigner
- Linting
- Moved 'ledger' directory to 'firmware'
- Unified Makefile, source and tests directory structure
- Updated Makefiles to account for new (unified) directory structure
- Updated paths within scripts
- Updated github workflows
- Updated script names to account for underlying platform
- Updated documentation references
- New 'run all' script for tcpsigner unit tests
- Incidentally fixing cross-module responsibility includes
- Incidentally fixing version number in Ledger app deployment scripts
- Fixing existing unit tests
- New unit tests for the TCPSigner BIP32 library
- Moving TCPSigner unit tests to HAL (TCPSigner is now basically a shell)
- Moving Signer unit tests to PowHSM
- Fixing code coverage generation to:
  - Forcibly terminate the TCPSigner after tests run
  - Ignore unit test sources
- Unifying firmware .gitignore files
- Organising common unit test Makefile rules into common.mk files
- Removed unnecessary testing comments
- Incidentally fixing some include style (angle bracket x quotes)
@amendelzon amendelzon requested a review from italo-sampaio June 18, 2024 12:42
Copy link
Collaborator

@italo-sampaio italo-sampaio left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good

@amendelzon amendelzon merged commit 6b191e5 into master Jun 18, 2024
6 checks passed
@amendelzon amendelzon deleted the improvement/decouple-business-hardware branch June 18, 2024 13:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants