44#include "oscap_source.h"
45#include "oscap_export.h"
325OSCAP_API
void cpe_testexpr_free(
struct cpe_testexpr *expr);
337OSCAP_API
void cpe_lang_model_free(
struct cpe_lang_model *platformspec);
343OSCAP_API
void cpe_platform_free(
struct cpe_platform *platform);
356OSCAP_API
const char * cpe_lang_model_supported(
void);
373OSCAP_API
void cpe_lang_model_export(
const struct cpe_lang_model *spec,
const char *file);
Interface to Common Platform Enumeration (CPE) URI.
bool(*) cpe_dict_fn(const struct cpe_name *, void *)
Shared callback definition used to match CPE names to perform applicability tests.
Definition cpe_name.h:350
bool(*) cpe_check_fn(const char *, const char *, const char *, void *)
Shared callback definition used to evaluate checks to perform applicability tests.
Definition cpe_name.h:341
OSCAP_API const struct cpe_testexpr * cpe_platform_get_expr(const struct cpe_platform *item)
cpe_platform functions to get test expression
OSCAP_API struct cpe_platform_iterator * cpe_lang_model_get_platforms(const struct cpe_lang_model *item)
cpe_lang_model function to get CPE platforms
OSCAP_API struct cpe_testexpr_iterator * cpe_testexpr_get_meta_expr(const struct cpe_testexpr *item)
Get CPE expression subexpression.
Definition cpelang_priv.c:649
OSCAP_API bool cpe_platform_add_title(struct cpe_platform *platform, struct oscap_text *title)
Add title to platform.
OSCAP_API bool cpe_platform_set_remark(struct cpe_platform *platform, const char *new_remark)
Set remark of CPE platform.
OSCAP_API void cpe_testexpr_iterator_reset(struct cpe_testexpr_iterator *it)
Reset function of CPE test expression.
OSCAP_API const char * cpe_platform_get_remark(const struct cpe_platform *item)
cpe_platform functions to get remark
OSCAP_API struct cpe_platform * cpe_platform_new(void)
Constructor of CPE Platform.
Definition cpelang_priv.c:192
OSCAP_API bool cpe_platform_applicable_lang_model(const char *platform, struct cpe_lang_model *lang_model, cpe_check_fn check_cb, cpe_dict_fn dict_cb, void *usr)
Verify whether given CPE platform idref is applicable by evaluating test expression associated with i...
Definition cpelang.c:123
OSCAP_API bool cpe_platform_set_id(struct cpe_platform *platform, const char *new_id)
Set ID of CPE platform.
OSCAP_API const char * cpe_testexpr_get_meta_check_href(const struct cpe_testexpr *item)
Get check href to evaluate Only valid for CPE_LANG_OPER_CHECK.
Definition cpelang_priv.c:673
OSCAP_API const struct cpe_testexpr * cpe_testexpr_get_next(const struct cpe_testexpr *expr)
Function to get next expr from array.
Definition cpelang_priv.c:123
OSCAP_API cpe_lang_oper_t cpe_testexpr_get_oper(const struct cpe_testexpr *item)
cpe_testexpr functions to get variable members
OSCAP_API const char * cpe_platform_get_id(const struct cpe_platform *item)
cpe_platform functions to get id
OSCAP_API struct cpe_platform * cpe_lang_model_get_item(const struct cpe_lang_model *item, const char *key)
cpe_lang_model function to get CPE platforms
cpe_lang_oper_t
CPE language operators.
Definition cpe_lang.h:50
OSCAP_API const char * cpe_testexpr_get_meta_check_system(const struct cpe_testexpr *item)
Get check system to evaluate Only valid for CPE_LANG_OPER_CHECK.
Definition cpelang_priv.c:665
OSCAP_API const struct cpe_name * cpe_testexpr_get_meta_cpe(const struct cpe_testexpr *item)
Get CPE name to match against.
Definition cpelang_priv.c:657
OSCAP_API const char * cpe_testexpr_get_meta_check_id(const struct cpe_testexpr *item)
Get check idref to evaluate Only valid for CPE_LANG_OPER_CHECK.
Definition cpelang_priv.c:681
OSCAP_API bool cpe_platform_set_expr(struct cpe_platform *platform, struct cpe_testexpr *expr)
Set evaluation expression for this CPE platform.
Definition cpelang_priv.c:740
OSCAP_API struct oscap_text_iterator * cpe_platform_get_titles(const struct cpe_platform *item)
cpe_platform functions to get titles
@ CPE_LANG_OPER_CHECK
check-ref = evaluate given check
Definition cpe_lang.h:55
@ CPE_LANG_OPER_MASK
mask to extract the operator w/o possible negation
Definition cpe_lang.h:57
@ CPE_LANG_OPER_AND
logical AND
Definition cpe_lang.h:52
@ CPE_LANG_OPER_MATCH
fact-ref = match given CPE name against available dictionaries
Definition cpe_lang.h:54
@ CPE_LANG_OPER_NOT
negate
Definition cpe_lang.h:58
@ CPE_LANG_OPER_OR
logical OR
Definition cpe_lang.h:53
@ CPE_LANG_OPER_INVALID
invalid or unknown operation
Definition cpe_lang.h:51
General OpenScap functions and types.
Multilingual text processing interface.
CPE platform specification.
Definition cpelang_priv.c:63
Structure holding Common Platform Enumeration URI data.
Definition cpename.c:70
Iterator over CPE language expressions.
CPE language boolean expression.
Definition cpelang_priv.h:51
cpe_lang_oper_t oper
operator
Definition cpelang_priv.h:52
Definition oscap_source.c:66
Internationalized string iterator.
Representation of internationalizable character strings.
Definition text_priv.h:46