00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00029 #pragma once
00030 #ifndef OSCAP_ERROR_H
00031 #define OSCAP_ERROR_H
00032
00033 #include <stdint.h>
00034 #include <stdbool.h>
00035
00036 typedef uint16_t oscap_errfamily_t;
00037 typedef uint16_t oscap_errcode_t;
00038
00045 #define OSCAP_ELEVEL_NONE 0
00046 #define OSCAP_ELEVEL_WARNING 1
00047 #define OSCAP_ELEVEL_ERROR 2
00048 #define OSCAP_ELEVEL_FATAL 3
00055 #define OSCAP_EFAMILY_NONE 0
00056 #define OSCAP_EFAMILY_GLIBC 1
00057 #define OSCAP_EFAMILY_XML 2
00058 #define OSCAP_EFAMILY_OSCAP 3
00059 #define OSCAP_EFAMILY_OVAL 4
00060 #define OSCAP_EFAMILY_CPE 5
00068 #define OSCAP_ENONE 0
00069 #define OSCAP_EALLOC 1
00070 #define OSCAP_EXMLELEM 2
00071 #define OSCAP_EREGEXP 3
00072 #define OSCAP_EINVARG 4
00073 #define OSCAP_ENOTIMPL 254
00074 #define OSCAP_EUSER1 255
00083 #define OVAL_EOVALINT 1
00084 #define OVAL_EVARTYPE 2
00085 #define OVAL_EDATATYPE 3
00086 #define OVAL_EOPERATION 4
00088 #define OVAL_EPROBECONTEXT 255
00090 #define OVAL_EPROBEINIT 256
00091 #define OVAL_EPROBECONN 257
00092 #define OVAL_EPROBENOTSUPP 258
00093 #define OVAL_EPROBEOBJINVAL 259
00094 #define OVAL_EPROBEITEMINVAL 260
00095 #define OVAL_EPROBENODATA 261
00096 #define OVAL_EPROBECLOSE 262
00097 #define OVAL_EPROBESEND 263
00098 #define OVAL_EPROBERECV 264
00099 #define OVAL_EPROBEUNKNOWN 511
00100
00107 #define CPE_EOPERATION 4
00111 #define oscap_seterr(family, code, desc) __oscap_seterr (__FILE__, __LINE__, __PRETTY_FUNCTION__, family, code, desc)
00112
00113
00119 void __oscap_seterr(const char *file, uint32_t line, const char *func,
00120 oscap_errfamily_t family, oscap_errcode_t code, const char *desc);
00121
00125 void oscap_clearerr(void);
00126
00130 bool oscap_err(void);
00131
00135 oscap_errfamily_t oscap_err_family(void);
00136
00140 oscap_errcode_t oscap_err_code(void);
00141
00145 const char *oscap_err_desc(void);
00146
00149 #endif