Sophie

Sophie

distrib > Mandriva > 2008.1 > x86_64 > media > main-release > by-pkgid > 7c006d54dcff4666525b05af2c364234 > files > 63

lib64prelude-devel-0.9.16.2-2mdv2008.1.x86_64.rpm

<!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&#160;IV.&#160;Filtering operation on IDMEF messages">
<link rel="prev" href="pt04.html" title="Part&#160;IV.&#160;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&#160;I.&#160;Using libprelude to interoperate with prelude-manager">
<link rel="part" href="pt02.html" title="Part&#160;II.&#160;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&#160;III.&#160;Reading events from the collector">
<link rel="part" href="pt04.html" title="Part&#160;IV.&#160;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>
                  &#160;|&#160;
                  <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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</span></p></td>
<td>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>fd</code></em>&#160;:</span></p></td>
<td>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</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>&#160;:</span></p></td>
<td>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>out</code></em>&#160;:</span></p></td>
<td>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</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>&#160;:</span></p></td>
<td>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</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>&#160;:</span></p></td>
<td>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</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>&#160;:</span></p></td>
<td>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>criterion</code></em>&#160;:</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>&#160;:</span></p></td>
<td>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>criteria2</code></em>&#160;:</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>&#160;:</span></p></td>
<td>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>criteria2</code></em>&#160;:</span></p></td>
<td>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</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>&#160;:</span></p></td>
<td>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</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>&#160;:</span></p></td>
<td>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</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>&#160;:</span></p></td>
<td>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>str</code></em>&#160;:</span></p></td>
<td>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</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>