162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-only */
262306a36Sopenharmony_ci#include <linux/kernel.h>
362306a36Sopenharmony_ci#include <linux/printk.h>
462306a36Sopenharmony_ci#include <linux/slab.h>
562306a36Sopenharmony_ci#include <linux/string.h>
662306a36Sopenharmony_ci
762306a36Sopenharmony_civoid do_fortify_tests(void);
862306a36Sopenharmony_ci
962306a36Sopenharmony_ci#define __BUF_SMALL	16
1062306a36Sopenharmony_ci#define __BUF_LARGE	32
1162306a36Sopenharmony_cistruct fortify_object {
1262306a36Sopenharmony_ci	int a;
1362306a36Sopenharmony_ci	char buf[__BUF_SMALL];
1462306a36Sopenharmony_ci	int c;
1562306a36Sopenharmony_ci};
1662306a36Sopenharmony_ci
1762306a36Sopenharmony_ci#define LITERAL_SMALL "AAAAAAAAAAAAAAA"
1862306a36Sopenharmony_ci#define LITERAL_LARGE "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
1962306a36Sopenharmony_ciconst char small_src[__BUF_SMALL] = LITERAL_SMALL;
2062306a36Sopenharmony_ciconst char large_src[__BUF_LARGE] = LITERAL_LARGE;
2162306a36Sopenharmony_ci
2262306a36Sopenharmony_cichar small[__BUF_SMALL];
2362306a36Sopenharmony_cichar large[__BUF_LARGE];
2462306a36Sopenharmony_cistruct fortify_object instance;
2562306a36Sopenharmony_cisize_t size;
2662306a36Sopenharmony_ci
2762306a36Sopenharmony_civoid do_fortify_tests(void)
2862306a36Sopenharmony_ci{
2962306a36Sopenharmony_ci	/* Normal initializations. */
3062306a36Sopenharmony_ci	memset(&instance, 0x32, sizeof(instance));
3162306a36Sopenharmony_ci	memset(small, 0xA5, sizeof(small));
3262306a36Sopenharmony_ci	memset(large, 0x5A, sizeof(large));
3362306a36Sopenharmony_ci
3462306a36Sopenharmony_ci	TEST;
3562306a36Sopenharmony_ci}
36