CPE URIs
[CPE]

Data Structures

struct  cpe_name
 Structure holding Common Platform Enumeration URI data. More...

Files

file  cpeuri.h
 

Interface to Common Platform Enumeration (CPE) URI.


Enumerations

enum  cpe_part_t { CPE_PART_NONE, CPE_PART_HW, CPE_PART_OS, CPE_PART_APP }
 

enumeration of possible CPE parts

More...

Functions

struct cpe_namecpe_name::cpe_name_new (const char *cpe)
 Create a new CPE structure from string cpe.
void cpe_name::cpe_name_free (struct cpe_name *cpe)
 Destructor.

Getters

Return value is pointer to structure's member.

Do not free unless you null the pointer in the structure. Use remove function otherwise.



cpe_part_t cpe_name::cpe_name_get_part (const struct cpe_name *cpe)
 Get CPE name part type field.
const char * cpe_name::cpe_name_get_vendor (const struct cpe_name *cpe)
 Get CPE name vendor field.
const char * cpe_name::cpe_name_get_product (const struct cpe_name *cpe)
 Get CPE name product field.
const char * cpe_name::cpe_name_get_version (const struct cpe_name *cpe)
 Get CPE name version field.
const char * cpe_name::cpe_name_get_update (const struct cpe_name *cpe)
 Get CPE name update field.
const char * cpe_name::cpe_name_get_edition (const struct cpe_name *cpe)
 Get CPE name edition field.
const char * cpe_name::cpe_name_get_language (const struct cpe_name *cpe)
 Get CPE name language field.
char * cpe_name::cpe_name_get_uri (const struct cpe_name *cpe)
 Return CPE URI as a new string.

Setters

For lists use add functions.

Parameters of set functions are duplicated in memory and need to be freed by caller.



bool cpe_name::cpe_name_set_part (struct cpe_name *cpe, cpe_part_t newval)
 Set CPE name part type field.
bool cpe_name::cpe_name_set_vendor (struct cpe_name *cpe, const char *newval)
 Set CPE name vendor field.
bool cpe_name::cpe_name_set_product (struct cpe_name *cpe, const char *newval)
 Set CPE name product field.
bool cpe_name::cpe_name_set_version (struct cpe_name *cpe, const char *newval)
 Set CPE name version field.
bool cpe_name::cpe_name_set_update (struct cpe_name *cpe, const char *newval)
 Set CPE name update field.
bool cpe_name::cpe_name_set_edition (struct cpe_name *cpe, const char *newval)
 Set CPE name edition field.
bool cpe_name::cpe_name_set_language (struct cpe_name *cpe, const char *newval)
 Set CPE name language field.

Evaluators



bool cpe_name::cpe_name_match_one (const struct cpe_name *cpe, const struct cpe_name *against)
 Check if candidate CPE cpe matches CPE against according to CPE specification v 2.1.
bool cpe_name::cpe_name_match_cpes (const struct cpe_name *name, size_t n, struct cpe_name **namelist)
 Check if CPE name matches any CPE in namelist.
int cpe_name::cpe_name_write (const struct cpe_name *cpe, FILE *f)
 Write CPE URI cpe to file a descriptor f.
bool cpe_name::cpe_name_check (const char *str)
 Ensures str is in proper CPE format.
int cpe_name::cpe_name_match_strs (const char *candidate, size_t n, char **targets)
 Match CPE URI candidate against list of n CPE URIs given by targets.
const char * cpe_name::cpe_name_supported (void)
 Get supported version of CPE uri XML.

Enumeration Type Documentation

enum cpe_part_t

enumeration of possible CPE parts

Enumerator:
CPE_PART_NONE 

no part specified

CPE_PART_HW 

hardware

CPE_PART_OS 

operating system

CPE_PART_APP 

application


Function Documentation

bool cpe_name_check ( const char *  str  )  [inherited]

Ensures str is in proper CPE format.

Parameters:
str string to be validated
void cpe_name_free ( struct cpe_name cpe  )  [inherited]

Destructor.

Frees any used resources and safely destroys cpe.

Parameters:
cpe CPE to be deleted
char * cpe_name_get_uri ( const struct cpe_name cpe  )  [inherited]

Return CPE URI as a new string.

Note:
Returned string is newly allocated and is caller's responsibility to free it.
Parameters:
cpe CPE to be converted
Returns:
CPE URI as string
Return values:
NULL on failure
bool cpe_name_match_cpes ( const struct cpe_name name,
size_t  n,
struct cpe_name **  namelist 
) [inherited]

Check if CPE name matches any CPE in namelist.

Parameters:
name name to be looked-up
n number of items in namelist
namelist list of names to search in
Returns:
true if name was found within namelist
int cpe_name_match_strs ( const char *  candidate,
size_t  n,
char **  targets 
) [inherited]

Match CPE URI candidate against list of n CPE URIs given by targets.

Parameters:
candidate candidarte CPE URI as string
n number of items in targets
targets list of CPE URIs to be candidate matched against
Returns:
index of first URI in targets, that matched
Return values:
-1 on mismatch
-2 invalid CPE URI was given as parameter
struct cpe_name * cpe_name_new ( const char *  cpe  )  [read, inherited]

Create a new CPE structure from string cpe.

Note:
If cpe is NULL, empty cpe will be created.
Parameters:
cpe CPE URI string to be parsed
Returns:
new structure holding parsed data
Return values:
NULL on failure
const char * cpe_name_supported ( void   )  [inherited]

Get supported version of CPE uri XML.

Returns:
version of XML file format
int cpe_name_write ( const struct cpe_name cpe,
FILE *  f 
) [inherited]

Write CPE URI cpe to file a descriptor f.

Parameters:
cpe cpe to write
f file descriptor to write CPE URI to
Returns:
number of written characters
Return values:
<0 on failure

Generated on 14 Jul 2010 for Open SCAP Library by  doxygen 1.6.1