Sophie

Sophie

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

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: Common probe API - object, entity, item manipulation</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="#define-members">Defines</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a>  </div>
  <div class="headertitle">
<div class="title">Common probe API - object, entity, item manipulation</div>  </div>
<div class="ingroups"><a class="el" href="group__PROBES.html">System checking mechanism - probes</a></div></div>
<div class="contents">

<p>This file contains functions for manipulating with the S-exp representation of OVAL objects and items.  
<a href="#details">More...</a></p>
<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="struct__oresults.html">_oresults</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structprobe__elmatr__t.html">probe_elmatr_t</a></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="probe-api_8c.html">probe-api.c</a></td></tr>

<p><tr><td class="mdescLeft">&#160;</td><td class="mdescRight"><p>Probe API implmentation. </p>
<br/></td></tr>
</p>
<tr><td colspan="2"><h2><a name="define-members"></a>
Defines</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga4cf5b92b881574367b99ff0e1dbf5134"></a><!-- doxytag: member="PROBEAPI::PROBE_RESULT_MEMCHECK_CTRESHOLD" ref="ga4cf5b92b881574367b99ff0e1dbf5134" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><b>PROBE_RESULT_MEMCHECK_CTRESHOLD</b>&#160;&#160;&#160;32768</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gabd3a1a7ca148e2bdc01b022df1b91107"></a><!-- doxytag: member="PROBEAPI::PROBE_RESULT_MEMCHECK_MINFREEMEM" ref="gabd3a1a7ca148e2bdc01b022df1b91107" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><b>PROBE_RESULT_MEMCHECK_MINFREEMEM</b>&#160;&#160;&#160;128</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga258260afe2a083f8a44edd4155aeaf35"></a><!-- doxytag: member="PROBEAPI::PROBE_RESULT_MEMCHECK_MAXRATIO" ref="ga258260afe2a083f8a44edd4155aeaf35" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><b>PROBE_RESULT_MEMCHECK_MAXRATIO</b>&#160;&#160;&#160;0.80</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaed502aacce1f11fcbee62e4c3b474995"></a><!-- doxytag: member="PROBEAPI::probe_item_getent" ref="gaed502aacce1f11fcbee62e4c3b474995" args="(item, name, n)" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><b>probe_item_getent</b>(item, name, n)&#160;&#160;&#160;probe_obj_getent (item, name, n)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gad69bb1533565f81eb97329ad8999a274"></a><!-- doxytag: member="PROBEAPI::PROBE_EINVAL" ref="gad69bb1533565f81eb97329ad8999a274" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#gad69bb1533565f81eb97329ad8999a274">PROBE_EINVAL</a>&#160;&#160;&#160;1</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Invalid type/value/format. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga665325994bad09304d8200537d93642b"></a><!-- doxytag: member="PROBEAPI::PROBE_ENOELM" ref="ga665325994bad09304d8200537d93642b" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga665325994bad09304d8200537d93642b">PROBE_ENOELM</a>&#160;&#160;&#160;2</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Missing element OBSOLETE: use ENOENT. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac40d965d6387fc705aea7e17dd7680ba"></a><!-- doxytag: member="PROBEAPI::PROBE_ENOVAL" ref="gac40d965d6387fc705aea7e17dd7680ba" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#gac40d965d6387fc705aea7e17dd7680ba">PROBE_ENOVAL</a>&#160;&#160;&#160;3</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Missing value. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga74bcecc6555100a7238fdc65f0d6148b"></a><!-- doxytag: member="PROBEAPI::PROBE_ENOATTR" ref="ga74bcecc6555100a7238fdc65f0d6148b" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga74bcecc6555100a7238fdc65f0d6148b">PROBE_ENOATTR</a>&#160;&#160;&#160;4</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Missing attribute. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga9a5597ef21583fc083506d20a214761a"></a><!-- doxytag: member="PROBEAPI::PROBE_EINIT" ref="ga9a5597ef21583fc083506d20a214761a" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga9a5597ef21583fc083506d20a214761a">PROBE_EINIT</a>&#160;&#160;&#160;5</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialization failed. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaa21674196b5cb001c28278c9514be185"></a><!-- doxytag: member="PROBEAPI::PROBE_ENOMEM" ref="gaa21674196b5cb001c28278c9514be185" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#gaa21674196b5cb001c28278c9514be185">PROBE_ENOMEM</a>&#160;&#160;&#160;6</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">No memory. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaa6a7dd0ff32488e301fc8b9420acf55c"></a><!-- doxytag: member="PROBEAPI::PROBE_EOPNOTSUPP" ref="gaa6a7dd0ff32488e301fc8b9420acf55c" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#gaa6a7dd0ff32488e301fc8b9420acf55c">PROBE_EOPNOTSUPP</a>&#160;&#160;&#160;7</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Not supported. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga46a7aab37ba4784bd48fd1e5928ce96e"></a><!-- doxytag: member="PROBEAPI::PROBE_ERANGE" ref="ga46a7aab37ba4784bd48fd1e5928ce96e" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga46a7aab37ba4784bd48fd1e5928ce96e">PROBE_ERANGE</a>&#160;&#160;&#160;8</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Out of range. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaf657b90fcfba95adaae13b5052304c63"></a><!-- doxytag: member="PROBEAPI::PROBE_EDOM" ref="gaf657b90fcfba95adaae13b5052304c63" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#gaf657b90fcfba95adaae13b5052304c63">PROBE_EDOM</a>&#160;&#160;&#160;9</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Out of domain. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga4f022024f2cd09d1d61896e5c2c38255"></a><!-- doxytag: member="PROBEAPI::PROBE_EFAULT" ref="ga4f022024f2cd09d1d61896e5c2c38255" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga4f022024f2cd09d1d61896e5c2c38255">PROBE_EFAULT</a>&#160;&#160;&#160;10</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Memory fault/NULL value. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga788a3096bb8194ad2cc1d5a05ac8cdf0"></a><!-- doxytag: member="PROBEAPI::PROBE_EACCESS" ref="ga788a3096bb8194ad2cc1d5a05ac8cdf0" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga788a3096bb8194ad2cc1d5a05ac8cdf0">PROBE_EACCESS</a>&#160;&#160;&#160;11</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Operation not permitted. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga17111637d17fa23099a5db55a244d708"></a><!-- doxytag: member="PROBEAPI::PROBE_ESETEVAL" ref="ga17111637d17fa23099a5db55a244d708" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga17111637d17fa23099a5db55a244d708">PROBE_ESETEVAL</a>&#160;&#160;&#160;12</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set evaluation failed. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga06b962b819862cec7b8d5db3435d2ca7"></a><!-- doxytag: member="PROBEAPI::PROBE_ENOENT" ref="ga06b962b819862cec7b8d5db3435d2ca7" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga06b962b819862cec7b8d5db3435d2ca7">PROBE_ENOENT</a>&#160;&#160;&#160;13</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Missing entity. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga9d4910b622976895a10f5dfc8c505bcf"></a><!-- doxytag: member="PROBEAPI::PROBE_ENOOBJ" ref="ga9d4910b622976895a10f5dfc8c505bcf" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga9d4910b622976895a10f5dfc8c505bcf">PROBE_ENOOBJ</a>&#160;&#160;&#160;14</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Missing object. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga47e75cf6deaeff709e482781fb21b95c"></a><!-- doxytag: member="PROBEAPI::PROBE_ECONNABORTED" ref="ga47e75cf6deaeff709e482781fb21b95c" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga47e75cf6deaeff709e482781fb21b95c">PROBE_ECONNABORTED</a>&#160;&#160;&#160;15</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Evaluation aborted. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga82a47bf338d851f206d5b57af891023e"></a><!-- doxytag: member="PROBEAPI::PROBE_ESYSTEM" ref="ga82a47bf338d851f206d5b57af891023e" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga82a47bf338d851f206d5b57af891023e">PROBE_ESYSTEM</a>&#160;&#160;&#160;253</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">System call failure. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga851f1cb9529e4ac8d3e4ab659492dac6"></a><!-- doxytag: member="PROBEAPI::PROBE_EFATAL" ref="ga851f1cb9529e4ac8d3e4ab659492dac6" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga851f1cb9529e4ac8d3e4ab659492dac6">PROBE_EFATAL</a>&#160;&#160;&#160;254</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Unrecoverable error. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac7ffdc136441d8e231cdf0907c2dd03f"></a><!-- doxytag: member="PROBEAPI::PROBE_EUNKNOWN" ref="gac7ffdc136441d8e231cdf0907c2dd03f" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#gac7ffdc136441d8e231cdf0907c2dd03f">PROBE_EUNKNOWN</a>&#160;&#160;&#160;255</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Unknown/Unexpected error. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaa34a95304edba1eb22c8579f3f29bbfb"></a><!-- doxytag: member="PROBEAPI::OVAL_STATUS_UNKNOWN" ref="gaa34a95304edba1eb22c8579f3f29bbfb" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><b>OVAL_STATUS_UNKNOWN</b>&#160;&#160;&#160;SYSCHAR_STATUS_UNKNOWN</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3ddadcd64d38a0a0f71b614829b046f9"></a><!-- doxytag: member="PROBEAPI::OVAL_STATUS_ERROR" ref="ga3ddadcd64d38a0a0f71b614829b046f9" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><b>OVAL_STATUS_ERROR</b>&#160;&#160;&#160;SYSCHAR_STATUS_ERROR</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga163b455b276bcd2fb813b3026a3381dd"></a><!-- doxytag: member="PROBEAPI::OVAL_STATUS_EXISTS" ref="ga163b455b276bcd2fb813b3026a3381dd" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><b>OVAL_STATUS_EXISTS</b>&#160;&#160;&#160;SYSCHAR_STATUS_EXISTS</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gae1a56a05542e75d07f55dc0042aa65be"></a><!-- doxytag: member="PROBEAPI::OVAL_STATUS_DOESNOTEXIST" ref="gae1a56a05542e75d07f55dc0042aa65be" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><b>OVAL_STATUS_DOESNOTEXIST</b>&#160;&#160;&#160;SYSCHAR_STATUS_DOES_NOT_EXIST</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaa33021f49721bd7f275235360945703c"></a><!-- doxytag: member="PROBEAPI::OVAL_STATUS_NOTCOLLECTED" ref="gaa33021f49721bd7f275235360945703c" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><b>OVAL_STATUS_NOTCOLLECTED</b>&#160;&#160;&#160;SYSCHAR_STATUS_NOT_COLLECTED</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gabf31b82ea668b210dc889e8706674fca"></a><!-- doxytag: member="PROBEAPI::PROBECMD_STE_FETCH" ref="gabf31b82ea668b210dc889e8706674fca" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#gabf31b82ea668b210dc889e8706674fca">PROBECMD_STE_FETCH</a>&#160;&#160;&#160;1</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">State fetch command code. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga568b36409fa7ad30440d7b9b339db22d"></a><!-- doxytag: member="PROBEAPI::PROBECMD_OBJ_EVAL" ref="ga568b36409fa7ad30440d7b9b339db22d" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga568b36409fa7ad30440d7b9b339db22d">PROBECMD_OBJ_EVAL</a>&#160;&#160;&#160;2</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Object eval command code. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gafaa4a590a3406b83092502eb0d05b98e"></a><!-- doxytag: member="PROBEAPI::PROBECMD_RESET" ref="gafaa4a590a3406b83092502eb0d05b98e" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#gafaa4a590a3406b83092502eb0d05b98e">PROBECMD_RESET</a>&#160;&#160;&#160;3</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Reset command code. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga1fd23592ca6a483e509d7837003984df"></a><!-- doxytag: member="PROBEAPI::PROBE_VARREF_HANDLING" ref="ga1fd23592ca6a483e509d7837003984df" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><b>PROBE_VARREF_HANDLING</b>&#160;&#160;&#160;0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gae433f90b9643d863d3b1aeaab0bf44b7"></a><!-- doxytag: member="PROBEAPI::PROBE_RESULT_CACHING" ref="gae433f90b9643d863d3b1aeaab0bf44b7" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><b>PROBE_RESULT_CACHING</b>&#160;&#160;&#160;1</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><b>PROBE_ENT_AREF</b>(ent, dst, attr_name, invalid_exp)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><b>PROBE_ENT_STRVAL</b>(ent, dst, dstlen, invalid_exp, zerolen_exp)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><b>PROBE_ENT_I32VAL</b>(ent, dst, invalid_exp)</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="ga9c6fce5beaeaa68ee6f0478469d8bf50"></a><!-- doxytag: member="PROBEAPI::probe_ctx" ref="ga9c6fce5beaeaa68ee6f0478469d8bf50" args="" -->
typedef struct <a class="el" href="structprobe__ctx.html">probe_ctx</a>&#160;</td><td class="memItemRight" valign="bottom"><b>probe_ctx</b></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="group__OVALRES.html#ga585abe0825db03426e1994ba335dc4bf">oval_result_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#gaed2ba0c447a642376277d827572300f6">probe_ent_cmp_binary</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *val1, <a class="el" href="structSEXP.html">SEXP_t</a> *val2, <a class="el" href="group__OVALDEF.html#ga3f00a63428c2b5db781a9c87ec73acd1">oval_operation_t</a> op)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Compare two binary values.  <a href="#gaed2ba0c447a642376277d827572300f6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__OVALRES.html#ga585abe0825db03426e1994ba335dc4bf">oval_result_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga1ec23cec30188459da8ce24c2eb5518d">probe_ent_cmp_bool</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *val1, <a class="el" href="structSEXP.html">SEXP_t</a> *val2, <a class="el" href="group__OVALDEF.html#ga3f00a63428c2b5db781a9c87ec73acd1">oval_operation_t</a> op)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Compare two boolean values.  <a href="#ga1ec23cec30188459da8ce24c2eb5518d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__OVALRES.html#ga585abe0825db03426e1994ba335dc4bf">oval_result_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga757412dca11a0195037eb958d37e9b6b">probe_ent_cmp_evr</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *val1, <a class="el" href="structSEXP.html">SEXP_t</a> *val2, <a class="el" href="group__OVALDEF.html#ga3f00a63428c2b5db781a9c87ec73acd1">oval_operation_t</a> op)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Compare two epoch-version-release values.  <a href="#ga757412dca11a0195037eb958d37e9b6b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__OVALRES.html#ga585abe0825db03426e1994ba335dc4bf">oval_result_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga026cb1dd03de0ad2ecec589991a0828f">probe_ent_cmp_filesetrev</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *val1, <a class="el" href="structSEXP.html">SEXP_t</a> *val2, <a class="el" href="group__OVALDEF.html#ga3f00a63428c2b5db781a9c87ec73acd1">oval_operation_t</a> op)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Compare two values.  <a href="#ga026cb1dd03de0ad2ecec589991a0828f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__OVALRES.html#ga585abe0825db03426e1994ba335dc4bf">oval_result_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga4a70b71edba51997c30fc20f0744e54e">probe_ent_cmp_float</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *val1, <a class="el" href="structSEXP.html">SEXP_t</a> *val2, <a class="el" href="group__OVALDEF.html#ga3f00a63428c2b5db781a9c87ec73acd1">oval_operation_t</a> op)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Compare two floating point values.  <a href="#ga4a70b71edba51997c30fc20f0744e54e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__OVALRES.html#ga585abe0825db03426e1994ba335dc4bf">oval_result_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga6d7a0a42dad35778c92ddd1e6c013ae1">probe_ent_cmp_int</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *val1, <a class="el" href="structSEXP.html">SEXP_t</a> *val2, <a class="el" href="group__OVALDEF.html#ga3f00a63428c2b5db781a9c87ec73acd1">oval_operation_t</a> op)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Compare two integer values.  <a href="#ga6d7a0a42dad35778c92ddd1e6c013ae1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__OVALRES.html#ga585abe0825db03426e1994ba335dc4bf">oval_result_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga76fa88ac9bf6a213a4a78f8afc9828c5">probe_ent_cmp_ios</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *val1, <a class="el" href="structSEXP.html">SEXP_t</a> *val2, <a class="el" href="group__OVALDEF.html#ga3f00a63428c2b5db781a9c87ec73acd1">oval_operation_t</a> op)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Compare two ios values.  <a href="#ga76fa88ac9bf6a213a4a78f8afc9828c5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__OVALRES.html#ga585abe0825db03426e1994ba335dc4bf">oval_result_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga3bab1bf1cb79fca22c8038d9d19536f3">probe_ent_cmp_version</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *val1, <a class="el" href="structSEXP.html">SEXP_t</a> *val2, <a class="el" href="group__OVALDEF.html#ga3f00a63428c2b5db781a9c87ec73acd1">oval_operation_t</a> op)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Compare two version values.  <a href="#ga3bab1bf1cb79fca22c8038d9d19536f3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__OVALRES.html#ga585abe0825db03426e1994ba335dc4bf">oval_result_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga50498f39e777e886c5094d11e35abe3b">probe_ent_cmp_string</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *val1, <a class="el" href="structSEXP.html">SEXP_t</a> *val2, <a class="el" href="group__OVALDEF.html#ga3f00a63428c2b5db781a9c87ec73acd1">oval_operation_t</a> op)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Compare two string values.  <a href="#ga50498f39e777e886c5094d11e35abe3b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__OVALRES.html#ga585abe0825db03426e1994ba335dc4bf">oval_result_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#gaf7a569fc0abb09980c2d2550fff7912d">probe_entste_cmp</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *ent_ste, <a class="el" href="structSEXP.html">SEXP_t</a> *ent_itm)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Compare state entity's content with a item entity's value.  <a href="#gaf7a569fc0abb09980c2d2550fff7912d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__OVALRES.html#ga585abe0825db03426e1994ba335dc4bf">oval_result_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga1803ec0d8ab14d7257457bcf2d2aee39">probe_entobj_cmp</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *ent_obj, <a class="el" href="structSEXP.html">SEXP_t</a> *val)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Compare object entity's content with a value.  <a href="#ga1803ec0d8ab14d7257457bcf2d2aee39"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__OVALRES.html#ga585abe0825db03426e1994ba335dc4bf">oval_result_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#gac76c8c27a46788b61119ece0a856b46c">probe_ent_result_bychk</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *res_lst, <a class="el" href="group__OVALDEF.html#ga926ba821c14d2faac9a23b8908c23d70">oval_check_t</a> check)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute the overall result.  <a href="#gac76c8c27a46788b61119ece0a856b46c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__OVALRES.html#ga585abe0825db03426e1994ba335dc4bf">oval_result_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#gafcfd303effe54aa0944eb1fb3239f1e7">probe_ent_result_byopr</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *res_lst, <a class="el" href="group__OVALDEF.html#gad5debd6ffe0c38c6de9108e86ee237e6">oval_operator_t</a> operator)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute the overall result.  <a href="#gafcfd303effe54aa0944eb1fb3239f1e7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gada04779868bfe43018254d8f72ae3e28"></a><!-- doxytag: member="PROBEAPI::OSCAP_GSYM" ref="gada04779868bfe43018254d8f72ae3e28" args="(pcache)" -->
<a class="el" href="structprobe__rcache__t.html">probe_rcache_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>OSCAP_GSYM</b> (pcache)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga30b3dcb3dc72a4ab862159f7e95c4301"></a><!-- doxytag: member="PROBEAPI::OSCAP_GSYM" ref="ga30b3dcb3dc72a4ab862159f7e95c4301" args="(encache)" -->
<a class="el" href="structprobe__ncache__t.html">probe_ncache_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>OSCAP_GSYM</b> (encache)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaa9f1a390d6de3c3142ca763664d8afc6"></a><!-- doxytag: member="PROBEAPI::OSCAP_GSYM" ref="gaa9f1a390d6de3c3142ca763664d8afc6" args="(id_desc)" -->
struct <a class="el" href="structid__desc__t.html">id_desc_t</a>&#160;</td><td class="memItemRight" valign="bottom"><b>OSCAP_GSYM</b> (id_desc)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga281872a3c21765f07bb10c9d01f03100">probe_item_creat</a> (const char *name, <a class="el" href="structSEXP.html">SEXP_t</a> *attrs,...)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a new item consisting of a name, optional attributes argument and an arbitrary number of entities.  <a href="#ga281872a3c21765f07bb10c9d01f03100"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga585f26cf2067dff8dbc56939cd8ea88b">probe_item_new</a> (const char *name, <a class="el" href="structSEXP.html">SEXP_t</a> *attrs)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a new item with just a name and optional attributes argument.  <a href="#ga585f26cf2067dff8dbc56939cd8ea88b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga7d094b506287a2f0397b3cfb90ba62ae">probe_item_attr_add</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *item, const char *name, <a class="el" href="structSEXP.html">SEXP_t</a> *val)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Add a new attribute to an item.  <a href="#ga7d094b506287a2f0397b3cfb90ba62ae"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga2e3bf979b8e884105ebde18c945de292">probe_item_ent_add</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *item, const char *name, <a class="el" href="structSEXP.html">SEXP_t</a> *attrs, <a class="el" href="structSEXP.html">SEXP_t</a> *val)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Add a new entity to an item.  <a href="#ga2e3bf979b8e884105ebde18c945de292"></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__PROBEAPI.html#ga816e3a0f4022b42e80adb37e712217a1">probe_item_setstatus</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *obj, <a class="el" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422">oval_syschar_status_t</a> status)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set item's status.  <a href="#ga816e3a0f4022b42e80adb37e712217a1"></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__PROBEAPI.html#gad25f90c27a7f5a76abd4348a2777b138">probe_itement_setstatus</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *obj, const char *name, uint32_t n, <a class="el" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422">oval_syschar_status_t</a> status)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set status of an item's entity.  <a href="#gad25f90c27a7f5a76abd4348a2777b138"></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__PROBEAPI.html#ga305847888cf828258788bffc475c3c18">probe_item_resetidctr</a> (struct <a class="el" href="structid__desc__t.html">id_desc_t</a> *id_desc)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Reset the item id generator.  <a href="#ga305847888cf828258788bffc475c3c18"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga67cf5e2a892243ec95b0f27cbc3a639c"></a><!-- doxytag: member="PROBEAPI::probe_item_filtered" ref="ga67cf5e2a892243ec95b0f27cbc3a639c" args="(const SEXP_t *item, const SEXP_t *filters)" -->
bool&#160;</td><td class="memItemRight" valign="bottom"><b>probe_item_filtered</b> (const <a class="el" href="structSEXP.html">SEXP_t</a> *item, const <a class="el" href="structSEXP.html">SEXP_t</a> *filters)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#gad5454da7eac743ac23d061df7b020b95">probe_attr_creat</a> (const char *name, const <a class="el" href="structSEXP.html">SEXP_t</a> *val,...)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a new list of attributes.  <a href="#gad5454da7eac743ac23d061df7b020b95"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga877e7523a7c07c10b54d048dc49e97e1">probe_obj_creat</a> (const char *name, <a class="el" href="structSEXP.html">SEXP_t</a> *attrs,...)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a new object consisting of a name, optional attributes argument and an arbitrary number of entities.  <a href="#ga877e7523a7c07c10b54d048dc49e97e1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga8a935fab2be64f5216f03a875d775b13">probe_obj_new</a> (const char *name, <a class="el" href="structSEXP.html">SEXP_t</a> *attrs)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a new object with just a name and optional attributes argument.  <a href="#ga8a935fab2be64f5216f03a875d775b13"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga0e969f658bbfd5fb8aaf9a4a0d4e781d">probe_obj_getent</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *obj, const char *name, uint32_t n)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get an entity from an object.  <a href="#ga0e969f658bbfd5fb8aaf9a4a0d4e781d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga5d150dec132971e7c564ce61fab05f3b">probe_obj_getentval</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *obj, const char *name, uint32_t n)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the value of an object's entity.  <a href="#ga5d150dec132971e7c564ce61fab05f3b"></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__PROBEAPI.html#gace27f5edf64bb92b2eac845828fc16a8">probe_obj_getentvals</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *obj, const char *name, uint32_t n, <a class="el" href="structSEXP.html">SEXP_t</a> **res)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the list of values of an object's entity.  <a href="#gace27f5edf64bb92b2eac845828fc16a8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga0c4b1bdebc81320bd48a3517a8309247">probe_obj_getattrval</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *obj, const char *name)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the value of an object's attribute.  <a href="#ga0c4b1bdebc81320bd48a3517a8309247"></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__PROBEAPI.html#gabdad7653e94bf96bec05941f87257f2e">probe_obj_attrexists</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *obj, const char *name)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Check whether the specified attribute exists.  <a href="#gabdad7653e94bf96bec05941f87257f2e"></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__PROBEAPI.html#gabc311067d7dc968de8aa5c640632f015">probe_obj_setstatus</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *obj, <a class="el" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422">oval_syschar_status_t</a> status)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set objects's status.  <a href="#gabc311067d7dc968de8aa5c640632f015"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga3cad77f08bb8e6c8ab00af561d3558fd">probe_obj_getname</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *obj)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the name of an object.  <a href="#ga3cad77f08bb8e6c8ab00af561d3558fd"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga99fcdf7398c070fe503c97b31281289e">probe_obj_getname_r</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *obj, char *buffer, size_t buflen)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the name of an object.  <a href="#ga99fcdf7398c070fe503c97b31281289e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga220c3825c1bc4b1331b852867fa30e2a"></a><!-- doxytag: member="PROBEAPI::probe_cobj_new" ref="ga220c3825c1bc4b1331b852867fa30e2a" args="(oval_syschar_collection_flag_t flag, SEXP_t *msg_list, SEXP_t *item_list)" -->
<a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>probe_cobj_new</b> (<a class="el" href="group__OVALSYS.html#ga6ca9feb1c89087dbae7c7d3074a378c9">oval_syschar_collection_flag_t</a> flag, <a class="el" href="structSEXP.html">SEXP_t</a> *msg_list, <a class="el" href="structSEXP.html">SEXP_t</a> *item_list)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga52cb7195efa9a18345d78a93c7114c79"></a><!-- doxytag: member="PROBEAPI::probe_cobj_add_msg" ref="ga52cb7195efa9a18345d78a93c7114c79" args="(SEXP_t *cobj, const SEXP_t *msg)" -->
int&#160;</td><td class="memItemRight" valign="bottom"><b>probe_cobj_add_msg</b> (<a class="el" href="structSEXP.html">SEXP_t</a> *cobj, const <a class="el" href="structSEXP.html">SEXP_t</a> *msg)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga2dfcf5a0aff80f562fc656b01d830089"></a><!-- doxytag: member="PROBEAPI::probe_cobj_get_msgs" ref="ga2dfcf5a0aff80f562fc656b01d830089" args="(const SEXP_t *cobj)" -->
<a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>probe_cobj_get_msgs</b> (const <a class="el" href="structSEXP.html">SEXP_t</a> *cobj)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gad771f7c0438b3b9f25e98e0bf82dbdb8"></a><!-- doxytag: member="PROBEAPI::probe_cobj_add_item" ref="gad771f7c0438b3b9f25e98e0bf82dbdb8" args="(SEXP_t *cobj, const SEXP_t *item)" -->
int&#160;</td><td class="memItemRight" valign="bottom"><b>probe_cobj_add_item</b> (<a class="el" href="structSEXP.html">SEXP_t</a> *cobj, const <a class="el" href="structSEXP.html">SEXP_t</a> *item)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gad75b920911f0c58fef08b59eefb57219"></a><!-- doxytag: member="PROBEAPI::probe_cobj_get_items" ref="gad75b920911f0c58fef08b59eefb57219" args="(const SEXP_t *cobj)" -->
<a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>probe_cobj_get_items</b> (const <a class="el" href="structSEXP.html">SEXP_t</a> *cobj)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga14f1f966c3a2466878d46e9172ea557c"></a><!-- doxytag: member="PROBEAPI::probe_cobj_set_flag" ref="ga14f1f966c3a2466878d46e9172ea557c" args="(SEXP_t *cobj, oval_syschar_collection_flag_t flag)" -->
void&#160;</td><td class="memItemRight" valign="bottom"><b>probe_cobj_set_flag</b> (<a class="el" href="structSEXP.html">SEXP_t</a> *cobj, <a class="el" href="group__OVALSYS.html#ga6ca9feb1c89087dbae7c7d3074a378c9">oval_syschar_collection_flag_t</a> flag)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga4a40d6aa305869799f139c91187b88ea"></a><!-- doxytag: member="PROBEAPI::probe_cobj_get_flag" ref="ga4a40d6aa305869799f139c91187b88ea" args="(const SEXP_t *cobj)" -->
<a class="el" href="group__OVALSYS.html#ga6ca9feb1c89087dbae7c7d3074a378c9">oval_syschar_collection_flag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><b>probe_cobj_get_flag</b> (const <a class="el" href="structSEXP.html">SEXP_t</a> *cobj)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gae375d97d8c065b0b808a4f8d072318ec"></a><!-- doxytag: member="PROBEAPI::probe_cobj_combine_flags" ref="gae375d97d8c065b0b808a4f8d072318ec" args="(oval_syschar_collection_flag_t f1, oval_syschar_collection_flag_t f2, oval_setobject_operation_t op)" -->
<a class="el" href="group__OVALSYS.html#ga6ca9feb1c89087dbae7c7d3074a378c9">oval_syschar_collection_flag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><b>probe_cobj_combine_flags</b> (<a class="el" href="group__OVALSYS.html#ga6ca9feb1c89087dbae7c7d3074a378c9">oval_syschar_collection_flag_t</a> f1, <a class="el" href="group__OVALSYS.html#ga6ca9feb1c89087dbae7c7d3074a378c9">oval_syschar_collection_flag_t</a> f2, <a class="el" href="group__OVALDEF.html#ga695dd73f42848ceb78bc9c9b3794e08c">oval_setobject_operation_t</a> op)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga96dacea0862af1e690e4883e65b70cc9"></a><!-- doxytag: member="PROBEAPI::probe_cobj_compute_flag" ref="ga96dacea0862af1e690e4883e65b70cc9" args="(SEXP_t *cobj)" -->
<a class="el" href="group__OVALSYS.html#ga6ca9feb1c89087dbae7c7d3074a378c9">oval_syschar_collection_flag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><b>probe_cobj_compute_flag</b> (<a class="el" href="structSEXP.html">SEXP_t</a> *cobj)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#gac9b4a7caacf1c9c8e043424af5059f9a">probe_msg_creat</a> (<a class="el" href="group__OVALSYS.html#ga8ee215c8a9e2910e0595d0d32af688bc">oval_message_level_t</a> level, char *message)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a new message that can be added to a collected object.  <a href="#gac9b4a7caacf1c9c8e043424af5059f9a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#gac4147ce4854994815f00b8895ab575b7">probe_msg_creatf</a> (<a class="el" href="group__OVALSYS.html#ga8ee215c8a9e2910e0595d0d32af688bc">oval_message_level_t</a> level, const char *fmt,...) <a class="el" href="struct____attribute____.html">__attribute__</a>((format(printf</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a new message that can be added to a collected object.  <a href="#gac4147ce4854994815f00b8895ab575b7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga16e28dc2212c2cb4823270d5b89796e8">probe_ent_creat</a> (const char *name, <a class="el" href="structSEXP.html">SEXP_t</a> *attrs, <a class="el" href="structSEXP.html">SEXP_t</a> *val,...)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a new list of entities.  <a href="#ga16e28dc2212c2cb4823270d5b89796e8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#gaf25568074f3fd20b740fa1a7772b62e8">probe_ent_creat1</a> (const char *name, <a class="el" href="structSEXP.html">SEXP_t</a> *attrs, <a class="el" href="structSEXP.html">SEXP_t</a> *val)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a new entity.  <a href="#gaf25568074f3fd20b740fa1a7772b62e8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga26150d99efb18ef3893f55526048297f">probe_ent_attr_add</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *ent, const char *name, <a class="el" href="structSEXP.html">SEXP_t</a> *val)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Add a new attribute to an entity.  <a href="#ga26150d99efb18ef3893f55526048297f"></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__PROBEAPI.html#ga3ff2cd8dba0ce124e8c1557f83ece7e0">probe_ent_getvals</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *ent, <a class="el" href="structSEXP.html">SEXP_t</a> **res)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the list of values of an entity.  <a href="#ga3ff2cd8dba0ce124e8c1557f83ece7e0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga73598523f63abab6f4229bbd9daa9dba">probe_ent_getval</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *ent)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the value of an entity.  <a href="#ga73598523f63abab6f4229bbd9daa9dba"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#gaf2b69d899ddd53c161f162c7d9e4dbbc">probe_ent_getattrval</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *ent, const char *name)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the value of an entity's attribute.  <a href="#gaf2b69d899ddd53c161f162c7d9e4dbbc"></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__PROBEAPI.html#gade2da190db42b69de3a82df73ddf92da">probe_ent_attrexists</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *ent, const char *name)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Check whether the specified attribute exists.  <a href="#gade2da190db42b69de3a82df73ddf92da"></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__PROBEAPI.html#gabd1dbeb0c28df011d6a2aceb400bf1cb">probe_ent_setdatatype</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *ent, <a class="el" href="group__OVALDEF.html#gaf069fe2fb2a9ae3abe47cab55b89827e">oval_datatype_t</a> type)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the OVAL data type of an entity.  <a href="#gabd1dbeb0c28df011d6a2aceb400bf1cb"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__OVALDEF.html#gaf069fe2fb2a9ae3abe47cab55b89827e">oval_datatype_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga63df6b0800c386aa946dd79088893f05">probe_ent_getdatatype</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *ent)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the OVAL data type of an entity.  <a href="#ga63df6b0800c386aa946dd79088893f05"></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__PROBEAPI.html#ga78fa4b2ed51c75dc331f2b30305be587">probe_ent_setmask</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *ent, bool mask)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set entity's mask.  <a href="#ga78fa4b2ed51c75dc331f2b30305be587"></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__PROBEAPI.html#gaa18871c25a66d86317af2998703d3834">probe_ent_getmask</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *ent)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get entity's mask.  <a href="#gaa18871c25a66d86317af2998703d3834"></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__PROBEAPI.html#ga19a9b8b09ebcb61389d792eeb4a450ee">probe_ent_setstatus</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *ent, <a class="el" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422">oval_syschar_status_t</a> status)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set entity's status.  <a href="#ga19a9b8b09ebcb61389d792eeb4a450ee"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422">oval_syschar_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#gaf6f8c32f4222562df8396b6ce8e8afc0">probe_ent_getstatus</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *ent)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get entity status.  <a href="#gaf6f8c32f4222562df8396b6ce8e8afc0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga01ea603ba88ab456b6501709311bc3ff">probe_ent_getname</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *ent)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the name of an entity.  <a href="#ga01ea603ba88ab456b6501709311bc3ff"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga8327d5fcb919ace33e748995242121d5">probe_ent_getname_r</a> (const <a class="el" href="structSEXP.html">SEXP_t</a> *ent, char *buffer, size_t buflen)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the name of an entity.  <a href="#ga8327d5fcb919ace33e748995242121d5"></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__PROBEAPI.html#gaaa9687fb52f3ecba96ea03e71759505c">probe_free</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *obj)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Free the memory allocated by the probe_* functions.  <a href="#gaaa9687fb52f3ecba96ea03e71759505c"></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__PROBEAPI.html#ga3356c734255a89cd50a85a51b0264711">probe_filebehaviors_canonicalize</a> (<a class="el" href="structSEXP.html">SEXP_t</a> **behaviors)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set all of the missing attributes of the 'behaviors' entity to default values.  <a href="#ga3356c734255a89cd50a85a51b0264711"></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__PROBEAPI.html#gadd208ff0d819b99f5084c52d3f070b1f">probe_tfc54behaviors_canonicalize</a> (<a class="el" href="structSEXP.html">SEXP_t</a> **behaviors)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set all of the missing attributes of the 'behaviors' entity to default values.  <a href="#gadd208ff0d819b99f5084c52d3f070b1f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gae56212eafb1c04b8d4bdb90494fd65c4"></a><!-- doxytag: member="PROBEAPI::probe_item_create" ref="gae56212eafb1c04b8d4bdb90494fd65c4" args="(oval_subtype_t item_subtype, probe_elmatr_t *item_attributes[],...)" -->
<a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>probe_item_create</b> (<a class="el" href="group__OVAL.html#ga99498f525c1a0282ef45557fc882f97f">oval_subtype_t</a> item_subtype, <a class="el" href="structprobe__elmatr__t.html">probe_elmatr_t</a> *item_attributes[],...)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga24a0fe6c46c667ee39d0f765630a52df">probe_item_build</a> (const char *fmt,...)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Build a new item according to the scpecified format.  <a href="#ga24a0fe6c46c667ee39d0f765630a52df"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga57a33271acce2f5013c1a66b0f106a0a">probe_item_newid</a> (struct <a class="el" href="structid__desc__t.html">id_desc_t</a> *id_desc)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a new unique id (within a probe) for an item.  <a href="#ga57a33271acce2f5013c1a66b0f106a0a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#gac6a32ee967031ae45ccb7b29806715ed">probe_obj_build</a> (const char *fmt,...)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Build a new object according to the scpecified format.  <a href="#gac6a32ee967031ae45ccb7b29806715ed"></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__PROBEAPI.html#ga44a9fff23baac451bb3619b619b77690">probe_objent_setstatus</a> (<a class="el" href="structSEXP.html">SEXP_t</a> *obj, const char *name, uint32_t n, <a class="el" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422">oval_syschar_status_t</a> status)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set status of an object's entity.  <a href="#ga44a9fff23baac451bb3619b619b77690"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gab6ee78e380b0915277eb5762e747108b"></a><!-- doxytag: member="PROBEAPI::nonnull" ref="gab6ee78e380b0915277eb5762e747108b" args="(2)))" -->
<a class="el" href="structSEXP.html">SEXP_t</a>&#160;</td><td class="memItemRight" valign="bottom"><b>nonnull</b> (2)))</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gafe95c72e81a54869107bb0b9f9b43427"></a><!-- doxytag: member="PROBEAPI::probe_init" ref="gafe95c72e81a54869107bb0b9f9b43427" args="(void) __attribute__((unused))" -->
void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#gafe95c72e81a54869107bb0b9f9b43427">probe_init</a> (void) <a class="el" href="struct____attribute____.html">__attribute__</a>((unused))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Dummy probe_fini function. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga60a6e8dd5d034bc5b0fb714016973a2a"></a><!-- doxytag: member="PROBEAPI::probe_fini" ref="ga60a6e8dd5d034bc5b0fb714016973a2a" args="(void *) __attribute__((unused))" -->
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga60a6e8dd5d034bc5b0fb714016973a2a">probe_fini</a> (void *) <a class="el" href="struct____attribute____.html">__attribute__</a>((unused))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Dummy probe_fini function. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga468744ebb8db4a5bd31a511d709d5d5e"></a><!-- doxytag: member="PROBEAPI::probe_main" ref="ga468744ebb8db4a5bd31a511d709d5d5e" args="(probe_ctx *, void *) __attribute__((nonnull(1)))" -->
int&#160;</td><td class="memItemRight" valign="bottom"><b>probe_main</b> (<a class="el" href="structprobe__ctx.html">probe_ctx</a> *, void *) <a class="el" href="struct____attribute____.html">__attribute__</a>((nonnull(1)))</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaf4ce16700407f00a5c46e73cf922f078"></a><!-- doxytag: member="PROBEAPI::probe_setoption" ref="gaf4ce16700407f00a5c46e73cf922f078" args="(int option,...)" -->
int&#160;</td><td class="memItemRight" valign="bottom"><b>probe_setoption</b> (int option,...)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga0ade7a34a2e4092ae6ef6f06e941c352"></a><!-- doxytag: member="PROBEAPI::probe_result_additem" ref="ga0ade7a34a2e4092ae6ef6f06e941c352" args="(SEXP_t *result, SEXP_t *item)" -->
int&#160;</td><td class="memItemRight" valign="bottom"><b>probe_result_additem</b> (<a class="el" href="structSEXP.html">SEXP_t</a> *result, <a class="el" href="structSEXP.html">SEXP_t</a> *item)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga78ae5e19aac6bb96d5539c420c737e48">probe_item_collect</a> (<a class="el" href="structprobe__ctx.html">probe_ctx</a> *ctx, <a class="el" href="structSEXP.html">SEXP_t</a> *item)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Collect generated item (i.e.  <a href="#ga78ae5e19aac6bb96d5539c420c737e48"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga0a484e1649def57c75ba232bea408712">probe_ctx_getobject</a> (<a class="el" href="structprobe__ctx.html">probe_ctx</a> *ctx)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Return reference to the input object.  <a href="#ga0a484e1649def57c75ba232bea408712"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__PROBEAPI.html#ga175723d1728c2191576dc128da5931c6">probe_ctx_getresult</a> (<a class="el" href="structprobe__ctx.html">probe_ctx</a> *ctx)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Return reference to the output object (aka collected object).  <a href="#ga175723d1728c2191576dc128da5931c6"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="var-members"></a>
Variables</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gadb62897f8717f222f32827b96adfbf34"></a><!-- doxytag: member="PROBEAPI::false_cnt" ref="gadb62897f8717f222f32827b96adfbf34" args="" -->
int&#160;</td><td class="memItemRight" valign="bottom"><b>_oresults::false_cnt</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga4884772a444408c3e34d6a6f326e0644"></a><!-- doxytag: member="PROBEAPI::unknown_cnt" ref="ga4884772a444408c3e34d6a6f326e0644" args="" -->
int&#160;</td><td class="memItemRight" valign="bottom"><b>_oresults::unknown_cnt</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga643cd5cfa5f9f02bfcd748105accd2ea"></a><!-- doxytag: member="PROBEAPI::error_cnt" ref="ga643cd5cfa5f9f02bfcd748105accd2ea" args="" -->
int&#160;</td><td class="memItemRight" valign="bottom"><b>_oresults::error_cnt</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga8dc88b3fc9d8c460e8d0ed4e28a0cf2a"></a><!-- doxytag: member="PROBEAPI::noteval_cnt" ref="ga8dc88b3fc9d8c460e8d0ed4e28a0cf2a" args="" -->
int&#160;</td><td class="memItemRight" valign="bottom"><b>_oresults::noteval_cnt</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaeeabe7aeaa7653e573f5c698dcfc8759"></a><!-- doxytag: member="PROBEAPI::notappl_cnt" ref="gaeeabe7aeaa7653e573f5c698dcfc8759" args="" -->
int&#160;</td><td class="memItemRight" valign="bottom"><b>_oresults::notappl_cnt</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga8aa1c2aa4199d379e0c6243c1125ca84"></a><!-- doxytag: member="PROBEAPI::value" ref="ga8aa1c2aa4199d379e0c6243c1125ca84" args="" -->
void *&#160;</td><td class="memItemRight" valign="bottom"><b>probe_elmatr_t::value</b></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<p>This file contains functions for manipulating with the S-exp representation of OVAL objects and items. </p>
<p>Currently object and items have the same structure and the API distinction is just formal. However, the structure can diverge in the future and the API functions for manipulating with items should be used only with items and vice versa. The most recent description of the object and item structure can be found in this file and should be used as the main source of information for implementing new API functions. In the following text, the term `element' referers to the general structure which is used to represent the various components of an OVAL document, particularly the OVAL objects, items and entities.</p>
<p>The basic structure of an element looks like this:<br/>
 <br/>
 (foo_object bar)<br/>
 <br/>
 <em>foo_object</em> is the element name and <em>bar</em> is the value of the element. There can be 0 to n values. In case the element has some attributes set the structure changes to:<br/>
 <br/>
 ((foo_object :attr1 val1) bar)<br/>
 <br/>
 where <em>attr1</em> is the name of the attribute and <em>val1</em> is the attribute's value. The colon in the attribute name signals that the attribute has a value. </p>
<hr/><h2>Define Documentation</h2>
<a class="anchor" id="gaedd3084f4c748beb3e8fe13ae0fe1399"></a><!-- doxytag: member="probe&#45;api.h::PROBE_ENT_AREF" ref="gaedd3084f4c748beb3e8fe13ae0fe1399" args="(ent, dst, attr_name, invalid_exp)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define PROBE_ENT_AREF</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">ent, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">attr_name, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">invalid_exp&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment"><span class="keywordflow">do</span> {                                                            \
                <span class="keywordflow">if</span> (((dst) = <a class="code" href="group__PROBEAPI.html#gaf2b69d899ddd53c161f162c7d9e4dbbc" title="Get the value of an entity&#39;s attribute.">probe_ent_getattrval</a>(ent, attr_name)) == NULL) { \
                        _F(<span class="stringliteral">&quot;Attribute `%s&#39; is missing!\n&quot;</span>, attr_name);  \
                        invalid_exp                                     \
                }                                                       \
        } <span class="keywordflow">while</span>(0)
</pre></div>
</div>
</div>
<a class="anchor" id="gabf4c69bae4be6351c1cb0dd80bf23a97"></a><!-- doxytag: member="probe&#45;api.h::PROBE_ENT_I32VAL" ref="gabf4c69bae4be6351c1cb0dd80bf23a97" args="(ent, dst, invalid_exp)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define PROBE_ENT_I32VAL</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">ent, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">invalid_exp&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment"><span class="keywordflow">do</span> {                                                    \
                <a class="code" href="structSEXP.html">SEXP_t</a> *___r;                                   \
                                                                \
                <span class="keywordflow">if</span> ((___r = <a class="code" href="group__PROBEAPI.html#ga73598523f63abab6f4229bbd9daa9dba" title="Get the value of an entity.">probe_ent_getval</a>(ent)) == NULL) {   \
                        _W(<span class="stringliteral">&quot;Entity has no value!\n&quot;</span>);           \
                        invalid_exp                             \
                } <span class="keywordflow">else</span> {                                        \
                        <span class="keywordflow">if</span> (!<a class="code" href="group__SEXPRESSIONS.html#ga6e604a242bf6246a03696a3d80f666ee" title="Check whether the provided sexp object is a number.">SEXP_numberp</a>(___r)) {              \
                                _F(<span class="stringliteral">&quot;Invalid type\n&quot;</span>);           \
                                <a class="code" href="group__SEXPRESSIONS.html#gaff9225cc4ff2d1a3459511efe7ebd5e1" title="Free a sexp object.">SEXP_free</a>(___r);                \
                                invalid_exp                     \
                        }                                       \
                        dst = <a class="code" href="group__SEXPRESSIONS.html#ga75c71219c39bfa492436f2534e915010" title="Get integer value from a sexp object.">SEXP_number_geti_32</a>(___r);        \
                        <a class="code" href="group__SEXPRESSIONS.html#gaff9225cc4ff2d1a3459511efe7ebd5e1" title="Free a sexp object.">SEXP_free</a>(___r);                        \
                }                                               \
        } <span class="keywordflow">while</span> (0)
</pre></div>
</div>
</div>
<a class="anchor" id="ga66252d0cc41d7854534a48eccfbb01bb"></a><!-- doxytag: member="probe&#45;api.h::PROBE_ENT_STRVAL" ref="ga66252d0cc41d7854534a48eccfbb01bb" args="(ent, dst, dstlen, invalid_exp, zerolen_exp)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define PROBE_ENT_STRVAL</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">ent, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">dst, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">dstlen, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">invalid_exp, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">zerolen_exp&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment"><span class="keywordflow">do</span> {                                                    \
                <a class="code" href="structSEXP.html">SEXP_t</a> *___r;                                   \
                                                                \
                <span class="keywordflow">if</span> ((___r = <a class="code" href="group__PROBEAPI.html#ga73598523f63abab6f4229bbd9daa9dba" title="Get the value of an entity.">probe_ent_getval</a>(ent)) == NULL) {   \
                        _W(<span class="stringliteral">&quot;Entity has no value!\n&quot;</span>);           \
                        invalid_exp                             \
                } <span class="keywordflow">else</span> {                                        \
                        <span class="keywordflow">if</span> (!<a class="code" href="group__SEXPRESSIONS.html#gaff64360f9c06d07c15295a4631eede9f" title="Check whether the provided sexp object is a string.">SEXP_stringp</a>(___r)) {              \
                                _F(<span class="stringliteral">&quot;Invalid type\n&quot;</span>);           \
                                <a class="code" href="group__SEXPRESSIONS.html#gaff9225cc4ff2d1a3459511efe7ebd5e1" title="Free a sexp object.">SEXP_free</a>(___r);                \
                                invalid_exp                     \
                        }                                       \
                        <span class="keywordflow">if</span> (<a class="code" href="group__SEXPRESSIONS.html#ga105b4f4551faf6114e53fa9701e966d5" title="Get the length of a string in a sexp object.">SEXP_string_length</a>(___r) == 0) {    \
                                <a class="code" href="group__SEXPRESSIONS.html#gaff9225cc4ff2d1a3459511efe7ebd5e1" title="Free a sexp object.">SEXP_free</a>(___r);                \
                                zerolen_exp                     \
                        } <span class="keywordflow">else</span> {                                \
                                <a class="code" href="group__SEXPRESSIONS.html#gaba4e73db0910e4cdcd05f0954d7c94d8" title="Get a C string from a sexp object.">SEXP_string_cstr_r</a>(___r, dst, dstlen); \
                                <a class="code" href="group__SEXPRESSIONS.html#gaff9225cc4ff2d1a3459511efe7ebd5e1" title="Free a sexp object.">SEXP_free</a>(___r);                \
                        }                                       \
                }                                               \
        } <span class="keywordflow">while</span> (0)
</pre></div>
</div>
</div>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="gad5454da7eac743ac23d061df7b020b95"></a><!-- doxytag: member="probe&#45;api.c::probe_attr_creat" ref="gad5454da7eac743ac23d061df7b020b95" args="(const char *name, const SEXP_t *val,...)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a> * probe_attr_creat </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>val</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a new list of attributes. </p>
<p>This function increments its val argument's reference count. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>the name of the attribute </td></tr>
    <tr><td class="paramname">val</td><td>the value of the attribute </td></tr>
    <tr><td class="paramname">...</td><td>there can be an arbitrary number of name - value pairs </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga0a484e1649def57c75ba232bea408712"></a><!-- doxytag: member="probe&#45;api.h::probe_ctx_getobject" ref="ga0a484e1649def57c75ba232bea408712" args="(probe_ctx *ctx)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a>* probe_ctx_getobject </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structprobe__ctx.html">probe_ctx</a> *&#160;</td>
          <td class="paramname"><em>ctx</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return reference to the input object. </p>
<p>The reference counter is NOT incremented by this operation (i.e. don't call SEXP_free on the return value of this function). Implementation of this function is placed in the `' file. </p>

</div>
</div>
<a class="anchor" id="ga175723d1728c2191576dc128da5931c6"></a><!-- doxytag: member="probe&#45;api.h::probe_ctx_getresult" ref="ga175723d1728c2191576dc128da5931c6" args="(probe_ctx *ctx)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a>* probe_ctx_getresult </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structprobe__ctx.html">probe_ctx</a> *&#160;</td>
          <td class="paramname"><em>ctx</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return reference to the output object (aka collected object). </p>
<p>Reference counter is NOT incremented (see the description of probe_ctx_getobject above). </p>

</div>
</div>
<a class="anchor" id="ga26150d99efb18ef3893f55526048297f"></a><!-- doxytag: member="probe&#45;api.c::probe_ent_attr_add" ref="ga26150d99efb18ef3893f55526048297f" args="(SEXP_t *ent, const char *name, SEXP_t *val)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a> * probe_ent_attr_add </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>ent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>val</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Add a new attribute to an entity. </p>
<p>This function increments its val argument's reference count. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">ent</td><td>the entity to be modified </td></tr>
    <tr><td class="paramname">name</td><td>name of the new attribute </td></tr>
    <tr><td class="paramname">val</td><td>value of the new attribute </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gade2da190db42b69de3a82df73ddf92da"></a><!-- doxytag: member="probe&#45;api.c::probe_ent_attrexists" ref="gade2da190db42b69de3a82df73ddf92da" args="(const SEXP_t *ent, const char *name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool probe_ent_attrexists </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>ent</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>Check whether the specified attribute exists. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">ent</td><td>the queried entity </td></tr>
    <tr><td class="paramname">name</td><td>the name of the attribute </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaed2ba0c447a642376277d827572300f6"></a><!-- doxytag: member="entcmp.c::probe_ent_cmp_binary" ref="gaed2ba0c447a642376277d827572300f6" args="(SEXP_t *val1, SEXP_t *val2, oval_operation_t op)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__OVALRES.html#ga585abe0825db03426e1994ba335dc4bf">oval_result_t</a> probe_ent_cmp_binary </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>val1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>val2</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__OVALDEF.html#ga3f00a63428c2b5db781a9c87ec73acd1">oval_operation_t</a>&#160;</td>
          <td class="paramname"><em>op</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Compare two binary values. </p>
<p>The operation to use is specified by the operation enumeration value. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">val1</td><td>the first value </td></tr>
    <tr><td class="paramname">val2</td><td>the second value </td></tr>
    <tr><td class="paramname">op</td><td>the desired operation </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga1ec23cec30188459da8ce24c2eb5518d"></a><!-- doxytag: member="entcmp.c::probe_ent_cmp_bool" ref="ga1ec23cec30188459da8ce24c2eb5518d" args="(SEXP_t *val1, SEXP_t *val2, oval_operation_t op)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__OVALRES.html#ga585abe0825db03426e1994ba335dc4bf">oval_result_t</a> probe_ent_cmp_bool </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>val1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>val2</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__OVALDEF.html#ga3f00a63428c2b5db781a9c87ec73acd1">oval_operation_t</a>&#160;</td>
          <td class="paramname"><em>op</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Compare two boolean values. </p>
<p>The operation to use is specified by the operation enumeration value. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">val1</td><td>the first value </td></tr>
    <tr><td class="paramname">val2</td><td>the second value </td></tr>
    <tr><td class="paramname">op</td><td>the desired operation </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga757412dca11a0195037eb958d37e9b6b"></a><!-- doxytag: member="entcmp.c::probe_ent_cmp_evr" ref="ga757412dca11a0195037eb958d37e9b6b" args="(SEXP_t *val1, SEXP_t *val2, oval_operation_t op)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__OVALRES.html#ga585abe0825db03426e1994ba335dc4bf">oval_result_t</a> probe_ent_cmp_evr </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>val1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>val2</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__OVALDEF.html#ga3f00a63428c2b5db781a9c87ec73acd1">oval_operation_t</a>&#160;</td>
          <td class="paramname"><em>op</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Compare two epoch-version-release values. </p>
<p>The operation to use is specified by the operation enumeration value. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">val1</td><td>the first value </td></tr>
    <tr><td class="paramname">val2</td><td>the second value </td></tr>
    <tr><td class="paramname">op</td><td>the desired operation </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga026cb1dd03de0ad2ecec589991a0828f"></a><!-- doxytag: member="entcmp.c::probe_ent_cmp_filesetrev" ref="ga026cb1dd03de0ad2ecec589991a0828f" args="(SEXP_t *val1, SEXP_t *val2, oval_operation_t op)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__OVALRES.html#ga585abe0825db03426e1994ba335dc4bf">oval_result_t</a> probe_ent_cmp_filesetrev </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>val1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>val2</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__OVALDEF.html#ga3f00a63428c2b5db781a9c87ec73acd1">oval_operation_t</a>&#160;</td>
          <td class="paramname"><em>op</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Compare two values. </p>
<p>The operation to use is specified by the operation enumeration value. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">val1</td><td>the first value </td></tr>
    <tr><td class="paramname">val2</td><td>the second value </td></tr>
    <tr><td class="paramname">op</td><td>the desired operation </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga4a70b71edba51997c30fc20f0744e54e"></a><!-- doxytag: member="entcmp.c::probe_ent_cmp_float" ref="ga4a70b71edba51997c30fc20f0744e54e" args="(SEXP_t *val1, SEXP_t *val2, oval_operation_t op)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__OVALRES.html#ga585abe0825db03426e1994ba335dc4bf">oval_result_t</a> probe_ent_cmp_float </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>val1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>val2</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__OVALDEF.html#ga3f00a63428c2b5db781a9c87ec73acd1">oval_operation_t</a>&#160;</td>
          <td class="paramname"><em>op</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Compare two floating point values. </p>
<p>The operation to use is specified by the operation enumeration value. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">val1</td><td>the first value </td></tr>
    <tr><td class="paramname">val2</td><td>the second value </td></tr>
    <tr><td class="paramname">op</td><td>the desired operation </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga6d7a0a42dad35778c92ddd1e6c013ae1"></a><!-- doxytag: member="entcmp.c::probe_ent_cmp_int" ref="ga6d7a0a42dad35778c92ddd1e6c013ae1" args="(SEXP_t *val1, SEXP_t *val2, oval_operation_t op)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__OVALRES.html#ga585abe0825db03426e1994ba335dc4bf">oval_result_t</a> probe_ent_cmp_int </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>val1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>val2</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__OVALDEF.html#ga3f00a63428c2b5db781a9c87ec73acd1">oval_operation_t</a>&#160;</td>
          <td class="paramname"><em>op</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Compare two integer values. </p>
<p>The operation to use is specified by the operation enumeration value. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">val1</td><td>the first value </td></tr>
    <tr><td class="paramname">val2</td><td>the second value </td></tr>
    <tr><td class="paramname">op</td><td>the desired operation </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga76fa88ac9bf6a213a4a78f8afc9828c5"></a><!-- doxytag: member="entcmp.c::probe_ent_cmp_ios" ref="ga76fa88ac9bf6a213a4a78f8afc9828c5" args="(SEXP_t *val1, SEXP_t *val2, oval_operation_t op)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__OVALRES.html#ga585abe0825db03426e1994ba335dc4bf">oval_result_t</a> probe_ent_cmp_ios </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>val1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>val2</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__OVALDEF.html#ga3f00a63428c2b5db781a9c87ec73acd1">oval_operation_t</a>&#160;</td>
          <td class="paramname"><em>op</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Compare two ios values. </p>
<p>The operation to use is specified by the operation enumeration value. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">val1</td><td>the first value </td></tr>
    <tr><td class="paramname">val2</td><td>the second value </td></tr>
    <tr><td class="paramname">op</td><td>the desired operation </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga50498f39e777e886c5094d11e35abe3b"></a><!-- doxytag: member="entcmp.c::probe_ent_cmp_string" ref="ga50498f39e777e886c5094d11e35abe3b" args="(SEXP_t *val1, SEXP_t *val2, oval_operation_t op)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__OVALRES.html#ga585abe0825db03426e1994ba335dc4bf">oval_result_t</a> probe_ent_cmp_string </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>val1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>val2</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__OVALDEF.html#ga3f00a63428c2b5db781a9c87ec73acd1">oval_operation_t</a>&#160;</td>
          <td class="paramname"><em>op</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Compare two string values. </p>
<p>The operation to use is specified by the operation enumeration value. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">val1</td><td>the first value </td></tr>
    <tr><td class="paramname">val2</td><td>the second value </td></tr>
    <tr><td class="paramname">op</td><td>the desired operation </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga3bab1bf1cb79fca22c8038d9d19536f3"></a><!-- doxytag: member="entcmp.c::probe_ent_cmp_version" ref="ga3bab1bf1cb79fca22c8038d9d19536f3" args="(SEXP_t *val1, SEXP_t *val2, oval_operation_t op)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__OVALRES.html#ga585abe0825db03426e1994ba335dc4bf">oval_result_t</a> probe_ent_cmp_version </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>val1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>val2</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__OVALDEF.html#ga3f00a63428c2b5db781a9c87ec73acd1">oval_operation_t</a>&#160;</td>
          <td class="paramname"><em>op</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Compare two version values. </p>
<p>The operation to use is specified by the operation enumeration value. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">val1</td><td>the first value </td></tr>
    <tr><td class="paramname">val2</td><td>the second value </td></tr>
    <tr><td class="paramname">op</td><td>the desired operation </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga16e28dc2212c2cb4823270d5b89796e8"></a><!-- doxytag: member="probe&#45;api.c::probe_ent_creat" ref="ga16e28dc2212c2cb4823270d5b89796e8" args="(const char *name, SEXP_t *attrs, SEXP_t *val,...)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a> * probe_ent_creat </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>attrs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>val</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a new list of entities. </p>
<p>This function increments its SEXP_t arguments' reference count. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>the name of the entity </td></tr>
    <tr><td class="paramname">attrs</td><td>optional entity's attributes argument </td></tr>
    <tr><td class="paramname">val</td><td>the value of the entity </td></tr>
    <tr><td class="paramname">...</td><td>there can be an arbitrary number of name - attributes - value triples </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaf25568074f3fd20b740fa1a7772b62e8"></a><!-- doxytag: member="probe&#45;api.c::probe_ent_creat1" ref="gaf25568074f3fd20b740fa1a7772b62e8" args="(const char *name, SEXP_t *attrs, SEXP_t *val)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a> * probe_ent_creat1 </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>attrs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>val</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a new entity. </p>
<p>This function increments its SEXP_t arguments' reference count. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>the name of the entity </td></tr>
    <tr><td class="paramname">attrs</td><td>optional entity's attributes argument </td></tr>
    <tr><td class="paramname">val</td><td>the value of the entity </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaf2b69d899ddd53c161f162c7d9e4dbbc"></a><!-- doxytag: member="probe&#45;api.c::probe_ent_getattrval" ref="gaf2b69d899ddd53c161f162c7d9e4dbbc" args="(const SEXP_t *ent, const char *name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a> * probe_ent_getattrval </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>ent</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>Get the value of an entity's attribute. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">ent</td><td>the queried entity </td></tr>
    <tr><td class="paramname">name</td><td>the name of the attribute </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga63df6b0800c386aa946dd79088893f05"></a><!-- doxytag: member="probe&#45;api.c::probe_ent_getdatatype" ref="ga63df6b0800c386aa946dd79088893f05" args="(const SEXP_t *ent)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__OVALDEF.html#gaf069fe2fb2a9ae3abe47cab55b89827e">oval_datatype_t</a> probe_ent_getdatatype </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>ent</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the OVAL data type of an entity. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">ent</td><td>the queried entity </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaa18871c25a66d86317af2998703d3834"></a><!-- doxytag: member="probe&#45;api.c::probe_ent_getmask" ref="gaa18871c25a66d86317af2998703d3834" args="(const SEXP_t *ent)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool probe_ent_getmask </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>ent</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get entity's mask. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">ent</td><td>the queried entity </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga01ea603ba88ab456b6501709311bc3ff"></a><!-- doxytag: member="probe&#45;api.c::probe_ent_getname" ref="ga01ea603ba88ab456b6501709311bc3ff" args="(const SEXP_t *ent)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char * probe_ent_getname </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>ent</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the name of an entity. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">ent</td><td>the queried entity </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga8327d5fcb919ace33e748995242121d5"></a><!-- doxytag: member="probe&#45;api.c::probe_ent_getname_r" ref="ga8327d5fcb919ace33e748995242121d5" args="(const SEXP_t *ent, char *buffer, size_t buflen)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t probe_ent_getname_r </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>ent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>buffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>buflen</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the name of an entity. </p>
<p>The name is stored in the provided buffer. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">ent</td><td>the queried entity </td></tr>
    <tr><td class="paramname">buffer</td><td>the buffer to store the name in </td></tr>
    <tr><td class="paramname">buflen</td><td>the length of the buffer </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaf6f8c32f4222562df8396b6ce8e8afc0"></a><!-- doxytag: member="probe&#45;api.c::probe_ent_getstatus" ref="gaf6f8c32f4222562df8396b6ce8e8afc0" args="(const SEXP_t *ent)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422">oval_syschar_status_t</a> probe_ent_getstatus </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>ent</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get entity status. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">ent</td><td>the queried entity </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga73598523f63abab6f4229bbd9daa9dba"></a><!-- doxytag: member="probe&#45;api.c::probe_ent_getval" ref="ga73598523f63abab6f4229bbd9daa9dba" args="(const SEXP_t *ent)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a> * probe_ent_getval </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>ent</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the value of an entity. </p>
<p>The function respects the var_ref attribute and returns the currently selected value. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">ent</td><td>the queried entity </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga3ff2cd8dba0ce124e8c1557f83ece7e0"></a><!-- doxytag: member="probe&#45;api.c::probe_ent_getvals" ref="ga3ff2cd8dba0ce124e8c1557f83ece7e0" args="(const SEXP_t *ent, SEXP_t **res)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int probe_ent_getvals </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>ent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> **&#160;</td>
          <td class="paramname"><em>res</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the list of values of an entity. </p>
<p>If the entity uses var_ref, there can be more than one value. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">ent</td><td>the queried entity </td></tr>
    <tr><td class="paramname">res</td><td>the resulting value list is stored in this argument </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>number of values in the list stored in the res argument </dd></dl>

</div>
</div>
<a class="anchor" id="gac76c8c27a46788b61119ece0a856b46c"></a><!-- doxytag: member="entcmp.c::probe_ent_result_bychk" ref="gac76c8c27a46788b61119ece0a856b46c" args="(SEXP_t *res_lst, oval_check_t check)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__OVALRES.html#ga585abe0825db03426e1994ba335dc4bf">oval_result_t</a> probe_ent_result_bychk </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>res_lst</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__OVALDEF.html#ga926ba821c14d2faac9a23b8908c23d70">oval_check_t</a>&#160;</td>
          <td class="paramname"><em>check</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Compute the overall result. </p>
<p>Compute the overall result from a results vector and a check enumeration parameter. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">res_lst</td><td>the results vector </td></tr>
    <tr><td class="paramname">check</td><td>the check enumeration value </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gafcfd303effe54aa0944eb1fb3239f1e7"></a><!-- doxytag: member="entcmp.c::probe_ent_result_byopr" ref="gafcfd303effe54aa0944eb1fb3239f1e7" args="(SEXP_t *res_lst, oval_operator_t operator)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__OVALRES.html#ga585abe0825db03426e1994ba335dc4bf">oval_result_t</a> probe_ent_result_byopr </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>res_lst</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__OVALDEF.html#gad5debd6ffe0c38c6de9108e86ee237e6">oval_operator_t</a>&#160;</td>
          <td class="paramname"><em>operator</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Compute the overall result. </p>
<p>Compute the overall result from a results vector and a operator enumeration parameter. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">res_lst</td><td>the results vector </td></tr>
    <tr><td class="paramname">check</td><td>the operator enumeration value </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gabd1dbeb0c28df011d6a2aceb400bf1cb"></a><!-- doxytag: member="probe&#45;api.c::probe_ent_setdatatype" ref="gabd1dbeb0c28df011d6a2aceb400bf1cb" args="(SEXP_t *ent, oval_datatype_t type)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int probe_ent_setdatatype </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>ent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__OVALDEF.html#gaf069fe2fb2a9ae3abe47cab55b89827e">oval_datatype_t</a>&#160;</td>
          <td class="paramname"><em>type</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the OVAL data type of an entity. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">ent</td><td>the queried entity </td></tr>
    <tr><td class="paramname">type</td><td>the new data type </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga78fa4b2ed51c75dc331f2b30305be587"></a><!-- doxytag: member="probe&#45;api.c::probe_ent_setmask" ref="ga78fa4b2ed51c75dc331f2b30305be587" args="(SEXP_t *ent, bool mask)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int probe_ent_setmask </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>ent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>mask</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set entity's mask. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">ent</td><td>the queried entity  the new mask </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga19a9b8b09ebcb61389d792eeb4a450ee"></a><!-- doxytag: member="probe&#45;api.c::probe_ent_setstatus" ref="ga19a9b8b09ebcb61389d792eeb4a450ee" args="(SEXP_t *ent, oval_syschar_status_t status)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int probe_ent_setstatus </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>ent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422">oval_syschar_status_t</a>&#160;</td>
          <td class="paramname"><em>status</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set entity's status. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">ent</td><td>the entity to be modified </td></tr>
    <tr><td class="paramname">status</td><td>the new status </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga1803ec0d8ab14d7257457bcf2d2aee39"></a><!-- doxytag: member="entcmp.c::probe_entobj_cmp" ref="ga1803ec0d8ab14d7257457bcf2d2aee39" args="(SEXP_t *ent_obj, SEXP_t *val)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__OVALRES.html#ga585abe0825db03426e1994ba335dc4bf">oval_result_t</a> probe_entobj_cmp </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>ent_obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>val</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Compare object entity's content with a value. </p>
<p>The result depends on the operation attribute and a possible var_check attribute. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">ent_obj</td><td>object entity </td></tr>
    <tr><td class="paramname">val</td><td>raw value </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaf7a569fc0abb09980c2d2550fff7912d"></a><!-- doxytag: member="entcmp.c::probe_entste_cmp" ref="gaf7a569fc0abb09980c2d2550fff7912d" args="(SEXP_t *ent_ste, SEXP_t *ent_itm)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__OVALRES.html#ga585abe0825db03426e1994ba335dc4bf">oval_result_t</a> probe_entste_cmp </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>ent_ste</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>ent_itm</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Compare state entity's content with a item entity's value. </p>
<p>The result depends on the operation attribute, a possible var_check attribute and item entity's status. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">ent_ste</td><td>state entity </td></tr>
    <tr><td class="paramname">ent_itm</td><td>item entity </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga3356c734255a89cd50a85a51b0264711"></a><!-- doxytag: member="probe&#45;api.c::probe_filebehaviors_canonicalize" ref="ga3356c734255a89cd50a85a51b0264711" args="(SEXP_t **behaviors)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void probe_filebehaviors_canonicalize </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> **&#160;</td>
          <td class="paramname"><em>behaviors</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set all of the missing attributes of the 'behaviors' entity to default values. </p>
<p>If the referenced pointer contains NULL, a new entity is created and stored in the referenced pointer. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">behaviors</td><td>address of the pointer to the 'behaviors' entity, must not be NULL </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaaa9687fb52f3ecba96ea03e71759505c"></a><!-- doxytag: member="probe&#45;api.c::probe_free" ref="gaaa9687fb52f3ecba96ea03e71759505c" args="(SEXP_t *obj)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void probe_free </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>obj</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Free the memory allocated by the probe_* functions. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">obj</td><td>the object to be freed </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga7d094b506287a2f0397b3cfb90ba62ae"></a><!-- doxytag: member="probe&#45;api.c::probe_item_attr_add" ref="ga7d094b506287a2f0397b3cfb90ba62ae" args="(SEXP_t *item, const char *name, SEXP_t *val)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a> * probe_item_attr_add </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>item</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>val</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Add a new attribute to an item. </p>
<p>This function increments its val argument's reference count. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">item</td><td>the item to be modified </td></tr>
    <tr><td class="paramname">name</td><td>name of the new attribute </td></tr>
    <tr><td class="paramname">val</td><td>value of the new attribute </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga24a0fe6c46c667ee39d0f765630a52df"></a><!-- doxytag: member="probe&#45;api.h::probe_item_build" ref="ga24a0fe6c46c667ee39d0f765630a52df" args="(const char *fmt,...)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a>* probe_item_build </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>fmt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Build a new item according to the scpecified format. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">fmt</td><td>the desired format </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga78ae5e19aac6bb96d5539c420c737e48"></a><!-- doxytag: member="probe&#45;api.h::probe_item_collect" ref="ga78ae5e19aac6bb96d5539c420c737e48" args="(probe_ctx *ctx, SEXP_t *item)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int probe_item_collect </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structprobe__ctx.html">probe_ctx</a> *&#160;</td>
          <td class="paramname"><em>ctx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</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>Collect generated item (i.e. </p>
<p>add it to the collected object) The function takes ownership of the item reference and takes care of freeing the item (i.e. don't call SEXP_free(item) after calling this function). The implementation of this function is placed in the `probe/icache.c' file. </p>

</div>
</div>
<a class="anchor" id="ga281872a3c21765f07bb10c9d01f03100"></a><!-- doxytag: member="probe&#45;api.c::probe_item_creat" ref="ga281872a3c21765f07bb10c9d01f03100" args="(const char *name, SEXP_t *attrs,...)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a> * probe_item_creat </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>attrs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a new item consisting of a name, optional attributes argument and an arbitrary number of entities. </p>
<p>Every entity is a triple: const char *name - name of the new entity SEXP_t attrs - optional list of entity attributes in a sexp, can be NULL SEXP_t val - value of the new entity in a sexp This function increments its SEXP_t arguments' reference count. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>mandatory name argument </td></tr>
    <tr><td class="paramname">attrs</td><td>optional item's attributes argument </td></tr>
    <tr><td class="paramname">...</td><td>arbitrary number of entity arguments </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga2e3bf979b8e884105ebde18c945de292"></a><!-- doxytag: member="probe&#45;api.c::probe_item_ent_add" ref="ga2e3bf979b8e884105ebde18c945de292" args="(SEXP_t *item, const char *name, SEXP_t *attrs, SEXP_t *val)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a> * probe_item_ent_add </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>item</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>attrs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>val</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Add a new entity to an item. </p>
<p>This function increments its attrs and val arguments' reference count. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">item</td><td>the item to be modified </td></tr>
    <tr><td class="paramname">name</td><td>name of the new entity </td></tr>
    <tr><td class="paramname">attrs</td><td>optional attributes of the new entity </td></tr>
    <tr><td class="paramname">val</td><td>value of the new entity </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga585f26cf2067dff8dbc56939cd8ea88b"></a><!-- doxytag: member="probe&#45;api.c::probe_item_new" ref="ga585f26cf2067dff8dbc56939cd8ea88b" args="(const char *name, SEXP_t *attrs)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a> * probe_item_new </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>attrs</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a new item with just a name and optional attributes argument. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>item's name </td></tr>
    <tr><td class="paramname">attrs</td><td>optional attributes argument </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga57a33271acce2f5013c1a66b0f106a0a"></a><!-- doxytag: member="probe&#45;api.h::probe_item_newid" ref="ga57a33271acce2f5013c1a66b0f106a0a" args="(struct id_desc_t *id_desc)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a>* probe_item_newid </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structid__desc__t.html">id_desc_t</a> *&#160;</td>
          <td class="paramname"><em>id_desc</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get a new unique id (within a probe) for an item. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">id_desc</td><td>pointer to a structure holding the global id context </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a new id </dd></dl>

</div>
</div>
<a class="anchor" id="ga305847888cf828258788bffc475c3c18"></a><!-- doxytag: member="probe&#45;api.c::probe_item_resetidctr" ref="ga305847888cf828258788bffc475c3c18" args="(struct id_desc_t *id_desc)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void probe_item_resetidctr </td>
          <td>(</td>
          <td class="paramtype">struct <a class="el" href="structid__desc__t.html">id_desc_t</a> *&#160;</td>
          <td class="paramname"><em>id_desc</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Reset the item id generator. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">id_desc</td><td>pointer to a structure holding the global id context </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga816e3a0f4022b42e80adb37e712217a1"></a><!-- doxytag: member="probe&#45;api.c::probe_item_setstatus" ref="ga816e3a0f4022b42e80adb37e712217a1" args="(SEXP_t *obj, oval_syschar_status_t status)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int probe_item_setstatus </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422">oval_syschar_status_t</a>&#160;</td>
          <td class="paramname"><em>status</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set item's status. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">obj</td><td>the item to be modified </td></tr>
    <tr><td class="paramname">status</td><td>the new status </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gad25f90c27a7f5a76abd4348a2777b138"></a><!-- doxytag: member="probe&#45;api.c::probe_itement_setstatus" ref="gad25f90c27a7f5a76abd4348a2777b138" args="(SEXP_t *obj, const char *name, uint32_t n, oval_syschar_status_t status)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int probe_itement_setstatus </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>n</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422">oval_syschar_status_t</a>&#160;</td>
          <td class="paramname"><em>status</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set status of an item's entity. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">obj</td><td>the item to be modified </td></tr>
    <tr><td class="paramname">name</td><td>the name of the entity </td></tr>
    <tr><td class="paramname">n</td><td>select the n-th occurence of an entity with the specified name </td></tr>
    <tr><td class="paramname">status</td><td>the new status </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gac9b4a7caacf1c9c8e043424af5059f9a"></a><!-- doxytag: member="probe&#45;api.c::probe_msg_creat" ref="gac9b4a7caacf1c9c8e043424af5059f9a" args="(oval_message_level_t level, char *message)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a> * probe_msg_creat </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__OVALSYS.html#ga8ee215c8a9e2910e0595d0d32af688bc">oval_message_level_t</a>&#160;</td>
          <td class="paramname"><em>level</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>message</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a new message that can be added to a collected object. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">level</td><td>the level associated with the new message </td></tr>
    <tr><td class="paramname">message</td><td>the text of the new message </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gac4147ce4854994815f00b8895ab575b7"></a><!-- doxytag: member="probe&#45;api.c::probe_msg_creatf" ref="gac4147ce4854994815f00b8895ab575b7" args="(oval_message_level_t level, const char *fmt,...) __attribute__((format(printf" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a> * probe_msg_creatf </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__OVALSYS.html#ga8ee215c8a9e2910e0595d0d32af688bc">oval_message_level_t</a>&#160;</td>
          <td class="paramname"><em>level</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>fmt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a new message that can be added to a collected object. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">level</td><td>the level associated with the new message </td></tr>
    <tr><td class="paramname">fmt</td><td>printf-like format string that produces the text of the new message </td></tr>
    <tr><td class="paramname">...</td><td>arguments for the format </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gabdad7653e94bf96bec05941f87257f2e"></a><!-- doxytag: member="probe&#45;api.c::probe_obj_attrexists" ref="gabdad7653e94bf96bec05941f87257f2e" args="(const SEXP_t *obj, const char *name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool probe_obj_attrexists </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>obj</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>Check whether the specified attribute exists. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">obj</td><td>the queried object </td></tr>
    <tr><td class="paramname">name</td><td>the name of the attribute </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gac6a32ee967031ae45ccb7b29806715ed"></a><!-- doxytag: member="probe&#45;api.h::probe_obj_build" ref="gac6a32ee967031ae45ccb7b29806715ed" args="(const char *fmt,...)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a>* probe_obj_build </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>fmt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Build a new object according to the scpecified format. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">fmt</td><td>the desired format </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga877e7523a7c07c10b54d048dc49e97e1"></a><!-- doxytag: member="probe&#45;api.c::probe_obj_creat" ref="ga877e7523a7c07c10b54d048dc49e97e1" args="(const char *name, SEXP_t *attrs,...)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a> * probe_obj_creat </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>attrs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a new object consisting of a name, optional attributes argument and an arbitrary number of entities. </p>
<p>Every entity is a triple: const char *name - name of the new entity SEXP_t attrs - optional list of entity attributes in a sexp, can be NULL SEXP_t val - value of the new entity in a sexp This function increments its SEXP_t arguments' reference count. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>mandatory name argument </td></tr>
    <tr><td class="paramname">attrs</td><td>optional object's attributes argument </td></tr>
    <tr><td class="paramname">...</td><td>arbitrary number of entity arguments </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga0c4b1bdebc81320bd48a3517a8309247"></a><!-- doxytag: member="probe&#45;api.c::probe_obj_getattrval" ref="ga0c4b1bdebc81320bd48a3517a8309247" args="(const SEXP_t *obj, const char *name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a> * probe_obj_getattrval </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>obj</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>Get the value of an object's attribute. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">obj</td><td>the queried object </td></tr>
    <tr><td class="paramname">name</td><td>the name of the attribute </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga0e969f658bbfd5fb8aaf9a4a0d4e781d"></a><!-- doxytag: member="probe&#45;api.c::probe_obj_getent" ref="ga0e969f658bbfd5fb8aaf9a4a0d4e781d" args="(const SEXP_t *obj, const char *name, uint32_t n)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a> * probe_obj_getent </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>n</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get an entity from an object. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">obj</td><td>the queried object </td></tr>
    <tr><td class="paramname">name</td><td>the name of the entity </td></tr>
    <tr><td class="paramname">n</td><td>select the n-th occurence of an entity with the specified name </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga5d150dec132971e7c564ce61fab05f3b"></a><!-- doxytag: member="probe&#45;api.c::probe_obj_getentval" ref="ga5d150dec132971e7c564ce61fab05f3b" args="(const SEXP_t *obj, const char *name, uint32_t n)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a> * probe_obj_getentval </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>n</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the value of an object's entity. </p>
<p>The function respects the var_ref attribute and returns the currently selected value. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">obj</td><td>the queried object </td></tr>
    <tr><td class="paramname">name</td><td>the name of the entity </td></tr>
    <tr><td class="paramname">n</td><td>select the n-th occurence of an entity with the specified name </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gace27f5edf64bb92b2eac845828fc16a8"></a><!-- doxytag: member="probe&#45;api.c::probe_obj_getentvals" ref="gace27f5edf64bb92b2eac845828fc16a8" args="(const SEXP_t *obj, const char *name, uint32_t n, SEXP_t **res)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int probe_obj_getentvals </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>n</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> **&#160;</td>
          <td class="paramname"><em>res</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the list of values of an object's entity. </p>
<p>If the entity uses var_ref, there can be more than one value. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">obj</td><td>the queried object </td></tr>
    <tr><td class="paramname">name</td><td>the name of the entity </td></tr>
    <tr><td class="paramname">n</td><td>select the n-th occurence of an entity with the specified name </td></tr>
    <tr><td class="paramname">res</td><td>the resulting value list is stored in this argument </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>number of values in the list stored in the res argument </dd></dl>

</div>
</div>
<a class="anchor" id="ga3cad77f08bb8e6c8ab00af561d3558fd"></a><!-- doxytag: member="probe&#45;api.c::probe_obj_getname" ref="ga3cad77f08bb8e6c8ab00af561d3558fd" args="(const SEXP_t *obj)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char * probe_obj_getname </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>obj</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the name of an object. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">obj</td><td>the queried object </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga99fcdf7398c070fe503c97b31281289e"></a><!-- doxytag: member="probe&#45;api.c::probe_obj_getname_r" ref="ga99fcdf7398c070fe503c97b31281289e" args="(const SEXP_t *obj, char *buffer, size_t buflen)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t probe_obj_getname_r </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>buffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>buflen</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the name of an object. </p>
<p>The name is stored in the provided buffer. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">obj</td><td>the queried object </td></tr>
    <tr><td class="paramname">buffer</td><td>the buffer to store the name in </td></tr>
    <tr><td class="paramname">buflen</td><td>the length of the buffer </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga8a935fab2be64f5216f03a875d775b13"></a><!-- doxytag: member="probe&#45;api.c::probe_obj_new" ref="ga8a935fab2be64f5216f03a875d775b13" args="(const char *name, SEXP_t *attrs)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structSEXP.html">SEXP_t</a> * probe_obj_new </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>attrs</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a new object with just a name and optional attributes argument. </p>
<p>This function increments its SEXP_t argument's reference count. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>object's name </td></tr>
    <tr><td class="paramname">attrs</td><td>optional attributes argument </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gabc311067d7dc968de8aa5c640632f015"></a><!-- doxytag: member="probe&#45;api.c::probe_obj_setstatus" ref="gabc311067d7dc968de8aa5c640632f015" args="(SEXP_t *obj, oval_syschar_status_t status)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int probe_obj_setstatus </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422">oval_syschar_status_t</a>&#160;</td>
          <td class="paramname"><em>status</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set objects's status. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">obj</td><td>the object to be modified </td></tr>
    <tr><td class="paramname">status</td><td>the new status </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga44a9fff23baac451bb3619b619b77690"></a><!-- doxytag: member="probe&#45;api.h::probe_objent_setstatus" ref="ga44a9fff23baac451bb3619b619b77690" args="(SEXP_t *obj, const char *name, uint32_t n, oval_syschar_status_t status)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int probe_objent_setstatus </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> *&#160;</td>
          <td class="paramname"><em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>n</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422">oval_syschar_status_t</a>&#160;</td>
          <td class="paramname"><em>status</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set status of an object's entity. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">obj</td><td>the object to be modified </td></tr>
    <tr><td class="paramname">name</td><td>the name of the entity </td></tr>
    <tr><td class="paramname">n</td><td>select the n-th occurence of an entity with the specified name </td></tr>
    <tr><td class="paramname">status</td><td>the new status </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gadd208ff0d819b99f5084c52d3f070b1f"></a><!-- doxytag: member="probe&#45;api.c::probe_tfc54behaviors_canonicalize" ref="gadd208ff0d819b99f5084c52d3f070b1f" args="(SEXP_t **behaviors)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void probe_tfc54behaviors_canonicalize </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSEXP.html">SEXP_t</a> **&#160;</td>
          <td class="paramname"><em>behaviors</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set all of the missing attributes of the 'behaviors' entity to default values. </p>
<p>If the referenced pointer contains NULL, a new entity is created and stored in the referenced pointer. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">behaviors</td><td>address of the pointer to the 'behaviors' entity, must not be NULL </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>