Sophie

Sophie

distrib > Fedora > 16 > i386 > by-pkgid > 537b4767ca71616a4bccbb57df0c2eb6 > files > 201

openscap-devel-0.7.4-1.fc16.i686.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.7.4 -->
<div id="top">
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">Open SCAP Library</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#files">Files</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">CPE URIs</div>  </div>
<div class="ingroups"><a class="el" href="group__CPE.html">CPE</a></div></div>
<div class="contents">
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcpe__name.html">cpe_name</a></td></tr>
<tr><td class="mdescLeft">&#160;</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><a name="files"></a>
Files</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cpeuri_8h.html">cpeuri.h</a></td></tr>

<p><tr><td class="mdescLeft">&#160;</td><td class="mdescRight"><p>Interface to Common Platform Enumeration (CPE) URI. </p>
<br/></td></tr>
</p>
<tr><td colspan="2"><h2><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &#160;</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">&#160;</td><td class="mdescRight">enumeration of possible CPE parts  <a href="group__cpeuri.html#ga683b693cae1d4b68f257be24c4cc2ab7">More...</a><br/></td></tr>
<tr><td colspan="2"><h2><a name="func-members"></a>
Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structcpe__name.html">cpe_name</a> *&#160;</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">&#160;</td><td class="mdescRight">Create a new CPE structure from string <em>cpe</em>.  <a href="#ga6177bf1f59c75b3cdace48d52a817257"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structcpe__name.html">cpe_name</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__cpeuri.html#gaabe4411fd5d2a955dd6c8e5f95fd2138">cpe_name::cpe_name_clone</a> (struct <a class="el" href="structcpe__name.html">cpe_name</a> *old_name)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Clone CPE Name.  <a href="#gaabe4411fd5d2a955dd6c8e5f95fd2138"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</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">&#160;</td><td class="mdescRight">Destructor.  <a href="#ga6fcacf25ee259b5b9343da178722ea1b"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="member-group"></a>
Getters</h2></td></tr>
<tr><td class="ititle" colspan="2"><p><a class="anchor" id="amgrpc9fd0bcb5385a65354c37f1bb504399d"></a>Return value is pointer to structure's member.</p>
<p>Do not free unless you null the pointer in the structure. Use remove function otherwise. </p>
</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>&#160;</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">&#160;</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 *&#160;</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">&#160;</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 *&#160;</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">&#160;</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 *&#160;</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">&#160;</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 *&#160;</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">&#160;</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 *&#160;</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">&#160;</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 *&#160;</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">&#160;</td><td class="mdescRight">Get CPE name language field. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">char *&#160;</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">&#160;</td><td class="mdescRight">Return CPE URI as a new string.  <a href="#ga855d92cdf74999859b86ef855b8a3170"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="member-group"></a>
Setters</h2></td></tr>
<tr><td class="ititle" colspan="2"><p><a class="anchor" id="amgrp6e47466b75bb957a603aa54c079ac8bf"></a>For lists use add functions.</p>
<p>Parameters of set functions are duplicated in memory and need to be freed by caller. </p>
</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&#160;</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">&#160;</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&#160;</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">&#160;</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&#160;</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">&#160;</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&#160;</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">&#160;</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&#160;</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">&#160;</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&#160;</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">&#160;</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&#160;</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">&#160;</td><td class="mdescRight">Set CPE name language field. <br/></td></tr>
<tr><td colspan="2"><h2><a name="member-group"></a>
Evaluators</h2></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&#160;</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">&#160;</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&#160;</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">&#160;</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">int&#160;</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">&#160;</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&#160;</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">&#160;</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&#160;</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">&#160;</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 *&#160;</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">&#160;</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 *&#160;</td>
          <td class="paramname"><em>str</em></td><td>)</td>
          <td></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 class="params">
    <tr><td class="paramname">str</td><td>string to be validated </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaabe4411fd5d2a955dd6c8e5f95fd2138"></a><!-- doxytag: member="cpe_name::cpe_name_clone" ref="gaabe4411fd5d2a955dd6c8e5f95fd2138" args="(struct cpe_name *old_name)" -->
<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_clone </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structcpe__name.html">cpe_name</a> *&#160;</td>
          <td class="paramname"><em>old_name</em></td><td>)</td>
          <td><code> [read]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Clone CPE Name. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">old_name</td><td>CPE name </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> *&#160;</td>
          <td class="paramname"><em>cpe</em></td><td>)</td>
          <td></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 class="params">
    <tr><td class="paramname">cpe</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> *&#160;</td>
          <td class="paramname"><em>cpe</em></td><td>)</td>
          <td></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 class="params">
    <tr><td class="paramname">cpe</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 class="retval">
    <tr><td class="paramname">NULL</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> *&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</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> **&#160;</td>
          <td class="paramname"><em>namelist</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></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 class="params">
    <tr><td class="paramname">name</td><td>name to be looked-up </td></tr>
    <tr><td class="paramname">n</td><td>number of items in namelist </td></tr>
    <tr><td class="paramname">namelist</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 *&#160;</td>
          <td class="paramname"><em>candidate</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>n</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>targets</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></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 class="params">
    <tr><td class="paramname">candidate</td><td>candidarte CPE URI as string </td></tr>
    <tr><td class="paramname">n</td><td>number of items in targets </td></tr>
    <tr><td class="paramname">targets</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 class="retval">
    <tr><td class="paramname">-1</td><td>on mismatch </td></tr>
    <tr><td class="paramname">-2</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 *&#160;</td>
          <td class="paramname"><em>cpe</em></td><td>)</td>
          <td><code> [read]</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 class="params">
    <tr><td class="paramname">cpe</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 class="retval">
    <tr><td class="paramname">NULL</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&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></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> *&#160;</td>
          <td class="paramname"><em>cpe</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">FILE *&#160;</td>
          <td class="paramname"><em>f</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></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 class="params">
    <tr><td class="paramname">cpe</td><td>cpe to write </td></tr>
    <tr><td class="paramname">f</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 class="retval">
    <tr><td class="paramname">&lt;0</td><td>on failure </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
</div>
<hr class="footer"/><address class="footer"><small>Generated on Mon Jul 25 2011 for Open SCAP Library by&#160;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.4 </small></address>
</body>
</html>