cpename.c File Reference

Interface to Common Platform Enumeration (CPE) URI. More...

`#include <string.h>`
`#include <stdio.h>`
`#include <pcre.h>`
`#include <ctype.h>`
`#include "cpe_name.h"`
`#include "common/util.h"`

## Data Structures

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

## Macros

#define | _BSD_SOURCE
#define | CPE_URI_SUPPORTED "2.3"

## Enumerations

enum | cpe_field_t { CPE_FIELD_TYPE = 0, CPE_FIELD_VENDOR = 1, CPE_FIELD_PRODUCT = 2, CPE_FIELD_VERSION = 3, CPE_FIELD_UPDATE = 4, CPE_FIELD_EDITION = 5, CPE_FIELD_LANGUAGE = 6, CPE_BASIC_FIELDNUM = 7, CPE_FIELD_SW_EDITION = 7, CPE_FIELD_TARGET_SW = 8, CPE_FIELD_TARGET_HW = 9, CPE_FIELD_OTHER = 10, CPE_TOTAL_FIELDNUM = 11 }

## Functions

char ** | cpe_uri_split (char *str, const char *delim)
bool | cpe_name_check (const char *str)
struct cpe_name * | cpe_name_new (const char *cpestr)
struct cpe_name * | cpe_name_clone (struct cpe_name *old_name)
bool | cpe_name_match_one (const struct cpe_name *cpe, const struct cpe_name *against)
bool | cpe_name_match_cpes (const struct cpe_name *name, size_t n, struct cpe_name **namelist)
int | cpe_name_match_strs (const char *candidate, size_t n, char **targets)
cpe_format_t | cpe_name_get_format_of_str (const char *str)
| Looks at given string and returns format it is in. More...
char * | cpe_name_get_as_format (const struct cpe_name *cpe, cpe_format_t format)
char * | cpe_name_get_as_str (const struct cpe_name *cpe)
int | cpe_name_write (const struct cpe_name *cpe, FILE *f)
void | cpe_name_free (struct cpe_name *cpe)
const char * | cpe_name_supported (void)

## Detailed Description

Interface to Common Platform Enumeration (CPE) URI.

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