--- libelwix/inc/elwix/aring.h 2026/02/18 11:41:47 1.9 +++ libelwix/inc/elwix/aring.h 2026/07/27 21:11:07 1.10 @@ -3,7 +3,7 @@ * by Michael Pounov * * $Author: misho $ -* $Id: aring.h,v 1.9 2026/02/18 11:41:47 misho Exp $ +* $Id: aring.h,v 1.10 2026/07/27 21:11:07 misho Exp $ * ************************************************************************** The ELWIX and AITNET software is distributed under the following @@ -166,9 +166,10 @@ int rbuf_enqueue(ringbuf_t *rbuf, void *data, size_t l * * @rbuf = Ring buffer * @out = Data, if =NULL, just dequeue data + * @peek = Peek only data, keep the same tail position * return: -1 error, 1 buffer is empty or 0 ok */ -int rbuf_dequeue(ringbuf_t *rbuf, struct iovec **out); +int rbuf_dequeue(ringbuf_t *rbuf, struct iovec **out, int peek); /* @@ -223,9 +224,10 @@ int lrb_enqueue(lrbuf_t *lrb, void *data, size_t len, * @lrb = Linear ring buffer * @data = Data, if =NULL, just dequeue data * @len = Length of data + * @peek = Peek only data, keep the same tail position * return: -1 error, 0 buffer is empty or >0 stored data bytes */ -int lrb_dequeue(lrbuf_t *lrb, void *data, size_t len); +int lrb_dequeue(lrbuf_t *lrb, void *data, size_t len, int peek); /* * lrb_getw() - Get address for write *