summaryrefslogtreecommitdiff
path: root/ot_iovec.h
blob: 6f5a1d6c1f2ff3805978789c84c2f11394b7d176 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
/* This software was written by Dirk Engling <erdgeist@erdgeist.org>
   It is considered beerware. Prost. Skol. Cheers or whatever.

   $id$ */

#ifndef OT_IOVEC_H__
#define OT_IOVEC_H__

#include <sys/uio.h>

void  *iovec_new_chunk(size_t *iovec_entries, struct iovec **iovector, size_t new_alloc);
void  *iovec_append(size_t *iovec_entries, struct iovec **iovector, struct iovec *append_iovector);
void   iovec_trim_last(size_t *iovec_entries, struct iovec **iovector, void *last_ptr);
void   iovec_free(size_t *iovec_entries, struct iovec **iovector);

size_t iovec_length(const size_t *iovec_entries, const struct iovec **iovector);

void  *iovec_next_chunk(size_t *iovec_entries, struct iovec **iovector, void *last_ptr, size_t new_alloc);

#endif