virtual_ring
struct virtual_ring rx_ring[2];
struct virtual_ring tx_ring[2];
extern int vring_alloc(struct virtual_ring *, size_t);
extern void vring_free(struct virtual_ring *);
extern void vring_reset(struct virtual_ring *);
extern void vring_get_read(struct virtual_ring *, uint8_t **, size_t *);
extern void vring_get_write(struct virtual_ring *, uint8_t **, size_t *);
extern void vring_inc_read(struct virtual_ring *, size_t);
extern void vring_inc_write(struct virtual_ring *, size_t);
extern size_t vring_total_read_len(struct virtual_ring *);
extern size_t vring_total_write_len(struct virtual_ring *);
extern size_t vring_write_linear(struct virtual_ring *, const uint8_t *, size_t);
extern size_t vring_read_linear(struct virtual_ring *, uint8_t *, size_t);
extern size_t vring_write_zero(struct virtual_ring *, size_t);
vring_inc_read(struct virtual_ring *pvr, size_t len)
vring_inc_write(struct virtual_ring *pvr, size_t len)
vring_total_read_len(struct virtual_ring *pvr)
vring_total_write_len(struct virtual_ring *pvr)
vring_write_linear(struct virtual_ring *pvr, const uint8_t *src, size_t total)
vring_read_linear(struct virtual_ring *pvr, uint8_t *dst, size_t total)
vring_write_zero(struct virtual_ring *pvr, size_t total)
vring_alloc(struct virtual_ring *pvr, size_t size)
vring_free(struct virtual_ring *pvr)
vring_reset(struct virtual_ring *pvr)
vring_get_read(struct virtual_ring *pvr, uint8_t **pptr, size_t *plen)
vring_get_write(struct virtual_ring *pvr, uint8_t **pptr, size_t *plen)
vclient_write_linear(struct virtual_client *pvc, struct virtual_ring *pvr,
vclient_read_linear(struct virtual_client *pvc, struct virtual_ring *pvr,