<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII"> <title>idmef-criteria</title> <meta name="generator" content="DocBook XSL Stylesheets V1.73.2"> <link rel="start" href="index.html" title="Prelude library Reference Manual"> <link rel="up" href="pt04.html" title="Part IV. Filtering operation on IDMEF messages"> <link rel="prev" href="pt04.html" title="Part IV. Filtering operation on IDMEF messages"> <link rel="next" href="libprelude-idmef-criterion-value.html" title="idmef-criterion-value"> <meta name="generator" content="GTK-Doc V1.9 (XML mode)"> <link rel="stylesheet" href="style.css" type="text/css"> <link rel="part" href="pt01.html" title="Part I. Using libprelude to interoperate with prelude-manager"> <link rel="part" href="pt02.html" title="Part II. Sending events with libprelude"> <link rel="chapter" href="ch01.html" title="The low level IDMEF API"> <link rel="chapter" href="ch02.html" title="The high level IDMEF API"> <link rel="part" href="pt03.html" title="Part III. Reading events from the collector"> <link rel="part" href="pt04.html" title="Part IV. Filtering operation on IDMEF messages"> <link rel="chapter" href="ch03.html" title="Utility functions"> <link rel="chapter" href="ch04.html" title="Others"> </head> <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"> <tr valign="middle"> <td><a accesskey="p" href="pt04.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> <td><a accesskey="u" href="pt04.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td> <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> <th width="100%" align="center">Prelude library Reference Manual</th> <td><a accesskey="n" href="libprelude-idmef-criterion-value.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> </tr> <tr><td colspan="5" class="shortcuts"><nobr><a href="#id349169" class="shortcut">Top</a>  |  <a href="#id436743" class="shortcut">Description</a></nobr></td></tr> </table> <div class="refentry" lang="en"> <a name="libprelude-idmef-criteria"></a><div class="titlepage"></div> <div class="refnamediv"><table width="100%"><tr> <td valign="top"> <h2> <a name="id349169"></a><span class="refentrytitle">idmef-criteria</span> </h2> <p>idmef-criteria</p> </td> <td valign="top" align="right"></td> </tr></table></div> <div class="refsynopsisdiv"> <h2>Synopsis</h2> <pre class="synopsis"> enum <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-operator-t">idmef_criterion_operator_t</a>; typedef <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a>; typedef <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t">idmef_criterion_t</a>; const char* <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-operator-to-string">idmef_criterion_operator_to_string</a> (<a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-operator-t">idmef_criterion_operator_t</a> op); int <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-new">idmef_criterion_new</a> (<a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t">idmef_criterion_t</a> **criterion, <a class="link" href="libprelude-idmef-path.html#idmef-path-t">idmef_path_t</a> *path, <a class="link" href="libprelude-idmef-criterion-value.html#idmef-criterion-value-t">idmef_criterion_value_t</a> *value, <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-operator-t">idmef_criterion_operator_t</a> op); void <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-destroy">idmef_criterion_destroy</a> (<a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t">idmef_criterion_t</a> *criterion); int <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-clone">idmef_criterion_clone</a> (const <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t">idmef_criterion_t</a> *criterion, <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t">idmef_criterion_t</a> **dst); int <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-print">idmef_criterion_print</a> (const <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t">idmef_criterion_t</a> *criterion, <a class="link" href="libprelude-prelude-io.html#prelude-io-t">prelude_io_t</a> *fd); int <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-to-string">idmef_criterion_to_string</a> (const <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t">idmef_criterion_t</a> *criterion, <a class="link" href="libprelude-prelude-string.html#prelude-string-t">prelude_string_t</a> *out); <a class="link" href="libprelude-idmef-path.html#idmef-path-t">idmef_path_t</a>* <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-get-path">idmef_criterion_get_path</a> (const <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t">idmef_criterion_t</a> *criterion); <a class="link" href="libprelude-idmef-criterion-value.html#idmef-criterion-value-t">idmef_criterion_value_t</a>* <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-get-value">idmef_criterion_get_value</a> (const <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t">idmef_criterion_t</a> *criterion); <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-operator-t">idmef_criterion_operator_t</a> <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-get-operator">idmef_criterion_get_operator</a> (const <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t">idmef_criterion_t</a> *criterion); int <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-match">idmef_criterion_match</a> (const <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t">idmef_criterion_t</a> *criterion, <a class="link" href="libprelude-idmef-tree-wrap.html#idmef-message-t">idmef_message_t</a> *message); int <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-new">idmef_criteria_new</a> (<a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> **criteria); void <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-destroy">idmef_criteria_destroy</a> (<a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> *criteria); int <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-clone">idmef_criteria_clone</a> (<a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> *src, <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> **dst); int <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-print">idmef_criteria_print</a> (const <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> *criteria, <a class="link" href="libprelude-prelude-io.html#prelude-io-t">prelude_io_t</a> *fd); int <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-to-string">idmef_criteria_to_string</a> (const <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> *criteria, <a class="link" href="libprelude-prelude-string.html#prelude-string-t">prelude_string_t</a> *out); <a class="link" href="libprelude-prelude-inttypes.html#prelude-bool-t">prelude_bool_t</a> <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-is-criterion">idmef_criteria_is_criterion</a> (const <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> *criteria); <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t">idmef_criterion_t</a>* <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-get-criterion">idmef_criteria_get_criterion</a> (const <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> *criteria); void <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-set-criterion">idmef_criteria_set_criterion</a> (<a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> *criteria, <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t">idmef_criterion_t</a> *criterion); void <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-or-criteria">idmef_criteria_or_criteria</a> (<a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> *criteria, <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> *criteria2); int <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-and-criteria">idmef_criteria_and_criteria</a> (<a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> *criteria, <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> *criteria2); int <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-match">idmef_criteria_match</a> (const <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> *criteria, <a class="link" href="libprelude-idmef-tree-wrap.html#idmef-message-t">idmef_message_t</a> *message); <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a>* <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-get-or">idmef_criteria_get_or</a> (const <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> *criteria); <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a>* <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-get-and">idmef_criteria_get_and</a> (const <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> *criteria); int <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-new-from-string">idmef_criteria_new_from_string</a> (<a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> **criteria, const char *str); </pre> </div> <div class="refsect1" lang="en"> <a name="id436743"></a><h2>Description</h2> <p> </p> </div> <div class="refsect1" lang="en"> <a name="id431236"></a><h2>Details</h2> <div class="refsect2" lang="en"> <a name="id431247"></a><h3> <a name="idmef-criterion-operator-t"></a>enum idmef_criterion_operator_t</h3> <a class="indexterm" name="id431259"></a><pre class="programlisting">typedef enum { IDMEF_CRITERION_OPERATOR_NOT = 0x8000, IDMEF_CRITERION_OPERATOR_NOCASE = 0x4000, IDMEF_CRITERION_OPERATOR_EQUAL = 0x0001, IDMEF_CRITERION_OPERATOR_EQUAL_NOCASE = IDMEF_CRITERION_OPERATOR_EQUAL|IDMEF_CRITERION_OPERATOR_NOCASE, IDMEF_CRITERION_OPERATOR_NOT_EQUAL = IDMEF_CRITERION_OPERATOR_NOT|IDMEF_CRITERION_OPERATOR_EQUAL, IDMEF_CRITERION_OPERATOR_NOT_EQUAL_NOCASE = IDMEF_CRITERION_OPERATOR_NOT_EQUAL|IDMEF_CRITERION_OPERATOR_EQUAL_NOCASE, IDMEF_CRITERION_OPERATOR_LESSER = 0x0002, IDMEF_CRITERION_OPERATOR_LESSER_OR_EQUAL = IDMEF_CRITERION_OPERATOR_LESSER|IDMEF_CRITERION_OPERATOR_EQUAL, IDMEF_CRITERION_OPERATOR_GREATER = 0x0004, IDMEF_CRITERION_OPERATOR_GREATER_OR_EQUAL = IDMEF_CRITERION_OPERATOR_GREATER|IDMEF_CRITERION_OPERATOR_EQUAL, IDMEF_CRITERION_OPERATOR_SUBSTR = 0x0008, IDMEF_CRITERION_OPERATOR_SUBSTR_NOCASE = IDMEF_CRITERION_OPERATOR_SUBSTR|IDMEF_CRITERION_OPERATOR_NOCASE, IDMEF_CRITERION_OPERATOR_NOT_SUBSTR = IDMEF_CRITERION_OPERATOR_NOT|IDMEF_CRITERION_OPERATOR_SUBSTR, IDMEF_CRITERION_OPERATOR_NOT_SUBSTR_NOCASE = IDMEF_CRITERION_OPERATOR_NOT|IDMEF_CRITERION_OPERATOR_SUBSTR_NOCASE, IDMEF_CRITERION_OPERATOR_REGEX = 0x0010, IDMEF_CRITERION_OPERATOR_REGEX_NOCASE = IDMEF_CRITERION_OPERATOR_REGEX|IDMEF_CRITERION_OPERATOR_NOCASE, IDMEF_CRITERION_OPERATOR_NOT_REGEX = IDMEF_CRITERION_OPERATOR_NOT|IDMEF_CRITERION_OPERATOR_REGEX, IDMEF_CRITERION_OPERATOR_NOT_REGEX_NOCASE = IDMEF_CRITERION_OPERATOR_NOT|IDMEF_CRITERION_OPERATOR_REGEX_NOCASE, IDMEF_CRITERION_OPERATOR_NULL = 0x0020, IDMEF_CRITERION_OPERATOR_NOT_NULL = IDMEF_CRITERION_OPERATOR_NULL|IDMEF_CRITERION_OPERATOR_NOT } idmef_criterion_operator_t; </pre> <p> </p> </div> <hr> <div class="refsect2" lang="en"> <a name="id372754"></a><h3> <a name="idmef-criteria-t"></a>idmef_criteria_t</h3> <a class="indexterm" name="id374013"></a><pre class="programlisting">typedef struct idmef_criteria idmef_criteria_t; </pre> <p> </p> </div> <hr> <div class="refsect2" lang="en"> <a name="id431289"></a><h3> <a name="idmef-criterion-t"></a>idmef_criterion_t</h3> <a class="indexterm" name="id431301"></a><pre class="programlisting">typedef struct idmef_criterion idmef_criterion_t; </pre> <p> </p> </div> <hr> <div class="refsect2" lang="en"> <a name="id431317"></a><h3> <a name="idmef-criterion-operator-to-string"></a>idmef_criterion_operator_to_string ()</h3> <a class="indexterm" name="id431329"></a><pre class="programlisting">const char* idmef_criterion_operator_to_string (<a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-operator-t">idmef_criterion_operator_t</a> op);</pre> <p> Transforms <em class="parameter"><code>op</code></em> to string.</p> <p> </p> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>op</code></em> :</span></p></td> <td> <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-operator-t"><span class="type">idmef_criterion_operator_t</span></a> type. </td> </tr> <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> <td> A pointer to an operator string or NULL. </td> </tr> </tbody> </table></div> </div> <hr> <div class="refsect2" lang="en"> <a name="id422608"></a><h3> <a name="idmef-criterion-new"></a>idmef_criterion_new ()</h3> <a class="indexterm" name="id422620"></a><pre class="programlisting">int idmef_criterion_new (<a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t">idmef_criterion_t</a> **criterion, <a class="link" href="libprelude-idmef-path.html#idmef-path-t">idmef_path_t</a> *path, <a class="link" href="libprelude-idmef-criterion-value.html#idmef-criterion-value-t">idmef_criterion_value_t</a> *value, <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-operator-t">idmef_criterion_operator_t</a> op);</pre> <p> Creates a new <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t"><span class="type">idmef_criterion_t</span></a> object and store it in <em class="parameter"><code>criterion</code></em>. Matching this criterion will result in comparing the object value pointed by <em class="parameter"><code>path</code></em> against the provided <em class="parameter"><code>value</code></em>, using <em class="parameter"><code>op</code></em>.</p> <p> </p> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>criterion</code></em> :</span></p></td> <td> Address where to store the created <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t"><span class="type">idmef_criterion_t</span></a> object. </td> </tr> <tr> <td><p><span class="term"><em class="parameter"><code>path</code></em> :</span></p></td> <td> Pointer to an <a class="link" href="libprelude-idmef-path.html#idmef-path-t"><span class="type">idmef_path_t</span></a> object. </td> </tr> <tr> <td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td> <td> Pointer to an <a class="link" href="libprelude-idmef-criterion-value.html#idmef-criterion-value-t"><span class="type">idmef_criterion_value_t</span></a> object. </td> </tr> <tr> <td><p><span class="term"><em class="parameter"><code>op</code></em> :</span></p></td> <td> <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-operator-t"><span class="type">idmef_criterion_operator_t</span></a> to use for matching this criterion. </td> </tr> <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> <td> 0 on success, a negative value if an error occured. </td> </tr> </tbody> </table></div> </div> <hr> <div class="refsect2" lang="en"> <a name="id459907"></a><h3> <a name="idmef-criterion-destroy"></a>idmef_criterion_destroy ()</h3> <a class="indexterm" name="id459919"></a><pre class="programlisting">void idmef_criterion_destroy (<a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t">idmef_criterion_t</a> *criterion);</pre> <p> Destroys <em class="parameter"><code>criterion</code></em> and its content.</p> <p> </p> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> <td><p><span class="term"><em class="parameter"><code>criterion</code></em> :</span></p></td> <td> Pointer to a <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t"><span class="type">idmef_criterion_t</span></a> object. </td> </tr></tbody> </table></div> </div> <hr> <div class="refsect2" lang="en"> <a name="id453342"></a><h3> <a name="idmef-criterion-clone"></a>idmef_criterion_clone ()</h3> <a class="indexterm" name="id453354"></a><pre class="programlisting">int idmef_criterion_clone (const <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t">idmef_criterion_t</a> *criterion, <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t">idmef_criterion_t</a> **dst);</pre> <p> Clones <em class="parameter"><code>criterion</code></em> and stores the cloned criterion within <em class="parameter"><code>dst</code></em>.</p> <p> </p> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>criterion</code></em> :</span></p></td> <td> Pointer to a <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t"><span class="type">idmef_criterion_t</span></a> object to clone. </td> </tr> <tr> <td><p><span class="term"><em class="parameter"><code>dst</code></em> :</span></p></td> <td> Address where to store the cloned <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t"><span class="type">idmef_criterion_t</span></a> object. </td> </tr> <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> <td> 0 on success, a negative value if an error occured. </td> </tr> </tbody> </table></div> </div> <hr> <div class="refsect2" lang="en"> <a name="id452671"></a><h3> <a name="idmef-criterion-print"></a>idmef_criterion_print ()</h3> <a class="indexterm" name="id452683"></a><pre class="programlisting">int idmef_criterion_print (const <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t">idmef_criterion_t</a> *criterion, <a class="link" href="libprelude-prelude-io.html#prelude-io-t">prelude_io_t</a> *fd);</pre> <p> Dump <em class="parameter"><code>criterion</code></em> to <em class="parameter"><code>fd</code></em> in the form of: [path] [operator] [value] </p> <p> Or if there is no value associated with the criterion: [operator] [path]</p> <p> </p> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>criterion</code></em> :</span></p></td> <td> Pointer to a <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t"><span class="type">idmef_criterion_t</span></a> object. </td> </tr> <tr> <td><p><span class="term"><em class="parameter"><code>fd</code></em> :</span></p></td> <td> Pointer to a <a class="link" href="libprelude-prelude-io.html#prelude-io-t"><span class="type">prelude_io_t</span></a> object. </td> </tr> <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> <td> 0 on success, a negative value if an error occured. </td> </tr> </tbody> </table></div> </div> <hr> <div class="refsect2" lang="en"> <a name="id442103"></a><h3> <a name="idmef-criterion-to-string"></a>idmef_criterion_to_string ()</h3> <a class="indexterm" name="id442115"></a><pre class="programlisting">int idmef_criterion_to_string (const <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t">idmef_criterion_t</a> *criterion, <a class="link" href="libprelude-prelude-string.html#prelude-string-t">prelude_string_t</a> *out);</pre> <p> Dump <em class="parameter"><code>criterion</code></em> as a string to the <em class="parameter"><code>out</code></em> buffer in the form of: [path] [operator] [value] </p> <p> Or if there is no value associated with the criterion: [operator] [path]</p> <p> </p> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>criterion</code></em> :</span></p></td> <td> Pointer to a <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t"><span class="type">idmef_criterion_t</span></a> object. </td> </tr> <tr> <td><p><span class="term"><em class="parameter"><code>out</code></em> :</span></p></td> <td> Pointer to a <a class="link" href="libprelude-prelude-string.html#prelude-string-t"><span class="type">prelude_string_t</span></a> object. </td> </tr> <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> <td> 0 on success, a negative value if an error occured. </td> </tr> </tbody> </table></div> </div> <hr> <div class="refsect2" lang="en"> <a name="id452983"></a><h3> <a name="idmef-criterion-get-path"></a>idmef_criterion_get_path ()</h3> <a class="indexterm" name="id452996"></a><pre class="programlisting"><a class="link" href="libprelude-idmef-path.html#idmef-path-t">idmef_path_t</a>* idmef_criterion_get_path (const <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t">idmef_criterion_t</a> *criterion);</pre> <p> Used to access the <a class="link" href="libprelude-idmef-path.html#idmef-path-t"><span class="type">idmef_path_t</span></a> object associated with <em class="parameter"><code>criterion</code></em>.</p> <p> </p> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>criterion</code></em> :</span></p></td> <td> Pointer to a <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t"><span class="type">idmef_criterion_t</span></a> object. </td> </tr> <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> <td> the <a class="link" href="libprelude-idmef-path.html#idmef-path-t"><span class="type">idmef_path_t</span></a> object associated with <em class="parameter"><code>criterion</code></em>. </td> </tr> </tbody> </table></div> </div> <hr> <div class="refsect2" lang="en"> <a name="id453089"></a><h3> <a name="idmef-criterion-get-value"></a>idmef_criterion_get_value ()</h3> <a class="indexterm" name="id474852"></a><pre class="programlisting"><a class="link" href="libprelude-idmef-criterion-value.html#idmef-criterion-value-t">idmef_criterion_value_t</a>* idmef_criterion_get_value (const <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t">idmef_criterion_t</a> *criterion);</pre> <p> Used to access the <a class="link" href="libprelude-idmef-criterion-value.html#idmef-criterion-value-t"><span class="type">idmef_criterion_value_t</span></a> associated with <em class="parameter"><code>criterion</code></em>. There might be no value specifically if the provided <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-operator-t"><span class="type">idmef_criterion_operator_t</span></a> was IDMEF_CRITERION_OPERATOR_NULL or IDMEF_CRITERION_OPERATOR_NOT_NULL.</p> <p> </p> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>criterion</code></em> :</span></p></td> <td> Pointer to a <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t"><span class="type">idmef_criterion_t</span></a> object. </td> </tr> <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> <td> the <a class="link" href="libprelude-idmef-criterion-value.html#idmef-criterion-value-t"><span class="type">idmef_criterion_value_t</span></a> object associated with <em class="parameter"><code>criterion</code></em>. </td> </tr> </tbody> </table></div> </div> <hr> <div class="refsect2" lang="en"> <a name="id474952"></a><h3> <a name="idmef-criterion-get-operator"></a>idmef_criterion_get_operator ()</h3> <a class="indexterm" name="id474964"></a><pre class="programlisting"><a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-operator-t">idmef_criterion_operator_t</a> idmef_criterion_get_operator (const <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t">idmef_criterion_t</a> *criterion);</pre> <p> Used to access the <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-operator-t"><span class="type">idmef_criterion_operator_t</span></a> enumeration associated with <em class="parameter"><code>criterion</code></em>.</p> <p> </p> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>criterion</code></em> :</span></p></td> <td> Pointer to a <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t"><span class="type">idmef_criterion_t</span></a> object. </td> </tr> <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> <td> the <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-operator-t"><span class="type">idmef_criterion_operator_t</span></a> associated with <em class="parameter"><code>criterion</code></em>. </td> </tr> </tbody> </table></div> </div> <hr> <div class="refsect2" lang="en"> <a name="id420163"></a><h3> <a name="idmef-criterion-match"></a>idmef_criterion_match ()</h3> <a class="indexterm" name="id420175"></a><pre class="programlisting">int idmef_criterion_match (const <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t">idmef_criterion_t</a> *criterion, <a class="link" href="libprelude-idmef-tree-wrap.html#idmef-message-t">idmef_message_t</a> *message);</pre> <p> Matches <em class="parameter"><code>message</code></em> against the provided <em class="parameter"><code>criterion</code></em>. This implies retrieving the value associated with <em class="parameter"><code>criterion</code></em> path, and matching it with the <em class="parameter"><code>idmef_criterion_value_t</code></em> object within <em class="parameter"><code>criterion</code></em>.</p> <p> </p> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>criterion</code></em> :</span></p></td> <td> Pointer to a <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t"><span class="type">idmef_criterion_t</span></a> object. </td> </tr> <tr> <td><p><span class="term"><em class="parameter"><code>message</code></em> :</span></p></td> <td> Pointer to a <a class="link" href="libprelude-idmef-tree-wrap.html#idmef-message-t"><span class="type">idmef_message_t</span></a> object to match against <em class="parameter"><code>criterion</code></em>. </td> </tr> <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> <td> 1 for a match, 0 for no match, or a negative value if an error occured. </td> </tr> </tbody> </table></div> </div> <hr> <div class="refsect2" lang="en"> <a name="id476155"></a><h3> <a name="idmef-criteria-new"></a>idmef_criteria_new ()</h3> <a class="indexterm" name="id476167"></a><pre class="programlisting">int idmef_criteria_new (<a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> **criteria);</pre> <p> Creates a new <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t"><span class="type">idmef_criteria_t</span></a> object and store it into <em class="parameter"><code>criteria</code></em>.</p> <p> </p> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>criteria</code></em> :</span></p></td> <td> Address where to store the created <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t"><span class="type">idmef_criteria_t</span></a> object. </td> </tr> <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> <td> 0 on success, a negative value if an error occured. </td> </tr> </tbody> </table></div> </div> <hr> <div class="refsect2" lang="en"> <a name="id446629"></a><h3> <a name="idmef-criteria-destroy"></a>idmef_criteria_destroy ()</h3> <a class="indexterm" name="id446641"></a><pre class="programlisting">void idmef_criteria_destroy (<a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> *criteria);</pre> <p> Destroys <em class="parameter"><code>criteria</code></em> and its content.</p> <p> </p> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody><tr> <td><p><span class="term"><em class="parameter"><code>criteria</code></em> :</span></p></td> <td> Pointer to a <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t"><span class="type">idmef_criteria_t</span></a> object. </td> </tr></tbody> </table></div> </div> <hr> <div class="refsect2" lang="en"> <a name="id446703"></a><h3> <a name="idmef-criteria-clone"></a>idmef_criteria_clone ()</h3> <a class="indexterm" name="id342059"></a><pre class="programlisting">int idmef_criteria_clone (<a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> *src, <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> **dst);</pre> <p> Clones <em class="parameter"><code>src</code></em> and stores the cloned criteria within <em class="parameter"><code>dst</code></em>.</p> <p> </p> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>src</code></em> :</span></p></td> <td> Pointer to a <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t"><span class="type">idmef_criteria_t</span></a> object to clone. </td> </tr> <tr> <td><p><span class="term"><em class="parameter"><code>dst</code></em> :</span></p></td> <td> Address where to store the cloned <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t"><span class="type">idmef_criteria_t</span></a> object. </td> </tr> <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> <td> 0 on success, a negative value if an error occured. </td> </tr> </tbody> </table></div> </div> <hr> <div class="refsect2" lang="en"> <a name="id342164"></a><h3> <a name="idmef-criteria-print"></a>idmef_criteria_print ()</h3> <a class="indexterm" name="id342176"></a><pre class="programlisting">int idmef_criteria_print (const <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> *criteria, <a class="link" href="libprelude-prelude-io.html#prelude-io-t">prelude_io_t</a> *fd);</pre> <p> </p> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>criteria</code></em> :</span></p></td> <td> </td> </tr> <tr> <td><p><span class="term"><em class="parameter"><code>fd</code></em> :</span></p></td> <td> </td> </tr> <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> <td> </td> </tr> </tbody> </table></div> </div> <hr> <div class="refsect2" lang="en"> <a name="id476521"></a><h3> <a name="idmef-criteria-to-string"></a>idmef_criteria_to_string ()</h3> <a class="indexterm" name="id476534"></a><pre class="programlisting">int idmef_criteria_to_string (const <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> *criteria, <a class="link" href="libprelude-prelude-string.html#prelude-string-t">prelude_string_t</a> *out);</pre> <p> </p> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>criteria</code></em> :</span></p></td> <td> </td> </tr> <tr> <td><p><span class="term"><em class="parameter"><code>out</code></em> :</span></p></td> <td> </td> </tr> <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> <td> </td> </tr> </tbody> </table></div> </div> <hr> <div class="refsect2" lang="en"> <a name="id461239"></a><h3> <a name="idmef-criteria-is-criterion"></a>idmef_criteria_is_criterion ()</h3> <a class="indexterm" name="id461251"></a><pre class="programlisting"><a class="link" href="libprelude-prelude-inttypes.html#prelude-bool-t">prelude_bool_t</a> idmef_criteria_is_criterion (const <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> *criteria);</pre> <p> </p> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>criteria</code></em> :</span></p></td> <td> </td> </tr> <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> <td> </td> </tr> </tbody> </table></div> </div> <hr> <div class="refsect2" lang="en"> <a name="id461307"></a><h3> <a name="idmef-criteria-get-criterion"></a>idmef_criteria_get_criterion ()</h3> <a class="indexterm" name="id461319"></a><pre class="programlisting"><a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t">idmef_criterion_t</a>* idmef_criteria_get_criterion (const <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> *criteria);</pre> <p> </p> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>criteria</code></em> :</span></p></td> <td> </td> </tr> <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> <td> </td> </tr> </tbody> </table></div> </div> <hr> <div class="refsect2" lang="en"> <a name="id423180"></a><h3> <a name="idmef-criteria-set-criterion"></a>idmef_criteria_set_criterion ()</h3> <a class="indexterm" name="id423192"></a><pre class="programlisting">void idmef_criteria_set_criterion (<a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> *criteria, <a class="link" href="libprelude-idmef-criteria.html#idmef-criterion-t">idmef_criterion_t</a> *criterion);</pre> <p> </p> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>criteria</code></em> :</span></p></td> <td> </td> </tr> <tr> <td><p><span class="term"><em class="parameter"><code>criterion</code></em> :</span></p></td> <td> </td> </tr> </tbody> </table></div> </div> <hr> <div class="refsect2" lang="en"> <a name="id423258"></a><h3> <a name="idmef-criteria-or-criteria"></a>idmef_criteria_or_criteria ()</h3> <a class="indexterm" name="id423270"></a><pre class="programlisting">void idmef_criteria_or_criteria (<a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> *criteria, <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> *criteria2);</pre> <p> </p> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>criteria</code></em> :</span></p></td> <td> </td> </tr> <tr> <td><p><span class="term"><em class="parameter"><code>criteria2</code></em> :</span></p></td> <td> </td> </tr> </tbody> </table></div> </div> <hr> <div class="refsect2" lang="en"> <a name="id409829"></a><h3> <a name="idmef-criteria-and-criteria"></a>idmef_criteria_and_criteria ()</h3> <a class="indexterm" name="id409841"></a><pre class="programlisting">int idmef_criteria_and_criteria (<a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> *criteria, <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> *criteria2);</pre> <p> </p> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>criteria</code></em> :</span></p></td> <td> </td> </tr> <tr> <td><p><span class="term"><em class="parameter"><code>criteria2</code></em> :</span></p></td> <td> </td> </tr> <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> <td> </td> </tr> </tbody> </table></div> </div> <hr> <div class="refsect2" lang="en"> <a name="id439265"></a><h3> <a name="idmef-criteria-match"></a>idmef_criteria_match ()</h3> <a class="indexterm" name="id439277"></a><pre class="programlisting">int idmef_criteria_match (const <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> *criteria, <a class="link" href="libprelude-idmef-tree-wrap.html#idmef-message-t">idmef_message_t</a> *message);</pre> <p> Matches <em class="parameter"><code>message</code></em> against the provided criteria.</p> <p> </p> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>criteria</code></em> :</span></p></td> <td> Pointer to a <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t"><span class="type">idmef_criteria_t</span></a> object. </td> </tr> <tr> <td><p><span class="term"><em class="parameter"><code>message</code></em> :</span></p></td> <td> Pointer to a <a class="link" href="libprelude-idmef-tree-wrap.html#idmef-message-t"><span class="type">idmef_message_t</span></a> message. </td> </tr> <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> <td> 1 if criteria match, 0 if it did not, a negative value if an error occured. </td> </tr> </tbody> </table></div> </div> <hr> <div class="refsect2" lang="en"> <a name="id439377"></a><h3> <a name="idmef-criteria-get-or"></a>idmef_criteria_get_or ()</h3> <a class="indexterm" name="id458983"></a><pre class="programlisting"><a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a>* idmef_criteria_get_or (const <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> *criteria);</pre> <p> </p> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>criteria</code></em> :</span></p></td> <td> </td> </tr> <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> <td> </td> </tr> </tbody> </table></div> </div> <hr> <div class="refsect2" lang="en"> <a name="id459039"></a><h3> <a name="idmef-criteria-get-and"></a>idmef_criteria_get_and ()</h3> <a class="indexterm" name="id459051"></a><pre class="programlisting"><a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a>* idmef_criteria_get_and (const <a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> *criteria);</pre> <p> </p> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>criteria</code></em> :</span></p></td> <td> </td> </tr> <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> <td> </td> </tr> </tbody> </table></div> </div> <hr> <div class="refsect2" lang="en"> <a name="id459106"></a><h3> <a name="idmef-criteria-new-from-string"></a>idmef_criteria_new_from_string ()</h3> <a class="indexterm" name="id423679"></a><pre class="programlisting">int idmef_criteria_new_from_string (<a class="link" href="libprelude-idmef-criteria.html#idmef-criteria-t">idmef_criteria_t</a> **criteria, const char *str);</pre> <p> </p> <div class="variablelist"><table border="0"> <col align="left" valign="top"> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>criteria</code></em> :</span></p></td> <td> </td> </tr> <tr> <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td> <td> </td> </tr> <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> <td> </td> </tr> </tbody> </table></div> </div> </div> <div class="refsect1" lang="en"> <a name="id423757"></a><div class="refsect2" lang="en"><a name="id423758"></a></div> <hr> <div class="refsect2" lang="en"><a name="id423759"></a></div> </div> </div> </body> </html>