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