libssh  0.7.5
Functions
The SSH buffer functions.

Functions to handle SSH buffers. More...

Functions

void ssh_buffer_free (struct ssh_buffer_struct *buffer)
 Deallocate a SSH buffer. More...
 
void * ssh_buffer_get_begin (struct ssh_buffer_struct *buffer)
 Get a pointer on the head of a buffer. More...
 
uint32_t ssh_buffer_get_len (struct ssh_buffer_struct *buffer)
 Get the length of the buffer, not counting position. More...
 
struct ssh_buffer_struct * ssh_buffer_new (void)
 Create a new SSH buffer. More...
 
void ssh_buffer_set_secure (ssh_buffer buffer)
 Sets the buffer as secure. More...
 
int ssh_buffer_validate_length (struct ssh_buffer_struct *buffer, size_t len)
 Valdiates that the given length can be obtained from the buffer. More...
 

Detailed Description

Functions to handle SSH buffers.

Function Documentation

◆ ssh_buffer_free()

void ssh_buffer_free ( struct ssh_buffer_struct *  buffer)

◆ ssh_buffer_get_begin()

void* ssh_buffer_get_begin ( struct ssh_buffer_struct *  buffer)

Get a pointer on the head of a buffer.

Parameters
[in]bufferThe buffer to get the head pointer.
Returns
A data pointer on the head. It doesn't take the position into account.
Warning
Don't expect data to be nul-terminated.
See also
buffer_get_rest()
buffer_get_len()

◆ ssh_buffer_get_len()

uint32_t ssh_buffer_get_len ( struct ssh_buffer_struct *  buffer)

Get the length of the buffer, not counting position.

Parameters
[in]bufferThe buffer to get the length from.
Returns
The length of the buffer.
See also
buffer_get()

◆ ssh_buffer_new()

struct ssh_buffer_struct* ssh_buffer_new ( void  )

◆ ssh_buffer_set_secure()

void ssh_buffer_set_secure ( ssh_buffer  buffer)

Sets the buffer as secure.

A secure buffer will never leave cleartext data in the heap after being reallocated or freed.

Parameters
[in]bufferbuffer to set secure.

◆ ssh_buffer_validate_length()

int ssh_buffer_validate_length ( struct ssh_buffer_struct *  buffer,
size_t  len 
)

Valdiates that the given length can be obtained from the buffer.

Parameters
[in]bufferThe buffer to read from.
[in]lenThe length to be checked.
Returns
SSH_OK if the length is valid, SSH_ERROR otherwise.