/* @UNSAFE: whole file */
#include "lib.h"
+#include "safe-memset.h"
#include "buffer.h"
struct real_buffer {
buf->used = used_size;
}
+void buffer_clear_safe(buffer_t *_buf)
+{
+ struct real_buffer *buf = container_of(_buf, struct real_buffer, buf);
+
+ safe_memset(buf->w_buffer, 0, I_MAX(buf->used, buf->dirty));
+ buffer_clear(_buf);
+}
+
size_t buffer_get_size(const buffer_t *_buf)
{
const struct real_buffer *buf =
{
buffer_set_used_size(buf, 0);
}
+/* Clear the buffer, but also make sure any contents is zeroed out. */
+void buffer_clear_safe(buffer_t *_buf);
/* Returns the current buffer size. */
size_t buffer_get_size(const buffer_t *buf) ATTR_PURE;