File Index
Files and directories
Sign in
FILE

utils.c

File preview with syntax highlighting.

linux-6.19.14/tools/testing/selftests/net/tcp_ao/lib/utils.c C
 1// SPDX-License-Identifier: GPL-2.0
 2#include "aolib.h"
 3#include <string.h>
 4
 5void randomize_buffer(void *buf, size_t buflen)
 6{
 7	int *p = (int *)buf;
 8	size_t words = buflen / sizeof(int);
 9	size_t leftover = buflen % sizeof(int);
10
11	if (!buflen)
12		return;
13
14	while (words--)
15		*p++ = rand();
16
17	if (leftover) {
18		int tmp = rand();
19
20		memcpy(buf + buflen - leftover, &tmp, leftover);
21	}
22}
23
24__printf(3, 4) int test_echo(const char *fname, bool append,
25			     const char *fmt, ...)
26{
27	size_t len, written;
28	va_list vargs;
29	char *msg;
30	FILE *f;
31
32	f = fopen(fname, append ? "a" : "w");
33	if (!f)
34		return -errno;
35
36	va_start(vargs, fmt);
37	msg = test_snprintf(fmt, vargs);
38	va_end(vargs);
39	if (!msg) {
40		fclose(f);
41		return -1;
42	}
43	len = strlen(msg);
44	written = fwrite(msg, 1, len, f);
45	fclose(f);
46	free(msg);
47	return written == len ? 0 : -1;
48}
49
50const struct sockaddr_in6 addr_any6 = {
51	.sin6_family	= AF_INET6,
52};
53
54const struct sockaddr_in addr_any4 = {
55	.sin_family	= AF_INET,
56};
~/ Read-only file preview.