Sophie

Sophie

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

openscap-devel-0.9.7-1.fc17.i686.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>Open SCAP Library: probe-api.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">Open SCAP Library
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.1.1 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_dec16e0beb5f79ab6b40e328203e2e32.html">OVAL</a></li><li class="navelem"><a class="el" href="dir_d57a52ee0ad0cdc1d71df7a41be84a06.html">probes</a></li><li class="navelem"><a class="el" href="dir_9124926755697119e47582e1c4e427f8.html">public</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="headertitle">
<div class="title">probe-api.h</div>  </div>
</div><!--header-->
<div class="contents">
<a href="probe-api_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="comment"> * Copyright 2009 Red Hat Inc., Durham, North Carolina.</span></div>
<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="comment"> * All Rights Reserved.</span></div>
<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="comment"> * This library is free software; you can redistribute it and/or</span></div>
<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="comment"> * modify it under the terms of the GNU Lesser General Public</span></div>
<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="comment"> * License as published by the Free Software Foundation; either</span></div>
<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="comment"> * version 2.1 of the License, or (at your option) any later version.</span></div>
<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="comment"> * This library is distributed in the hope that it will be useful, </span></div>
<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div>
<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU</span></div>
<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="comment"> * Lesser General Public License for more details.</span></div>
<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="comment"> * You should have received a copy of the GNU Lesser General Public</span></div>
<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="comment"> * License along with this library; if not, write to the Free Software </span></div>
<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="comment"> * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span></div>
<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="comment"> * Authors:</span></div>
<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="comment"> *      Daniel Kopecek &lt;dkopecek@redhat.com&gt;</span></div>
<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;</div>
<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="preprocessor">#pragma once</span></div>
<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#ifndef PROBE_API_H</span></div>
<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define PROBE_API_H</span></div>
<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="preprocessor">#include &lt;seap.h&gt;</span></div>
<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="preprocessor">#include &lt;stdarg.h&gt;</span></div>
<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="preprocessor">#include &lt;stdint.h&gt;</span></div>
<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="preprocessor">#include &lt;stdbool.h&gt;</span></div>
<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;<span class="preprocessor">#include &lt;pthread.h&gt;</span></div>
<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="oval__definitions_8h.html">oval_definitions.h</a>&gt;</span></div>
<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="oval__system__characteristics_8h.html">oval_system_characteristics.h</a>&gt;</span></div>
<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="oval__results_8h.html">oval_results.h</a>&gt;</span></div>
<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="oval__types_8h.html">oval_types.h</a>&gt;</span></div>
<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;</div>
<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="comment"> * items</span></div>
<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;</div>
<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *<a class="code" href="group__PROBEAPI.html#ga24a0fe6c46c667ee39d0f765630a52df" title="Build a new item according to the specified format.">probe_item_build</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *fmt, ...);</div>
<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;</div>
<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;<span class="comment">/* SEXP_t *probe_item_creat (const char *name, SEXP_t *attrs, ...); */</span></div>
<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *<a class="code" href="group__PROBEAPI.html#ga281872a3c21765f07bb10c9d01f03100" title="Create a new item consisting of a name, optional attributes argument and an arbitrary number of entit...">probe_item_creat</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *name, <a class="code" href="structSEXP.html">SEXP_t</a> * attrs, ...);</div>
<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;</div>
<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *<a class="code" href="group__PROBEAPI.html#ga585f26cf2067dff8dbc56939cd8ea88b" title="Create a new item with just a name and optional attributes argument.">probe_item_new</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *name, <a class="code" href="structSEXP.html">SEXP_t</a> * attrs);</div>
<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;</div>
<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *<a class="code" href="group__PROBEAPI.html#ga7d094b506287a2f0397b3cfb90ba62ae" title="Add a new attribute to an item.">probe_item_attr_add</a>(<a class="code" href="structSEXP.html">SEXP_t</a> * item, <span class="keyword">const</span> <span class="keywordtype">char</span> *name, <a class="code" href="structSEXP.html">SEXP_t</a> * val);</div>
<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;</div>
<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *<a class="code" href="group__PROBEAPI.html#ga2e3bf979b8e884105ebde18c945de292" title="Add a new entity to an item.">probe_item_ent_add</a>(<a class="code" href="structSEXP.html">SEXP_t</a> * item, <span class="keyword">const</span> <span class="keywordtype">char</span> *name, <a class="code" href="structSEXP.html">SEXP_t</a> * attrs, <a class="code" href="structSEXP.html">SEXP_t</a> * val);</div>
<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;</div>
<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;<span class="keywordtype">int</span> <a class="code" href="group__PROBEAPI.html#ga816e3a0f4022b42e80adb37e712217a1" title="Set item&#39;s status.">probe_item_setstatus</a>(<a class="code" href="structSEXP.html">SEXP_t</a> * obj, <a class="code" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422" title="System characteristics status.">oval_syschar_status_t</a> status);</div>
<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;</div>
<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;<span class="keywordtype">int</span> <a class="code" href="group__PROBEAPI.html#gad25f90c27a7f5a76abd4348a2777b138" title="Set status of an item&#39;s entity.">probe_itement_setstatus</a>(<a class="code" href="structSEXP.html">SEXP_t</a> * obj, <span class="keyword">const</span> <span class="keywordtype">char</span> *name, uint32_t n, <a class="code" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422" title="System characteristics status.">oval_syschar_status_t</a> status);</div>
<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;</div>
<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;<span class="keyword">struct </span><a class="code" href="structid__desc__t.html" title="Holds information for item ids generation.">id_desc_t</a>;</div>
<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;</div>
<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *<a class="code" href="group__PROBEAPI.html#ga57a33271acce2f5013c1a66b0f106a0a" title="Get a new unique id (within a probe) for an item.">probe_item_newid</a>(<span class="keyword">struct</span> <a class="code" href="structid__desc__t.html" title="Holds information for item ids generation.">id_desc_t</a> *id_desc);</div>
<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;</div>
<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__PROBEAPI.html#ga305847888cf828258788bffc475c3c18" title="Reset the item id generator.">probe_item_resetidctr</a>(<span class="keyword">struct</span> <a class="code" href="structid__desc__t.html" title="Holds information for item ids generation.">id_desc_t</a> *id_desc);</div>
<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;</div>
<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;<span class="preprocessor">#define probe_item_getent(item, name, n) probe_obj_getent (item, name, n)</span></div>
<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;<span class="comment"> * attributes</span></div>
<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;</div>
<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *<a class="code" href="group__PROBEAPI.html#gad5454da7eac743ac23d061df7b020b95" title="Create a new list of attributes.">probe_attr_creat</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *name, <span class="keyword">const</span> <a class="code" href="structSEXP.html">SEXP_t</a> * val, ...);</div>
<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;</div>
<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;<span class="comment"> * objects</span></div>
<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;</div>
<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *<a class="code" href="group__PROBEAPI.html#gac6a32ee967031ae45ccb7b29806715ed" title="Build a new object according to the specified format.">probe_obj_build</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *fmt, ...);</div>
<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;</div>
<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *<a class="code" href="group__PROBEAPI.html#ga877e7523a7c07c10b54d048dc49e97e1" title="Create a new object consisting of a name, optional attributes argument and an arbitrary number of ent...">probe_obj_creat</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *name, <a class="code" href="structSEXP.html">SEXP_t</a> * attrs, ...);</div>
<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;</div>
<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *<a class="code" href="group__PROBEAPI.html#ga8a935fab2be64f5216f03a875d775b13" title="Create a new object with just a name and optional attributes argument.">probe_obj_new</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *name, <a class="code" href="structSEXP.html">SEXP_t</a> * attrs);</div>
<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;</div>
<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *<a class="code" href="group__PROBEAPI.html#ga0e969f658bbfd5fb8aaf9a4a0d4e781d" title="Get an entity from an object.">probe_obj_getent</a>(<span class="keyword">const</span> <a class="code" href="structSEXP.html">SEXP_t</a> * obj, <span class="keyword">const</span> <span class="keywordtype">char</span> *name, uint32_t n);</div>
<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;</div>
<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *<a class="code" href="group__PROBEAPI.html#ga5d150dec132971e7c564ce61fab05f3b" title="Get the value of an object&#39;s entity.">probe_obj_getentval</a>(<span class="keyword">const</span> <a class="code" href="structSEXP.html">SEXP_t</a> * obj, <span class="keyword">const</span> <span class="keywordtype">char</span> *name, uint32_t n);</div>
<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;</div>
<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;<span class="keywordtype">int</span> <a class="code" href="group__PROBEAPI.html#gace27f5edf64bb92b2eac845828fc16a8" title="Get the list of values of an object&#39;s entity.">probe_obj_getentvals</a>(<span class="keyword">const</span> <a class="code" href="structSEXP.html">SEXP_t</a> * obj, <span class="keyword">const</span> <span class="keywordtype">char</span> *name, uint32_t n, <a class="code" href="structSEXP.html">SEXP_t</a> ** res);</div>
<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;</div>
<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *<a class="code" href="group__PROBEAPI.html#ga0c4b1bdebc81320bd48a3517a8309247" title="Get the value of an object&#39;s attribute.">probe_obj_getattrval</a>(<span class="keyword">const</span> <a class="code" href="structSEXP.html">SEXP_t</a> * obj, <span class="keyword">const</span> <span class="keywordtype">char</span> *name);</div>
<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;</div>
<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="group__PROBEAPI.html#gabdad7653e94bf96bec05941f87257f2e" title="Check whether the specified attribute exists.">probe_obj_attrexists</a>(<span class="keyword">const</span> <a class="code" href="structSEXP.html">SEXP_t</a> * obj, <span class="keyword">const</span> <span class="keywordtype">char</span> *name);</div>
<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;</div>
<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;<span class="keywordtype">int</span> <a class="code" href="group__PROBEAPI.html#gabc311067d7dc968de8aa5c640632f015" title="Set objects&#39;s status.">probe_obj_setstatus</a>(<a class="code" href="structSEXP.html">SEXP_t</a> * obj, <a class="code" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422" title="System characteristics status.">oval_syschar_status_t</a> status);</div>
<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;</div>
<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;<span class="keywordtype">int</span> <a class="code" href="group__PROBEAPI.html#ga44a9fff23baac451bb3619b619b77690" title="Set status of an object&#39;s entity.">probe_objent_setstatus</a>(<a class="code" href="structSEXP.html">SEXP_t</a> * obj, <span class="keyword">const</span> <span class="keywordtype">char</span> *name, uint32_t n, <a class="code" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422" title="System characteristics status.">oval_syschar_status_t</a> status);</div>
<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;</div>
<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;<span class="keywordtype">char</span> *<a class="code" href="group__PROBEAPI.html#ga3cad77f08bb8e6c8ab00af561d3558fd" title="Get the name of an object.">probe_obj_getname</a>(<span class="keyword">const</span> <a class="code" href="structSEXP.html">SEXP_t</a> * obj);</div>
<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;</div>
<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;<span class="keywordtype">size_t</span> <a class="code" href="group__PROBEAPI.html#ga99fcdf7398c070fe503c97b31281289e" title="Get the name of an object.">probe_obj_getname_r</a>(<span class="keyword">const</span> <a class="code" href="structSEXP.html">SEXP_t</a> * obj, <span class="keywordtype">char</span> *buffer, <span class="keywordtype">size_t</span> buflen);</div>
<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;</div>
<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;<span class="comment"> * collected objects</span></div>
<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;</div>
<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *probe_cobj_new(<a class="code" href="group__OVALSYS.html#ga6ca9feb1c89087dbae7c7d3074a378c9" title="System characteristics result flag.">oval_syschar_collection_flag_t</a> flag, <a class="code" href="structSEXP.html">SEXP_t</a> *msg_list, <a class="code" href="structSEXP.html">SEXP_t</a> *item_list, <a class="code" href="structSEXP.html">SEXP_t</a> *mask_list);</div>
<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;<span class="keywordtype">int</span> probe_cobj_add_msg(<a class="code" href="structSEXP.html">SEXP_t</a> *cobj, <span class="keyword">const</span> <a class="code" href="structSEXP.html">SEXP_t</a> *msg);</div>
<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *probe_cobj_get_msgs(<span class="keyword">const</span> <a class="code" href="structSEXP.html">SEXP_t</a> *cobj);</div>
<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *probe_cobj_get_mask(<span class="keyword">const</span> <a class="code" href="structSEXP.html">SEXP_t</a> *cobj);</div>
<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;<span class="keywordtype">int</span> probe_cobj_add_item(<a class="code" href="structSEXP.html">SEXP_t</a> *cobj, <span class="keyword">const</span> <a class="code" href="structSEXP.html">SEXP_t</a> *item);</div>
<div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *probe_cobj_get_items(<span class="keyword">const</span> <a class="code" href="structSEXP.html">SEXP_t</a> *cobj);</div>
<div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;<span class="keywordtype">void</span> probe_cobj_set_flag(<a class="code" href="structSEXP.html">SEXP_t</a> *cobj, <a class="code" href="group__OVALSYS.html#ga6ca9feb1c89087dbae7c7d3074a378c9" title="System characteristics result flag.">oval_syschar_collection_flag_t</a> flag);</div>
<div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;<a class="code" href="group__OVALSYS.html#ga6ca9feb1c89087dbae7c7d3074a378c9" title="System characteristics result flag.">oval_syschar_collection_flag_t</a> probe_cobj_get_flag(<span class="keyword">const</span> <a class="code" href="structSEXP.html">SEXP_t</a> *cobj);</div>
<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;<a class="code" href="group__OVALSYS.html#ga6ca9feb1c89087dbae7c7d3074a378c9" title="System characteristics result flag.">oval_syschar_collection_flag_t</a> probe_cobj_combine_flags(<a class="code" href="group__OVALSYS.html#ga6ca9feb1c89087dbae7c7d3074a378c9" title="System characteristics result flag.">oval_syschar_collection_flag_t</a> f1,</div>
<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;                                                        <a class="code" href="group__OVALSYS.html#ga6ca9feb1c89087dbae7c7d3074a378c9" title="System characteristics result flag.">oval_syschar_collection_flag_t</a> f2,</div>
<div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;                                                        <a class="code" href="group__OVALDEF.html#ga695dd73f42848ceb78bc9c9b3794e08c" title="Set operations.">oval_setobject_operation_t</a> op);</div>
<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;<a class="code" href="group__OVALSYS.html#ga6ca9feb1c89087dbae7c7d3074a378c9" title="System characteristics result flag.">oval_syschar_collection_flag_t</a> probe_cobj_compute_flag(<a class="code" href="structSEXP.html">SEXP_t</a> *cobj);</div>
<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;</div>
<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;<span class="comment"> * messages</span></div>
<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;</div>
<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *<a class="code" href="group__PROBEAPI.html#gac9b4a7caacf1c9c8e043424af5059f9a" title="Create a new message that can be added to a collected object.">probe_msg_creat</a>(<a class="code" href="group__OVALSYS.html#ga8ee215c8a9e2910e0595d0d32af688bc" title="Message level.">oval_message_level_t</a> level, <span class="keywordtype">char</span> *message);</div>
<div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;</div>
<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *<a class="code" href="group__PROBEAPI.html#gac4147ce4854994815f00b8895ab575b7" title="Create a new message that can be added to a collected object.">probe_msg_creatf</a>(<a class="code" href="group__OVALSYS.html#ga8ee215c8a9e2910e0595d0d32af688bc" title="Message level.">oval_message_level_t</a> level, <span class="keyword">const</span> <span class="keywordtype">char</span> *fmt, ...) <a class="code" href="struct____attribute____.html">__attribute__</a>((format(printf, 2, 3), nonnull(2)));</div>
<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;</div>
<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;<span class="comment"> * entities</span></div>
<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;</div>
<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *<a class="code" href="group__PROBEAPI.html#ga16e28dc2212c2cb4823270d5b89796e8" title="Create a new list of entities.">probe_ent_creat</a>(const <span class="keywordtype">char</span> *name, <a class="code" href="structSEXP.html">SEXP_t</a> * attrs, <a class="code" href="structSEXP.html">SEXP_t</a> * val, ...);</div>
<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;</div>
<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *<a class="code" href="group__PROBEAPI.html#gaf25568074f3fd20b740fa1a7772b62e8" title="Create a new entity.">probe_ent_creat1</a>(const <span class="keywordtype">char</span> *name, <a class="code" href="structSEXP.html">SEXP_t</a> * attrs, <a class="code" href="structSEXP.html">SEXP_t</a> * val);</div>
<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;</div>
<div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *<a class="code" href="group__PROBEAPI.html#ga26150d99efb18ef3893f55526048297f" title="Add a new attribute to an entity.">probe_ent_attr_add</a>(<a class="code" href="structSEXP.html">SEXP_t</a> * ent, const <span class="keywordtype">char</span> *name, <a class="code" href="structSEXP.html">SEXP_t</a> * val);</div>
<div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;</div>
<div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *<a class="code" href="group__PROBEAPI.html#ga73598523f63abab6f4229bbd9daa9dba" title="Get the value of an entity.">probe_ent_getval</a>(const <a class="code" href="structSEXP.html">SEXP_t</a> * ent);</div>
<div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;</div>
<div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;<span class="keywordtype">int</span> <a class="code" href="group__PROBEAPI.html#ga3ff2cd8dba0ce124e8c1557f83ece7e0" title="Get the list of values of an entity.">probe_ent_getvals</a>(const <a class="code" href="structSEXP.html">SEXP_t</a> * ent, <a class="code" href="structSEXP.html">SEXP_t</a> ** res);</div>
<div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;</div>
<div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *<a class="code" href="group__PROBEAPI.html#gaf2b69d899ddd53c161f162c7d9e4dbbc" title="Get the value of an entity&#39;s attribute.">probe_ent_getattrval</a>(const <a class="code" href="structSEXP.html">SEXP_t</a> * ent, const <span class="keywordtype">char</span> *name);</div>
<div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;</div>
<div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="group__PROBEAPI.html#gade2da190db42b69de3a82df73ddf92da" title="Check whether the specified attribute exists.">probe_ent_attrexists</a>(const <a class="code" href="structSEXP.html">SEXP_t</a> * ent, const <span class="keywordtype">char</span> *name);</div>
<div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;</div>
<div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;<span class="keywordtype">int</span> <a class="code" href="group__PROBEAPI.html#gabd1dbeb0c28df011d6a2aceb400bf1cb" title="Set the OVAL data type of an entity.">probe_ent_setdatatype</a>(<a class="code" href="structSEXP.html">SEXP_t</a> * ent, <a class="code" href="group__OVALDEF.html#gaf069fe2fb2a9ae3abe47cab55b89827e" title="Datatypes.">oval_datatype_t</a> type);</div>
<div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;</div>
<div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;<a class="code" href="group__OVALDEF.html#gaf069fe2fb2a9ae3abe47cab55b89827e" title="Datatypes.">oval_datatype_t</a> <a class="code" href="group__PROBEAPI.html#ga63df6b0800c386aa946dd79088893f05" title="Get the OVAL data type of an entity.">probe_ent_getdatatype</a>(const <a class="code" href="structSEXP.html">SEXP_t</a> * ent);</div>
<div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;</div>
<div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;<span class="keywordtype">int</span> <a class="code" href="group__PROBEAPI.html#ga78fa4b2ed51c75dc331f2b30305be587" title="Set entity&#39;s mask.">probe_ent_setmask</a>(<a class="code" href="structSEXP.html">SEXP_t</a> * ent, <span class="keywordtype">bool</span> mask);</div>
<div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;</div>
<div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="group__PROBEAPI.html#gaa18871c25a66d86317af2998703d3834" title="Get entity&#39;s mask.">probe_ent_getmask</a>(const <a class="code" href="structSEXP.html">SEXP_t</a> * ent);</div>
<div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;</div>
<div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;<span class="keywordtype">int</span> <a class="code" href="group__PROBEAPI.html#ga19a9b8b09ebcb61389d792eeb4a450ee" title="Set entity&#39;s status.">probe_ent_setstatus</a>(<a class="code" href="structSEXP.html">SEXP_t</a> * ent, <a class="code" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422" title="System characteristics status.">oval_syschar_status_t</a> status);</div>
<div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;</div>
<div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;<a class="code" href="group__OVALSYS.html#gacf14e82865b7254b573e9a98e7fae422" title="System characteristics status.">oval_syschar_status_t</a> <a class="code" href="group__PROBEAPI.html#gaf6f8c32f4222562df8396b6ce8e8afc0" title="Get entity status.">probe_ent_getstatus</a>(const <a class="code" href="structSEXP.html">SEXP_t</a> * ent);</div>
<div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;</div>
<div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;<span class="keywordtype">char</span> *<a class="code" href="group__PROBEAPI.html#ga01ea603ba88ab456b6501709311bc3ff" title="Get the name of an entity.">probe_ent_getname</a>(const <a class="code" href="structSEXP.html">SEXP_t</a> * ent);</div>
<div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;</div>
<div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;<span class="keywordtype">size_t</span> <a class="code" href="group__PROBEAPI.html#ga8327d5fcb919ace33e748995242121d5" title="Get the name of an entity.">probe_ent_getname_r</a>(const <a class="code" href="structSEXP.html">SEXP_t</a> * ent, <span class="keywordtype">char</span> *buffer, <span class="keywordtype">size_t</span> buflen);</div>
<div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;</div>
<div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__PROBEAPI.html#gaaa9687fb52f3ecba96ea03e71759505c" title="Free the memory allocated by the probe_* functions.">probe_free</a>(<a class="code" href="structSEXP.html">SEXP_t</a> * obj);</div>
<div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;</div>
<div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__PROBEAPI.html#ga3356c734255a89cd50a85a51b0264711" title="Set all of the missing attributes of the &#39;behaviors&#39; entity to default values.">probe_filebehaviors_canonicalize</a>(<a class="code" href="structSEXP.html">SEXP_t</a> **behaviors);</div>
<div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;</div>
<div class="line"><a name="l00446"></a><span class="lineno">  446</span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__PROBEAPI.html#gadd208ff0d819b99f5084c52d3f070b1f" title="Set all of the missing attributes of the &#39;behaviors&#39; entity to default values.">probe_tfc54behaviors_canonicalize</a>(<a class="code" href="structSEXP.html">SEXP_t</a> **behaviors);</div>
<div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;</div>
<div class="line"><a name="l00448"></a><span class="lineno"><a class="code" href="group__PROBEAPI.html#gad69bb1533565f81eb97329ad8999a274">  448</a></span>&#160;<span class="preprocessor">#define PROBE_EINVAL     1      </span></div>
<div class="line"><a name="l00449"></a><span class="lineno"><a class="code" href="group__PROBEAPI.html#ga665325994bad09304d8200537d93642b">  449</a></span>&#160;<span class="preprocessor">#define PROBE_ENOELM     2      </span></div>
<div class="line"><a name="l00450"></a><span class="lineno"><a class="code" href="group__PROBEAPI.html#gac40d965d6387fc705aea7e17dd7680ba">  450</a></span>&#160;<span class="preprocessor">#define PROBE_ENOVAL     3      </span></div>
<div class="line"><a name="l00451"></a><span class="lineno"><a class="code" href="group__PROBEAPI.html#ga74bcecc6555100a7238fdc65f0d6148b">  451</a></span>&#160;<span class="preprocessor">#define PROBE_ENOATTR    4      </span></div>
<div class="line"><a name="l00452"></a><span class="lineno"><a class="code" href="group__PROBEAPI.html#ga9a5597ef21583fc083506d20a214761a">  452</a></span>&#160;<span class="preprocessor">#define PROBE_EINIT      5      </span></div>
<div class="line"><a name="l00453"></a><span class="lineno"><a class="code" href="group__PROBEAPI.html#gaa21674196b5cb001c28278c9514be185">  453</a></span>&#160;<span class="preprocessor">#define PROBE_ENOMEM     6      </span></div>
<div class="line"><a name="l00454"></a><span class="lineno"><a class="code" href="group__PROBEAPI.html#gaa6a7dd0ff32488e301fc8b9420acf55c">  454</a></span>&#160;<span class="preprocessor">#define PROBE_EOPNOTSUPP 7      </span></div>
<div class="line"><a name="l00455"></a><span class="lineno"><a class="code" href="group__PROBEAPI.html#ga46a7aab37ba4784bd48fd1e5928ce96e">  455</a></span>&#160;<span class="preprocessor">#define PROBE_ERANGE     8      </span></div>
<div class="line"><a name="l00456"></a><span class="lineno"><a class="code" href="group__PROBEAPI.html#gaf657b90fcfba95adaae13b5052304c63">  456</a></span>&#160;<span class="preprocessor">#define PROBE_EDOM       9      </span></div>
<div class="line"><a name="l00457"></a><span class="lineno"><a class="code" href="group__PROBEAPI.html#ga4f022024f2cd09d1d61896e5c2c38255">  457</a></span>&#160;<span class="preprocessor">#define PROBE_EFAULT    10      </span></div>
<div class="line"><a name="l00458"></a><span class="lineno"><a class="code" href="group__PROBEAPI.html#ga788a3096bb8194ad2cc1d5a05ac8cdf0">  458</a></span>&#160;<span class="preprocessor">#define PROBE_EACCESS   11      </span></div>
<div class="line"><a name="l00459"></a><span class="lineno"><a class="code" href="group__PROBEAPI.html#ga17111637d17fa23099a5db55a244d708">  459</a></span>&#160;<span class="preprocessor">#define PROBE_ESETEVAL  12      </span></div>
<div class="line"><a name="l00460"></a><span class="lineno"><a class="code" href="group__PROBEAPI.html#ga06b962b819862cec7b8d5db3435d2ca7">  460</a></span>&#160;<span class="preprocessor">#define PROBE_ENOENT    13      </span></div>
<div class="line"><a name="l00461"></a><span class="lineno"><a class="code" href="group__PROBEAPI.html#ga9d4910b622976895a10f5dfc8c505bcf">  461</a></span>&#160;<span class="preprocessor">#define PROBE_ENOOBJ    14      </span></div>
<div class="line"><a name="l00462"></a><span class="lineno"><a class="code" href="group__PROBEAPI.html#ga47e75cf6deaeff709e482781fb21b95c">  462</a></span>&#160;<span class="preprocessor">#define PROBE_ECONNABORTED 15   </span></div>
<div class="line"><a name="l00463"></a><span class="lineno"><a class="code" href="group__PROBEAPI.html#ga82a47bf338d851f206d5b57af891023e">  463</a></span>&#160;<span class="preprocessor">#define PROBE_ESYSTEM  253      </span></div>
<div class="line"><a name="l00464"></a><span class="lineno"><a class="code" href="group__PROBEAPI.html#ga851f1cb9529e4ac8d3e4ab659492dac6">  464</a></span>&#160;<span class="preprocessor">#define PROBE_EFATAL   254      </span></div>
<div class="line"><a name="l00465"></a><span class="lineno"><a class="code" href="group__PROBEAPI.html#gac7ffdc136441d8e231cdf0907c2dd03f">  465</a></span>&#160;<span class="preprocessor">#define PROBE_EUNKNOWN 255      </span></div>
<div class="line"><a name="l00467"></a><span class="lineno"><a class="code" href="group__PROBEAPI.html#gabf31b82ea668b210dc889e8706674fca">  467</a></span>&#160;<span class="preprocessor">#define PROBECMD_STE_FETCH 1 </span></div>
<div class="line"><a name="l00468"></a><span class="lineno"><a class="code" href="group__PROBEAPI.html#ga568b36409fa7ad30440d7b9b339db22d">  468</a></span>&#160;<span class="preprocessor">#define PROBECMD_OBJ_EVAL  2 </span></div>
<div class="line"><a name="l00469"></a><span class="lineno"><a class="code" href="group__PROBEAPI.html#gafaa4a590a3406b83092502eb0d05b98e">  469</a></span>&#160;<span class="preprocessor">#define PROBECMD_RESET     3 </span></div>
<div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;<span class="preprocessor">void *probe_init(void) __attribute__ ((unused));</span></div>
<div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;<span class="preprocessor"></span><span class="keywordtype">void</span> probe_fini(<span class="keywordtype">void</span> *) <a class="code" href="struct____attribute____.html">__attribute__</a> ((unused));</div>
<div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;</div>
<div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;typedef struct <a class="code" href="structprobe__ctx.html">probe_ctx</a> <a class="code" href="structprobe__ctx.html">probe_ctx</a>;</div>
<div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;</div>
<div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;<span class="keywordtype">int</span> probe_main(probe_ctx *, <span class="keywordtype">void</span> *) <a class="code" href="struct____attribute____.html">__attribute__</a> ((nonnull(1)));</div>
<div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;</div>
<div class="line"><a name="l00478"></a><span class="lineno">  478</span>&#160;<span class="preprocessor">#define PROBE_VARREF_HANDLING 0</span></div>
<div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define PROBE_RESULT_CACHING  1</span></div>
<div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;<span class="keywordtype">int</span> probe_setoption(<span class="keywordtype">int</span> option, ...);</div>
<div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;</div>
<div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;<span class="keywordtype">bool</span> probe_item_filtered(<span class="keyword">const</span> <a class="code" href="structSEXP.html">SEXP_t</a> *item, <span class="keyword">const</span> <a class="code" href="structSEXP.html">SEXP_t</a> *filters);</div>
<div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;</div>
<div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;<span class="keywordtype">int</span> probe_result_additem(<a class="code" href="structSEXP.html">SEXP_t</a> *result, <a class="code" href="structSEXP.html">SEXP_t</a> *item);</div>
<div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;</div>
<div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;<span class="keywordtype">int</span> <a class="code" href="group__PROBEAPI.html#ga78ae5e19aac6bb96d5539c420c737e48" title="Collect an item This function adds an item the collected object assosiated with the given probe conte...">probe_item_collect</a>(probe_ctx *ctx, <a class="code" href="structSEXP.html">SEXP_t</a> *item);</div>
<div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;</div>
<div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *<a class="code" href="group__PROBEAPI.html#ga0a484e1649def57c75ba232bea408712" title="Return reference to the input object.">probe_ctx_getobject</a>(probe_ctx *ctx);</div>
<div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;</div>
<div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *<a class="code" href="group__PROBEAPI.html#ga175723d1728c2191576dc128da5931c6" title="Return reference to the output object (aka collected object).">probe_ctx_getresult</a>(probe_ctx *ctx);</div>
<div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;</div>
<div class="line"><a name="l00511"></a><span class="lineno"><a class="code" href="structprobe__elmatr__t.html">  511</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;        <a class="code" href="group__OVALDEF.html#gaf069fe2fb2a9ae3abe47cab55b89827e" title="Datatypes.">oval_datatype_t</a> type;</div>
<div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;        <span class="keywordtype">void</span>           *value;</div>
<div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;} <a class="code" href="structprobe__elmatr__t.html">probe_elmatr_t</a>;</div>
<div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;</div>
<div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *probe_item_create(<a class="code" href="group__OVAL.html#ga99498f525c1a0282ef45557fc882f97f" title="Unknown subtypes.">oval_subtype_t</a> item_subtype, <a class="code" href="structprobe__elmatr__t.html">probe_elmatr_t</a> *item_attributes[], ...);</div>
<div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;</div>
<div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;<span class="preprocessor">#define PROBE_ENT_AREF(ent, dst, attr_name, invalid_exp)                \</span></div>
<div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;<span class="preprocessor">        do {                                                            \</span></div>
<div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;<span class="preprocessor">                if (((dst) = probe_ent_getattrval(ent, attr_name)) == NULL) { \</span></div>
<div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;<span class="preprocessor">                        dE(&quot;Attribute `%s&#39; is missing!\n&quot;, attr_name);  \</span></div>
<div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;<span class="preprocessor">                        invalid_exp                                     \</span></div>
<div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;<span class="preprocessor">                }                                                       \</span></div>
<div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;<span class="preprocessor">        } while(0)</span></div>
<div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;<span class="preprocessor">#define PROBE_ENT_STRVAL(ent, dst, dstlen, invalid_exp, zerolen_exp)    \</span></div>
<div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;<span class="preprocessor">        do {                                                    \</span></div>
<div class="line"><a name="l00528"></a><span class="lineno">  528</span>&#160;<span class="preprocessor">                SEXP_t *___r;                                   \</span></div>
<div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160;<span class="preprocessor">                                                                \</span></div>
<div class="line"><a name="l00530"></a><span class="lineno">  530</span>&#160;<span class="preprocessor">                if ((___r = probe_ent_getval(ent)) == NULL) {   \</span></div>
<div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;<span class="preprocessor">                        dW(&quot;Entity has no value!\n&quot;);           \</span></div>
<div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;<span class="preprocessor">                        invalid_exp                             \</span></div>
<div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;<span class="preprocessor">                } else {                                        \</span></div>
<div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;<span class="preprocessor">                        if (!SEXP_stringp(___r)) {              \</span></div>
<div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;<span class="preprocessor">                                dE(&quot;Invalid type\n&quot;);           \</span></div>
<div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;<span class="preprocessor">                                SEXP_free(___r);                \</span></div>
<div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;<span class="preprocessor">                                invalid_exp                     \</span></div>
<div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;<span class="preprocessor">                        }                                       \</span></div>
<div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;<span class="preprocessor">                        if (SEXP_string_length(___r) == 0) {    \</span></div>
<div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160;<span class="preprocessor">                                SEXP_free(___r);                \</span></div>
<div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;<span class="preprocessor">                                zerolen_exp                     \</span></div>
<div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;<span class="preprocessor">                        } else {                                \</span></div>
<div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;<span class="preprocessor">                                SEXP_string_cstr_r(___r, dst, dstlen); \</span></div>
<div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;<span class="preprocessor">                                SEXP_free(___r);                \</span></div>
<div class="line"><a name="l00545"></a><span class="lineno">  545</span>&#160;<span class="preprocessor">                        }                                       \</span></div>
<div class="line"><a name="l00546"></a><span class="lineno">  546</span>&#160;<span class="preprocessor">                }                                               \</span></div>
<div class="line"><a name="l00547"></a><span class="lineno">  547</span>&#160;<span class="preprocessor">        } while (0)</span></div>
<div class="line"><a name="l00548"></a><span class="lineno">  548</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00549"></a><span class="lineno">  549</span>&#160;<span class="preprocessor">#define PROBE_ENT_I32VAL(ent, dst, invalid_exp, nil_exp)        \</span></div>
<div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160;<span class="preprocessor">        do {                                                    \</span></div>
<div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;<span class="preprocessor">                SEXP_t *___r;                                   \</span></div>
<div class="line"><a name="l00552"></a><span class="lineno">  552</span>&#160;<span class="preprocessor">                                                                \</span></div>
<div class="line"><a name="l00553"></a><span class="lineno">  553</span>&#160;<span class="preprocessor">                if ((___r = probe_ent_getval(ent)) == NULL) {   \</span></div>
<div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;<span class="preprocessor">                        dW(&quot;Entity has no value!\n&quot;);           \</span></div>
<div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;<span class="preprocessor">                        nil_exp;                                \</span></div>
<div class="line"><a name="l00556"></a><span class="lineno">  556</span>&#160;<span class="preprocessor">                } else {                                        \</span></div>
<div class="line"><a name="l00557"></a><span class="lineno">  557</span>&#160;<span class="preprocessor">                        if (!SEXP_numberp(___r)) {              \</span></div>
<div class="line"><a name="l00558"></a><span class="lineno">  558</span>&#160;<span class="preprocessor">                                dE(&quot;Invalid type\n&quot;);           \</span></div>
<div class="line"><a name="l00559"></a><span class="lineno">  559</span>&#160;<span class="preprocessor">                                SEXP_free(___r);                \</span></div>
<div class="line"><a name="l00560"></a><span class="lineno">  560</span>&#160;<span class="preprocessor">                                invalid_exp;                    \</span></div>
<div class="line"><a name="l00561"></a><span class="lineno">  561</span>&#160;<span class="preprocessor">                        } else {                                \</span></div>
<div class="line"><a name="l00562"></a><span class="lineno">  562</span>&#160;<span class="preprocessor">                                dst = SEXP_number_geti_32(___r);        \</span></div>
<div class="line"><a name="l00563"></a><span class="lineno">  563</span>&#160;<span class="preprocessor">                                SEXP_free(___r);                        \</span></div>
<div class="line"><a name="l00564"></a><span class="lineno">  564</span>&#160;<span class="preprocessor">                        }                                               \</span></div>
<div class="line"><a name="l00565"></a><span class="lineno">  565</span>&#160;<span class="preprocessor">                }                                                       \</span></div>
<div class="line"><a name="l00566"></a><span class="lineno">  566</span>&#160;<span class="preprocessor">        } while (0)</span></div>
<div class="line"><a name="l00567"></a><span class="lineno">  567</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160;<span class="preprocessor">#endif                          </span><span class="comment">/* PROBE_API_H */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00569"></a><span class="lineno">  569</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00570"></a><span class="lineno">  570</span>&#160;<a class="code" href="group__OVALDEF.html#ga3f00a63428c2b5db781a9c87ec73acd1" title="Operations.">oval_operation_t</a> probe_ent_getoperation(<a class="code" href="structSEXP.html">SEXP_t</a> *entity, <a class="code" href="group__OVALDEF.html#ga3f00a63428c2b5db781a9c87ec73acd1" title="Operations.">oval_operation_t</a> op);</div>
<div class="line"><a name="l00571"></a><span class="lineno">  571</span>&#160;</div>
<div class="line"><a name="l00572"></a><span class="lineno">  572</span>&#160;<span class="keywordtype">int</span> probe_item_add_msg(<a class="code" href="structSEXP.html">SEXP_t</a> *item, <a class="code" href="group__OVALSYS.html#ga8ee215c8a9e2910e0595d0d32af688bc" title="Message level.">oval_message_level_t</a> msglvl, <span class="keywordtype">char</span> *msgfmt, ...);</div>
<div class="line"><a name="l00573"></a><span class="lineno">  573</span>&#160;</div>
<div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *probe_entval_from_cstr(<a class="code" href="group__OVALDEF.html#gaf069fe2fb2a9ae3abe47cab55b89827e" title="Datatypes.">oval_datatype_t</a> type, <span class="keyword">const</span> <span class="keywordtype">char</span> *value, <span class="keywordtype">size_t</span> vallen);</div>
<div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *probe_ent_from_cstr(<span class="keyword">const</span> <span class="keywordtype">char</span> *name, <a class="code" href="group__OVALDEF.html#gaf069fe2fb2a9ae3abe47cab55b89827e" title="Datatypes.">oval_datatype_t</a> type, <span class="keyword">const</span> <span class="keywordtype">char</span> *value, <span class="keywordtype">size_t</span> vallen);</div>
<div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;</div>
<div class="line"><a name="l00577"></a><span class="lineno">  577</span>&#160;oval_version_t probe_obj_get_schema_version(<span class="keyword">const</span> <a class="code" href="structSEXP.html">SEXP_t</a> *obj);</div>
<div class="line"><a name="l00578"></a><span class="lineno">  578</span>&#160;</div>
<div class="line"><a name="l00583"></a><span class="lineno">  583</span>&#160;<a class="code" href="structSEXP.html">SEXP_t</a> *<a class="code" href="group__PROBEAPI.html#gacf9254dd369f7eac65d8ec402ec18bad" title="Get object entity mask.">probe_obj_getmask</a>(<a class="code" href="structSEXP.html">SEXP_t</a> *obj);</div>
<div class="line"><a name="l00584"></a><span class="lineno">  584</span>&#160;</div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.1.1
</small></address>
</body>
</html>