Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
15 commits
Select commit Hold shift + click to select a range
97105c4
feat(erc7730): compile tokenAmount, addressName, containers and const…
BitHighlander Sep 25, 2026
e105faf
feat(erc7730): compile the interpolated intent the device now shows
BitHighlander Sep 25, 2026
4b41809
feat(erc7730): compile amount, nftName, date, duration, unit and enum
BitHighlander Sep 25, 2026
69e2b45
feat(erc7730): compile groups, single-array iteration and optional fi…
BitHighlander Sep 25, 2026
c909a20
feat(erc7730): compile embedded calldata with its value and authority
BitHighlander Sep 25, 2026
f8c8d31
feat(erc7730): answer an unknown embedded call's definition with none
BitHighlander Sep 25, 2026
75585fe
fix(erc7730): mirror the device's audit-remediation preload checks
BitHighlander Sep 25, 2026
a778589
test(erc7730): put the 7.15 runtime tests in the release report
BitHighlander Sep 25, 2026
26d1842
fix(erc7730): mirror the re-audit's preload refusals; tighten runtime…
BitHighlander Sep 25, 2026
b3b8792
test(erc7730): enum labels are marked as the signer's
BitHighlander Sep 25, 2026
5c13b1b
test(erc7730): decline every kind of certified screen; pair both halves
BitHighlander Sep 25, 2026
a8bbee7
fix(erc7730): refuse formatted constants, close lockstep gaps; wider …
BitHighlander Sep 25, 2026
4f11470
fix(7.15): reject scalar formatter values in iterations
BitHighlander Sep 25, 2026
e68dcd6
test(7.15): disclose signer native aliases in runtime review
BitHighlander Sep 26, 2026
df376ee
docs(7.15): keep EX8 capture mapping with alias disclosure test
BitHighlander Sep 26, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 11 additions & 1 deletion keepkeylib/erc7730.py
Original file line number Diff line number Diff line change
Expand Up @@ -166,7 +166,17 @@ def resolve(self, request):
return definition

def chunk(self, request):
definition = self.resolve(request)
try:
definition = self.resolve(request)
except KeyError:
if (not request.HasField("recursion_depth") or
request.recursion_depth == 0):
raise
# An embedded call's definition that the catalog does not hold:
# the empty chunk means "none". Firmware 7.15 then shows the
# inner call under a blind-sign warning; 7.16 rejects it.
return ethereum.EthereumClearSignDefinitionChunk(
definition_id=bytes(32), offset=0, total_length=0, data=b"")
offset = request.offset
length = request.length
if length == 0 or length > MAX_CHUNK or offset >= len(definition.envelope):
Expand Down
Loading