added some new TCG IF-M message subtypes and attributes
[strongswan.git] / src / libtncif / tncif_pa_subtypes.c
1 /*
2 * Copyright (C) 2010-2011 Andreas Steffen
3 *
4 * HSR Hochschule fuer Technik Rapperswil
5 *
6 * This program is free software; you can redistribute it and/or modify it
7 * under the terms of the GNU General Public License as published by the
8 * Free Software Foundation; either version 2 of the License, or (at your
9 * option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
10 *
11 * This program is distributed in the hope that it will be useful, but
12 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
13 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * for more details.
15 */
16
17 #include "tncif_pa_subtypes.h"
18
19 ENUM_BEGIN(pa_subtype_ietf_names, PA_SUBTYPE_IETF_TESTING, PA_SUBTYPE_IETF_NEA_CLIENT,
20 "Testing",
21 "Operating System",
22 "Anti-Virus",
23 "Anti-Spyware",
24 "Anti-Malware",
25 "Firewall",
26 "IDPS",
27 "VPN",
28 "NEA Client"
29 );
30 ENUM_NEXT(pa_subtype_ietf_names, PA_SUBTYPE_IETF_ANY, PA_SUBTYPE_IETF_ANY,
31 PA_SUBTYPE_IETF_NEA_CLIENT,
32 "ANY"
33 );
34 ENUM_END(pa_subtype_ietf_names, PA_SUBTYPE_IETF_ANY);
35
36 ENUM_BEGIN(pa_subtype_tcg_names, PA_SUBTYPE_TCG_PTS, PA_SUBTYPE_TCG_SWID,
37 "PTS",
38 "SCAP",
39 "SWID"
40 );
41 ENUM_NEXT(pa_subtype_tcg_names, PA_SUBTYPE_TCG_ANY, PA_SUBTYPE_TCG_ANY,
42 PA_SUBTYPE_TCG_SWID,
43 "ANY"
44 );
45 ENUM_END(pa_subtype_tcg_names, PA_SUBTYPE_TCG_ANY);
46
47 ENUM_BEGIN(pa_subtype_fhh_names, PA_SUBTYPE_FHH_HOSTSCANNER, PA_SUBTYPE_FHH_DUMMY,
48 "HostScanner",
49 "Dummy"
50 );
51 ENUM_NEXT(pa_subtype_fhh_names, PA_SUBTYPE_FHH_PLATID, PA_SUBTYPE_FHH_ATTESTATION,
52 PA_SUBTYPE_FHH_DUMMY,
53 "PlatformID",
54 "Attestation"
55 );
56 ENUM_NEXT(pa_subtype_fhh_names, PA_SUBTYPE_FHH_CLAMAV, PA_SUBTYPE_FHH_CLAMAV,
57 PA_SUBTYPE_FHH_ATTESTATION,
58 "ClamAV"
59 );
60 ENUM_NEXT(pa_subtype_fhh_names, PA_SUBTYPE_FHH_ANY, PA_SUBTYPE_FHH_ANY,
61 PA_SUBTYPE_FHH_CLAMAV,
62 "ANY"
63 );
64 ENUM_END(pa_subtype_fhh_names, PA_SUBTYPE_FHH_ANY);
65
66 ENUM_BEGIN(pa_subtype_ita_names, PA_SUBTYPE_ITA_TEST, PA_SUBTYPE_ITA_TEST,
67 "Test"
68 );
69 ENUM_NEXT(pa_subtype_ita_names, PA_SUBTYPE_ITA_ANY, PA_SUBTYPE_ITA_ANY,
70 PA_SUBTYPE_ITA_TEST,
71 "ANY"
72 );
73 ENUM_END(pa_subtype_ita_names, PA_SUBTYPE_ITA_ANY);
74
75 /**
76 * See header
77 */
78 enum_name_t* get_pa_subtype_names(pen_t pen)
79 {
80 switch (pen)
81 {
82 case PEN_IETF:
83 return pa_subtype_ietf_names;
84 case PEN_TCG:
85 return pa_subtype_tcg_names;
86 case PEN_FHH:
87 return pa_subtype_fhh_names;
88 case PEN_ITA:
89 return pa_subtype_ita_names;
90 default:
91 break;
92 }
93 return NULL;
94 }