Sophie

Sophie

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

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: OVAL Agent</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="#files">Files</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">OVAL Agent</div>  </div>
<div class="ingroups"><a class="el" href="group__OVAL.html">OVAL</a></div></div>
<div class="contents">

<p>OVAL Agent interface.  
<a href="#details">More...</a></p>
<table class="memberdecls">
<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="oval__agent__api_8h.html">oval_agent_api.h</a></td></tr>
<tr><td colspan="2"><h2><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga7c852f3681ee4aaf6d372facf2e8c016"></a><!-- doxytag: member="OVALAGENT::oval_agent_session_t" ref="ga7c852f3681ee4aaf6d372facf2e8c016" args="" -->
typedef struct <a class="el" href="structoval__agent__session.html">oval_agent_session</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__OVALAGENT.html#ga7c852f3681ee4aaf6d372facf2e8c016">oval_agent_session_t</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Agent session consists of connection to system checking engine, definition model, system characteristics model and results model. <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"><a class="el" href="structoval__agent__session.html">oval_agent_session_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__OVALAGENT.html#ga363376feb3dc45839611dbf7ae149934">oval_agent_new_session</a> (struct <a class="el" href="structoval__definition__model.html">oval_definition_model</a> *model, const char *name)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Create new session for OVAL agent from OVAL definition model.  <a href="#ga363376feb3dc45839611dbf7ae149934"></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__OVALAGENT.html#gaf73eb2fb4162b9293f166ea02dd889ab">oval_agent_eval_definition</a> (<a class="el" href="structoval__agent__session.html">oval_agent_session_t</a> *, const char *)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Probe the system and evaluate specified definition.  <a href="#gaf73eb2fb4162b9293f166ea02dd889ab"></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__OVALAGENT.html#ga9a88f1166593f63aa0f7cdc080685c1d">oval_agent_get_definition_result</a> (<a class="el" href="structoval__agent__session.html">oval_agent_session_t</a> *, const char *, <a class="el" href="group__OVALRES.html#ga585abe0825db03426e1994ba335dc4bf">oval_result_t</a> *)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the OVAL result of a definition from an agent session.  <a href="#ga9a88f1166593f63aa0f7cdc080685c1d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga1b0b775e52aff1452ff4423f897c5825"></a><!-- doxytag: member="OVALAGENT::oval_agent_reset_session" ref="ga1b0b775e52aff1452ff4423f897c5825" args="(oval_agent_session_t *ag_sess)" -->
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__OVALAGENT.html#ga1b0b775e52aff1452ff4423f897c5825">oval_agent_reset_session</a> (<a class="el" href="structoval__agent__session.html">oval_agent_session_t</a> *ag_sess)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Clean resuls that were generated in this agent session. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga7b465c077aa0ade17135dc1826b4465c"></a><!-- doxytag: member="OVALAGENT::oval_agent_abort_session" ref="ga7b465c077aa0ade17135dc1826b4465c" args="(oval_agent_session_t *ag_sess)" -->
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__OVALAGENT.html#ga7b465c077aa0ade17135dc1826b4465c">oval_agent_abort_session</a> (<a class="el" href="structoval__agent__session.html">oval_agent_session_t</a> *ag_sess)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Abort a running probe session. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__OVALAGENT.html#gaf997d19641259ab5ac9add9831e1e62b">oval_agent_eval_system</a> (<a class="el" href="structoval__agent__session.html">oval_agent_session_t</a> *ag_sess, <a class="el" href="group__Reporters.html#gada96dbbbb54a7659c3acf1c00a7d7ad3">oscap_reporter</a> cb, void *arg)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Probe and evaluate all definitions from the content, call the callback functions upon single evaluation.  <a href="#gaf997d19641259ab5ac9add9831e1e62b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga46b7afeb2b281141e4722f219a7a438a"></a><!-- doxytag: member="OVALAGENT::oval_agent_get_results_model" ref="ga46b7afeb2b281141e4722f219a7a438a" args="(oval_agent_session_t *ag_sess)" -->
struct <a class="el" href="structoval__results__model.html">oval_results_model</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__OVALAGENT.html#ga46b7afeb2b281141e4722f219a7a438a">oval_agent_get_results_model</a> (<a class="el" href="structoval__agent__session.html">oval_agent_session_t</a> *ag_sess)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a result model from agent session. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga891f69cec678e572518603f482e54877"></a><!-- doxytag: member="OVALAGENT::oval_agent_get_filename" ref="ga891f69cec678e572518603f482e54877" args="(oval_agent_session_t *ag_sess)" -->
const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__OVALAGENT.html#ga891f69cec678e572518603f482e54877">oval_agent_get_filename</a> (<a class="el" href="structoval__agent__session.html">oval_agent_session_t</a> *ag_sess)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a filename under which was created. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga301f466948c1844837208f917b3e2025"></a><!-- doxytag: member="OVALAGENT::oval_agent_destroy_session" ref="ga301f466948c1844837208f917b3e2025" args="(oval_agent_session_t *ag_sess)" -->
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__OVALAGENT.html#ga301f466948c1844837208f917b3e2025">oval_agent_destroy_session</a> (<a class="el" href="structoval__agent__session.html">oval_agent_session_t</a> *ag_sess)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Finish OVAL agent session. <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">typedef <a class="el" href="group__XCCDF.html#gabf34f4480799efc8e1af5f4706d2666d">xccdf_test_result_type_t</a>(&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__OVALAGENT.html#gaa4616a7375ac4a91ee293d69a5c30481">xccdf_policy_eval_rule_cb_t</a> )(struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *policy, const char *rule_id, const char *id, struct xccdf_value_binding_iterator *it, void *usr)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__XCCDF.html#gabf34f4480799efc8e1af5f4706d2666d">xccdf_test_result_type_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__OVALAGENT.html#ga58d82d4d759d169780b7ed90720a5af4">oval_agent_eval_rule</a> (struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *policy, const char *rule_id, const char *id, const char *href, struct xccdf_value_binding_iterator *it, void *usr)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Internal OVAL Agent Callback that can be used to evaluate XCCDF content.  <a href="#ga58d82d4d759d169780b7ed90720a5af4"></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__OVALAGENT.html#ga86f153582f6e48986aaac82efcb064ae">oval_agent_resolve_variables</a> (struct <a class="el" href="structoval__agent__session.html">oval_agent_session</a> *session, struct xccdf_value_binding_iterator *it)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Resolve variables from XCCDF Value Bindings and set their values to OVAL Variables.  <a href="#ga86f153582f6e48986aaac82efcb064ae"></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__OVALAGENT.html#gacd87da61a584f365001a6a9a1f4a5c13">oval_agent_export_sysinfo_to_xccdf_result</a> (struct <a class="el" href="structoval__agent__session.html">oval_agent_session</a> *session, struct <a class="el" href="structxccdf__result.html">xccdf_result</a> *ritem)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Transform OVAL Sysinfo into XCCDF Test Result.  <a href="#gacd87da61a584f365001a6a9a1f4a5c13"></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__OVALAGENT.html#gaeee658b7aee3ba20b274248ec024eefc">xccdf_policy_model::xccdf_policy_model_register_engine_oval</a> (struct <a class="el" href="structxccdf__policy__model.html">xccdf_policy_model</a> *model, struct <a class="el" href="structoval__agent__session.html">oval_agent_session</a> *sess)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Function to register predefined oval callback for XCCDF evaluation proccess.  <a href="#gaeee658b7aee3ba20b274248ec024eefc"></a><br/></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<p>OVAL Agent interface. </p>
<p>This is a high level API for system probing and OVAL Definition content evaluation. </p>
<hr/><h2>Typedef Documentation</h2>
<a class="anchor" id="gaa4616a7375ac4a91ee293d69a5c30481"></a><!-- doxytag: member="oval_agent_api.h::xccdf_policy_eval_rule_cb_t" ref="gaa4616a7375ac4a91ee293d69a5c30481" args=")(struct xccdf_policy *policy, const char *rule_id, const char *id, struct xccdf_value_binding_iterator *it, void *usr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="group__XCCDF.html#gabf34f4480799efc8e1af5f4706d2666d">xccdf_test_result_type_t</a>( <a class="el" href="group__OVALAGENT.html#gaa4616a7375ac4a91ee293d69a5c30481">xccdf_policy_eval_rule_cb_t</a>)(struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *policy, const char *rule_id, const char *id, struct xccdf_value_binding_iterator *it, void *usr)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">policy</td><td>XCCDF Policy that is being evaluated </td></tr>
    <tr><td class="paramname">rule_id</td><td>ID of XCCDF Rule </td></tr>
    <tr><td class="paramname">id</td><td>ID of OVAL definition </td></tr>
    <tr><td class="paramname">it</td><td>XCCDF Value Binding iterator with value bindings </td></tr>
    <tr><td class="paramname">usr</td><td>Void pointer to the user data structure </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>XCCDF test result type of evaluated rule </dd></dl>

</div>
</div>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="gaf73eb2fb4162b9293f166ea02dd889ab"></a><!-- doxytag: member="oval_agent_api.h::oval_agent_eval_definition" ref="gaf73eb2fb4162b9293f166ea02dd889ab" args="(oval_agent_session_t *, const char *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int oval_agent_eval_definition </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structoval__agent__session.html">oval_agent_session_t</a> *&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Probe the system and evaluate specified definition. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success; -1 error; 1 warning </dd></dl>

</div>
</div>
<a class="anchor" id="ga58d82d4d759d169780b7ed90720a5af4"></a><!-- doxytag: member="oval_agent_api.h::oval_agent_eval_rule" ref="ga58d82d4d759d169780b7ed90720a5af4" args="(struct xccdf_policy *policy, const char *rule_id, const char *id, const char *href, struct xccdf_value_binding_iterator *it, void *usr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__XCCDF.html#gabf34f4480799efc8e1af5f4706d2666d">xccdf_test_result_type_t</a> oval_agent_eval_rule </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>rule_id</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>id</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>href</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct xccdf_value_binding_iterator *&#160;</td>
          <td class="paramname"><em>it</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>usr</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Internal OVAL Agent Callback that can be used to evaluate XCCDF content. </p>
<dl class="user"><dt><b>Example</b></dt><dd>Next example shows common use of this function in evaluation proccess of XCCDF file. </dd></dl>
<dl class="user"><dt><b></b></dt><dd><div class="fragment"><pre class="fragment">  <span class="keyword">struct </span><a class="code" href="structoval__definition__model.html" title="Oval definition model.">oval_definition_model</a> * def_model = <a class="code" href="group__OVALDEF.html#ga2931f8a8454c84703fb4e3e60a6c1552" title="Import the content from the file into an oval_definition_model.">oval_definition_model_import</a>(oval_file);
  <span class="keyword">struct </span><a class="code" href="structxccdf__benchmark.html" title="Top level XCCDF structure containing profiles, rules, values and results.">xccdf_benchmark</a> * benchmark = <a class="code" href="group__XCCDF.html#gad71cc690fef5bceb9aa98bed119288f0" title="Import the content from a specified XML stream into a benchmark.">xccdf_benchmark_import</a>(file);
  <span class="keyword">struct </span><a class="code" href="structxccdf__policy__model.html" title="XCCDF policy model structure contains xccdf_benchmark as reference to Benchmark element in XML file a...">xccdf_policy_model</a> * policy_model = <a class="code" href="group__XCCDF__POLICY.html#ga4f8f92790770ff3e12e55f3921b77261" title="Constructor of Policy Model structure.">xccdf_policy_model_new</a>(benchmark);
  <span class="keyword">struct </span><a class="code" href="structoval__agent__session.html">oval_agent_session</a> * sess = <a class="code" href="group__OVALAGENT.html#ga363376feb3dc45839611dbf7ae149934" title="Create new session for OVAL agent from OVAL definition model.">oval_agent_new_session</a>(def_model, <span class="stringliteral">&quot;name-of-file&quot;</span>);
  ...
  <a class="code" href="group__XCCDF__POLICY.html#ga625d761f5ab77888245d0378192e27c1" title="Function to register callback for checking system.">xccdf_policy_model_register_engine_callback</a>(policy_model, <span class="stringliteral">&quot;http://oval.mitre.org/XMLSchema/oval-definitions-5&quot;</span>, <a class="code" href="group__OVALAGENT.html#ga58d82d4d759d169780b7ed90720a5af4" title="Internal OVAL Agent Callback that can be used to evaluate XCCDF content.">oval_agent_eval_rule</a>, (<span class="keywordtype">void</span> *) sess);
</pre></div> </dd></dl>

</div>
</div>
<a class="anchor" id="gaf997d19641259ab5ac9add9831e1e62b"></a><!-- doxytag: member="oval_agent_api.h::oval_agent_eval_system" ref="gaf997d19641259ab5ac9add9831e1e62b" args="(oval_agent_session_t *ag_sess, oscap_reporter cb, void *arg)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int oval_agent_eval_system </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structoval__agent__session.html">oval_agent_session_t</a> *&#160;</td>
          <td class="paramname"><em>ag_sess</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__Reporters.html#gada96dbbbb54a7659c3acf1c00a7d7ad3">oscap_reporter</a>&#160;</td>
          <td class="paramname"><em>cb</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>arg</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Probe and evaluate all definitions from the content, call the callback functions upon single evaluation. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success; -1 error; 1 warning </dd></dl>

</div>
</div>
<a class="anchor" id="gacd87da61a584f365001a6a9a1f4a5c13"></a><!-- doxytag: member="oval_agent_api.h::oval_agent_export_sysinfo_to_xccdf_result" ref="gacd87da61a584f365001a6a9a1f4a5c13" args="(struct oval_agent_session *session, struct xccdf_result *ritem)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void oval_agent_export_sysinfo_to_xccdf_result </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structoval__agent__session.html">oval_agent_session</a> *&#160;</td>
          <td class="paramname"><em>session</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>ritem</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Transform OVAL Sysinfo into XCCDF Test Result. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">session</td><td>OVAL Agent session </td></tr>
    <tr><td class="paramname">ritem</td><td>XCCDF Result </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga9a88f1166593f63aa0f7cdc080685c1d"></a><!-- doxytag: member="oval_agent_api.h::oval_agent_get_definition_result" ref="ga9a88f1166593f63aa0f7cdc080685c1d" args="(oval_agent_session_t *, const char *, oval_result_t *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int oval_agent_get_definition_result </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structoval__agent__session.html">oval_agent_session_t</a> *&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__OVALRES.html#ga585abe0825db03426e1994ba335dc4bf">oval_result_t</a> *&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the OVAL result of a definition from an agent session. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success; -1 error </dd></dl>

</div>
</div>
<a class="anchor" id="ga363376feb3dc45839611dbf7ae149934"></a><!-- doxytag: member="oval_agent_api.h::oval_agent_new_session" ref="ga363376feb3dc45839611dbf7ae149934" args="(struct oval_definition_model *model, const char *name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structoval__agent__session.html">oval_agent_session_t</a>* oval_agent_new_session </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structoval__definition__model.html">oval_definition_model</a> *&#160;</td>
          <td class="paramname"><em>model</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>name</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create new session for OVAL agent from OVAL definition model. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">model</td><td>OVAL Definition model </td></tr>
    <tr><td class="paramname">name</td><td>Name of file that can be referenced from XCCDF Benchmark </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga86f153582f6e48986aaac82efcb064ae"></a><!-- doxytag: member="oval_agent_api.h::oval_agent_resolve_variables" ref="ga86f153582f6e48986aaac82efcb064ae" args="(struct oval_agent_session *session, struct xccdf_value_binding_iterator *it)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int oval_agent_resolve_variables </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structoval__agent__session.html">oval_agent_session</a> *&#160;</td>
          <td class="paramname"><em>session</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct xccdf_value_binding_iterator *&#160;</td>
          <td class="paramname"><em>it</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Resolve variables from XCCDF Value Bindings and set their values to OVAL Variables. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">session</td><td>OVAL Agent Session </td></tr>
    <tr><td class="paramname">it</td><td>XCCDF Value Bindng iterator </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 if resolving pass </dd></dl>
<dl class="user"><dt><b>Example</b></dt><dd>Example in <a class="el" href="oval__agent_8c.html" title="Open Vulnerability and Assessment Language.">oval_agent.c</a> in function oval_agent_eval_rule </dd></dl>

</div>
</div>
<a class="anchor" id="gaeee658b7aee3ba20b274248ec024eefc"></a><!-- doxytag: member="xccdf_policy_model::xccdf_policy_model_register_engine_oval" ref="gaeee658b7aee3ba20b274248ec024eefc" args="(struct xccdf_policy_model *model, struct oval_agent_session *sess)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool xccdf_policy_model_register_engine_oval </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structxccdf__policy__model.html">xccdf_policy_model</a> *&#160;</td>
          <td class="paramname"><em>model</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structoval__agent__session.html">oval_agent_session</a> *&#160;</td>
          <td class="paramname"><em>sess</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Function to register predefined oval callback for XCCDF evaluation proccess. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">model</td><td>XCCDF Policy Model </td></tr>
    <tr><td class="paramname">sess</td><td>oval_agent_session_t parameter for passing session data to callback</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if callback registered succesfully, false otherwise </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>