1 // SPDX-License-Identifier: GPL-2.0 << 2 #include <linux/compiler.h> 1 #include <linux/compiler.h> 3 #include <linux/kernel.h> << 4 #include "tests.h" 2 #include "tests.h" 5 #include "debug.h" 3 #include "debug.h" 6 #include "print_binary.h" !! 4 #include "util.h" 7 5 8 int test__is_printable_array(struct test *test !! 6 int test__is_printable_array(int subtest __maybe_unused) 9 { 7 { 10 char buf1[] = { 'k', 'r', 4, 'v', 'a', 8 char buf1[] = { 'k', 'r', 4, 'v', 'a', 0 }; 11 char buf2[] = { 'k', 'r', 'a', 'v', 4, 9 char buf2[] = { 'k', 'r', 'a', 'v', 4, 0 }; 12 struct { 10 struct { 13 char *buf; 11 char *buf; 14 unsigned int len; 12 unsigned int len; 15 int ret; 13 int ret; 16 } t[] = { 14 } t[] = { 17 { (char *) "krava", sizeof 15 { (char *) "krava", sizeof("krava"), 1 }, 18 { (char *) "krava", sizeof 16 { (char *) "krava", sizeof("krava") - 1, 0 }, 19 { (char *) "", sizeof 17 { (char *) "", sizeof(""), 1 }, 20 { (char *) "", 0, 18 { (char *) "", 0, 0 }, 21 { NULL, 0, 19 { NULL, 0, 0 }, 22 { buf1, sizeof 20 { buf1, sizeof(buf1), 0 }, 23 { buf2, sizeof 21 { buf2, sizeof(buf2), 0 }, 24 }; 22 }; 25 unsigned int i; 23 unsigned int i; 26 24 27 for (i = 0; i < ARRAY_SIZE(t); i++) { 25 for (i = 0; i < ARRAY_SIZE(t); i++) { 28 int ret; 26 int ret; 29 27 30 ret = is_printable_array((char 28 ret = is_printable_array((char *) t[i].buf, t[i].len); 31 if (ret != t[i].ret) { 29 if (ret != t[i].ret) { 32 pr_err("failed: test % 30 pr_err("failed: test %u\n", i); 33 return TEST_FAIL; 31 return TEST_FAIL; 34 } 32 } 35 } 33 } 36 34 37 return TEST_OK; 35 return TEST_OK; 38 } 36 } 39 37
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.