ARM Shanghai IoT Team (Internal) / newMiniTLS-GPL

Fork of MiniTLS-GPL by Donatien Garnier

Embed: (wiki syntax)

« Back to documentation index

Core

Core

Buffers

void buffer_init (buffer_t *pBuf, uint8_t *bufdata, size_t size)
 Initialize buffer using underlying byte array, set buffer's length to 0 (empty)
void buffer_byref (buffer_t *pBuf, uint8_t *bufdata, size_t length)
 Initialize buffer using underlying byte array, set buffer's length to array's size (full)
buffer_t * buffer_new (size_t size)
uint8_t * buffer_data (buffer_t *pBuf)
 Get buffer's underlying byte array.
void buffer_reset (buffer_t *pBuf)
 Reset buffer (empty)
size_t buffer_size (buffer_t *pBuf)
 Get buffer's size.
size_t buffer_length (buffer_t *pBuf)
 Get buffer's length.
size_t buffer_space (buffer_t *pBuf)
 Get space in buffer.
bool buffer_empty (buffer_t *pBuf)
 Is buffer empty.
void buffer_set_length (buffer_t *pBuf, size_t length)
 Set buffer's length.
size_t buffer_last_byte_length (buffer_t *pBuf)
 Get buffer's last byte's length.
void buffer_set_last_byte_length (buffer_t *pBuf, size_t length)
 Set buffer's last byte's length.
size_t buffer_bits_count (buffer_t *pBuf)
 Get buffer's bits count.
void buffer_write_byte (buffer_t *pBuf, uint8_t b)
 Write one byte to buffer.
void buffer_write_bit (buffer_t *pBuf, uint8_t b)
 Write one bit to buffer.
buffer_t * buffer_next (buffer_t *pBuf)
 Get next buffer in chain.
void buffer_set_next (buffer_t *pBuf, buffer_t *pNextBuf)
 Set next buffer in chain.
void buffer_append (buffer_t *pBuf, buffer_t *pAppBuf)
 Append next buffer to the whole chain.
void buffer_unlink (buffer_t *pBuf, buffer_t *pLinkedBuf)
 Split chain at specified buffer.
size_t buffer_total_size (buffer_t *pBuf)
 Get buffer chain's total size.
size_t buffer_total_length (buffer_t *pBuf)
 Get buffer chain's total length.
void buffer_set_total_length (buffer_t *pBuf, size_t length)
 Set buffer chain's total length (fill up one buffer and move to the next if needed)
size_t buffer_read_byte (buffer_t *pBuf, uint8_t b)
size_t buffer_read_bit (buffer_t *pBuf, uint8_t b)
void buffer_free (buffer_t *pBuf)
void buffer_dump (buffer_t *pBuf)
 Dump a buffer's content to stdout (useful for debugging)

Function Documentation

void buffer_append ( buffer_t *  pBuf,
buffer_t *  pAppBuf 
)

Append next buffer to the whole chain.

Parameters:
pBufpointer to buffer_t structure
pAppBufpointer to buffer to append

Definition at line 244 of file buffer.c.

size_t buffer_bits_count ( buffer_t *  pBuf )

Get buffer's bits count.

Parameters:
pBufpointer to buffer_t structure
Returns:
total number of valid bits in buffer

Definition at line 160 of file buffer.c.

void buffer_byref ( buffer_t *  pBuf,
uint8_t *  bufdata,
size_t  length 
)

Initialize buffer using underlying byte array, set buffer's length to array's size (full)

Parameters:
pBufpointer to buffer_t structure to initialize
bufdatabyte array to use
sizesize of byte array

Definition at line 59 of file buffer.c.

uint8_t* buffer_data ( buffer_t *  pBuf )

Get buffer's underlying byte array.

Parameters:
pBufpointer to buffer_t structure
Returns:
underlying array

Definition at line 78 of file buffer.c.

void buffer_dump ( buffer_t *  pBuf )

Dump a buffer's content to stdout (useful for debugging)

Parameters:
pBufpointer to buffer_t structure

Definition at line 344 of file buffer.c.

bool buffer_empty ( buffer_t *  pBuf )

Is buffer empty.

Parameters:
pBufpointer to buffer_t structure
Returns:
true if buffer is empty

Definition at line 122 of file buffer.c.

void buffer_init ( buffer_t *  pBuf,
uint8_t *  bufdata,
size_t  size 
)

Initialize buffer using underlying byte array, set buffer's length to 0 (empty)

Parameters:
pBufpointer to buffer_t structure to initialize
bufdatabyte array to use
sizesize of byte array

Definition at line 40 of file buffer.c.

size_t buffer_last_byte_length ( buffer_t *  pBuf )

Get buffer's last byte's length.

Parameters:
pBufpointer to buffer_t structure
Returns:
number of valid bits in buffer's last byte

Definition at line 142 of file buffer.c.

size_t buffer_length ( buffer_t *  pBuf )

Get buffer's length.

Parameters:
pBufpointer to buffer_t structure
Returns:
number of valid bytes in buffer

Definition at line 104 of file buffer.c.

buffer_t* buffer_next ( buffer_t *  pBuf )

Get next buffer in chain.

Parameters:
pBufpointer to buffer_t structure
Returns:
pointer to next buffer

Definition at line 226 of file buffer.c.

void buffer_reset ( buffer_t *  pBuf )

Reset buffer (empty)

Parameters:
pBufpointer to buffer_t structure

Definition at line 86 of file buffer.c.

void buffer_set_last_byte_length ( buffer_t *  pBuf,
size_t  length 
)

Set buffer's last byte's length.

Parameters:
pBufpointer to buffer_t structure
lengthnumber of valid bits in buffer's last byte

Definition at line 151 of file buffer.c.

void buffer_set_length ( buffer_t *  pBuf,
size_t  length 
)

Set buffer's length.

Parameters:
pBufpointer to buffer_t structure
lengthnumber of valid bytes in buffer

Definition at line 131 of file buffer.c.

void buffer_set_next ( buffer_t *  pBuf,
buffer_t *  pNextBuf 
)

Set next buffer in chain.

Parameters:
pBufpointer to buffer_t structure
pNextBufpointer to next buffer (or NULL to break chain)

Definition at line 235 of file buffer.c.

void buffer_set_total_length ( buffer_t *  pBuf,
size_t  length 
)

Set buffer chain's total length (fill up one buffer and move to the next if needed)

Parameters:
pBufpointer to buffer_t structure
lengthtotal length

Definition at line 308 of file buffer.c.

size_t buffer_size ( buffer_t *  pBuf )

Get buffer's size.

Parameters:
pBufpointer to buffer_t structure
Returns:
buffer's size

Definition at line 95 of file buffer.c.

size_t buffer_space ( buffer_t *  pBuf )

Get space in buffer.

Parameters:
pBufpointer to buffer_t structure
Returns:
number of free bytes in buffer

Definition at line 113 of file buffer.c.

size_t buffer_total_length ( buffer_t *  pBuf )

Get buffer chain's total length.

Parameters:
pBufpointer to buffer_t structure
Returns:
number of valid bytes in the whole chain

Definition at line 291 of file buffer.c.

size_t buffer_total_size ( buffer_t *  pBuf )

Get buffer chain's total size.

Parameters:
pBufpointer to buffer_t structure
Returns:
sum of each buffer's size

Definition at line 274 of file buffer.c.

void buffer_unlink ( buffer_t *  pBuf,
buffer_t *  pLinkedBuf 
)

Split chain at specified buffer.

Parameters:
pBufpointer to buffer_t structure
pLinkedBufpointer to buffer from which to split the chain

Definition at line 259 of file buffer.c.

void buffer_write_bit ( buffer_t *  pBuf,
uint8_t  b 
)

Write one bit to buffer.

Parameters:
pBufpointer to buffer_t structure
bbit to append

Definition at line 206 of file buffer.c.

void buffer_write_byte ( buffer_t *  pBuf,
uint8_t  b 
)

Write one byte to buffer.

Parameters:
pBufpointer to buffer_t structure
bbyte to append

Definition at line 182 of file buffer.c.