defined SUBTYPE_ANY for all known Vendor IDs
[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_PTS,
37 "PTS"
38 );
39 ENUM_NEXT(pa_subtype_tcg_names, PA_SUBTYPE_TCG_ANY, PA_SUBTYPE_TCG_ANY,
40 PA_SUBTYPE_TCG_PTS,
41 "ANY"
42 );
43 ENUM_END(pa_subtype_tcg_names, PA_SUBTYPE_TCG_ANY);
44
45 ENUM_BEGIN(pa_subtype_fhh_names, PA_SUBTYPE_FHH_HOSTSCANNER, PA_SUBTYPE_FHH_DUMMY,
46 "HostScanner",
47 "Dummy"
48 );
49 ENUM_NEXT(pa_subtype_fhh_names, PA_SUBTYPE_FHH_PLATID, PA_SUBTYPE_FHH_ATTESTATION,
50 PA_SUBTYPE_FHH_DUMMY,
51 "PlatformID",
52 "Attestation"
53 );
54 ENUM_NEXT(pa_subtype_fhh_names, PA_SUBTYPE_FHH_CLAMAV, PA_SUBTYPE_FHH_CLAMAV,
55 PA_SUBTYPE_FHH_ATTESTATION,
56 "ClamAV"
57 );
58 ENUM_NEXT(pa_subtype_fhh_names, PA_SUBTYPE_FHH_ANY, PA_SUBTYPE_FHH_ANY,
59 PA_SUBTYPE_FHH_CLAMAV,
60 "ANY"
61 );
62 ENUM_END(pa_subtype_fhh_names, PA_SUBTYPE_FHH_ANY);
63
64 ENUM_BEGIN(pa_subtype_ita_names, PA_SUBTYPE_ITA_TEST, PA_SUBTYPE_ITA_SCANNER,
65 "Test",
66 "Scanner"
67 );
68 ENUM_NEXT(pa_subtype_ita_names, PA_SUBTYPE_ITA_ANY, PA_SUBTYPE_ITA_ANY,
69 PA_SUBTYPE_ITA_SCANNER,
70 "ANY"
71 );
72 ENUM_END(pa_subtype_ita_names, PA_SUBTYPE_ITA_ANY);
73
74 /**
75 * See header
76 */
77 enum_name_t* get_pa_subtype_names(pen_t pen)
78 {
79 switch (pen)
80 {
81 case PEN_IETF:
82 return pa_subtype_ietf_names;
83 case PEN_TCG:
84 return pa_subtype_tcg_names;
85 case PEN_FHH:
86 return pa_subtype_fhh_names;
87 case PEN_ITA:
88 return pa_subtype_ita_names;
89 default:
90 break;
91 }
92 return NULL;
93 }