00001
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033 #ifndef OVAL_TYPES_H_
00034 #define OVAL_TYPES_H_
00035
00036 #include <stdbool.h>
00037 #include <oscap.h>
00038
00039
00041 typedef enum {
00046 OVAL_FAMILY_UNKNOWN = 0,
00051 OVAL_FAMILY_AIX = 1000,
00056 OVAL_FAMILY_APACHE = 2000,
00061 OVAL_FAMILY_CATOS = 3000,
00066 OVAL_FAMILY_ESX = 4000,
00071 OVAL_FAMILY_FREEBSD = 5000,
00076 OVAL_FAMILY_HPUX = 6000,
00081 OVAL_FAMILY_INDEPENDENT = 7000,
00086 OVAL_FAMILY_IOS = 8000,
00091 OVAL_FAMILY_LINUX = 9000,
00096 OVAL_FAMILY_MACOS = 10000,
00101 OVAL_FAMILY_PIXOS = 11000,
00106 OVAL_FAMILY_SOLARIS = 12000,
00111 OVAL_FAMILY_UNIX = 13000,
00116 OVAL_FAMILY_WINDOWS = 14000
00117 } oval_family_t;
00118
00120 typedef enum {
00121 OVAL_SUBTYPE_UNKNOWN = 0,
00122 OVAL_SUBTYPE_ALL = 1,
00123 OVAL_SUBTYPE_SYSINFO = 2
00124 } oval_subtype_t;
00125
00127 typedef enum {
00128 OVAL_AIX_FILESET = 1001,
00129 OVAL_AIX_FIX = OVAL_FAMILY_AIX + 2,
00130 OVAL_AIX_OSLEVEL = OVAL_FAMILY_AIX + 3
00131 } oval_aix_subtype_t;
00132
00134 typedef enum {
00135 OVAL_APACHE_HTTPD = OVAL_FAMILY_APACHE + 1,
00136 OVAL_APACHE_VERSION = OVAL_FAMILY_APACHE + 2
00137 } oval_apache_subtype_t;
00138
00140 typedef enum {
00141 OVAL_CATOS_LINE = OVAL_FAMILY_CATOS + 1,
00142 OVAL_CATOS_MODULE = OVAL_FAMILY_CATOS + 2,
00143 OVAL_CATOS_VERSION_55 = OVAL_FAMILY_CATOS + 3,
00144 OVAL_CATOS_VERSION = OVAL_FAMILY_CATOS + 4
00145 } oval_catos_subtype_t;
00146
00148 typedef enum {
00149 OVAL_ESX_PATCH = OVAL_FAMILY_ESX + 1,
00150 OVAL_ESX_VERSION = OVAL_FAMILY_ESX + 2
00151 } oval_esx_subtype_t;
00152
00154 typedef enum {
00155 OVAL_FREEBSD_PORT_INFO = OVAL_FAMILY_FREEBSD + 1
00156 } oval_freebsd_subtype_t;
00157
00159 typedef enum {
00160 OVAL_HPUX_GETCONF = OVAL_FAMILY_HPUX + 1,
00161 OVAL_HPUX_PATCH_53 = OVAL_FAMILY_HPUX + 2,
00162 OVAL_HPUX_PATCH = OVAL_FAMILY_HPUX + 3,
00163 OVAL_HPUX_SOFTWARE_LIST = OVAL_FAMILY_HPUX + 4,
00164 OVAL_HPUX_TRUSTED_ACCOUNTS = OVAL_FAMILY_HPUX + 5
00165 } oval_hpux_subtype_t;
00166
00168 typedef enum {
00169 OVAL_INDEPENDENT_FAMILY = OVAL_FAMILY_INDEPENDENT + 1,
00170 OVAL_INDEPENDENT_FILE_MD5 = OVAL_FAMILY_INDEPENDENT + 2,
00171 OVAL_INDEPENDENT_FILE_HASH = OVAL_FAMILY_INDEPENDENT + 3,
00172 OVAL_INDEPENDENT_ENVIRONMENT_VARIABLE = OVAL_FAMILY_INDEPENDENT + 4,
00173 OVAL_INDEPENDENT_SQL = OVAL_FAMILY_INDEPENDENT + 5,
00174 OVAL_INDEPENDENT_TEXT_FILE_CONTENT_54 = OVAL_FAMILY_INDEPENDENT + 6,
00175 OVAL_INDEPENDENT_TEXT_FILE_CONTENT = OVAL_FAMILY_INDEPENDENT + 7,
00176 OVAL_INDEPENDENT_UNKNOWN = OVAL_FAMILY_INDEPENDENT + 8,
00177 OVAL_INDEPENDENT_VARIABLE = OVAL_FAMILY_INDEPENDENT + 9,
00178 OVAL_INDEPENDENT_XML_FILE_CONTENT = OVAL_FAMILY_INDEPENDENT + 10,
00179 OVAL_INDEPENDENT_LDAP57 = OVAL_FAMILY_INDEPENDENT + 11,
00180 OVAL_INDEPENDENT_LDAP = OVAL_FAMILY_INDEPENDENT + 12,
00181 OVAL_INDEPENDENT_SQL57 = OVAL_FAMILY_INDEPENDENT + 13,
00182 OVAL_INDEPENDENT_ENVIRONMENT_VARIABLE58 = OVAL_FAMILY_INDEPENDENT + 14,
00183 OVAL_INDEPENDENT_FILE_HASH58 = OVAL_FAMILY_INDEPENDENT + 15
00184 } oval_independent_subtype_t;
00185
00187 typedef enum {
00188 OVAL_IOS_GLOBAL = OVAL_FAMILY_IOS + 1,
00189 OVAL_IOS_INTERFACE = OVAL_FAMILY_IOS + 2,
00190 OVAL_IOS_LINE = OVAL_FAMILY_IOS + 3,
00191 OVAL_IOS_SNMP = OVAL_FAMILY_IOS + 4,
00192 OVAL_IOS_TCLSH = OVAL_FAMILY_IOS + 5,
00193 OVAL_IOS_VERSION_55 = OVAL_FAMILY_IOS + 6
00194 } oval_ios_subtype_t;
00195
00197 typedef enum {
00198 OVAL_LINUX_DPKG_INFO = OVAL_FAMILY_LINUX + 1,
00199 OVAL_LINUX_INET_LISTENING_SERVERS = OVAL_FAMILY_LINUX + 2,
00200 OVAL_LINUX_RPM_INFO = OVAL_FAMILY_LINUX + 3,
00201 OVAL_LINUX_SLACKWARE_PKG_INFO_TEST = OVAL_FAMILY_LINUX + 4,
00202 OVAL_LINUX_PARTITION = OVAL_FAMILY_LINUX + 5,
00203 OVAL_LINUX_IFLISTENERS = OVAL_FAMILY_LINUX + 6,
00204 OVAL_LINUX_RPMVERIFY = OVAL_FAMILY_LINUX + 7,
00205 OVAL_LINUX_SELINUXBOOLEAN = OVAL_FAMILY_LINUX + 8,
00206 OVAL_LINUX_SELINUXSECURITYCONTEXT = OVAL_FAMILY_LINUX + 9,
00207 OVAL_LINUX_INET_LISTENING_SERVER = OVAL_FAMILY_LINUX + 102,
00208 } oval_linux_subtype_t;
00209
00211 typedef enum {
00212 OVAL_MACOS_ACCOUNT_INFO = OVAL_FAMILY_MACOS + 1,
00213 OVAL_MACOS_INET_LISTENING_SERVERS = OVAL_FAMILY_MACOS + 2,
00214 OVAL_MACOS_NVRAM_INFO = OVAL_FAMILY_MACOS + 3,
00215 OVAL_MACOS_PWPOLICY = OVAL_FAMILY_MACOS + 4
00216 } oval_macos_subtype_t;
00217
00219 typedef enum {
00220 OVAL_PIXOS_LINE = OVAL_FAMILY_PIXOS + 1,
00221 OVAL_PIXOS_VERSION = OVAL_FAMILY_PIXOS + 2
00222 } oval_pixos_subtype_t;
00223
00225 typedef enum {
00226 OVAL_SOLARIS_ISAINFO = OVAL_FAMILY_SOLARIS + 1,
00227 OVAL_SOLARIS_PACKAGE = OVAL_FAMILY_SOLARIS + 2,
00228 OVAL_SOLARIS_PATCH = OVAL_FAMILY_SOLARIS + 3,
00229 OVAL_SOLARIS_SMF = OVAL_FAMILY_SOLARIS + 4
00230 } oval_solaris_subtype_t;
00231
00233 typedef enum {
00234 OVAL_UNIX_FILE = OVAL_FAMILY_UNIX + 1,
00235 OVAL_UNIX_INETD = OVAL_FAMILY_UNIX + 2,
00236 OVAL_UNIX_INTERFACE = OVAL_FAMILY_UNIX + 3,
00237 OVAL_UNIX_PASSWORD = OVAL_FAMILY_UNIX + 4,
00238 OVAL_UNIX_PROCESS = OVAL_FAMILY_UNIX + 5,
00239 OVAL_UNIX_RUNLEVEL = OVAL_FAMILY_UNIX + 6,
00240 OVAL_UNIX_SCCS = OVAL_FAMILY_UNIX + 7,
00241 OVAL_UNIX_SHADOW = OVAL_FAMILY_UNIX + 8,
00242 OVAL_UNIX_UNAME = OVAL_FAMILY_UNIX + 9,
00243 OVAL_UNIX_XINETD = OVAL_FAMILY_UNIX + 10,
00244 OVAL_UNIX_DNSCACHE = OVAL_FAMILY_UNIX + 11,
00245 OVAL_UNIX_SYSCTL = OVAL_FAMILY_UNIX + 12,
00246 OVAL_UNIX_PROCESS58 = OVAL_FAMILY_UNIX + 13,
00247 OVAL_UNIX_FILEEXTENDEDATTRIBUTE = OVAL_FAMILY_UNIX + 14,
00248 OVAL_UNIX_GCONF = OVAL_FAMILY_UNIX + 15,
00249 OVAL_UNIX_ROUTINGTABLE = OVAL_FAMILY_UNIX + 16
00250 } oval_unix_subtype_t;
00251
00253 typedef enum {
00254 OVAL_WINDOWS_ACCESS_TOKEN = OVAL_FAMILY_WINDOWS + 1,
00255 OVAL_WINDOWS_ACTIVE_DIRECTORY = OVAL_FAMILY_WINDOWS + 2,
00256 OVAL_WINDOWS_AUDIT_EVENT_POLICY = OVAL_FAMILY_WINDOWS + 3,
00257 OVAL_WINDOWS_AUDIT_EVENT_SUBCATEGORIES = OVAL_FAMILY_WINDOWS + 4,
00258 OVAL_WINDOWS_FILE = OVAL_FAMILY_WINDOWS + 5,
00259 OVAL_WINDOWS_FILE_AUDITED_PERMISSIONS_53 = OVAL_FAMILY_WINDOWS + 6,
00260 OVAL_WINDOWS_FILE_AUDITED_PERMISSIONS = OVAL_FAMILY_WINDOWS + 7,
00261 OVAL_WINDOWS_FILE_EFFECTIVE_RIGHTS_53 = OVAL_FAMILY_WINDOWS + 8,
00262 OVAL_WINDOWS_FILE_EFFECTIVE_RIGHTS = OVAL_FAMILY_WINDOWS + 9,
00263 OVAL_WINDOWS_GROUP = OVAL_FAMILY_WINDOWS + 10,
00264 OVAL_WINDOWS_GROUP_SID = OVAL_FAMILY_WINDOWS + 11,
00265 OVAL_WINDOWS_INTERFACE = OVAL_FAMILY_WINDOWS + 12,
00266 OVAL_WINDOWS_LOCKOUT_POLICY = OVAL_FAMILY_WINDOWS + 13,
00267 OVAL_WINDOWS_METABASE = OVAL_FAMILY_WINDOWS + 14,
00268 OVAL_WINDOWS_PASSWORD_POLICY = OVAL_FAMILY_WINDOWS + 15,
00269 OVAL_WINDOWS_PORT = OVAL_FAMILY_WINDOWS + 16,
00270 OVAL_WINDOWS_PRINTER_EFFECTIVE_RIGHTS = OVAL_FAMILY_WINDOWS + 17,
00271 OVAL_WINDOWS_PROCESS = OVAL_FAMILY_WINDOWS + 18,
00272 OVAL_WINDOWS_REGISTRY = OVAL_FAMILY_WINDOWS + 19,
00273 OVAL_WINDOWS_REGKEY_AUDITED_PERMISSIONS_53 = OVAL_FAMILY_WINDOWS + 20,
00274 OVAL_WINDOWS_REGKEY_AUDITED_PERMISSIONS = OVAL_FAMILY_WINDOWS + 21,
00275 OVAL_WINDOWS_REGKEY_EFFECTIVE_RIGHTS_53 = OVAL_FAMILY_WINDOWS + 22,
00276 OVAL_WINDOWS_REGKEY_EFFECTIVE_RIGHTS = OVAL_FAMILY_WINDOWS + 23,
00277 OVAL_WINDOWS_SHARED_RESOURCE = OVAL_FAMILY_WINDOWS + 24,
00278 OVAL_WINDOWS_SID = OVAL_FAMILY_WINDOWS + 25,
00279 OVAL_WINDOWS_SID_SID = OVAL_FAMILY_WINDOWS + 26,
00280 OVAL_WINDOWS_USER_ACCESS_CONTROL = OVAL_FAMILY_WINDOWS + 27,
00281 OVAL_WINDOWS_USER = OVAL_FAMILY_WINDOWS + 28,
00282 OVAL_WINDOWS_USER_SID_55 = OVAL_FAMILY_WINDOWS + 29,
00283 OVAL_WINDOWS_USER_SID = OVAL_FAMILY_WINDOWS + 30,
00284 OVAL_WINDOWS_VOLUME = OVAL_FAMILY_WINDOWS + 31,
00285 OVAL_WINDOWS_WMI = OVAL_FAMILY_WINDOWS + 32,
00286 OVAL_WINDOWS_WUA_UPDATE_SEARCHER = OVAL_FAMILY_WINDOWS + 33
00287 } oval_windows_subtype_t;
00288
00290 typedef enum {
00291 XML_VALIDITY_WARNING = 1,
00292 XML_VALIDITY_ERROR = 2,
00293 XML_WARNING = 3,
00294 XML_ERROR = 4,
00295 OVAL_LOG_INFO = 15,
00296 OVAL_LOG_DEBUG = 16,
00297 OVAL_LOG_WARN = 17
00298 } oval_xml_severity_t;
00299
00314 typedef enum {
00315 OVAL_RESULT_TRUE = 1,
00316 OVAL_RESULT_FALSE = 2,
00317 OVAL_RESULT_UNKNOWN = 4,
00318 OVAL_RESULT_ERROR = 8,
00319 OVAL_RESULT_NOT_EVALUATED = 16,
00320 OVAL_RESULT_NOT_APPLICABLE = 32
00321 } oval_result_t;
00336 struct oval_variable_model;
00340 typedef enum { OVAL_CLASS_UNKNOWN = 0, OVAL_CLASS_COMPLIANCE = 1, OVAL_CLASS_INVENTORY = 2, OVAL_CLASS_MISCELLANEOUS = 3, OVAL_CLASS_PATCH = 4, OVAL_CLASS_VULNERABILITY = 5,
00347 } oval_definition_class_t;
00348
00349
00350 #endif