silc_buffer_pull

SYNOPSIS

    static inline
    unsigned char *silc_buffer_pull(SilcBuffer sb, SilcUInt32 len);

DESCRIPTION

Pulls current data area towards end. The length of the currently valid data area is also decremented. Returns pointer to the data area before pulling. Returns NULL if the pull would lead to buffer overflow or would go beyond the valid data area.

EXAMPLE

    ---------------------------------
    | head  | data       | tail     |
    ---------------------------------
            ^
            Pulls the start of the data area.

    ---------------------------------
    | head     | data    | tail     |
    ---------------------------------
            ^

    silc_buffer_pull(sb, 20);