33#define buffer_has_space buffer_can_read
37 if (offset > buffer->
size) {
48 if (buffer->
offset + offset < buffer->offset ||
60 if (offset > buffer->
size) {
158 if (buffer->
size - buffer->
offset > out_len) {
189 *value = buffer->
ptr[buffer->
offset + n];
200 memmove(out, buffer->
ptr + buffer->
offset, n);
224 if (endianness ==
BE) {
241 if (endianness ==
BE) {
258 if (endianness ==
BE) {
276 memmove(buffer->
ptr + buffer->
offset, data, n);
bool bip32_path_read(const uint8_t *in, size_t in_len, uint32_t *out, size_t out_len)
bool buffer_read_varint(buffer_t *buffer, uint64_t *value)
bool buffer_seek_end(buffer_t *buffer, size_t offset)
bool buffer_read_u16(buffer_t *buffer, uint16_t *value, endianness_t endianness)
bool buffer_write_u16(buffer_t *buffer, uint16_t value, endianness_t endianness)
bool buffer_copy(const buffer_t *buffer, uint8_t *out, size_t out_len)
bool buffer_seek_cur(buffer_t *buffer, size_t offset)
bool buffer_read_bip32_path(buffer_t *buffer, uint32_t *out, size_t out_len)
bool buffer_write_bytes(buffer_t *buffer, const uint8_t *data, size_t n)
bool buffer_seek_set(buffer_t *buffer, size_t offset)
bool buffer_can_read(const buffer_t *buffer, size_t n)
bool buffer_write_u64(buffer_t *buffer, uint64_t value, endianness_t endianness)
bool buffer_peek(const buffer_t *buffer, uint8_t *value)
bool buffer_write_u32(buffer_t *buffer, uint32_t value, endianness_t endianness)
bool buffer_write_u8(buffer_t *buffer, uint8_t value)
bool buffer_read_u64(buffer_t *buffer, uint64_t *value, endianness_t endianness)
WEAK bool buffer_read_bytes(buffer_t *buffer, uint8_t *out, size_t n)
bool buffer_peek_n(const buffer_t *buffer, size_t n, uint8_t *value)
bool buffer_move(buffer_t *buffer, uint8_t *out, size_t out_len)
bool buffer_read_u32(buffer_t *buffer, uint32_t *value, endianness_t endianness)
bool buffer_read_u8(buffer_t *buffer, uint8_t *value)
uint32_t read_u32_le(const uint8_t *ptr, size_t offset)
uint64_t read_u64_le(const uint8_t *ptr, size_t offset)
uint16_t read_u16_le(const uint8_t *ptr, size_t offset)
uint32_t read_u32_be(const uint8_t *ptr, size_t offset)
uint64_t read_u64_be(const uint8_t *ptr, size_t offset)
uint16_t read_u16_be(const uint8_t *ptr, size_t offset)
size_t size
Pointer to byte buffer.
size_t offset
Size of byte buffer.
int varint_read(const uint8_t *in, size_t in_len, uint64_t *value)
void write_u16_le(uint8_t *ptr, size_t offset, uint16_t value)
void write_u32_be(uint8_t *ptr, size_t offset, uint32_t value)
void write_u16_be(uint8_t *ptr, size_t offset, uint16_t value)
void write_u64_be(uint8_t *ptr, size_t offset, uint64_t value)
void write_u64_le(uint8_t *ptr, size_t offset, uint64_t value)
void write_u32_le(uint8_t *ptr, size_t offset, uint32_t value)