/home/pvrabec/tmp/openscap/openscap-0.1.4/src/CPE/cpelang.c File Reference

Interface to Common Product Enumeration (CPE) Language. More...

#include <libxml/tree.h>
#include <string.h>
#include "cpelang.h"

Functions

cpe_platform_spec_tcpe_platformspec_new_xml (xmlNodePtr root)
cpe_platform_tcpe_platform_new_xml (xmlNodePtr node)
bool cpe_langexpr_new (cpe_lang_expr_t *ret, xmlNodePtr node)
cpe_platform_spec_tcpe_platformspec_new (const char *fname)
cpe_platform_spec_tcpe_platformspec_new_empty ()
bool cpe_platformspec_add (cpe_platform_spec_t *platformspec, cpe_platform_t *platform)
void cpe_platformspec_delete (cpe_platform_spec_t *platformspec)
bool cpe_language_match_expr (cpe_t **cpe, size_t n, const cpe_lang_expr_t *expr)
bool cpe_language_match_cpe (cpe_t **cpe, size_t n, const cpe_platform_t *platform)
void cpe_platform_delete (cpe_platform_t *platform)
void cpe_langexpr_delete (cpe_lang_expr_t *expr)

Variables

const size_t CPE_PLATFORMSPEC_EMPTY_INIT_ALLOC = 8


Detailed Description

Interface to Common Product Enumeration (CPE) Language.

See more details at http://nvd.nist.gov/cpe.cfm


Function Documentation

void cpe_langexpr_delete ( cpe_lang_expr_t expr  ) 

Delete CPE language boolean expression

Parameters:
expr expression to be deleted

bool cpe_langexpr_new ( cpe_lang_expr_t ret,
xmlNodePtr  node 
)

Create new CPE language boolean expression from XML node

Parameters:
ret pointer to resulting expression
node XML node to be processed
Returns:
true on success

bool cpe_language_match_cpe ( cpe_t **  cpe,
size_t  n,
const cpe_platform_t platform 
)

Match list of CPEs against CPE language platform specification

Parameters:
cpe List of CPEs describing tested platform as a list of pointers
n number of CPEs
platform CPE language platform, that is expected (not) to match given list of CPEs
Returns:
result of expression evaluation

void cpe_platform_delete ( cpe_platform_t platform  ) 

Delete single CPE paltform specification

Parameters:
platform platform to be deleted

cpe_platform_t * cpe_platform_new_xml ( xmlNodePtr  node  ) 

New platform form XML node

Parameters:
node XML node to be processed
Returns:
new platform specification
Return values:
NULL on failure

bool cpe_platformspec_add ( cpe_platform_spec_t platformspec,
cpe_platform_t platform 
)

Add new platform entry to platformspec

Note:
platformspec will take over memory management of platform
Parameters:
platformspec list of platforms being extended
platform platform to add to the list
Returns:
true on success

void cpe_platformspec_delete ( cpe_platform_spec_t platformspec  ) 

Free specified platform specification list

Parameters:
platformspec pointer to list to be deleted

cpe_platform_spec_t* cpe_platformspec_new ( const char *  fname  ) 

New platform specification from file

Parameters:
fname file name to load
Returns:
new platform specification list
Return values:
NULL on failure

cpe_platform_spec_t * cpe_platformspec_new_xml ( xmlNodePtr  root  ) 

New platform specification from XML node

Parameters:
root XML node to be processed
Returns:
new platform specification list
Return values:
NULL on failure


Generated on Sun Mar 29 13:29:21 2009 for Open SCAP Library by  doxygen 1.5.6