Linux Perf
is_printable_array.c
Go to the documentation of this file.
1 // SPDX-License-Identifier: GPL-2.0
2 #include <linux/compiler.h>
3 #include <linux/kernel.h>
4 #include "tests.h"
5 #include "debug.h"
6 #include "print_binary.h"
7 
8 int test__is_printable_array(struct test *test __maybe_unused, int subtest __maybe_unused)
9 {
10  char buf1[] = { 'k', 'r', 4, 'v', 'a', 0 };
11  char buf2[] = { 'k', 'r', 'a', 'v', 4, 0 };
12  struct {
13  char *buf;
14  unsigned int len;
15  int ret;
16  } t[] = {
17  { (char *) "krava", sizeof("krava"), 1 },
18  { (char *) "krava", sizeof("krava") - 1, 0 },
19  { (char *) "", sizeof(""), 1 },
20  { (char *) "", 0, 0 },
21  { NULL, 0, 0 },
22  { buf1, sizeof(buf1), 0 },
23  { buf2, sizeof(buf2), 0 },
24  };
25  unsigned int i;
26 
27  for (i = 0; i < ARRAY_SIZE(t); i++) {
28  int ret;
29 
30  ret = is_printable_array((char *) t[i].buf, t[i].len);
31  if (ret != t[i].ret) {
32  pr_err("failed: test %u\n", i);
33  return TEST_FAIL;
34  }
35  }
36 
37  return TEST_OK;
38 }
#define pr_err(fmt,...)
Definition: json.h:21
Definition: tests.h:30
int test__is_printable_array(struct test *test __maybe_unused, int subtest __maybe_unused)
Definition: tests.h:25