From c3631fc789181c23aa51396f0ff66cd488e4b4f7 Mon Sep 17 00:00:00 2001 From: Zubin Mithra Date: Wed, 23 Aug 2017 14:01:57 +0100 Subject: tools: add headerparser as a tool to assist in writing system call descriptions The tool can be found inside tools/syz-headerparser. Details on how to use headerparser can be found inside docs/headerparser_usage.md. --- tools/syz-headerparser/test_headers/th_a.h | 22 ++++++++++++++++++++++ tools/syz-headerparser/test_headers/th_b.h | 27 +++++++++++++++++++++++++++ 2 files changed, 49 insertions(+) create mode 100644 tools/syz-headerparser/test_headers/th_a.h create mode 100644 tools/syz-headerparser/test_headers/th_b.h (limited to 'tools/syz-headerparser/test_headers') diff --git a/tools/syz-headerparser/test_headers/th_a.h b/tools/syz-headerparser/test_headers/th_a.h new file mode 100644 index 000000000..f2afc8752 --- /dev/null +++ b/tools/syz-headerparser/test_headers/th_a.h @@ -0,0 +1,22 @@ +// Copyright 2017 syzkaller project authors. All rights reserved. +// Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file. + +#ifndef __TEST_HEADER_A +#define __TEST_HEADER_A + +#define RANDOM_MACRO_1 1 +#define RANDOM_MACRO_2 2 + +struct A { + struct B *B_item; + const char *char_ptr; + unsigned int an_unsigned_int; + /* + * Some comments + */ + bool a_bool; + bool another_bool; + some_type var; +}; + +#endif /* __TEST_HEADER_A */ diff --git a/tools/syz-headerparser/test_headers/th_b.h b/tools/syz-headerparser/test_headers/th_b.h new file mode 100644 index 000000000..4b32e6041 --- /dev/null +++ b/tools/syz-headerparser/test_headers/th_b.h @@ -0,0 +1,27 @@ +// Copyright 2017 syzkaller project authors. All rights reserved. +// Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file. + +#ifndef _TEST_HEADER_B +#define _TEST_HEADER_B + +#include /* header comment */ + +enum random_enum { + ONE = 1<<0, + TWO = 1<<1, +}; + +struct B { + unsigned long B1; + unsigned long B2; +}; + +struct struct_containing_union { + int something; + union { + char *a_char; + struct B *B_ptr; + } a_union; +}; + +#endif /* _TEST_HEADER_B */ -- cgit mrf-deployment