[misc] Add ringbuffer utility to misc.c/misc.h

This commit is contained in:
ejurgensen
2019-02-22 08:36:27 +01:00
parent 9dfab16138
commit 19694ee1dd
2 changed files with 101 additions and 0 deletions

View File

@@ -46,6 +46,15 @@ struct keyval {
struct onekeyval *tail;
};
struct ringbuffer {
uint8_t *buffer;
size_t size;
size_t write_avail;
size_t read_avail;
size_t write_pos;
size_t read_pos;
};
char **
buildopts_get(void);
@@ -137,6 +146,18 @@ quality_is_equal(struct media_quality *a, struct media_quality *b);
bool
peer_address_is_trusted(const char *addr);
int
ringbuffer_init(struct ringbuffer *buf, size_t size);
void
ringbuffer_free(struct ringbuffer *buf, bool content_only);
size_t
ringbuffer_write(struct ringbuffer *buf, const void* src, size_t srclen);
size_t
ringbuffer_read(uint8_t **dst, size_t dstlen, struct ringbuffer *buf);
#ifndef HAVE_CLOCK_GETTIME