155 #define probe_item_getent(item, name, n) probe_obj_getent (item, name, n)
279 int probe_cobj_add_msg(
SEXP_t *cobj,
const SEXP_t *msg);
281 int probe_cobj_add_item(
SEXP_t *cobj,
const SEXP_t *item);
447 #define PROBE_EINVAL 1
448 #define PROBE_ENOELM 2
449 #define PROBE_ENOVAL 3
450 #define PROBE_ENOATTR 4
451 #define PROBE_EINIT 5
452 #define PROBE_ENOMEM 6
453 #define PROBE_EOPNOTSUPP 7
454 #define PROBE_ERANGE 8
456 #define PROBE_EFAULT 10
457 #define PROBE_EACCESS 11
458 #define PROBE_ESETEVAL 12
459 #define PROBE_ENOENT 13
460 #define PROBE_ENOOBJ 14
461 #define PROBE_ECONNABORTED 15
462 #define PROBE_ESYSTEM 253
463 #define PROBE_EFATAL 254
464 #define PROBE_EUNKNOWN 255
466 #define PROBECMD_STE_FETCH 1
467 #define PROBECMD_OBJ_EVAL 2
468 #define PROBECMD_RESET 3
470 void *probe_init(void) __attribute__ ((unused));
475 int probe_main(probe_ctx *,
void *)
__attribute__ ((nonnull(1)));
477 #define PROBE_VARREF_HANDLING 0
478 #define PROBE_RESULT_CACHING 1
480 int probe_setoption(
int option, ...);
482 bool probe_item_filtered(
const SEXP_t *item,
const SEXP_t *filters);
517 #define PROBE_ENT_AREF(ent, dst, attr_name, invalid_exp) \
519 if (((dst) = probe_ent_getattrval(ent, attr_name)) == NULL) { \
520 dE("Attribute `%s' is missing!\n", attr_name); \
525 #define PROBE_ENT_STRVAL(ent, dst, dstlen, invalid_exp, zerolen_exp) \
529 if ((___r = probe_ent_getval(ent)) == NULL) { \
530 dW("Entity has no value!\n"); \
533 if (!SEXP_stringp(___r)) { \
534 dE("Invalid type\n"); \
538 if (SEXP_string_length(___r) == 0) { \
542 SEXP_string_cstr_r(___r, dst, dstlen); \
548 #define PROBE_ENT_I32VAL(ent, dst, invalid_exp, nil_exp) \
552 if ((___r = probe_ent_getval(ent)) == NULL) { \
553 dW("Entity has no value!\n"); \
556 if (!SEXP_numberp(___r)) { \
557 dE("Invalid type\n"); \
561 dst = SEXP_number_geti_32(___r); \
574 SEXP_t *probe_ent_from_cstr(
const char *name,
oval_datatype_t type,
const char *value,
size_t vallen);
576 oval_version_t probe_obj_get_schema_version(
const SEXP_t *obj);