25 #include "oscap_platforms.h"
28 #if defined(OS_SOLARIS) || defined(OS_AIX)
36 #define ENT_GET_AREF(ent, dst, attr_name, mandatory) \
38 if (((dst) = probe_ent_getattrval(ent, attr_name)) == NULL) { \
40 _F("Attribute `%s' is missing!\n", attr_name); \
46 #define ENT_GET_STRVAL(ent, dst, dstlen, zerolen_exp) \
50 if ((___r = probe_ent_getval(ent)) == NULL) { \
51 dW("entity has no value!"); \
54 if (!SEXP_stringp(___r)) { \
55 _F("invalid type\n"); \
59 if (SEXP_string_length(___r) == 0) { \
63 SEXP_string_cstr_r(___r, dst, dstlen); \
71 FTS *ofts_match_path_fts;
72 FTSENT *ofts_match_path_fts_ent;
74 FTS *ofts_recurse_path_fts;
75 int ofts_recurse_path_fts_opts;
76 int ofts_recurse_path_curdepth;
77 char *ofts_recurse_path_pthcpy;
78 char *ofts_recurse_path_curpth;
79 dev_t ofts_recurse_path_devid;
81 pcre *ofts_path_regex;
82 pcre_extra *ofts_path_regex_extra;
83 uint32_t ofts_path_op;
99 #define OVAL_RECURSE_DIRECTION_NONE 0
100 #define OVAL_RECURSE_DIRECTION_DOWN 1
101 #define OVAL_RECURSE_DIRECTION_UP 2
103 #define OVAL_RECURSE_FILES 0x01
104 #define OVAL_RECURSE_DIRS 0x02
105 #define OVAL_RECURSE_SYMLINKS 0x04
107 #define OVAL_RECURSE_SYMLINKS_AND_DIRS (OVAL_RECURSE_SYMLINKS|OVAL_RECURSE_DIRS)
108 #define OVAL_RECURSE_FILES_AND_DIRS (OVAL_RECURSE_FILES|OVAL_RECURSE_SYMLINKS)
110 #define OVAL_RECURSE_FS_LOCAL 0
111 #define OVAL_RECURSE_FS_DEFINED 1
112 #define OVAL_RECURSE_FS_ALL 2
119 unsigned int fts_info;