0926a2bc751d4f9e2182092c56fcbb01f370e511
[strongswan.git] / src / libpts / pts / pts_funct_comp_name.h
1 /*
2 * Copyright (C) 2011 Sansar Choinyambuu
3 * HSR Hochschule fuer Technik Rapperswil
4 *
5 * This program is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License as published by the
7 * Free Software Foundation; either version 2 of the License, or (at your
8 * option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
9 *
10 * This program is distributed in the hope that it will be useful, but
11 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
12 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
13 * for more details.
14 */
15
16 /**
17 * @defgroup pts_funct_comp_name pts_funct_comp_name
18 * @{ @ingroup pts
19 */
20
21 #ifndef PTS_FUNCT_COMP_NAME_H_
22 #define PTS_FUNCT_COMP_NAME_H_
23
24 typedef enum pts_funct_comp_type_t pts_funct_comp_type_t;
25 typedef enum pts_funct_comp_name_t pts_funct_comp_name_t;
26 typedef struct pts_qualifier_t pts_qualifier_t;
27
28 /**
29 * PTS Component Functional Type for Qualifier field
30 */
31 enum pts_funct_comp_type_t {
32 /** Unknown */
33 PTS_FUNC_COMP_TYPE_UNKNOWN = 0x0,
34 /** Trusted Platform */
35 PTS_FUNC_COMP_TYPE_TRUSTED = 0x1,
36 /** Operating System */
37 PTS_FUNC_COMP_TYPE_OS = 0x2,
38 /** Graphical User Interface */
39 PTS_FUNC_COMP_TYPE_GUI = 0x3,
40 /** Application */
41 PTS_FUNC_COMP_TYPE_APP = 0x4,
42 /** Networking */
43 PTS_FUNC_COMP_TYPE_NET = 0x5,
44 /** Library */
45 PTS_FUNC_COMP_TYPE_LIB = 0x6,
46 /** TNC Defined Component */
47 PTS_FUNC_COMP_TYPE_TNC = 0x7,
48 /** All matching Components */
49 PTS_FUNC_COMP_TYPE_ALL = 0xF,
50 };
51
52 /**
53 * PTS Component Functional Name Binary Enumeration
54 */
55 enum pts_funct_comp_name_t {
56 /** Ignore */
57 PTS_FUNC_COMP_NAME_IGNORE = 0x0000,
58 /** CRTM */
59 PTS_FUNC_COMP_NAME_CRTM = 0x0001,
60 /** BIOS */
61 PTS_FUNC_COMP_NAME_BIOS = 0x0002,
62 /** Platform Extensions */
63 PTS_FUNC_COMP_NAME_PLATFORM_EXT = 0x0003,
64 /** Motherboard firmware */
65 PTS_FUNC_COMP_NAME_BOARD = 0x0004,
66 /** Initial Program Loader */
67 PTS_FUNC_COMP_NAME_INIT_LOADER = 0x0005,
68 /** Option ROMs */
69 PTS_FUNC_COMP_NAME_OPT_ROMS = 0x0006,
70 };
71
72 /**
73 * Qualifier for Functional Component
74 */
75 struct pts_qualifier_t {
76 bool kernel;
77 bool sub_component;
78 pts_funct_comp_type_t type;
79 };
80
81 #endif /** PTS_FUNCT_COMP_NAME_H_ @}*/