File:  [ELWIX - Embedded LightWeight unIX -] / libelwix / example / test_iovec.c
Revision 1.1.2.1: download - view: text, annotated - select for diffs - revision graph
Fri Mar 19 01:29:24 2021 UTC (3 years, 2 months ago) by misho
Branches: elwix4_26
finish UT of IOVEC array

#include <stdio.h>
#include <elwix.h>


int
main(int argc, char **argv)
{
	iovec_t *iov;
	char d[BUFSIZ], n[BUFSIZ];
	size_t nl, dl = sizeof d;

	iov = iov_Init();
	if (!iov)
		return 1;

	printf("iov_Insert at 0 %d\n", iov_Insert(iov, 0, "aaaaa", 6));
	printf("iov_Insert at 3 %d\n", iov_Insert(iov, 3, "BBBBB", 6));

	iov_Debug(iov);

	printf("iov_Delete at 1 %d\n", iov_Delete(iov, 1, 42));
	printf("iov_Delete at 9 %d\n", iov_Delete(iov, 9, 0));

	iov_Debug(iov);

	printf("iov_Delete at 3 %d\n", iov_Delete(iov, 3, 0));
	printf("iov_Insert at 2 %d\n", iov_Insert(iov, 2, "bbbBB", 6));

	iov_Debug(iov);

	printf("iov_Push at %d\n", iov_Push(iov, "oho", 4));
	printf("iov_Pop at %d\n", iov_Pop(iov, d, &dl, 0));
	printf(" -> (%zu) %s\n", dl, d);

	iov_Debug(iov);

	printf("iov_PushPair at %d\n", iov_PushPair(iov, "pair1", "o!o", (size_t) -1));

	iov_Debug(iov);

	nl = sizeof n;
	dl = sizeof d;
	printf("iov_PopPair at %d\n", iov_PopPair(iov, n, &nl, d, &dl, 0));
	printf(" -> (%zu) %s = (%zu) %s\n", nl, n, dl, d);

	iov_Debug(iov);

	printf("iov_PushPair at %d\n", iov_PushPair(iov, "pair1", "o!o", (size_t) -1));
	printf("iov_PopPair without get data at %d\n", iov_PopPair(iov, NULL, NULL, NULL, NULL, 0));

	iov_Debug(iov);

	iov_Destroy(&iov);

	mpool_dump(NULL, NULL);
	return 0;
}

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>