lotus/node
Steven Allen cff785fa37
fix: eth: correctly encode and simplify native input/output encoding (#11382)
* chore: eth: move & rename input/output encoding functions

These are shared functions, so I'm moving them to the utils library.

* fix: eth: correctly encode and simplify native input/output encoding

When generating eth traces, we encode "native" message inputs/outputs
to "solidity ABI" by formatting the inputs/outputs the same way we do in
FEVM's "handle_native_method". However, we had quite a few bugs with the
implementation:

1. We were right-aligning 64bit values in 256bit words, instead of
left-aligning (as we should given that these values are big-endian).
2. The return-value encoding wasn't correctly handling lengths.

This patch:

1. Fixes those bugs.
2. Deduplicates the logic (we're doing _basically_ the same thing in
both cases).
3. Removes all error paths (these functions can't fail).
2023-11-06 09:41:22 -08:00
..
bundle feat: chain: light-weight patch to fix calibrationnet (#11363) 2023-10-31 18:29:09 -04:00
config Merge branch 'feat/nv21' into asr/merge-feat-nv21 2023-10-16 11:13:33 -04:00
hello make gen 2023-09-23 17:54:44 -04:00
impl fix: eth: correctly encode and simplify native input/output encoding (#11382) 2023-11-06 09:41:22 -08:00
modules Handle errors from Close() in CheckUDPBufferSize 2023-10-30 09:59:59 +00:00
repo refactor: stop using deprecated io/ioutil 2023-03-29 15:40:49 -04:00
builder_chain.go Refactor eth.go 2023-08-28 17:48:22 +00:00
builder_miner.go fix: Add lotus-miner legacy-markets alert 2023-05-15 13:13:06 +02:00
builder.go Check UDP-buffer-size 2023-10-30 09:36:15 +00:00
fxlog.go chore: fix imports 2022-06-14 17:00:51 +02:00
health.go Don't use go-libp2p-core 2022-08-25 14:20:41 -04:00
options.go fix linter 2022-10-14 11:23:05 +02:00
rpc.go fix: should not serve non v0 api in v1 2023-01-31 17:06:02 -05:00
shutdown_test.go fix make gen 2022-08-29 16:25:30 +02:00
shutdown.go Set notifications for SIGTERM and SIGINT when we start the cli 2022-12-15 12:54:41 -05:00
testopts.go enable libp2p options 2021-06-30 12:55:43 +02:00