Sophie

Sophie

distrib > Fedora > 17 > i386 > by-pkgid > ec8e217d4486ff9ba16b8bc2d8ec8602 > files > 786

openscap-devel-0.9.7-1.fc17.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"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>Open SCAP Library: xccdf_policy Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<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>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.1.1 -->
  <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 class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
      <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-attribs">Data Fields</a>  </div>
  <div class="headertitle">
<div class="title">xccdf_policy Struct Reference<div class="ingroups"><a class="el" href="group__XCCDF__POLICY.html">XCCDF_POLICY</a></div></div>  </div>
</div><!--header-->
<div class="contents">

<p>XCCDF policy structure is abstract (class) structure of Profile element from benchmark.  
 <a href="structxccdf__policy.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="xccdf__policy_8h_source.html">xccdf_policy.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ga29f80bb419da8c7801a88bfc68481dcd"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__XCCDF__POLICY.html#ga29f80bb419da8c7801a88bfc68481dcd">xccdf_policy_new</a> (struct <a class="el" href="structxccdf__policy__model.html">xccdf_policy_model</a> *<a class="el" href="structxccdf__policy.html#a0406fc13d1156dafcfab00b88767150f">model</a>, struct <a class="el" href="structxccdf__profile.html">xccdf_profile</a> *<a class="el" href="structxccdf__policy.html#aa9b356a88ddfb729745dc246d1da9614">profile</a>)</td></tr>
<tr class="memdesc:ga29f80bb419da8c7801a88bfc68481dcd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor of Policy structure.  <a href="group__XCCDF__POLICY.html#ga29f80bb419da8c7801a88bfc68481dcd"></a><br/></td></tr>
<tr class="memitem:ga9c8bf5e613dfdd9b33cd4e3b0ce44a0c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga9c8bf5e613dfdd9b33cd4e3b0ce44a0c"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__XCCDF__POLICY.html#ga9c8bf5e613dfdd9b33cd4e3b0ce44a0c">xccdf_policy_free</a> (struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *)</td></tr>
<tr class="memdesc:ga9c8bf5e613dfdd9b33cd4e3b0ce44a0c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor of Policy structure. <br/></td></tr>
<tr class="memitem:a55385ba195ed4f5fec1d80d4c1823178"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxccdf__policy.html#a55385ba195ed4f5fec1d80d4c1823178">xccdf_policy_resolve_fix_substitution</a> (struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *policy, struct <a class="el" href="structxccdf__fix.html">xccdf_fix</a> *fix, struct <a class="el" href="structxccdf__result.html">xccdf_result</a> *test_result)</td></tr>
<tr class="memdesc:a55385ba195ed4f5fec1d80d4c1823178"><td class="mdescLeft">&#160;</td><td class="mdescRight">Resolve text substitution in given fix element.  <a href="#a55385ba195ed4f5fec1d80d4c1823178"></a><br/></td></tr>
<tr class="memitem:a21a7b4947beb21b58a25c5bea1318b52"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxccdf__policy.html#a21a7b4947beb21b58a25c5bea1318b52">xccdf_policy_get_value_of_item</a> (struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *policy, struct <a class="el" href="structxccdf__item.html">xccdf_item</a> *item)</td></tr>
<tr class="memdesc:a21a7b4947beb21b58a25c5bea1318b52"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get value of given value item in context of given policy.  <a href="#a21a7b4947beb21b58a25c5bea1318b52"></a><br/></td></tr>
<tr class="memitem:a85b303649033e9364d58e557955ef38f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxccdf__policy.html#a85b303649033e9364d58e557955ef38f">xccdf_policy_remediate</a> (struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *policy, struct <a class="el" href="structxccdf__result.html">xccdf_result</a> *result)</td></tr>
<tr class="memdesc:a85b303649033e9364d58e557955ef38f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remediate all rule-results in the given result, with settings of given policy.  <a href="#a85b303649033e9364d58e557955ef38f"></a><br/></td></tr>
<tr class="memitem:a09a1faa9526b70e7ffbc4d18a70d9b41"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxccdf__policy.html#a09a1faa9526b70e7ffbc4d18a70d9b41">xccdf_policy_report_cb</a> (struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *policy, const char *sysname, void *rule)</td></tr>
<tr class="memdesc:a09a1faa9526b70e7ffbc4d18a70d9b41"><td class="mdescLeft">&#160;</td><td class="mdescRight">Report given "rule" to all callbacks with given sysname registered with the policy.  <a href="#a09a1faa9526b70e7ffbc4d18a70d9b41"></a><br/></td></tr>
<tr class="memitem:ae3768733365cb3d6ca2a86e0565c32b3"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structxccdf__benchmark.html">xccdf_benchmark</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxccdf__policy.html#ae3768733365cb3d6ca2a86e0565c32b3">xccdf_policy_get_benchmark</a> (const struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *policy)</td></tr>
<tr class="memdesc:ae3768733365cb3d6ca2a86e0565c32b3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get XCCDF Benchmark for given policy.  <a href="#ae3768733365cb3d6ca2a86e0565c32b3"></a><br/></td></tr>
<tr><td colspan="2"><div class="groupHeader">Getters</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p>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>
</div></td></tr>
<tr class="memitem:gac0862a26dae600ce48497cd11e12f22f"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structxccdf__policy__model.html">xccdf_policy_model</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__XCCDF__POLICY.html#gac0862a26dae600ce48497cd11e12f22f">xccdf_policy_get_model</a> (const struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *policy)</td></tr>
<tr class="memdesc:gac0862a26dae600ce48497cd11e12f22f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get model from Policy (parent structure of Policy to access the benchmark)  <a href="group__XCCDF__POLICY.html#gac0862a26dae600ce48497cd11e12f22f"></a><br/></td></tr>
<tr class="memitem:ga7b7f39df7639c1d153e8cf6e3bd98753"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga7b7f39df7639c1d153e8cf6e3bd98753"></a>
struct <br class="typebreak"/>
xccdf_value_binding_iterator *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__XCCDF__POLICY.html#ga7b7f39df7639c1d153e8cf6e3bd98753">xccdf_policy_get_values</a> (const struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *item)</td></tr>
<tr class="memdesc:ga7b7f39df7639c1d153e8cf6e3bd98753"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get Value Bindings from XCCDF Policy. <br/></td></tr>
<tr class="memitem:ga97af79d841abbbbe6607c6109af5ad3e"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structxccdf__select__iterator.html">xccdf_select_iterator</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__XCCDF__POLICY.html#ga97af79d841abbbbe6607c6109af5ad3e">xccdf_policy_get_selected_rules</a> (struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *)</td></tr>
<tr class="memdesc:ga97af79d841abbbbe6607c6109af5ad3e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get selected rules from policy.  <a href="group__XCCDF__POLICY.html#ga97af79d841abbbbe6607c6109af5ad3e"></a><br/></td></tr>
<tr class="memitem:ga5c031cf063b7fd4edc45c71d55488d63"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structxccdf__profile.html">xccdf_profile</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__XCCDF__POLICY.html#ga5c031cf063b7fd4edc45c71d55488d63">xccdf_policy_get_profile</a> (const struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *)</td></tr>
<tr class="memdesc:ga5c031cf063b7fd4edc45c71d55488d63"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get XCCDF Profile from Policy.  <a href="group__XCCDF__POLICY.html#ga5c031cf063b7fd4edc45c71d55488d63"></a><br/></td></tr>
<tr class="memitem:ga18e7a1b999050314284816996d46f7ca"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structxccdf__select__iterator.html">xccdf_select_iterator</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__XCCDF__POLICY.html#ga18e7a1b999050314284816996d46f7ca">xccdf_policy_get_selects</a> (const struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *)</td></tr>
<tr class="memdesc:ga18e7a1b999050314284816996d46f7ca"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get rules from Policy.  <a href="group__XCCDF__POLICY.html#ga18e7a1b999050314284816996d46f7ca"></a><br/></td></tr>
<tr class="memitem:gac3d9764faa0dd6a6de54503bc7b8b6fb"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__XCCDF__POLICY.html#gac3d9764faa0dd6a6de54503bc7b8b6fb">xccdf_policy_get_id</a> (struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *policy)</td></tr>
<tr class="memdesc:gac3d9764faa0dd6a6de54503bc7b8b6fb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get ID of XCCDF Profile that is implemented by XCCDF Policy.  <a href="group__XCCDF__POLICY.html#gac3d9764faa0dd6a6de54503bc7b8b6fb"></a><br/></td></tr>
<tr><td colspan="2"><div class="groupHeader">Setters</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p>For lists use add functions.</p>
<p>Parameters of set functions are duplicated in memory and need to be freed by caller. </p>
</div></td></tr>
<tr class="memitem:ga0d83f932b1c6ac2161094d7c4126c276"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__XCCDF__POLICY.html#ga0d83f932b1c6ac2161094d7c4126c276">xccdf_policy_add_select</a> (struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *, struct <a class="el" href="structxccdf__select.html">xccdf_select</a> *)</td></tr>
<tr class="memdesc:ga0d83f932b1c6ac2161094d7c4126c276"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add rule to Policy.  <a href="group__XCCDF__POLICY.html#ga0d83f932b1c6ac2161094d7c4126c276"></a><br/></td></tr>
<tr class="memitem:gaf034ed2138343743a99e5e89d632701c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__XCCDF__POLICY.html#gaf034ed2138343743a99e5e89d632701c">xccdf_policy_set_selected</a> (struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *policy, char *idref)</td></tr>
<tr class="memdesc:gaf034ed2138343743a99e5e89d632701c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set a new selector to the Policy structure.  <a href="group__XCCDF__POLICY.html#gaf034ed2138343743a99e5e89d632701c"></a><br/></td></tr>
<tr class="memitem:ga3738807d9e35ea11cc5b20638dc83815"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__XCCDF__POLICY.html#ga3738807d9e35ea11cc5b20638dc83815">xccdf_policy_add_value</a> (struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *, struct <a class="el" href="structxccdf__value__binding.html">xccdf_value_binding</a> *)</td></tr>
<tr class="memdesc:ga3738807d9e35ea11cc5b20638dc83815"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add value binding to the Policy structure.  <a href="group__XCCDF__POLICY.html#ga3738807d9e35ea11cc5b20638dc83815"></a><br/></td></tr>
<tr class="memitem:ga4843dfd6b6543450204cd3fa9fe4286f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__XCCDF__POLICY.html#ga4843dfd6b6543450204cd3fa9fe4286f">xccdf_policy_is_item_selected</a> (struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *policy, const char *id)</td></tr>
<tr class="memdesc:ga4843dfd6b6543450204cd3fa9fe4286f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the selection settings of the item.  <a href="group__XCCDF__POLICY.html#ga4843dfd6b6543450204cd3fa9fe4286f"></a><br/></td></tr>
<tr class="memitem:gafd3e5d89a8bc259470fd63c53c9c92e3"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structxccdf__select.html">xccdf_select</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__XCCDF__POLICY.html#gafd3e5d89a8bc259470fd63c53c9c92e3">xccdf_policy_get_select_by_id</a> (struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *policy, const char *item_id)</td></tr>
<tr class="memdesc:gafd3e5d89a8bc259470fd63c53c9c92e3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get select from policy by specified ID of XCCDF Item.  <a href="group__XCCDF__POLICY.html#gafd3e5d89a8bc259470fd63c53c9c92e3"></a><br/></td></tr>
<tr><td colspan="2"><div class="groupHeader">Evaluators</div></td></tr>
<tr class="memitem:gad09ba99431d50108e4b475506c177b3d"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structxccdf__result.html">xccdf_result</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__XCCDF__POLICY.html#gad09ba99431d50108e4b475506c177b3d">xccdf_policy_evaluate</a> (struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *policy)</td></tr>
<tr class="memdesc:gad09ba99431d50108e4b475506c177b3d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Call the checking engine for each selected rule in given policy structure.  <a href="group__XCCDF__POLICY.html#gad09ba99431d50108e4b475506c177b3d"></a><br/></td></tr>
<tr class="memitem:ga5d741243d1b2e062bb802be5f145944c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__XCCDF__POLICY.html#ga5d741243d1b2e062bb802be5f145944c">xccdf_policy_resolve</a> (struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *policy)</td></tr>
<tr class="memdesc:ga5d741243d1b2e062bb802be5f145944c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Resolve benchmark by applying all refine_rules and refine_values to rules / values of benchmark.  <a href="group__XCCDF__POLICY.html#ga5d741243d1b2e062bb802be5f145944c"></a><br/></td></tr>
<tr class="memitem:ga639d867b0f8b7fd93c7d9aa178cfcf25"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__XCCDF__POLICY.html#ga639d867b0f8b7fd93c7d9aa178cfcf25">xccdf_policy_generate_fix</a> (struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *policy, struct <a class="el" href="structxccdf__result.html">xccdf_result</a> *result, const char *sys, int output_fd)</td></tr>
<tr class="memdesc:ga639d867b0f8b7fd93c7d9aa178cfcf25"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generate remediation prescription (presumably a remediation script).  <a href="group__XCCDF__POLICY.html#ga639d867b0f8b7fd93c7d9aa178cfcf25"></a><br/></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
Data Fields</h2></td></tr>
<tr class="memitem:a0406fc13d1156dafcfab00b88767150f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0406fc13d1156dafcfab00b88767150f"></a>
struct <a class="el" href="structxccdf__policy__model.html">xccdf_policy_model</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxccdf__policy.html#a0406fc13d1156dafcfab00b88767150f">model</a></td></tr>
<tr class="memdesc:a0406fc13d1156dafcfab00b88767150f"><td class="mdescLeft">&#160;</td><td class="mdescRight">XCCDF Policy model. <br/></td></tr>
<tr class="memitem:aa9b356a88ddfb729745dc246d1da9614"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa9b356a88ddfb729745dc246d1da9614"></a>
struct <a class="el" href="structxccdf__profile.html">xccdf_profile</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxccdf__policy.html#aa9b356a88ddfb729745dc246d1da9614">profile</a></td></tr>
<tr class="memdesc:aa9b356a88ddfb729745dc246d1da9614"><td class="mdescLeft">&#160;</td><td class="mdescRight">Profile structure (from benchmark) <br/></td></tr>
<tr class="memitem:ad1d1c70c1fbb0e47c62b98011ab9ad7c"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structoscap__list.html">oscap_list</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxccdf__policy.html#ad1d1c70c1fbb0e47c62b98011ab9ad7c">selects</a></td></tr>
<tr class="memdesc:ad1d1c70c1fbb0e47c62b98011ab9ad7c"><td class="mdescLeft">&#160;</td><td class="mdescRight">A list of all selects.  <a href="#ad1d1c70c1fbb0e47c62b98011ab9ad7c"></a><br/></td></tr>
<tr class="memitem:a6439c166d042a4a66361bdaf066de2bb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6439c166d042a4a66361bdaf066de2bb"></a>
struct <a class="el" href="structoscap__list.html">oscap_list</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxccdf__policy.html#a6439c166d042a4a66361bdaf066de2bb">values</a></td></tr>
<tr class="memdesc:a6439c166d042a4a66361bdaf066de2bb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bound values of profile. <br/></td></tr>
<tr class="memitem:a0fb9cc7a5d3e90013bcb311d50f892f7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0fb9cc7a5d3e90013bcb311d50f892f7"></a>
struct <a class="el" href="structoscap__list.html">oscap_list</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxccdf__policy.html#a0fb9cc7a5d3e90013bcb311d50f892f7">results</a></td></tr>
<tr class="memdesc:a0fb9cc7a5d3e90013bcb311d50f892f7"><td class="mdescLeft">&#160;</td><td class="mdescRight">List of XCCDF results. <br/></td></tr>
<tr class="memitem:a22580480019cc3a680691337330bb29b"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structoscap__htable.html">oscap_htable</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxccdf__policy.html#a22580480019cc3a680691337330bb29b">selected_internal</a></td></tr>
<tr class="memdesc:a22580480019cc3a680691337330bb29b"><td class="mdescLeft">&#160;</td><td class="mdescRight">A hash which for given item points to the latest selector applicable.  <a href="#a22580480019cc3a680691337330bb29b"></a><br/></td></tr>
<tr class="memitem:a167438142bcd5b8c8256a328d4ad07bc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a167438142bcd5b8c8256a328d4ad07bc"></a>
struct <a class="el" href="structoscap__htable.html">oscap_htable</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxccdf__policy.html#a167438142bcd5b8c8256a328d4ad07bc">selected_final</a></td></tr>
<tr class="memdesc:a167438142bcd5b8c8256a328d4ad07bc"><td class="mdescLeft">&#160;</td><td class="mdescRight">A hash which for given item defines final selection. <br/></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>XCCDF policy structure is abstract (class) structure of Profile element from benchmark. </p>
<p>Policy structure that abstract benchmark's profile.</p>
<p>Structure contains rules and bound values to abstract these lists from the benchmark file. Can be modified temporaly so changes can be discarded or saved to the existing model. </p>
</div><hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="ae3768733365cb3d6ca2a86e0565c32b3"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">struct <a class="el" href="structxccdf__benchmark.html">xccdf_benchmark</a> * xccdf_policy_get_benchmark </td>
          <td>(</td>
          <td class="paramtype">const struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *&#160;</td>
          <td class="paramname"><em>policy</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">read</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Get XCCDF Benchmark for given policy. </p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">policy</td><td>XCCDF Policy </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>the benchmark element or NULL. </dd></dl>

</div>
</div>
<a class="anchor" id="a21a7b4947beb21b58a25c5bea1318b52"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char * xccdf_policy_get_value_of_item </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *&#160;</td>
          <td class="paramname"><em>policy</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structxccdf__item.html">xccdf_item</a> *&#160;</td>
          <td class="paramname"><em>item</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get value of given value item in context of given policy. </p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">policy</td><td>XCCDF policy </td></tr>
    <tr><td class="paramname">item</td><td>the xccdf:Value to resolve </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>string representation of resolved value_instance. </dd></dl>
<dl class="retval"><dt>Return values:</dt><dd>
  <table class="retval">
    <tr><td class="paramname">NULL</td><td>indicates failure </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a85b303649033e9364d58e557955ef38f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int xccdf_policy_remediate </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *&#160;</td>
          <td class="paramname"><em>policy</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structxccdf__result.html">xccdf_result</a> *&#160;</td>
          <td class="paramname"><em>result</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Remediate all rule-results in the given result, with settings of given policy. </p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">policy</td><td>XCCDF Policy </td></tr>
    <tr><td class="paramname">result</td><td>TestResult containing rule-results to remediate </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a09a1faa9526b70e7ffbc4d18a70d9b41"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int xccdf_policy_report_cb </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *&#160;</td>
          <td class="paramname"><em>policy</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>sysname</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>rule</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Report given "rule" to all callbacks with given sysname registered with the policy. </p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">policy</td><td>XCCDF Policy </td></tr>
    <tr><td class="paramname">sysname</td><td>identifier of the reporting callback </td></tr>
    <tr><td class="paramname">rule</td><td>pointer to xccdf:Rule or xccdf:rule-result </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>zero on success. Non zero value may indicate user interuption or error. </dd></dl>

</div>
</div>
<a class="anchor" id="a55385ba195ed4f5fec1d80d4c1823178"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int xccdf_policy_resolve_fix_substitution </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *&#160;</td>
          <td class="paramname"><em>policy</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structxccdf__fix.html">xccdf_fix</a> *&#160;</td>
          <td class="paramname"><em>fix</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structxccdf__result.html">xccdf_result</a> *&#160;</td>
          <td class="paramname"><em>test_result</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Resolve text substitution in given fix element. </p>
<p>Use given <a class="el" href="structxccdf__policy.html" title="XCCDF policy structure is abstract (class) structure of Profile element from benchmark.">xccdf_policy</a> settings for resolving.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">policy</td><td>XCCDF policy used for substitution </td></tr>
    <tr><td class="paramname">fix</td><td>a fix element to modify </td></tr>
    <tr><td class="paramname">test_resut</td><td>the TestResult for xccdf:fact resolution </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>0 on success, 1 on failure, other value indicate warning </dd></dl>

</div>
</div>
<hr/><h2>Field Documentation</h2>
<a class="anchor" id="a22580480019cc3a680691337330bb29b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">struct <a class="el" href="structoscap__htable.html">oscap_htable</a>* xccdf_policy::selected_internal</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>A hash which for given item points to the latest selector applicable. </p>
<p>There might not be one. Note that it migth be a selector for cluster-id. </p>

</div>
</div>
<a class="anchor" id="ad1d1c70c1fbb0e47c62b98011ab9ad7c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">struct <a class="el" href="structoscap__list.html">oscap_list</a>* xccdf_policy::selects</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>A list of all selects. </p>
<p>Either from profile or later added through API. </p>

</div>
</div>
<hr/>The documentation for this struct was generated from the following files:<ul>
<li>xccdf_policy.c</li>
<li><a class="el" href="xccdf__policy_8h_source.html">xccdf_policy.h</a></li>
<li><a class="el" href="xccdf__policy__priv_8h_source.html">xccdf_policy_priv.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.1.1
</small></address>
</body>
</html>