Sophie

Sophie

distrib > Mandriva > current > x86_64 > by-pkgid > 3736f276bb1ccfbcee6cb2d27b25d981 > files > 162

openscap-devel-0.5.7-1mdv2010.1.x86_64.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>Open SCAP Library: CPE URIs</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.6.1 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>CPE URIs<br/>
<small>
[<a class="el" href="group__CPE.html">CPE</a>]</small>
</h1><table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Data Structures</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcpe__name.html">cpe_name</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Structure holding Common Platform Enumeration URI data.  <a href="structcpe__name.html#_details">More...</a><br/></td></tr>
<tr><td colspan="2"><h2>Files</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="cpeuri_8h.html">cpeuri.h</a></td></tr>

<p><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><p>Interface to Common Platform Enumeration (CPE) URI. </p>
<br/></td></tr>
</p>
<tr><td colspan="2"><h2>Enumerations</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cpeuri.html#ga683b693cae1d4b68f257be24c4cc2ab7">cpe_part_t</a> { <a class="el" href="group__cpeuri.html#gga683b693cae1d4b68f257be24c4cc2ab7a5c781205ea171ce6daacf4202cd8dfcd">CPE_PART_NONE</a>, 
<a class="el" href="group__cpeuri.html#gga683b693cae1d4b68f257be24c4cc2ab7a56e20d753d7bacb0a52ab1e2f77deef9">CPE_PART_HW</a>, 
<a class="el" href="group__cpeuri.html#gga683b693cae1d4b68f257be24c4cc2ab7abcc204922bfb1b0b9aeee3e9c5253150">CPE_PART_OS</a>, 
<a class="el" href="group__cpeuri.html#gga683b693cae1d4b68f257be24c4cc2ab7a6a885dbf3b1805209dd77f9c4747850a">CPE_PART_APP</a>
 }</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><p>enumeration of possible CPE parts </p>
 <a href="group__cpeuri.html#ga683b693cae1d4b68f257be24c4cc2ab7">More...</a><br/></td></tr>
<tr><td colspan="2"><h2>New functions</h2></td></tr>
<tr><td colspan="2"><p><a class="anchor" id="amgrp73a4128f20867fa23ebb2e75e58922df"></a>Constructors of CVE model structures.</p>
<p>Free function returns new empty allocated structure. If returns non NULL it need to be freed by the caller. </p>
<br/><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structcpe__name.html">cpe_name</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cpeuri.html#ga6177bf1f59c75b3cdace48d52a817257">cpe_name::cpe_name_new</a> (const char *cpe)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create a new CPE structure from string <em>cpe</em>.  <a href="#ga6177bf1f59c75b3cdace48d52a817257"></a><br/></td></tr>
<tr><td colspan="2"><h2>Free functions</h2></td></tr>
<tr><td colspan="2"><p><a class="anchor" id="amgrp237dd65bc76b7de56066830910ced6ed"></a>Destructors of CVE model structures.</p>
<p>Functions free structures with all members recursively. For simple deletion of entity use remove functions. </p>
<br/><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cpeuri.html#ga6fcacf25ee259b5b9343da178722ea1b">cpe_name::cpe_name_free</a> (struct <a class="el" href="structcpe__name.html">cpe_name</a> *cpe)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destructor.  <a href="#ga6fcacf25ee259b5b9343da178722ea1b"></a><br/></td></tr>
<tr><td colspan="2"><h2>Get functions</h2></td></tr>
<tr><td colspan="2"><p><a class="anchor" id="amgrpc2ac1eb4de8ec5add5567cbae2f237e5"></a>Functions for getting attributes from CVE model structures.</p>
<p>Return value is pointer to structure's member. Do not free unless you null the pointer in the structure. Use remove function otherwise. </p>
<br/><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga9471548809b90edca59ae2cec770575e"></a><!-- doxytag: member="cpeuri::cpe_name_get_part" ref="ga9471548809b90edca59ae2cec770575e" args="(const struct cpe_name *cpe)" -->
<a class="el" href="group__cpeuri.html#ga683b693cae1d4b68f257be24c4cc2ab7">cpe_part_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cpeuri.html#ga9471548809b90edca59ae2cec770575e">cpe_name::cpe_name_get_part</a> (const struct <a class="el" href="structcpe__name.html">cpe_name</a> *cpe)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get CPE name part type field. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga8407fac5886e8440ebe512fe99e3038e"></a><!-- doxytag: member="cpeuri::cpe_name_get_vendor" ref="ga8407fac5886e8440ebe512fe99e3038e" args="(const struct cpe_name *cpe)" -->
const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cpeuri.html#ga8407fac5886e8440ebe512fe99e3038e">cpe_name::cpe_name_get_vendor</a> (const struct <a class="el" href="structcpe__name.html">cpe_name</a> *cpe)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get CPE name vendor field. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gacb0ea70e7a1f33e597c7a5c949852e5e"></a><!-- doxytag: member="cpeuri::cpe_name_get_product" ref="gacb0ea70e7a1f33e597c7a5c949852e5e" args="(const struct cpe_name *cpe)" -->
const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cpeuri.html#gacb0ea70e7a1f33e597c7a5c949852e5e">cpe_name::cpe_name_get_product</a> (const struct <a class="el" href="structcpe__name.html">cpe_name</a> *cpe)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get CPE name product field. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga441bc68b100261b3a477ba10bea9f319"></a><!-- doxytag: member="cpeuri::cpe_name_get_version" ref="ga441bc68b100261b3a477ba10bea9f319" args="(const struct cpe_name *cpe)" -->
const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cpeuri.html#ga441bc68b100261b3a477ba10bea9f319">cpe_name::cpe_name_get_version</a> (const struct <a class="el" href="structcpe__name.html">cpe_name</a> *cpe)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get CPE name version field. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga13d719e99ec308110024e87aaeb1309e"></a><!-- doxytag: member="cpeuri::cpe_name_get_update" ref="ga13d719e99ec308110024e87aaeb1309e" args="(const struct cpe_name *cpe)" -->
const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cpeuri.html#ga13d719e99ec308110024e87aaeb1309e">cpe_name::cpe_name_get_update</a> (const struct <a class="el" href="structcpe__name.html">cpe_name</a> *cpe)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get CPE name update field. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga636aef898ccd7b5e7314336a4756add9"></a><!-- doxytag: member="cpeuri::cpe_name_get_edition" ref="ga636aef898ccd7b5e7314336a4756add9" args="(const struct cpe_name *cpe)" -->
const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cpeuri.html#ga636aef898ccd7b5e7314336a4756add9">cpe_name::cpe_name_get_edition</a> (const struct <a class="el" href="structcpe__name.html">cpe_name</a> *cpe)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get CPE name edition field. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaeb40ced7dc773e5303354ccd6ddeb07b"></a><!-- doxytag: member="cpeuri::cpe_name_get_language" ref="gaeb40ced7dc773e5303354ccd6ddeb07b" args="(const struct cpe_name *cpe)" -->
const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cpeuri.html#gaeb40ced7dc773e5303354ccd6ddeb07b">cpe_name::cpe_name_get_language</a> (const struct <a class="el" href="structcpe__name.html">cpe_name</a> *cpe)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get CPE name language field. <br/></td></tr>
<tr><td colspan="2"><h2>Set functions</h2></td></tr>
<tr><td colspan="2"><p><a class="anchor" id="amgrp8b7ecf2f4bd25da1aae981677901d55d"></a>Set functions assign values to members of structures except lists.</p>
<p>For lists use add functions. Parameters of set functions are duplicated in memory and need to be freed by caller. </p>
<br/><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gae91ca3e6fb76cacf2f2bbf3227fa3050"></a><!-- doxytag: member="cpeuri::cpe_name_set_part" ref="gae91ca3e6fb76cacf2f2bbf3227fa3050" args="(struct cpe_name *cpe, cpe_part_t newval)" -->
bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cpeuri.html#gae91ca3e6fb76cacf2f2bbf3227fa3050">cpe_name::cpe_name_set_part</a> (struct <a class="el" href="structcpe__name.html">cpe_name</a> *cpe, <a class="el" href="group__cpeuri.html#ga683b693cae1d4b68f257be24c4cc2ab7">cpe_part_t</a> newval)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set CPE name part type field. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaca661342dca3ba6f24396c3c4d52e995"></a><!-- doxytag: member="cpeuri::cpe_name_set_vendor" ref="gaca661342dca3ba6f24396c3c4d52e995" args="(struct cpe_name *cpe, const char *newval)" -->
bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cpeuri.html#gaca661342dca3ba6f24396c3c4d52e995">cpe_name::cpe_name_set_vendor</a> (struct <a class="el" href="structcpe__name.html">cpe_name</a> *cpe, const char *newval)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set CPE name vendor field. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga9ac1773a3bafd52855835bea7a9fc1d7"></a><!-- doxytag: member="cpeuri::cpe_name_set_product" ref="ga9ac1773a3bafd52855835bea7a9fc1d7" args="(struct cpe_name *cpe, const char *newval)" -->
bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cpeuri.html#ga9ac1773a3bafd52855835bea7a9fc1d7">cpe_name::cpe_name_set_product</a> (struct <a class="el" href="structcpe__name.html">cpe_name</a> *cpe, const char *newval)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set CPE name product field. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga6a65fbe17d81d69cac34c4d848f1be35"></a><!-- doxytag: member="cpeuri::cpe_name_set_version" ref="ga6a65fbe17d81d69cac34c4d848f1be35" args="(struct cpe_name *cpe, const char *newval)" -->
bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cpeuri.html#ga6a65fbe17d81d69cac34c4d848f1be35">cpe_name::cpe_name_set_version</a> (struct <a class="el" href="structcpe__name.html">cpe_name</a> *cpe, const char *newval)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set CPE name version field. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga1d90b5f12042253d4455efb2d33c4730"></a><!-- doxytag: member="cpeuri::cpe_name_set_update" ref="ga1d90b5f12042253d4455efb2d33c4730" args="(struct cpe_name *cpe, const char *newval)" -->
bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cpeuri.html#ga1d90b5f12042253d4455efb2d33c4730">cpe_name::cpe_name_set_update</a> (struct <a class="el" href="structcpe__name.html">cpe_name</a> *cpe, const char *newval)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set CPE name update field. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga8fa070ce8bc4d6811ba68388328c5cea"></a><!-- doxytag: member="cpeuri::cpe_name_set_edition" ref="ga8fa070ce8bc4d6811ba68388328c5cea" args="(struct cpe_name *cpe, const char *newval)" -->
bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cpeuri.html#ga8fa070ce8bc4d6811ba68388328c5cea">cpe_name::cpe_name_set_edition</a> (struct <a class="el" href="structcpe__name.html">cpe_name</a> *cpe, const char *newval)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set CPE name edition field. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga7f069900ea6c421e00a38caff4cf768a"></a><!-- doxytag: member="cpeuri::cpe_name_set_language" ref="ga7f069900ea6c421e00a38caff4cf768a" args="(struct cpe_name *cpe, const char *newval)" -->
bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cpeuri.html#ga7f069900ea6c421e00a38caff4cf768a">cpe_name::cpe_name_set_language</a> (struct <a class="el" href="structcpe__name.html">cpe_name</a> *cpe, const char *newval)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set CPE name language field. <br/></td></tr>
<tr><td colspan="2"><h2>Other functions</h2></td></tr>
<tr><td colspan="2"><p><a class="anchor" id="amgrpb175402ebe89f00c62233c5453c5a243"></a> </p>
<br/><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaf3b2a0e23c35f22e126a9cd221bd6e70"></a><!-- doxytag: member="cpeuri::cpe_name_match_one" ref="gaf3b2a0e23c35f22e126a9cd221bd6e70" args="(const struct cpe_name *cpe, const struct cpe_name *against)" -->
bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cpeuri.html#gaf3b2a0e23c35f22e126a9cd221bd6e70">cpe_name::cpe_name_match_one</a> (const struct <a class="el" href="structcpe__name.html">cpe_name</a> *cpe, const struct <a class="el" href="structcpe__name.html">cpe_name</a> *against)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check if candidate CPE <em>cpe</em> matches CPE <em>against</em> according to CPE specification v 2.1. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cpeuri.html#gada347ce1193dc959312f0fefbdab9fa3">cpe_name::cpe_name_match_cpes</a> (const struct <a class="el" href="structcpe__name.html">cpe_name</a> *name, size_t n, struct <a class="el" href="structcpe__name.html">cpe_name</a> **namelist)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check if CPE <em>name</em> matches any CPE in <em>namelist</em>.  <a href="#gada347ce1193dc959312f0fefbdab9fa3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cpeuri.html#ga855d92cdf74999859b86ef855b8a3170">cpe_name::cpe_name_get_uri</a> (const struct <a class="el" href="structcpe__name.html">cpe_name</a> *cpe)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return CPE URI as a new string.  <a href="#ga855d92cdf74999859b86ef855b8a3170"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cpeuri.html#ga5830b374983190bd7a0bdabd93808a03">cpe_name::cpe_name_write</a> (const struct <a class="el" href="structcpe__name.html">cpe_name</a> *cpe, FILE *f)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Write CPE URI <em>cpe</em> to file a descriptor <em>f</em>.  <a href="#ga5830b374983190bd7a0bdabd93808a03"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cpeuri.html#gafd151f3ad1a0a5df02ad69643f083c19">cpe_name::cpe_name_check</a> (const char *str)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Ensures <em>str</em> is in proper CPE format.  <a href="#gafd151f3ad1a0a5df02ad69643f083c19"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cpeuri.html#ga12c833bf057353c756b92570e0cfa047">cpe_name::cpe_name_match_strs</a> (const char *candidate, size_t n, char **targets)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Match CPE URI <em>candidate</em> against list of <em>n</em> CPE URIs given by <em>targets</em>.  <a href="#ga12c833bf057353c756b92570e0cfa047"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cpeuri.html#gaf107a1e1f7eb3aa94d941e003585f6a1">cpe_name::cpe_name_supported</a> (void)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get supported version of CPE uri XML.  <a href="#gaf107a1e1f7eb3aa94d941e003585f6a1"></a><br/></td></tr>
</table>
<hr/><h2>Enumeration Type Documentation</h2>
<a class="anchor" id="ga683b693cae1d4b68f257be24c4cc2ab7"></a><!-- doxytag: member="cpeuri.h::cpe_part_t" ref="ga683b693cae1d4b68f257be24c4cc2ab7" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__cpeuri.html#ga683b693cae1d4b68f257be24c4cc2ab7">cpe_part_t</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>enumeration of possible CPE parts </p>
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" id="gga683b693cae1d4b68f257be24c4cc2ab7a5c781205ea171ce6daacf4202cd8dfcd"></a><!-- doxytag: member="CPE_PART_NONE" ref="gga683b693cae1d4b68f257be24c4cc2ab7a5c781205ea171ce6daacf4202cd8dfcd" args="" -->CPE_PART_NONE</em>&nbsp;</td><td>
<p>no part specified </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="gga683b693cae1d4b68f257be24c4cc2ab7a56e20d753d7bacb0a52ab1e2f77deef9"></a><!-- doxytag: member="CPE_PART_HW" ref="gga683b693cae1d4b68f257be24c4cc2ab7a56e20d753d7bacb0a52ab1e2f77deef9" args="" -->CPE_PART_HW</em>&nbsp;</td><td>
<p>hardware </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="gga683b693cae1d4b68f257be24c4cc2ab7abcc204922bfb1b0b9aeee3e9c5253150"></a><!-- doxytag: member="CPE_PART_OS" ref="gga683b693cae1d4b68f257be24c4cc2ab7abcc204922bfb1b0b9aeee3e9c5253150" args="" -->CPE_PART_OS</em>&nbsp;</td><td>
<p>operating system </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="gga683b693cae1d4b68f257be24c4cc2ab7a6a885dbf3b1805209dd77f9c4747850a"></a><!-- doxytag: member="CPE_PART_APP" ref="gga683b693cae1d4b68f257be24c4cc2ab7a6a885dbf3b1805209dd77f9c4747850a" args="" -->CPE_PART_APP</em>&nbsp;</td><td>
<p>application </p>
</td></tr>
</table>
</dd>
</dl>

</div>
</div>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="gafd151f3ad1a0a5df02ad69643f083c19"></a><!-- doxytag: member="cpe_name::cpe_name_check" ref="gafd151f3ad1a0a5df02ad69643f083c19" args="(const char *str)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool cpe_name_check </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>str</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Ensures <em>str</em> is in proper CPE format. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>str</em>&nbsp;</td><td>string to be validated </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga6fcacf25ee259b5b9343da178722ea1b"></a><!-- doxytag: member="cpe_name::cpe_name_free" ref="ga6fcacf25ee259b5b9343da178722ea1b" args="(struct cpe_name *cpe)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void cpe_name_free </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structcpe__name.html">cpe_name</a> *&nbsp;</td>
          <td class="paramname"> <em>cpe</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Destructor. </p>
<p>Frees any used resources and safely destroys <em>cpe</em>.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>cpe</em>&nbsp;</td><td>CPE to be deleted </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga855d92cdf74999859b86ef855b8a3170"></a><!-- doxytag: member="cpe_name::cpe_name_get_uri" ref="ga855d92cdf74999859b86ef855b8a3170" args="(const struct cpe_name *cpe)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char * cpe_name_get_uri </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structcpe__name.html">cpe_name</a> *&nbsp;</td>
          <td class="paramname"> <em>cpe</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return CPE URI as a new string. </p>
<dl class="note"><dt><b>Note:</b></dt><dd>Returned string is newly allocated and is caller's responsibility to free it. </dd></dl>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>cpe</em>&nbsp;</td><td>CPE to be converted </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>CPE URI as string </dd></dl>
<dl><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>NULL</em>&nbsp;</td><td>on failure </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gada347ce1193dc959312f0fefbdab9fa3"></a><!-- doxytag: member="cpe_name::cpe_name_match_cpes" ref="gada347ce1193dc959312f0fefbdab9fa3" args="(const struct cpe_name *name, size_t n, struct cpe_name **namelist)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool cpe_name_match_cpes </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structcpe__name.html">cpe_name</a> *&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>n</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structcpe__name.html">cpe_name</a> **&nbsp;</td>
          <td class="paramname"> <em>namelist</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Check if CPE <em>name</em> matches any CPE in <em>namelist</em>. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>name to be looked-up </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>n</em>&nbsp;</td><td>number of items in namelist </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>namelist</em>&nbsp;</td><td>list of names to search in </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if <em>name</em> was found within <em>namelist</em> </dd></dl>

</div>
</div>
<a class="anchor" id="ga12c833bf057353c756b92570e0cfa047"></a><!-- doxytag: member="cpe_name::cpe_name_match_strs" ref="ga12c833bf057353c756b92570e0cfa047" args="(const char *candidate, size_t n, char **targets)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int cpe_name_match_strs </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>candidate</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>n</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char **&nbsp;</td>
          <td class="paramname"> <em>targets</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Match CPE URI <em>candidate</em> against list of <em>n</em> CPE URIs given by <em>targets</em>. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>candidate</em>&nbsp;</td><td>candidarte CPE URI as string </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>n</em>&nbsp;</td><td>number of items in targets </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>targets</em>&nbsp;</td><td>list of CPE URIs to be candidate matched against </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>index of first URI in targets, that matched </dd></dl>
<dl><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>-1</em>&nbsp;</td><td>on mismatch </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>-2</em>&nbsp;</td><td>invalid CPE URI was given as parameter </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga6177bf1f59c75b3cdace48d52a817257"></a><!-- doxytag: member="cpe_name::cpe_name_new" ref="ga6177bf1f59c75b3cdace48d52a817257" args="(const char *cpe)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">struct <a class="el" href="structcpe__name.html">cpe_name</a> * cpe_name_new </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>cpe</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [read, inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a new CPE structure from string <em>cpe</em>. </p>
<dl class="note"><dt><b>Note:</b></dt><dd>If <em>cpe</em> is NULL, empty cpe will be created. </dd></dl>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>cpe</em>&nbsp;</td><td>CPE URI string to be parsed </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>new structure holding parsed data </dd></dl>
<dl><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>NULL</em>&nbsp;</td><td>on failure </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaf107a1e1f7eb3aa94d941e003585f6a1"></a><!-- doxytag: member="cpe_name::cpe_name_supported" ref="gaf107a1e1f7eb3aa94d941e003585f6a1" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char * cpe_name_supported </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get supported version of CPE uri XML. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>version of XML file format </dd></dl>

</div>
</div>
<a class="anchor" id="ga5830b374983190bd7a0bdabd93808a03"></a><!-- doxytag: member="cpe_name::cpe_name_write" ref="ga5830b374983190bd7a0bdabd93808a03" args="(const struct cpe_name *cpe, FILE *f)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int cpe_name_write </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structcpe__name.html">cpe_name</a> *&nbsp;</td>
          <td class="paramname"> <em>cpe</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">FILE *&nbsp;</td>
          <td class="paramname"> <em>f</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inherited]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Write CPE URI <em>cpe</em> to file a descriptor <em>f</em>. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>cpe</em>&nbsp;</td><td>cpe to write </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>f</em>&nbsp;</td><td>file descriptor to write CPE URI to </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>number of written characters </dd></dl>
<dl><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>&lt;0</em>&nbsp;</td><td>on failure </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
</div>
<hr size="1"/><address style="text-align: right;"><small>Generated on 26 Feb 2010 for Open SCAP Library by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
</body>
</html>