cryptnox-sdk-esp32 1.0.0
ESP32 SDK for Cryptnox Hardware Wallet
Loading...
Searching...
No Matches
eth_rlp.cpp File Reference
#include "eth_rlp.h"
#include <string.h>
Include dependency graph for eth_rlp.cpp:

Go to the source code of this file.

Macros

#define ITEMS_BUF_MAX   320U

Functions

static uint8_t be_minimal (uint64_t value, uint8_t out[8])
static size_t rlp_bytes (const uint8_t *data, size_t data_len, uint8_t *out)
static size_t rlp_uint64 (uint64_t value, uint8_t *out)
static size_t rlp_int256 (const uint8_t data[32], uint8_t *out)
static size_t rlp_list_header (size_t content_len, uint8_t *out)
static size_t encode_common_fields (const eth_tx_t *tx, uint8_t *items)
size_t eth_rlp_encode_unsigned (const eth_tx_t *tx, uint8_t *out, size_t out_max)
size_t eth_rlp_encode_signed (const eth_tx_t *tx, uint8_t v, const uint8_t r[32], const uint8_t s[32], uint8_t *out, size_t out_max)

Macro Definition Documentation

◆ ITEMS_BUF_MAX

#define ITEMS_BUF_MAX   320U

Definition at line 10 of file eth_rlp.cpp.

Referenced by eth_rlp_encode_signed(), and eth_rlp_encode_unsigned().

Function Documentation

◆ be_minimal()

uint8_t be_minimal ( uint64_t value,
uint8_t out[8] )
static

Definition at line 22 of file eth_rlp.cpp.

Referenced by rlp_bytes(), rlp_list_header(), and rlp_uint64().

◆ encode_common_fields()

◆ eth_rlp_encode_signed()

size_t eth_rlp_encode_signed ( const eth_tx_t * tx,
uint8_t v,
const uint8_t r[32],
const uint8_t s[32],
uint8_t * out,
size_t out_max )

◆ eth_rlp_encode_unsigned()

size_t eth_rlp_encode_unsigned ( const eth_tx_t * tx,
uint8_t * out,
size_t out_max )
Examples
UsdcSigning/main/main.cpp.

Definition at line 152 of file eth_rlp.cpp.

References encode_common_fields(), ITEMS_BUF_MAX, and rlp_list_header().

Referenced by signing_loop().

◆ rlp_bytes()

size_t rlp_bytes ( const uint8_t * data,
size_t data_len,
uint8_t * out )
static

Definition at line 51 of file eth_rlp.cpp.

References be_minimal().

Referenced by encode_common_fields(), rlp_int256(), and rlp_uint64().

◆ rlp_int256()

size_t rlp_int256 ( const uint8_t data[32],
uint8_t * out )
static

Definition at line 98 of file eth_rlp.cpp.

References rlp_bytes().

Referenced by eth_rlp_encode_signed().

◆ rlp_list_header()

size_t rlp_list_header ( size_t content_len,
uint8_t * out )
static

Definition at line 116 of file eth_rlp.cpp.

References be_minimal().

Referenced by eth_rlp_encode_signed(), and eth_rlp_encode_unsigned().

◆ rlp_uint64()

size_t rlp_uint64 ( uint64_t value,
uint8_t * out )
static

Definition at line 82 of file eth_rlp.cpp.

References be_minimal(), and rlp_bytes().

Referenced by encode_common_fields(), and eth_rlp_encode_signed().