<!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: xccdf_policy_model Struct Reference</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 Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li class="current"><a href="annotated.html"><span>Data 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 Structures</span></a></li> <li><a href="classes.html"><span>Data Structure Index</span></a></li> <li><a href="functions.html"><span>Data Fields</span></a></li> </ul> </div> </div> <div class="header"> <div class="summary"> <a href="#pub-methods">Public Member Functions</a> | <a href="#pub-attribs">Data Fields</a> </div> <div class="headertitle"> <div class="title">xccdf_policy_model Struct Reference<div class="ingroups"><a class="el" href="group__XCCDF__POLICY.html">XCCDF_POLICY</a></div></div> </div> </div> <div class="contents"> <!-- doxytag: class="xccdf_policy_model" --> <p>XCCDF policy model structure contains <a class="el" href="structxccdf__benchmark.html" title="Top level XCCDF structure containing profiles, rules, values and results.">xccdf_benchmark</a> as reference to Benchmark element in XML file and list of policies that are abstract structure of Profile element from benchmark file. <a href="structxccdf__policy__model.html#details">More...</a></p> <p><code>#include <<a class="el" href="xccdf__policy_8h_source.html">xccdf_policy.h</a>></code></p> <table class="memberdecls"> <tr><td colspan="2"><h2><a name="pub-methods"></a> Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structxccdf__policy__model.html">xccdf_policy_model</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__XCCDF__POLICY.html#ga4f8f92790770ff3e12e55f3921b77261">xccdf_policy_model_new</a> (struct <a class="el" href="structxccdf__benchmark.html">xccdf_benchmark</a> *<a class="el" href="structxccdf__policy__model.html#a4b2f4437d806ae30b0d1ac84065e5f24">benchmark</a>)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Constructor of Policy Model structure. <a href="group__XCCDF__POLICY.html#ga4f8f92790770ff3e12e55f3921b77261"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga46bbf0b7e034fee60fbbf244fba80288"></a><!-- doxytag: member="xccdf_policy_model::xccdf_policy_model_free" ref="ga46bbf0b7e034fee60fbbf244fba80288" args="(struct xccdf_policy_model *)" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__XCCDF__POLICY.html#ga46bbf0b7e034fee60fbbf244fba80288">xccdf_policy_model_free</a> (struct <a class="el" href="structxccdf__policy__model.html">xccdf_policy_model</a> *)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Destructor of Policy Model structure. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__XCCDF__POLICY.html#ga625d761f5ab77888245d0378192e27c1">xccdf_policy_model_register_engine_callback</a> (struct <a class="el" href="structxccdf__policy__model.html">xccdf_policy_model</a> *model, char *sys, void *func, void *usr)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Function to register callback for checking system. <a href="group__XCCDF__POLICY.html#ga625d761f5ab77888245d0378192e27c1"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__XCCDF__POLICY.html#gab3bd1c78848a4f9b993a6f81242cfe8a">xccdf_policy_model_register_output_callback</a> (struct <a class="el" href="structxccdf__policy__model.html">xccdf_policy_model</a> *model, <a class="el" href="group__Reporters.html#gada96dbbbb54a7659c3acf1c00a7d7ad3">oscap_reporter</a> func, void *usr)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Function to register output callback for checking system that will be called AFTER each rule evaluation. <a href="group__XCCDF__POLICY.html#gab3bd1c78848a4f9b993a6f81242cfe8a"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__XCCDF__POLICY.html#gacd60bfd83abdfa3a31b91ba8493be842">xccdf_policy_model_register_start_callback</a> (struct <a class="el" href="structxccdf__policy__model.html">xccdf_policy_model</a> *model, <a class="el" href="group__Reporters.html#gada96dbbbb54a7659c3acf1c00a7d7ad3">oscap_reporter</a> func, void *usr)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Function to register start callback for checking system that will be called BEFORE each rule evaluation. <a href="group__XCCDF__POLICY.html#gacd60bfd83abdfa3a31b91ba8493be842"></a><br/></td></tr> <tr><td colspan="2"><div class="groupHeader">Evaluators</div></td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__OVALAGENT.html#gaeee658b7aee3ba20b274248ec024eefc">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"> </td><td class="mdescRight">Function to register predefined oval callback for XCCDF evaluation proccess. <a href="group__OVALAGENT.html#gaeee658b7aee3ba20b274248ec024eefc"></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><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structxccdf__benchmark.html">xccdf_benchmark</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__XCCDF__POLICY.html#ga3ffe61a9b49a14ad14aa42c58a94c1bd">xccdf_policy_model_get_benchmark</a> (const struct <a class="el" href="structxccdf__policy__model.html">xccdf_policy_model</a> *item)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get Benchmark from Policy Model. <a href="group__XCCDF__POLICY.html#ga3ffe61a9b49a14ad14aa42c58a94c1bd"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structxccdf__policy__iterator.html">xccdf_policy_iterator</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__XCCDF__POLICY.html#ga42dd36f134faf00026a5f248069a451f">xccdf_policy_model_get_policies</a> (const struct <a class="el" href="structxccdf__policy__model.html">xccdf_policy_model</a> *model)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get policies from Policy Model. <a href="group__XCCDF__POLICY.html#ga42dd36f134faf00026a5f248069a451f"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga39fb4c2c1729e997ae43efb5ce75210c"></a><!-- doxytag: member="xccdf_policy_model::xccdf_policy_get_results" ref="ga39fb4c2c1729e997ae43efb5ce75210c" args="(const struct xccdf_policy *policy)" --> struct <a class="el" href="structxccdf__result__iterator.html">xccdf_result_iterator</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__XCCDF__POLICY.html#ga39fb4c2c1729e997ae43efb5ce75210c">xccdf_policy_get_results</a> (const struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *policy)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get results of all XCCDF Policy results. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structxccdf__result.html">xccdf_result</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__XCCDF__POLICY.html#gaf7be772199b7326e7df16c0a985a7c63">xccdf_policy_get_result_by_id</a> (struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *policy, const char *id)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get XCCDF Result structure by it's idetificator if there is one. <a href="group__XCCDF__POLICY.html#gaf7be772199b7326e7df16c0a985a7c63"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__XCCDF__POLICY.html#gab31d7c9da64d171683b762b9d7f19f74">xccdf_policy_model_get_policy_by_id</a> (struct <a class="el" href="structxccdf__policy__model.html">xccdf_policy_model</a> *policy_model, const char *id)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get XCCDF Policy from Policy model by speciefied ID of Profile. <a href="group__XCCDF__POLICY.html#gab31d7c9da64d171683b762b9d7f19f74"></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><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__XCCDF__POLICY.html#gaa099731e15f0d4d577bd72b07374ca69">xccdf_policy_model_add_policy</a> (struct <a class="el" href="structxccdf__policy__model.html">xccdf_policy_model</a> *, struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Add Policy to Policy Model. <a href="group__XCCDF__POLICY.html#gaa099731e15f0d4d577bd72b07374ca69"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga6eb8c2f09d05e46a184b35fc2f8261ad"></a><!-- doxytag: member="xccdf_policy_model::xccdf_policy_add_result" ref="ga6eb8c2f09d05e46a184b35fc2f8261ad" args="(struct xccdf_policy *policy, struct xccdf_result *item)" --> bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__XCCDF__POLICY.html#ga6eb8c2f09d05e46a184b35fc2f8261ad">xccdf_policy_add_result</a> (struct <a class="el" href="structxccdf__policy.html">xccdf_policy</a> *policy, struct <a class="el" href="structxccdf__result.html">xccdf_result</a> *item)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Add result to XCCDF Policy Model. <br/></td></tr> <tr><td colspan="2"><h2><a name="pub-attribs"></a> Data Fields</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4b2f4437d806ae30b0d1ac84065e5f24"></a><!-- doxytag: member="xccdf_policy_model::benchmark" ref="a4b2f4437d806ae30b0d1ac84065e5f24" args="" --> struct <a class="el" href="structxccdf__benchmark.html">xccdf_benchmark</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structxccdf__policy__model.html#a4b2f4437d806ae30b0d1ac84065e5f24">benchmark</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Benchmark element (root element of XML file) <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3c717bce8160dcdb477ba467080cd523"></a><!-- doxytag: member="xccdf_policy_model::policies" ref="a3c717bce8160dcdb477ba467080cd523" args="" --> struct <a class="el" href="structoscap__list.html">oscap_list</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structxccdf__policy__model.html#a3c717bce8160dcdb477ba467080cd523">policies</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">List of <a class="el" href="structxccdf__policy.html" title="XCCDF policy structure is abstract (class) structure of Profile element from benchmark.">xccdf_policy</a> structures. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad92b5ba6544db37e6f99b6184ae1e2b4"></a><!-- doxytag: member="xccdf_policy_model::callbacks" ref="ad92b5ba6544db37e6f99b6184ae1e2b4" args="" --> struct <a class="el" href="structoscap__list.html">oscap_list</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structxccdf__policy__model.html#ad92b5ba6544db37e6f99b6184ae1e2b4">callbacks</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Callbacks for checking engines (see <a class="el" href="structcallback__t.html" title="Typedef of callback structure with system identificator, callback function and usr data (optional) On...">callback_t</a>) <br/></td></tr> </table> <hr/><a name="details" id="details"></a><h2>Detailed Description</h2> <div class="textblock"><p>XCCDF policy model structure contains <a class="el" href="structxccdf__benchmark.html" title="Top level XCCDF structure containing profiles, rules, values and results.">xccdf_benchmark</a> as reference to Benchmark element in XML file and list of policies that are abstract structure of Profile element from benchmark file. </p> <p>Handle all policies for given XCCDF benchmark. </p> </div><hr/>The documentation for this struct was generated from the following files:<ul> <li>/home/pvrabec/project/openscap/openscap-0.7.4/src/XCCDF_POLICY/xccdf_policy.c</li> <li>/home/pvrabec/project/openscap/openscap-0.7.4/src/OVAL/public/<a class="el" href="oval__agent__api_8h_source.html">oval_agent_api.h</a></li> <li>/home/pvrabec/project/openscap/openscap-0.7.4/src/XCCDF_POLICY/public/<a class="el" href="xccdf__policy_8h_source.html">xccdf_policy.h</a></li> </ul> </div> <hr class="footer"/><address class="footer"><small>Generated on Mon Jul 25 2011 for Open SCAP Library by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.4 </small></address> </body> </html>