Endianness Helpers

leint64_t cpu_to_le64(uint64_t native)

convert a uint64_t value to little-endian

Parameters

uint64_t native

value to convert

Return

little endian integer

leint32_t cpu_to_le32(uint32_t native)

convert a uint32_t value to little-endian

Parameters

uint32_t native

value to convert

Return

little endian integer

leint16_t cpu_to_le16(uint16_t native)

convert a uint16_t value to little-endian

Parameters

uint16_t native

value to convert

Return

little endian integer

uint64_t le64_to_cpu(leint64_t le_val)

convert a little-endian uint64_t value

Parameters

leint64_t le_val

little-endian value to convert

Return

host endian integer

uint32_t le32_to_cpu(leint32_t le_val)

convert a little-endian uint32_t value

Parameters

leint32_t le_val

little-endian value to convert

Return

host endian integer

uint16_t le16_to_cpu(leint16_t le_val)

convert a little-endian uint16_t value

Parameters

leint16_t le_val

little-endian value to convert

Return

host endian integer

beint64_t cpu_to_be64(uint64_t native)

convert a uint64_t value to big endian.

Parameters

uint64_t native

value to convert

Return

big endian integer

beint32_t cpu_to_be32(uint32_t native)

convert a uint32_t value to big endian.

Parameters

uint32_t native

value to convert

Return

big endian integer

beint16_t cpu_to_be16(uint16_t native)

Convert a uint16_t value to big endian.

Parameters

uint16_t native

Value to convert

Return

Big endian integer

uint64_t be64_to_cpu(beint64_t be_val)

Convert a big-endian uint64_t value

Parameters

beint64_t be_val

Big-endian value to convert

Return

Host endian integer

uint32_t be32_to_cpu(beint32_t be_val)

Convert a big-endian uint32_t value

Parameters

beint32_t be_val

Big-endian value to convert

Return

Host endian integer

uint16_t be16_to_cpu(beint16_t be_val)

Convert a big-endian uint16_t value

Parameters

beint16_t be_val

Big-endian value to convert

Return

Host endian integer

void put_unaligned_be48(const uint64_t v, uint8_t *p)

Store 48 bits of v into p as big endian

Parameters

const uint64_t v

Value

uint8_t *p

Pointer to memory

Description

Store the lower 48 bits of v into p, forming a big endian value.

Note

p MUST be at least 6 bytes.

uint64_t get_unaligned_be48(const uint8_t *p)

Get 48 bit big endian value from p

Parameters

const uint8_t *p

Pointer to memory

Description

Load the 48 bits at p, converting from big into host endian.

Note

p MUST be at least 6 bytes.

Return

Host endian integer