wpa_supplicant / hostapd
2.5
|
Dynamic data buffer. More...
Go to the source code of this file.
Data Structures | |
struct | wpabuf |
Macros | |
#define | WPABUF_FLAG_EXT_DATA BIT(0) |
Functions | |
int | wpabuf_resize (struct wpabuf **buf, size_t add_len) |
struct wpabuf * | wpabuf_alloc (size_t len) |
Allocate a wpabuf of the given size. More... | |
struct wpabuf * | wpabuf_alloc_ext_data (u8 *data, size_t len) |
struct wpabuf * | wpabuf_alloc_copy (const void *data, size_t len) |
struct wpabuf * | wpabuf_dup (const struct wpabuf *src) |
void | wpabuf_free (struct wpabuf *buf) |
Free a wpabuf. More... | |
void | wpabuf_clear_free (struct wpabuf *buf) |
void * | wpabuf_put (struct wpabuf *buf, size_t len) |
struct wpabuf * | wpabuf_concat (struct wpabuf *a, struct wpabuf *b) |
Concatenate two buffers into a newly allocated one. More... | |
struct wpabuf * | wpabuf_zeropad (struct wpabuf *buf, size_t len) |
Pad buffer with 0x00 octets (prefix) to specified length. More... | |
void | wpabuf_printf (struct wpabuf *buf, char *fmt,...) PRINTF_FORMAT(2 |
Dynamic data buffer.
struct wpabuf* wpabuf_alloc | ( | size_t | len | ) |
Allocate a wpabuf of the given size.
len | Length for the allocated buffer |
Concatenate two buffers into a newly allocated one.
a | First buffer |
b | Second buffer |
Both buffers a and b will be freed regardless of the return value. Input buffers can be NULL which is interpreted as an empty buffer.
void wpabuf_free | ( | struct wpabuf * | buf | ) |
Free a wpabuf.
buf | wpabuf buffer |
Pad buffer with 0x00 octets (prefix) to specified length.
buf | Buffer to be padded |
len | Length for the padded buffer |
If buf is longer than len octets or of same size, it will be returned as-is. Otherwise a new buffer is allocated and prefixed with 0x00 octets followed by the source data. The source buffer will be freed on error, i.e., caller will only be responsible on freeing the returned buffer. If buf is NULL, NULL will be returned.