<!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"/> <meta name="generator" content="Doxygen 1.8.6"/> <title>Open SCAP Library: Probe handler API</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.6 --> <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><a href="annotated.html"><span>Data Structures</span></a></li> <li><a href="files.html"><span>Files</span></a></li> </ul> </div> </div><!-- top --> <div class="header"> <div class="summary"> <a href="#nested-classes">Data Structures</a> | <a href="#define-members">Macros</a> | <a href="#typedef-members">Typedefs</a> | <a href="#func-members">Functions</a> </div> <div class="headertitle"> <div class="title">Probe handler API<div class="ingroups"><a class="el" href="group__PROBES.html">System checking mechanism - probes</a></div></div> </div> </div><!--header--> <div class="contents"> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a> Data Structures</h2></td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structoval__ph.html">oval_ph</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structoval__phtbl.html">oval_phtbl</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a> Macros</h2></td></tr> <tr class="memitem:ga78f2e634deca364e05b8f77bd3eaa502"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga78f2e634deca364e05b8f77bd3eaa502"></a> #define </td><td class="memItemRight" valign="bottom"><b>PROBE_HANDLER_ACT_INIT</b>   0</td></tr> <tr class="separator:ga78f2e634deca364e05b8f77bd3eaa502"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga3cde9fedbcc666b0b9f2c2eeb968b42a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3cde9fedbcc666b0b9f2c2eeb968b42a"></a> #define </td><td class="memItemRight" valign="bottom"><b>PROBE_HANDLER_ACT_FREE</b>   1</td></tr> <tr class="separator:ga3cde9fedbcc666b0b9f2c2eeb968b42a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga56c2c114b4cfbb05691f2fe38010e073"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga56c2c114b4cfbb05691f2fe38010e073"></a> #define </td><td class="memItemRight" valign="bottom"><b>PROBE_HANDLER_ACT_OPEN</b>   2</td></tr> <tr class="separator:ga56c2c114b4cfbb05691f2fe38010e073"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaf106fa02bb50532934ca5152a720a498"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaf106fa02bb50532934ca5152a720a498"></a> #define </td><td class="memItemRight" valign="bottom"><b>PROBE_HANDLER_ACT_EVAL</b>   3</td></tr> <tr class="separator:gaf106fa02bb50532934ca5152a720a498"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga1fac252eb201ffb7a34f9d549f155826"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga1fac252eb201ffb7a34f9d549f155826"></a> #define </td><td class="memItemRight" valign="bottom"><b>PROBE_HANDLER_ACT_RESET</b>   4</td></tr> <tr class="separator:ga1fac252eb201ffb7a34f9d549f155826"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga1dee8de30690aac847c614b06402fc88"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga1dee8de30690aac847c614b06402fc88"></a> #define </td><td class="memItemRight" valign="bottom"><b>PROBE_HANDLER_ACT_CLOSE</b>   5</td></tr> <tr class="separator:ga1dee8de30690aac847c614b06402fc88"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaa8567c21cd8ab945b114e41e542977df"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaa8567c21cd8ab945b114e41e542977df"></a> #define </td><td class="memItemRight" valign="bottom"><b>PROBE_HANDLER_ACT_ABORT</b>   6</td></tr> <tr class="separator:gaa8567c21cd8ab945b114e41e542977df"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gac7be946d4f8bfad032bc32548b358c74"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac7be946d4f8bfad032bc32548b358c74"></a> #define </td><td class="memItemRight" valign="bottom"><b>PROBE_HANDLER_IGNORE</b>   NULL</td></tr> <tr class="separator:gac7be946d4f8bfad032bc32548b358c74"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a> Typedefs</h2></td></tr> <tr class="memitem:gac49345732686481296ffc95625fe9a67"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac49345732686481296ffc95625fe9a67"></a> typedef struct <a class="el" href="structoval__phtbl.html">oval_phtbl</a> </td><td class="memItemRight" valign="bottom"><b>oval_phtbl_t</b></td></tr> <tr class="separator:gac49345732686481296ffc95625fe9a67"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gab4d76076dbcda958dca6a57450ee07c6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gab4d76076dbcda958dca6a57450ee07c6"></a> typedef struct <a class="el" href="structoval__ph.html">oval_ph</a> </td><td class="memItemRight" valign="bottom"><b>oval_ph_t</b></td></tr> <tr class="separator:gab4d76076dbcda958dca6a57450ee07c6"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaa9dc58a25b744ead912c84a69bab84b6"><td class="memItemLeft" align="right" valign="top">typedef int( </td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEHANDLERS.html#gaa9dc58a25b744ead912c84a69bab84b6">oval_probe_handler_t</a> )(<a class="el" href="group__OVAL.html#ga99498f525c1a0282ef45557fc882f97f">oval_subtype_t</a>, void *, int,...)</td></tr> <tr class="memdesc:gaa9dc58a25b744ead912c84a69bab84b6"><td class="mdescLeft"> </td><td class="mdescRight">Type of the handler function. <a href="#gaa9dc58a25b744ead912c84a69bab84b6">More...</a><br/></td></tr> <tr class="separator:gaa9dc58a25b744ead912c84a69bab84b6"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a> Functions</h2></td></tr> <tr class="memitem:gaa0e0b633acb4ba1cfcb02d4b24061562"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaa0e0b633acb4ba1cfcb02d4b24061562"></a> <a class="el" href="structoval__phtbl.html">oval_phtbl_t</a> * </td><td class="memItemRight" valign="bottom"><b>oval_phtbl_new</b> (void)</td></tr> <tr class="separator:gaa0e0b633acb4ba1cfcb02d4b24061562"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gae270affd79bfa56d9f28c11303f46b33"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gae270affd79bfa56d9f28c11303f46b33"></a> void </td><td class="memItemRight" valign="bottom"><b>oval_phtbl_free</b> (<a class="el" href="structoval__phtbl.html">oval_phtbl_t</a> *phtbl)</td></tr> <tr class="separator:gae270affd79bfa56d9f28c11303f46b33"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga6b01245e40f1e62835899f55464a4aa1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga6b01245e40f1e62835899f55464a4aa1"></a> <a class="el" href="structoval__ph.html">oval_ph_t</a> * </td><td class="memItemRight" valign="bottom"><b>oval_probe_handler_get</b> (<a class="el" href="structoval__phtbl.html">oval_phtbl_t</a> *phtbl, <a class="el" href="group__OVAL.html#ga99498f525c1a0282ef45557fc882f97f">oval_subtype_t</a> type)</td></tr> <tr class="separator:ga6b01245e40f1e62835899f55464a4aa1"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaf7266816428647f8a055cc5c7c46543d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaf7266816428647f8a055cc5c7c46543d"></a> int </td><td class="memItemRight" valign="bottom"><b>oval_probe_handler_set</b> (<a class="el" href="structoval__phtbl.html">oval_phtbl_t</a> *phtbl, <a class="el" href="group__OVAL.html#ga99498f525c1a0282ef45557fc882f97f">oval_subtype_t</a> type, <a class="el" href="group__PROBEHANDLERS.html#gaa9dc58a25b744ead912c84a69bab84b6">oval_probe_handler_t</a> *handler, void *uptr)</td></tr> <tr class="separator:gaf7266816428647f8a055cc5c7c46543d"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <h2 class="groupheader">Typedef Documentation</h2> <a class="anchor" id="gaa9dc58a25b744ead912c84a69bab84b6"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef int( oval_probe_handler_t)(<a class="el" href="group__OVAL.html#ga99498f525c1a0282ef45557fc882f97f">oval_subtype_t</a>, void *, int,...)</td> </tr> </table> </div><div class="memdoc"> <p>Type of the handler function. </p> <p>This function takes care of handling all the actions defined bellow, that is: initialization, freeing, opening, evaluating, reseting and closing (whatever that means in your particular case). </p> </div> </div> </div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/> </a> 1.8.6 </small></address> </body> </html>