~ubuntu-branches/ubuntu/trusty/libprelude/trusty

« back to all changes in this revision

Viewing changes to docs/api/html/libprelude-prelude-client.html

  • Committer: Bazaar Package Importer
  • Author(s): Pierre Chifflier
  • Date: 2008-04-28 15:23:30 UTC
  • mfrom: (1.1.9 upstream)
  • Revision ID: james.westby@ubuntu.com-20080428152330-su7zlfscjjeh30ig
Tags: 0.9.17.1-1
New upstream release (remove debug output)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
2
<html>
3
3
<head>
4
 
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 
4
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5
5
<title>prelude-client</title>
6
 
<meta name="generator" content="DocBook XSL Stylesheets V1.72.0">
 
6
<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
7
7
<link rel="start" href="index.html" title="Prelude library Reference Manual">
8
 
<link rel="up" href="pt01.html" title="Part&#160;I.&#160;Using libprelude to interoperate with prelude-manager">
 
8
<link rel="up" href="pt01.html" title="Part I. Using libprelude to interoperate with prelude-manager">
9
9
<link rel="prev" href="libprelude-prelude.html" title="prelude">
10
 
<link rel="next" href="pt02.html" title="Part&#160;II.&#160;Sending events with libprelude">
11
 
<meta name="generator" content="GTK-Doc V1.8 (XML mode)">
 
10
<link rel="next" href="pt02.html" title="Part II. Sending events with libprelude">
 
11
<meta name="generator" content="GTK-Doc V1.10 (XML mode)">
12
12
<link rel="stylesheet" href="style.css" type="text/css">
13
 
<link rel="part" href="pt01.html" title="Part&#160;I.&#160;Using libprelude to interoperate with prelude-manager">
14
 
<link rel="part" href="pt02.html" title="Part&#160;II.&#160;Sending events with libprelude">
 
13
<link rel="part" href="pt01.html" title="Part I. Using libprelude to interoperate with prelude-manager">
 
14
<link rel="part" href="pt02.html" title="Part II. Sending events with libprelude">
15
15
<link rel="chapter" href="ch01.html" title="The low level IDMEF API">
16
16
<link rel="chapter" href="ch02.html" title="The high level IDMEF API">
17
 
<link rel="part" href="pt03.html" title="Part&#160;III.&#160;Reading events from the collector">
18
 
<link rel="part" href="pt04.html" title="Part&#160;IV.&#160;Filtering operation on IDMEF messages">
 
17
<link rel="part" href="pt03.html" title="Part III. Reading events from the collector">
 
18
<link rel="part" href="pt04.html" title="Part IV. Filtering operation on IDMEF messages">
19
19
<link rel="chapter" href="ch03.html" title="Utility functions">
20
20
<link rel="chapter" href="ch04.html" title="Others">
21
21
</head>
28
28
<th width="100%" align="center">Prelude library Reference Manual</th>
29
29
<td><a accesskey="n" href="pt02.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
30
30
</tr>
31
 
<tr><td colspan="5" class="shortcuts"><nobr><a href="#id345415" class="shortcut">Top</a>
32
 
                  &#160;|&#160;
33
 
                  <a href="#id339756" class="shortcut">Description</a></nobr></td></tr>
 
31
<tr><td colspan="5" class="shortcuts"><nobr><a href="#libprelude-prelude-client.synopsis" class="shortcut">Top</a>
 
32
                   | 
 
33
                  <a href="#libprelude-prelude-client.description" class="shortcut">Description</a></nobr></td></tr>
34
34
</table>
35
35
<div class="refentry" lang="en">
36
36
<a name="libprelude-prelude-client"></a><div class="titlepage"></div>
37
37
<div class="refnamediv"><table width="100%"><tr>
38
38
<td valign="top">
39
 
<h2>
40
 
<a name="id345415"></a><span class="refentrytitle">prelude-client</span>
41
 
</h2>
42
 
<p>prelude-client &#8212; 
 
39
<h2><span class="refentrytitle"><a name="libprelude-prelude-client.top_of_page"></a>prelude-client</span></h2>
 
40
<p>prelude-client — 
43
41
Creating a Prelude Client</p>
44
42
</td>
45
43
<td valign="top" align="right"></td>
46
44
</tr></table></div>
47
45
<div class="refsynopsisdiv">
48
 
<h2>Synopsis</h2>
 
46
<a name="libprelude-prelude-client.synopsis"></a><h2>Synopsis</h2>
49
47
<pre class="synopsis">
50
 
 
51
 
 
52
 
 
53
 
enum                <a href="libprelude-prelude-client.html#prelude-client-exit-status-t">prelude_client_exit_status_t</a>;
54
 
enum                <a href="libprelude-prelude-client.html#prelude-client-flags-t">prelude_client_flags_t</a>;
55
 
typedef             <a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a>;
56
 
<a href="libprelude-prelude-ident.html#prelude-ident-t">prelude_ident_t</a>*    <a href="libprelude-prelude-client.html#prelude-client-get-unique-ident">prelude_client_get_unique_ident</a>     (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client);
57
 
void                <a href="libprelude-prelude-client.html#prelude-client-set-connection-pool">prelude_client_set_connection_pool</a>  (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client,
58
 
                                                         <a href="libprelude-prelude-connection-pool.html#prelude-connection-pool-t">prelude_connection_pool_t</a> *pool);
59
 
<a href="libprelude-prelude-connection-pool.html#prelude-connection-pool-t">prelude_connection_pool_t</a>* <a href="libprelude-prelude-client.html#prelude-client-get-connection-pool">prelude_client_get_connection_pool</a>
60
 
                                                        (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client);
61
 
int                 <a href="libprelude-prelude-client.html#prelude-client-start">prelude_client_start</a>                (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client);
62
 
int                 <a href="libprelude-prelude-client.html#prelude-client-init">prelude_client_init</a>                 (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client);
63
 
int                 <a href="libprelude-prelude-client.html#prelude-client-new">prelude_client_new</a>                  (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> **client,
 
48
enum                <a class="link" href="libprelude-prelude-client.html#prelude-client-exit-status-t" title="enum prelude_client_exit_status_t">prelude_client_exit_status_t</a>;
 
49
enum                <a class="link" href="libprelude-prelude-client.html#prelude-client-flags-t" title="enum prelude_client_flags_t">prelude_client_flags_t</a>;
 
50
typedef             <a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a>;
 
51
<a class="link" href="libprelude-prelude-ident.html#prelude-ident-t" title="prelude_ident_t">prelude_ident_t</a>*    <a class="link" href="libprelude-prelude-client.html#prelude-client-get-unique-ident" title="prelude_client_get_unique_ident ()">prelude_client_get_unique_ident</a>     (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client);
 
52
void                <a class="link" href="libprelude-prelude-client.html#prelude-client-set-connection-pool" title="prelude_client_set_connection_pool ()">prelude_client_set_connection_pool</a>  (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client,
 
53
                                                         <a class="link" href="libprelude-prelude-connection-pool.html#prelude-connection-pool-t" title="prelude_connection_pool_t">prelude_connection_pool_t</a> *pool);
 
54
<a class="link" href="libprelude-prelude-connection-pool.html#prelude-connection-pool-t" title="prelude_connection_pool_t">prelude_connection_pool_t</a>* <a class="link" href="libprelude-prelude-client.html#prelude-client-get-connection-pool" title="prelude_client_get_connection_pool ()">prelude_client_get_connection_pool</a>
 
55
                                                        (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client);
 
56
int                 <a class="link" href="libprelude-prelude-client.html#prelude-client-start" title="prelude_client_start ()">prelude_client_start</a>                (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client);
 
57
int                 <a class="link" href="libprelude-prelude-client.html#prelude-client-init" title="prelude_client_init ()">prelude_client_init</a>                 (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client);
 
58
int                 <a class="link" href="libprelude-prelude-client.html#prelude-client-new" title="prelude_client_new ()">prelude_client_new</a>                  (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> **client,
64
59
                                                         const char *profile);
65
 
<a href="libprelude-idmef-tree-wrap.html#idmef-analyzer-t">idmef_analyzer_t</a>*   <a href="libprelude-prelude-client.html#prelude-client-get-analyzer">prelude_client_get_analyzer</a>         (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client);
66
 
<a href="libprelude-prelude-client.html#prelude-client-flags-t">prelude_client_flags_t</a> <a href="libprelude-prelude-client.html#prelude-client-get-flags">prelude_client_get_flags</a>         (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client);
67
 
void                <a href="libprelude-prelude-client.html#prelude-client-set-required-permission">prelude_client_set_required_permission</a>
68
 
                                                        (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client,
69
 
                                                         <a href="libprelude-prelude-connection.html#prelude-connection-permission-t">prelude_connection_permission_t</a> permission);
70
 
<a href="libprelude-prelude-connection.html#prelude-connection-permission-t">prelude_connection_permission_t</a> <a href="libprelude-prelude-client.html#prelude-client-get-required-permission">prelude_client_get_required_permission</a>
71
 
                                                        (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client);
72
 
void                <a href="libprelude-prelude-client.html#prelude-client-send-msg">prelude_client_send_msg</a>             (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client,
73
 
                                                         <a href="libprelude-prelude-msg.html#prelude-msg-t">prelude_msg_t</a> *msg);
74
 
void                <a href="libprelude-prelude-client.html#prelude-client-set-heartbeat-cb">prelude_client_set_heartbeat_cb</a>     (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client,
75
 
                                                         void (*cb) (prelude_client_t *client, idmef_message_t *hb));
76
 
void                <a href="libprelude-prelude-client.html#prelude-client-send-idmef">prelude_client_send_idmef</a>           (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client,
77
 
                                                         <a href="libprelude-idmef-tree-wrap.html#idmef-message-t">idmef_message_t</a> *msg);
78
 
void                <a href="libprelude-prelude-client.html#prelude-client-destroy">prelude_client_destroy</a>              (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client,
79
 
                                                         <a href="libprelude-prelude-client.html#prelude-client-exit-status-t">prelude_client_exit_status_t</a> status);
80
 
int                 <a href="libprelude-prelude-client.html#prelude-client-set-flags">prelude_client_set_flags</a>            (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client,
81
 
                                                         <a href="libprelude-prelude-client.html#prelude-client-flags-t">prelude_client_flags_t</a> flags);
82
 
int                 <a href="libprelude-prelude-client.html#prelude-client-set-config-filename">prelude_client_set_config_filename</a>  (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client,
 
60
<a class="link" href="libprelude-idmef-tree-wrap.html#idmef-analyzer-t" title="idmef_analyzer_t">idmef_analyzer_t</a>*   <a class="link" href="libprelude-prelude-client.html#prelude-client-get-analyzer" title="prelude_client_get_analyzer ()">prelude_client_get_analyzer</a>         (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client);
 
61
<a class="link" href="libprelude-prelude-client.html#prelude-client-flags-t" title="enum prelude_client_flags_t">prelude_client_flags_t</a> <a class="link" href="libprelude-prelude-client.html#prelude-client-get-flags" title="prelude_client_get_flags ()">prelude_client_get_flags</a>         (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client);
 
62
void                <a class="link" href="libprelude-prelude-client.html#prelude-client-set-required-permission" title="prelude_client_set_required_permission ()">prelude_client_set_required_permission</a>
 
63
                                                        (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client,
 
64
                                                         <a class="link" href="libprelude-prelude-connection.html#prelude-connection-permission-t" title="enum prelude_connection_permission_t">prelude_connection_permission_t</a> permission);
 
65
<a class="link" href="libprelude-prelude-connection.html#prelude-connection-permission-t" title="enum prelude_connection_permission_t">prelude_connection_permission_t</a> <a class="link" href="libprelude-prelude-client.html#prelude-client-get-required-permission" title="prelude_client_get_required_permission ()">prelude_client_get_required_permission</a>
 
66
                                                        (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client);
 
67
void                <a class="link" href="libprelude-prelude-client.html#prelude-client-send-msg" title="prelude_client_send_msg ()">prelude_client_send_msg</a>             (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client,
 
68
                                                         <a class="link" href="libprelude-prelude-msg.html#prelude-msg-t" title="prelude_msg_t">prelude_msg_t</a> *msg);
 
69
void                <a class="link" href="libprelude-prelude-client.html#prelude-client-set-heartbeat-cb" title="prelude_client_set_heartbeat_cb ()">prelude_client_set_heartbeat_cb</a>     (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client,
 
70
                                                         void (cbprelude_client_t *client, idmef_message_t *hb) ());
 
71
void                <a class="link" href="libprelude-prelude-client.html#prelude-client-send-idmef" title="prelude_client_send_idmef ()">prelude_client_send_idmef</a>           (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client,
 
72
                                                         <a class="link" href="libprelude-idmef-tree-wrap.html#idmef-message-t" title="idmef_message_t">idmef_message_t</a> *msg);
 
73
void                <a class="link" href="libprelude-prelude-client.html#prelude-client-destroy" title="prelude_client_destroy ()">prelude_client_destroy</a>              (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client,
 
74
                                                         <a class="link" href="libprelude-prelude-client.html#prelude-client-exit-status-t" title="enum prelude_client_exit_status_t">prelude_client_exit_status_t</a> status);
 
75
int                 <a class="link" href="libprelude-prelude-client.html#prelude-client-set-flags" title="prelude_client_set_flags ()">prelude_client_set_flags</a>            (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client,
 
76
                                                         <a class="link" href="libprelude-prelude-client.html#prelude-client-flags-t" title="enum prelude_client_flags_t">prelude_client_flags_t</a> flags);
 
77
int                 <a class="link" href="libprelude-prelude-client.html#prelude-client-set-config-filename" title="prelude_client_set_config_filename ()">prelude_client_set_config_filename</a>  (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client,
83
78
                                                         const char *filename);
84
 
const char*         <a href="libprelude-prelude-client.html#prelude-client-get-config-filename">prelude_client_get_config_filename</a>  (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client);
85
 
<a href="libprelude-prelude-inttypes.html#prelude-bool-t">prelude_bool_t</a>      <a href="libprelude-prelude-client.html#prelude-client-is-setup-needed">prelude_client_is_setup_needed</a>      (int error);
86
 
<a href="libprelude-prelude-client-profile.html#prelude-client-profile-t">prelude_client_profile_t</a>* <a href="libprelude-prelude-client.html#prelude-client-get-profile">prelude_client_get_profile</a>    (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client);
87
 
int                 <a href="libprelude-prelude-client.html#prelude-client-new-msgbuf">prelude_client_new_msgbuf</a>           (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client,
88
 
                                                         <a href="libprelude-prelude-msgbuf.html#prelude-msgbuf-t">prelude_msgbuf_t</a> **msgbuf);
89
 
int                 <a href="libprelude-prelude-client.html#prelude-client-handle-msg-default">prelude_client_handle_msg_default</a>   (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client,
90
 
                                                         <a href="libprelude-prelude-msg.html#prelude-msg-t">prelude_msg_t</a> *msg,
91
 
                                                         <a href="libprelude-prelude-msgbuf.html#prelude-msgbuf-t">prelude_msgbuf_t</a> *msgbuf);
92
 
const char*         <a href="libprelude-prelude-client.html#prelude-client-get-setup-error">prelude_client_get_setup_error</a>      (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client);
93
 
void                <a href="libprelude-prelude-client.html#prelude-client-print-setup-error">prelude_client_print_setup_error</a>    (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client);
 
79
const char*         <a class="link" href="libprelude-prelude-client.html#prelude-client-get-config-filename" title="prelude_client_get_config_filename ()">prelude_client_get_config_filename</a>  (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client);
 
80
<a class="link" href="libprelude-prelude-inttypes.html#prelude-bool-t" title="enum prelude_bool_t">prelude_bool_t</a>      <a class="link" href="libprelude-prelude-client.html#prelude-client-is-setup-needed" title="prelude_client_is_setup_needed ()">prelude_client_is_setup_needed</a>      (int error);
 
81
<a class="link" href="libprelude-prelude-client-profile.html#prelude-client-profile-t" title="prelude_client_profile_t">prelude_client_profile_t</a>* <a class="link" href="libprelude-prelude-client.html#prelude-client-get-profile" title="prelude_client_get_profile ()">prelude_client_get_profile</a>    (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client);
 
82
int                 <a class="link" href="libprelude-prelude-client.html#prelude-client-new-msgbuf" title="prelude_client_new_msgbuf ()">prelude_client_new_msgbuf</a>           (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client,
 
83
                                                         <a class="link" href="libprelude-prelude-msgbuf.html#prelude-msgbuf-t" title="prelude_msgbuf_t">prelude_msgbuf_t</a> **msgbuf);
 
84
int                 <a class="link" href="libprelude-prelude-client.html#prelude-client-handle-msg-default" title="prelude_client_handle_msg_default ()">prelude_client_handle_msg_default</a>   (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client,
 
85
                                                         <a class="link" href="libprelude-prelude-msg.html#prelude-msg-t" title="prelude_msg_t">prelude_msg_t</a> *msg,
 
86
                                                         <a class="link" href="libprelude-prelude-msgbuf.html#prelude-msgbuf-t" title="prelude_msgbuf_t">prelude_msgbuf_t</a> *msgbuf);
 
87
const char*         <a class="link" href="libprelude-prelude-client.html#prelude-client-get-setup-error" title="prelude_client_get_setup_error ()">prelude_client_get_setup_error</a>      (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client);
 
88
void                <a class="link" href="libprelude-prelude-client.html#prelude-client-print-setup-error" title="prelude_client_print_setup_error ()">prelude_client_print_setup_error</a>    (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client);
94
89
</pre>
95
90
</div>
96
91
<div class="refsect1" lang="en">
97
 
<a name="id339756"></a><h2>Description</h2>
 
92
<a name="libprelude-prelude-client.description"></a><h2>Description</h2>
98
93
<p>
99
94
In order to send or to read data from a Prelude collector (prelude-manager),
100
 
you will need to create a <a href="libprelude-prelude-client.html#prelude-client-t"><span class="type">prelude_client_t</span></a> object. This object will be necessary 
 
95
you will need to create a <a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t"><span class="type">prelude_client_t</span></a> object. This object will be necessary 
101
96
for most of the work you are going to do with prelude.
102
97
</p>
103
 
<h2>Creating the client</h2>
104
98
<p>
105
99
 
106
100
</p>
118
112
 
119
113
This will create a new client object, whose default profile is my-analyzer.
120
114
This default profile might be overriden using the --prelude --profile profile_name option on your
121
 
command line as parsed by <a href="libprelude-prelude.html#prelude-init"><code class="function">prelude_init()</code></a>.
 
115
command line as parsed by <a class="link" href="libprelude-prelude.html#prelude-init" title="prelude_init ()"><code class="function">prelude_init()</code></a>.
122
116
</p>
123
117
<p>
124
118
Additionally, prelude specific option might be overriden using a Prelude specific configuration file,
125
119
like the template file created within each profile, or a configuration file specified using
126
 
<a href="libprelude-prelude-client.html#prelude-client-set-config-filename"><code class="function">prelude_client_set_config_filename()</code></a> before <a href="libprelude-prelude-client.html#prelude-client-start"><code class="function">prelude_client_start()</code></a> is called.
 
120
<a class="link" href="libprelude-prelude-client.html#prelude-client-set-config-filename" title="prelude_client_set_config_filename ()"><code class="function">prelude_client_set_config_filename()</code></a> before <a class="link" href="libprelude-prelude-client.html#prelude-client-start" title="prelude_client_start ()"><code class="function">prelude_client_start()</code></a> is called.
127
121
</p>
128
122
<p>
129
123
The default required permission for the created client are set to PRELUDE_CONNECTION_PERMISSION_IDMEF_WRITE
130
124
and PRELUDE_CONNECTION_PERMISSION_ADMIN_READ, which mean the client will reject any certificate where 
131
125
permission are set to anything less than this. You can change the default required permission using the 
132
 
<a href="libprelude-prelude-client.html#prelude-client-set-required-permission"><code class="function">prelude_client_set_required_permission()</code></a> function.
 
126
<a class="link" href="libprelude-prelude-client.html#prelude-client-set-required-permission" title="prelude_client_set_required_permission ()"><code class="function">prelude_client_set_required_permission()</code></a> function.
133
127
</p>
134
128
<p>
135
129
As an example, if you want to create a client that will read alert from a Manager, and accept administrative
143
137
</p>
144
138
<p>
145
139
Once the client is created and you have everything setup, you will need to start your client. 
146
 
The <a href="libprelude-prelude-client.html#prelude-client-start"><code class="function">prelude_client_start()</code></a> function is responsible for this, and will trigger the connection to 
 
140
The <a class="link" href="libprelude-prelude-client.html#prelude-client-start" title="prelude_client_start ()"><code class="function">prelude_client_start()</code></a> function is responsible for this, and will trigger the connection to 
147
141
the configured manager, and send the initial client heartbeat.
148
142
</p>
149
143
<pre class="programlisting">
163
157
The prelude library will also register an internal timer in order to send heartbeat message at 
164
158
the defined interval. Timer registered by the library itself or by the program will either be called 
165
159
automatically if the <span class="type">PRELUDE_CLIENT_FLAGS_ASYNC_TIMER</span> flags is set, otherwise, the program is responsible 
166
 
for calling the <a href="libprelude-prelude-timer.html#prelude-timer-wake-up"><code class="function">prelude_timer_wake_up()</code></a> function every second from it's main loop, in order to check the 
 
160
for calling the <a class="link" href="libprelude-prelude-timer.html#prelude-timer-wake-up" title="prelude_timer_wake_up ()"><code class="function">prelude_timer_wake_up()</code></a> function every second from it's main loop, in order to check the 
167
161
registered timer.
168
162
 
169
163
</p>
176
170
<span class="type">PRELUDE_CLIENT_FLAGS_ASYNC_SEND</span> - Used if you want message to be sent asynchronously.</li>
177
171
<li>
178
172
<span class="type">PRELUDE_CLIENT_FLAGS_ASYNC_TIMER</span> - Used if you want timer to be automatically called from the asynchronous thread.</li>
179
 
<li>See <a href="libprelude-prelude-client.html#prelude-client-flags-t"><span class="type">prelude_client_flags_t</span></a> for a list of available flags.</li>
 
173
<li>See <a class="link" href="libprelude-prelude-client.html#prelude-client-flags-t" title="enum prelude_client_flags_t"><span class="type">prelude_client_flags_t</span></a> for a list of available flags.</li>
180
174
</ul></div>
181
175
<p>
182
176
 
191
185
<p>
192
186
 
193
187
</p>
194
 
<h2>Sending IDMEF message</h2>
195
188
<p>
196
 
For documentation on how to create IDMEF message, please see <a href="libprelude-idmef-tree-wrap.html#idmef-message-t"><span class="type">idmef_message_t</span></a>
197
 
or <a href="libprelude-idmef-path.html#idmef-path-t"><span class="type">idmef_path_t</span></a>.
 
189
For documentation on how to create IDMEF message, please see <a class="link" href="libprelude-idmef-tree-wrap.html#idmef-message-t" title="idmef_message_t"><span class="type">idmef_message_t</span></a>
 
190
or <a class="link" href="libprelude-idmef-path.html#idmef-path-t" title="idmef_path_t"><span class="type">idmef_path_t</span></a>.
198
191
</p>
199
192
<p>
200
 
Once you created and IDMEF message, you should use the <a href="libprelude-prelude-client.html#prelude-client-send-idmef"><code class="function">prelude_client_send_idmef()</code></a> function
 
193
Once you created and IDMEF message, you should use the <a class="link" href="libprelude-prelude-client.html#prelude-client-send-idmef" title="prelude_client_send_idmef ()"><code class="function">prelude_client_send_idmef()</code></a> function
201
194
in order to send it to the collector you are connected to. 
202
195
 
203
196
</p>
206
199
</pre></div>
207
200
<p>
208
201
</p>
209
 
<h2>Destroying the client</h2>
210
202
<p>
211
203
In case the analyzer you are developing is not a persistant analyzer (meaning an 
212
 
analyzer that is not supposed to exit), it is important that you call the <a href="libprelude-prelude-client.html#prelude-client-destroy"><code class="function">prelude_client_destroy()</code></a> 
 
204
analyzer that is not supposed to exit), it is important that you call the <a class="link" href="libprelude-prelude-client.html#prelude-client-destroy" title="prelude_client_destroy ()"><code class="function">prelude_client_destroy()</code></a> 
213
205
function prior to exiting. This function have the side effect of sending an heartbeat to the remote 
214
206
manager, as well as an information regarding the analyzer state.
215
207
</p>
237
229
</p>
238
230
</div>
239
231
<div class="refsect1" lang="en">
240
 
<a name="id366037"></a><h2>Details</h2>
 
232
<a name="libprelude-prelude-client.details"></a><h2>Details</h2>
241
233
<div class="refsect2" lang="en">
242
 
<a name="id366048"></a><h3>
243
 
<a name="prelude-client-exit-status-t"></a>enum prelude_client_exit_status_t</h3>
244
 
<a class="indexterm" name="id366060"></a><pre class="programlisting">typedef enum {
 
234
<a name="prelude-client-exit-status-t"></a><h3>enum prelude_client_exit_status_t</h3>
 
235
<pre class="programlisting">typedef enum {
245
236
        PRELUDE_CLIENT_EXIT_STATUS_SUCCESS = 0,
246
237
        PRELUDE_CLIENT_EXIT_STATUS_FAILURE = -1
247
238
} prelude_client_exit_status_t;
252
243
</div>
253
244
<hr>
254
245
<div class="refsect2" lang="en">
255
 
<a name="id366077"></a><h3>
256
 
<a name="prelude-client-flags-t"></a>enum prelude_client_flags_t</h3>
257
 
<a class="indexterm" name="id366089"></a><pre class="programlisting">typedef enum {
 
246
<a name="prelude-client-flags-t"></a><h3>enum prelude_client_flags_t</h3>
 
247
<pre class="programlisting">typedef enum {
258
248
        PRELUDE_CLIENT_FLAGS_ASYNC_SEND  = 0x01,
259
249
        PRELUDE_CLIENT_FLAGS_ASYNC_TIMER = 0x02,
260
250
        PRELUDE_CLIENT_FLAGS_HEARTBEAT   = 0x04,
261
 
        PRELUDE_CLIENT_FLAGS_CONNECT     = 0x08
 
251
        PRELUDE_CLIENT_FLAGS_CONNECT     = 0x08,
 
252
        PRELUDE_CLIENT_FLAGS_AUTOCONFIG  = 0x10
262
253
} prelude_client_flags_t;
263
254
</pre>
264
255
<p>
267
258
</div>
268
259
<hr>
269
260
<div class="refsect2" lang="en">
270
 
<a name="id366106"></a><h3>
271
 
<a name="prelude-client-t"></a>prelude_client_t</h3>
272
 
<a class="indexterm" name="id366118"></a><pre class="programlisting">typedef struct prelude_client prelude_client_t;
 
261
<a name="prelude-client-t"></a><h3>prelude_client_t</h3>
 
262
<pre class="programlisting">typedef struct prelude_client prelude_client_t;
273
263
</pre>
274
264
<p>
275
265
 
277
267
</div>
278
268
<hr>
279
269
<div class="refsect2" lang="en">
280
 
<a name="id366133"></a><h3>
281
 
<a name="prelude-client-get-unique-ident"></a>prelude_client_get_unique_ident ()</h3>
282
 
<a class="indexterm" name="id366146"></a><pre class="programlisting"><a href="libprelude-prelude-ident.html#prelude-ident-t">prelude_ident_t</a>*    prelude_client_get_unique_ident     (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client);</pre>
 
270
<a name="prelude-client-get-unique-ident"></a><h3>prelude_client_get_unique_ident ()</h3>
 
271
<pre class="programlisting"><a class="link" href="libprelude-prelude-ident.html#prelude-ident-t" title="prelude_ident_t">prelude_ident_t</a>*    prelude_client_get_unique_ident     (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client);</pre>
283
272
<p>
284
273
 
285
274
</p>
287
276
<col align="left" valign="top">
288
277
<tbody>
289
278
<tr>
290
 
<td><span class="term"><em class="parameter"><code>client</code></em>&#160;:</span></td>
 
279
<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td>
291
280
<td>
292
281
</td>
293
282
</tr>
294
283
<tr>
295
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
284
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
296
285
<td>
297
286
 
298
287
 
303
292
</div>
304
293
<hr>
305
294
<div class="refsect2" lang="en">
306
 
<a name="id366201"></a><h3>
307
 
<a name="prelude-client-set-connection-pool"></a>prelude_client_set_connection_pool ()</h3>
308
 
<a class="indexterm" name="id366214"></a><pre class="programlisting">void                prelude_client_set_connection_pool  (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client,
309
 
                                                         <a href="libprelude-prelude-connection-pool.html#prelude-connection-pool-t">prelude_connection_pool_t</a> *pool);</pre>
 
295
<a name="prelude-client-set-connection-pool"></a><h3>prelude_client_set_connection_pool ()</h3>
 
296
<pre class="programlisting">void                prelude_client_set_connection_pool  (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client,
 
297
                                                         <a class="link" href="libprelude-prelude-connection-pool.html#prelude-connection-pool-t" title="prelude_connection_pool_t">prelude_connection_pool_t</a> *pool);</pre>
310
298
<p>
311
299
Use this function in order to set your own list of peer that <em class="parameter"><code>client</code></em>
312
300
should send message too. This might be usefull in case you don't want
313
 
this to be automated by <a href="libprelude-prelude-client.html#prelude-client-init"><code class="function">prelude_client_init()</code></a>.</p>
 
301
this to be automated by <a class="link" href="libprelude-prelude-client.html#prelude-client-init" title="prelude_client_init ()"><code class="function">prelude_client_init()</code></a>.</p>
314
302
<p>
315
303
 
316
304
</p>
318
306
<col align="left" valign="top">
319
307
<tbody>
320
308
<tr>
321
 
<td><span class="term"><em class="parameter"><code>client</code></em>&#160;:</span></td>
322
 
<td> pointer to a <a href="libprelude-prelude-client.html#prelude-client-t"><span class="type">prelude_client_t</span></a> object.
 
309
<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td>
 
310
<td> pointer to a <a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t"><span class="type">prelude_client_t</span></a> object.
323
311
</td>
324
312
</tr>
325
313
<tr>
326
 
<td><span class="term"><em class="parameter"><code>pool</code></em>&#160;:</span></td>
 
314
<td><p><span class="term"><em class="parameter"><code>pool</code></em> :</span></p></td>
327
315
<td> pointer to a <span class="type">prelude_client_pool_t</span> object.
328
316
</td>
329
317
</tr>
332
320
</div>
333
321
<hr>
334
322
<div class="refsect2" lang="en">
335
 
<a name="id366314"></a><h3>
336
 
<a name="prelude-client-get-connection-pool"></a>prelude_client_get_connection_pool ()</h3>
337
 
<a class="indexterm" name="id366326"></a><pre class="programlisting"><a href="libprelude-prelude-connection-pool.html#prelude-connection-pool-t">prelude_connection_pool_t</a>* prelude_client_get_connection_pool
338
 
                                                        (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client);</pre>
 
323
<a name="prelude-client-get-connection-pool"></a><h3>prelude_client_get_connection_pool ()</h3>
 
324
<pre class="programlisting"><a class="link" href="libprelude-prelude-connection-pool.html#prelude-connection-pool-t" title="prelude_connection_pool_t">prelude_connection_pool_t</a>* prelude_client_get_connection_pool
 
325
                                                        (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client);</pre>
339
326
<p>
340
 
Return a pointer to the <a href="libprelude-prelude-connection-pool.html#prelude-connection-pool-t"><span class="type">prelude_connection_pool_t</span></a> object used by <em class="parameter"><code>client</code></em>
 
327
Return a pointer to the <a class="link" href="libprelude-prelude-connection-pool.html#prelude-connection-pool-t" title="prelude_connection_pool_t"><span class="type">prelude_connection_pool_t</span></a> object used by <em class="parameter"><code>client</code></em>
341
328
to send messages.</p>
342
329
<p>
343
330
 
346
333
<col align="left" valign="top">
347
334
<tbody>
348
335
<tr>
349
 
<td><span class="term"><em class="parameter"><code>client</code></em>&#160;:</span></td>
350
 
<td> pointer to a <a href="libprelude-prelude-client.html#prelude-client-t"><span class="type">prelude_client_t</span></a> object.
 
336
<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td>
 
337
<td> pointer to a <a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t"><span class="type">prelude_client_t</span></a> object.
351
338
</td>
352
339
</tr>
353
340
<tr>
354
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
355
 
<td> a pointer to a <a href="libprelude-prelude-connection-pool.html#prelude-connection-pool-t"><span class="type">prelude_connection_pool_t</span></a> object.
 
341
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
342
<td> a pointer to a <a class="link" href="libprelude-prelude-connection-pool.html#prelude-connection-pool-t" title="prelude_connection_pool_t"><span class="type">prelude_connection_pool_t</span></a> object.
356
343
</td>
357
344
</tr>
358
345
</tbody>
360
347
</div>
361
348
<hr>
362
349
<div class="refsect2" lang="en">
363
 
<a name="id366415"></a><h3>
364
 
<a name="prelude-client-start"></a>prelude_client_start ()</h3>
365
 
<a class="indexterm" name="id334817"></a><pre class="programlisting">int                 prelude_client_start                (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client);</pre>
 
350
<a name="prelude-client-start"></a><h3>prelude_client_start ()</h3>
 
351
<pre class="programlisting">int                 prelude_client_start                (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client);</pre>
366
352
<p>
367
353
This function start the <em class="parameter"><code>client</code></em> object, triggering
368
354
a connection from the client to it's server if any were
369
355
specified, and sending the initial <em class="parameter"><code>client</code></em> heartbeat.
370
356
</p>
371
357
<p>
372
 
If <em class="parameter"><code>client</code></em> was not initialized, then <a href="libprelude-prelude-client.html#prelude-client-init"><code class="function">prelude_client_init()</code></a>
 
358
If <em class="parameter"><code>client</code></em> was not initialized, then <a class="link" href="libprelude-prelude-client.html#prelude-client-init" title="prelude_client_init ()"><code class="function">prelude_client_init()</code></a>
373
359
will be called and thus this function might fail if the
374
360
client was not registered.</p>
375
361
<p>
379
365
<col align="left" valign="top">
380
366
<tbody>
381
367
<tr>
382
 
<td><span class="term"><em class="parameter"><code>client</code></em>&#160;:</span></td>
 
368
<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td>
383
369
<td> Pointer to a client object to initialize.
384
370
</td>
385
371
</tr>
386
372
<tr>
387
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
373
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
388
374
<td> 0 on success, -1 if an error occured.
389
375
</td>
390
376
</tr>
393
379
</div>
394
380
<hr>
395
381
<div class="refsect2" lang="en">
396
 
<a name="id366484"></a><h3>
397
 
<a name="prelude-client-init"></a>prelude_client_init ()</h3>
398
 
<a class="indexterm" name="id366494"></a><pre class="programlisting">int                 prelude_client_init                 (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client);</pre>
 
382
<a name="prelude-client-init"></a><h3>prelude_client_init ()</h3>
 
383
<pre class="programlisting">int                 prelude_client_init                 (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client);</pre>
399
384
<p>
400
385
This function initialize the <em class="parameter"><code>client</code></em> object, meaning reading generic
401
 
options from the <a href="libprelude-prelude-client.html#prelude-client-new"><code class="function">prelude_client_new()</code></a> provided configuration file
402
 
and the array of arguments specified through <a href="libprelude-prelude.html#prelude-init"><code class="function">prelude_init()</code></a>.
 
386
options from the <a class="link" href="libprelude-prelude-client.html#prelude-client-new" title="prelude_client_new ()"><code class="function">prelude_client_new()</code></a> provided configuration file
 
387
and the array of arguments specified through <a class="link" href="libprelude-prelude.html#prelude-init" title="prelude_init ()"><code class="function">prelude_init()</code></a>.
403
388
</p>
404
389
<p>
405
390
Calling this function is optional and should be done only if you need more
406
 
granularity between <a href="libprelude-prelude-client.html#prelude-client-new"><code class="function">prelude_client_new()</code></a> and <a href="libprelude-prelude-client.html#prelude-client-start"><code class="function">prelude_client_start()</code></a>:
 
391
granularity between <a class="link" href="libprelude-prelude-client.html#prelude-client-new" title="prelude_client_new ()"><code class="function">prelude_client_new()</code></a> and <a class="link" href="libprelude-prelude-client.html#prelude-client-start" title="prelude_client_start ()"><code class="function">prelude_client_start()</code></a>:
407
392
</p>
408
393
<p>
409
 
<a href="libprelude-prelude-client.html#prelude-client-start"><code class="function">prelude_client_start()</code></a> will call <a href="libprelude-prelude-client.html#prelude-client-init"><code class="function">prelude_client_init()</code></a> for you if needed.</p>
 
394
<a class="link" href="libprelude-prelude-client.html#prelude-client-start" title="prelude_client_start ()"><code class="function">prelude_client_start()</code></a> will call <a class="link" href="libprelude-prelude-client.html#prelude-client-init" title="prelude_client_init ()"><code class="function">prelude_client_init()</code></a> for you if needed.</p>
410
395
<p>
411
396
 
412
397
</p>
414
399
<col align="left" valign="top">
415
400
<tbody>
416
401
<tr>
417
 
<td><span class="term"><em class="parameter"><code>client</code></em>&#160;:</span></td>
418
 
<td> Pointer to a <a href="libprelude-prelude-client.html#prelude-client-t"><span class="type">prelude_client_t</span></a> object to initialize.
 
402
<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td>
 
403
<td> Pointer to a <a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t"><span class="type">prelude_client_t</span></a> object to initialize.
419
404
</td>
420
405
</tr>
421
406
<tr>
422
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
407
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
423
408
<td> 0 on success, -1 if an error occured.
424
409
</td>
425
410
</tr>
428
413
</div>
429
414
<hr>
430
415
<div class="refsect2" lang="en">
431
 
<a name="id366616"></a><h3>
432
 
<a name="prelude-client-new"></a>prelude_client_new ()</h3>
433
 
<a class="indexterm" name="id366626"></a><pre class="programlisting">int                 prelude_client_new                  (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> **client,
 
416
<a name="prelude-client-new"></a><h3>prelude_client_new ()</h3>
 
417
<pre class="programlisting">int                 prelude_client_new                  (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> **client,
434
418
                                                         const char *profile);</pre>
435
419
<p>
436
420
This function initialize the <em class="parameter"><code>client</code></em> object.</p>
441
425
<col align="left" valign="top">
442
426
<tbody>
443
427
<tr>
444
 
<td><span class="term"><em class="parameter"><code>client</code></em>&#160;:</span></td>
 
428
<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td>
445
429
<td> Pointer to a client object to initialize.
446
430
</td>
447
431
</tr>
448
432
<tr>
449
 
<td><span class="term"><em class="parameter"><code>profile</code></em>&#160;:</span></td>
 
433
<td><p><span class="term"><em class="parameter"><code>profile</code></em> :</span></p></td>
450
434
<td> Default profile name for this analyzer.
451
435
</td>
452
436
</tr>
453
437
<tr>
454
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
438
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
455
439
<td> 0 on success or a negative value if an error occur.
456
440
</td>
457
441
</tr>
460
444
</div>
461
445
<hr>
462
446
<div class="refsect2" lang="en">
463
 
<a name="id366703"></a><h3>
464
 
<a name="prelude-client-get-analyzer"></a>prelude_client_get_analyzer ()</h3>
465
 
<a class="indexterm" name="id366713"></a><pre class="programlisting"><a href="libprelude-idmef-tree-wrap.html#idmef-analyzer-t">idmef_analyzer_t</a>*   prelude_client_get_analyzer         (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client);</pre>
 
447
<a name="prelude-client-get-analyzer"></a><h3>prelude_client_get_analyzer ()</h3>
 
448
<pre class="programlisting"><a class="link" href="libprelude-idmef-tree-wrap.html#idmef-analyzer-t" title="idmef_analyzer_t">idmef_analyzer_t</a>*   prelude_client_get_analyzer         (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client);</pre>
466
449
<p>
467
 
Provide access to the <a href="libprelude-idmef-tree-wrap.html#idmef-analyzer-t"><span class="type">idmef_analyzer_t</span></a> object associated to <em class="parameter"><code>client</code></em>.
 
450
Provide access to the <a class="link" href="libprelude-idmef-tree-wrap.html#idmef-analyzer-t" title="idmef_analyzer_t"><span class="type">idmef_analyzer_t</span></a> object associated to <em class="parameter"><code>client</code></em>.
468
451
This analyzer object is sent along with every alerts and heartbeats emited
469
 
by this client. The analyzer object is created by <a href="libprelude-prelude-client.html#prelude-client-init"><code class="function">prelude_client_init()</code></a>.</p>
470
 
<p>
471
 
 
472
 
</p>
473
 
<div class="variablelist"><table border="0">
474
 
<col align="left" valign="top">
475
 
<tbody>
476
 
<tr>
477
 
<td><span class="term"><em class="parameter"><code>client</code></em>&#160;:</span></td>
478
 
<td> Pointer to a <a href="libprelude-prelude-client.html#prelude-client-t"><span class="type">prelude_client_t</span></a> object.
479
 
</td>
480
 
</tr>
481
 
<tr>
482
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
483
 
<td> the <a href="libprelude-idmef-tree-wrap.html#idmef-analyzer-t"><span class="type">idmef_analyzer_t</span></a> object associated with <em class="parameter"><code>client</code></em>.
484
 
</td>
485
 
</tr>
486
 
</tbody>
487
 
</table></div>
488
 
</div>
489
 
<hr>
490
 
<div class="refsect2" lang="en">
491
 
<a name="id366804"></a><h3>
492
 
<a name="prelude-client-get-flags"></a>prelude_client_get_flags ()</h3>
493
 
<a class="indexterm" name="id366815"></a><pre class="programlisting"><a href="libprelude-prelude-client.html#prelude-client-flags-t">prelude_client_flags_t</a> prelude_client_get_flags         (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client);</pre>
494
 
<p>
495
 
Get flags set through <a href="libprelude-prelude-client.html#prelude-client-set-flags"><code class="function">prelude_client_set_flags()</code></a>.</p>
496
 
<p>
497
 
 
498
 
</p>
499
 
<div class="variablelist"><table border="0">
500
 
<col align="left" valign="top">
501
 
<tbody>
502
 
<tr>
503
 
<td><span class="term"><em class="parameter"><code>client</code></em>&#160;:</span></td>
504
 
<td> Pointer on a <a href="libprelude-prelude-client.html#prelude-client-t"><span class="type">prelude_client_t</span></a> object.
505
 
</td>
506
 
</tr>
507
 
<tr>
508
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
509
 
<td> an or'ed list of <a href="libprelude-prelude-client.html#prelude-client-flags-t"><span class="type">prelude_client_flags_t</span></a>.
510
 
</td>
511
 
</tr>
512
 
</tbody>
513
 
</table></div>
514
 
</div>
515
 
<hr>
516
 
<div class="refsect2" lang="en">
517
 
<a name="id366888"></a><h3>
518
 
<a name="prelude-client-set-required-permission"></a>prelude_client_set_required_permission ()</h3>
519
 
<a class="indexterm" name="id366899"></a><pre class="programlisting">void                prelude_client_set_required_permission
520
 
                                                        (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client,
521
 
                                                         <a href="libprelude-prelude-connection.html#prelude-connection-permission-t">prelude_connection_permission_t</a> permission);</pre>
 
452
by this client. The analyzer object is created by <a class="link" href="libprelude-prelude-client.html#prelude-client-init" title="prelude_client_init ()"><code class="function">prelude_client_init()</code></a>.</p>
 
453
<p>
 
454
 
 
455
</p>
 
456
<div class="variablelist"><table border="0">
 
457
<col align="left" valign="top">
 
458
<tbody>
 
459
<tr>
 
460
<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td>
 
461
<td> Pointer to a <a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t"><span class="type">prelude_client_t</span></a> object.
 
462
</td>
 
463
</tr>
 
464
<tr>
 
465
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
466
<td> the <a class="link" href="libprelude-idmef-tree-wrap.html#idmef-analyzer-t" title="idmef_analyzer_t"><span class="type">idmef_analyzer_t</span></a> object associated with <em class="parameter"><code>client</code></em>.
 
467
</td>
 
468
</tr>
 
469
</tbody>
 
470
</table></div>
 
471
</div>
 
472
<hr>
 
473
<div class="refsect2" lang="en">
 
474
<a name="prelude-client-get-flags"></a><h3>prelude_client_get_flags ()</h3>
 
475
<pre class="programlisting"><a class="link" href="libprelude-prelude-client.html#prelude-client-flags-t" title="enum prelude_client_flags_t">prelude_client_flags_t</a> prelude_client_get_flags         (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client);</pre>
 
476
<p>
 
477
Get flags set through <a class="link" href="libprelude-prelude-client.html#prelude-client-set-flags" title="prelude_client_set_flags ()"><code class="function">prelude_client_set_flags()</code></a>.</p>
 
478
<p>
 
479
 
 
480
</p>
 
481
<div class="variablelist"><table border="0">
 
482
<col align="left" valign="top">
 
483
<tbody>
 
484
<tr>
 
485
<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td>
 
486
<td> Pointer on a <a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t"><span class="type">prelude_client_t</span></a> object.
 
487
</td>
 
488
</tr>
 
489
<tr>
 
490
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
491
<td> an or'ed list of <a class="link" href="libprelude-prelude-client.html#prelude-client-flags-t" title="enum prelude_client_flags_t"><span class="type">prelude_client_flags_t</span></a>.
 
492
</td>
 
493
</tr>
 
494
</tbody>
 
495
</table></div>
 
496
</div>
 
497
<hr>
 
498
<div class="refsect2" lang="en">
 
499
<a name="prelude-client-set-required-permission"></a><h3>prelude_client_set_required_permission ()</h3>
 
500
<pre class="programlisting">void                prelude_client_set_required_permission
 
501
                                                        (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client,
 
502
                                                         <a class="link" href="libprelude-prelude-connection.html#prelude-connection-permission-t" title="enum prelude_connection_permission_t">prelude_connection_permission_t</a> permission);</pre>
522
503
<p>
523
504
Set the required <em class="parameter"><code>permission</code></em> for <em class="parameter"><code>client</code></em>.
524
505
The default is <span class="type">PRELUDE_CONNECTION_PERMISSION_IDMEF_WRITE</span> | <span class="type">PRELUDE_CONNECTION_PERMISSION_ADMIN_READ</span>.
525
 
Value set through this function should be set before <a href="libprelude-prelude-client.html#prelude-client-start"><code class="function">prelude_client_start()</code></a>.
 
506
Value set through this function should be set before <a class="link" href="libprelude-prelude-client.html#prelude-client-start" title="prelude_client_start ()"><code class="function">prelude_client_start()</code></a>.
526
507
</p>
527
508
<p>
528
509
If the client certificate for connecting to one of the specified manager doesn't have theses permission
534
515
<col align="left" valign="top">
535
516
<tbody>
536
517
<tr>
537
 
<td><span class="term"><em class="parameter"><code>client</code></em>&#160;:</span></td>
538
 
<td> Pointer on a <a href="libprelude-prelude-client.html#prelude-client-t"><span class="type">prelude_client_t</span></a> object.
 
518
<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td>
 
519
<td> Pointer on a <a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t"><span class="type">prelude_client_t</span></a> object.
539
520
</td>
540
521
</tr>
541
522
<tr>
542
 
<td><span class="term"><em class="parameter"><code>permission</code></em>&#160;:</span></td>
 
523
<td><p><span class="term"><em class="parameter"><code>permission</code></em> :</span></p></td>
543
524
<td> Required permission for <em class="parameter"><code>client</code></em>.
544
525
</td>
545
526
</tr>
548
529
</div>
549
530
<hr>
550
531
<div class="refsect2" lang="en">
551
 
<a name="id367009"></a><h3>
552
 
<a name="prelude-client-get-required-permission"></a>prelude_client_get_required_permission ()</h3>
553
 
<a class="indexterm" name="id367019"></a><pre class="programlisting"><a href="libprelude-prelude-connection.html#prelude-connection-permission-t">prelude_connection_permission_t</a> prelude_client_get_required_permission
554
 
                                                        (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client);</pre>
 
532
<a name="prelude-client-get-required-permission"></a><h3>prelude_client_get_required_permission ()</h3>
 
533
<pre class="programlisting"><a class="link" href="libprelude-prelude-connection.html#prelude-connection-permission-t" title="enum prelude_connection_permission_t">prelude_connection_permission_t</a> prelude_client_get_required_permission
 
534
                                                        (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client);</pre>
555
535
<p>
556
536
</p>
557
537
<p>
561
541
<col align="left" valign="top">
562
542
<tbody>
563
543
<tr>
564
 
<td><span class="term"><em class="parameter"><code>client</code></em>&#160;:</span></td>
565
 
<td> Pointer on a <a href="libprelude-prelude-client.html#prelude-client-t"><span class="type">prelude_client_t</span></a> object.
 
544
<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td>
 
545
<td> Pointer on a <a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t"><span class="type">prelude_client_t</span></a> object.
566
546
</td>
567
547
</tr>
568
548
<tr>
569
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
570
 
<td> <em class="parameter"><code>client</code></em> permission as set with <a href="libprelude-prelude-client.html#prelude-client-set-required-permission"><code class="function">prelude_client_set_required_permission()</code></a>
 
549
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
550
<td> <em class="parameter"><code>client</code></em> permission as set with <a class="link" href="libprelude-prelude-client.html#prelude-client-set-required-permission" title="prelude_client_set_required_permission ()"><code class="function">prelude_client_set_required_permission()</code></a>
571
551
</td>
572
552
</tr>
573
553
</tbody>
575
555
</div>
576
556
<hr>
577
557
<div class="refsect2" lang="en">
578
 
<a name="id367092"></a><h3>
579
 
<a name="prelude-client-send-msg"></a>prelude_client_send_msg ()</h3>
580
 
<a class="indexterm" name="id367103"></a><pre class="programlisting">void                prelude_client_send_msg             (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client,
581
 
                                                         <a href="libprelude-prelude-msg.html#prelude-msg-t">prelude_msg_t</a> *msg);</pre>
 
558
<a name="prelude-client-send-msg"></a><h3>prelude_client_send_msg ()</h3>
 
559
<pre class="programlisting">void                prelude_client_send_msg             (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client,
 
560
                                                         <a class="link" href="libprelude-prelude-msg.html#prelude-msg-t" title="prelude_msg_t">prelude_msg_t</a> *msg);</pre>
582
561
<p>
583
562
Send <em class="parameter"><code>msg</code></em> to the peers <em class="parameter"><code>client</code></em> is communicating with.
584
563
</p>
585
564
<p>
586
565
The message will be sent asynchronously if <em class="parameter"><code>PRELUDE_CLIENT_FLAGS_ASYNC_SEND</code></em>
587
 
was set using <a href="libprelude-prelude-client.html#prelude-client-set-flags"><code class="function">prelude_client_set_flags()</code></a> in which case the caller should
588
 
not call <code class="function">prelude_msg_destroy()</code> on <em class="parameter"><code>msg</code></em>.</p>
 
566
was set using <a class="link" href="libprelude-prelude-client.html#prelude-client-set-flags" title="prelude_client_set_flags ()"><code class="function">prelude_client_set_flags()</code></a> in which case the caller should
 
567
not call <a class="link" href="libprelude-prelude-msg.html#prelude-msg-destroy" title="prelude_msg_destroy ()"><code class="function">prelude_msg_destroy()</code></a> on <em class="parameter"><code>msg</code></em>.</p>
589
568
<p>
590
569
 
591
570
</p>
593
572
<col align="left" valign="top">
594
573
<tbody>
595
574
<tr>
596
 
<td><span class="term"><em class="parameter"><code>client</code></em>&#160;:</span></td>
597
 
<td> Pointer to a <a href="libprelude-prelude-client.html#prelude-client-t"><span class="type">prelude_client_t</span></a> object.
 
575
<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td>
 
576
<td> Pointer to a <a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t"><span class="type">prelude_client_t</span></a> object.
598
577
</td>
599
578
</tr>
600
579
<tr>
601
 
<td><span class="term"><em class="parameter"><code>msg</code></em>&#160;:</span></td>
 
580
<td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
602
581
<td> pointer to a message that <em class="parameter"><code>client</code></em> should send.
603
582
</td>
604
583
</tr>
607
586
</div>
608
587
<hr>
609
588
<div class="refsect2" lang="en">
610
 
<a name="id367216"></a><h3>
611
 
<a name="prelude-client-set-heartbeat-cb"></a>prelude_client_set_heartbeat_cb ()</h3>
612
 
<a class="indexterm" name="id367226"></a><pre class="programlisting">void                prelude_client_set_heartbeat_cb     (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client,
613
 
                                                         void (*cb) (prelude_client_t *client, idmef_message_t *hb));</pre>
 
589
<a name="prelude-client-set-heartbeat-cb"></a><h3>prelude_client_set_heartbeat_cb ()</h3>
 
590
<pre class="programlisting">void                prelude_client_set_heartbeat_cb     (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client,
 
591
                                                         void (cbprelude_client_t *client, idmef_message_t *hb) ());</pre>
614
592
<p>
615
593
Use if you want to override the default function used to
616
594
automatically send heartbeat to <em class="parameter"><code>client</code></em> peers.</p>
621
599
<col align="left" valign="top">
622
600
<tbody>
623
601
<tr>
624
 
<td><span class="term"><em class="parameter"><code>client</code></em>&#160;:</span></td>
625
 
<td> pointer to a <a href="libprelude-prelude-client.html#prelude-client-t"><span class="type">prelude_client_t</span></a> object.
 
602
<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td>
 
603
<td> pointer to a <a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t"><span class="type">prelude_client_t</span></a> object.
626
604
</td>
627
605
</tr>
628
606
<tr>
629
 
<td><span class="term"><em class="parameter"><code>cb</code></em>&#160;:</span></td>
 
607
<td><p><span class="term"><em class="parameter"><code>cb</code></em> :</span></p></td>
630
608
<td> pointer to a function handling heartbeat sending.
631
609
</td>
632
610
</tr>
635
613
</div>
636
614
<hr>
637
615
<div class="refsect2" lang="en">
638
 
<a name="id367301"></a><h3>
639
 
<a name="prelude-client-send-idmef"></a>prelude_client_send_idmef ()</h3>
640
 
<a class="indexterm" name="id367311"></a><pre class="programlisting">void                prelude_client_send_idmef           (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client,
641
 
                                                         <a href="libprelude-idmef-tree-wrap.html#idmef-message-t">idmef_message_t</a> *msg);</pre>
 
616
<a name="prelude-client-send-idmef"></a><h3>prelude_client_send_idmef ()</h3>
 
617
<pre class="programlisting">void                prelude_client_send_idmef           (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client,
 
618
                                                         <a class="link" href="libprelude-idmef-tree-wrap.html#idmef-message-t" title="idmef_message_t">idmef_message_t</a> *msg);</pre>
642
619
<p>
643
620
Send <em class="parameter"><code>msg</code></em> to the peers <em class="parameter"><code>client</code></em> is communicating with.
644
621
</p>
645
622
<p>
646
623
The message will be sent asynchronously if <em class="parameter"><code>PRELUDE_CLIENT_FLAGS_ASYNC_SEND</code></em>
647
 
was set using <a href="libprelude-prelude-client.html#prelude-client-set-flags"><code class="function">prelude_client_set_flags()</code></a>.</p>
 
624
was set using <a class="link" href="libprelude-prelude-client.html#prelude-client-set-flags" title="prelude_client_set_flags ()"><code class="function">prelude_client_set_flags()</code></a>.</p>
648
625
<p>
649
626
 
650
627
</p>
652
629
<col align="left" valign="top">
653
630
<tbody>
654
631
<tr>
655
 
<td><span class="term"><em class="parameter"><code>client</code></em>&#160;:</span></td>
656
 
<td> Pointer to a <a href="libprelude-prelude-client.html#prelude-client-t"><span class="type">prelude_client_t</span></a> object.
 
632
<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td>
 
633
<td> Pointer to a <a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t"><span class="type">prelude_client_t</span></a> object.
657
634
</td>
658
635
</tr>
659
636
<tr>
660
 
<td><span class="term"><em class="parameter"><code>msg</code></em>&#160;:</span></td>
 
637
<td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
661
638
<td> pointer to an IDMEF message to be sent to <em class="parameter"><code>client</code></em> peers.
662
639
</td>
663
640
</tr>
666
643
</div>
667
644
<hr>
668
645
<div class="refsect2" lang="en">
669
 
<a name="id367411"></a><h3>
670
 
<a name="prelude-client-destroy"></a>prelude_client_destroy ()</h3>
671
 
<a class="indexterm" name="id367422"></a><pre class="programlisting">void                prelude_client_destroy              (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client,
672
 
                                                         <a href="libprelude-prelude-client.html#prelude-client-exit-status-t">prelude_client_exit_status_t</a> status);</pre>
 
646
<a name="prelude-client-destroy"></a><h3>prelude_client_destroy ()</h3>
 
647
<pre class="programlisting">void                prelude_client_destroy              (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client,
 
648
                                                         <a class="link" href="libprelude-prelude-client.html#prelude-client-exit-status-t" title="enum prelude_client_exit_status_t">prelude_client_exit_status_t</a> status);</pre>
673
649
<p>
674
650
Destroy <em class="parameter"><code>client</code></em>, and send an heartbeat containing the 'exiting'
675
651
status in case <em class="parameter"><code>status</code></em> is PRELUDE_CLIENT_EXIT_STATUS_SUCCESS.
689
665
<col align="left" valign="top">
690
666
<tbody>
691
667
<tr>
692
 
<td><span class="term"><em class="parameter"><code>client</code></em>&#160;:</span></td>
 
668
<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td>
693
669
<td> Pointer on a client object.
694
670
</td>
695
671
</tr>
696
672
<tr>
697
 
<td><span class="term"><em class="parameter"><code>status</code></em>&#160;:</span></td>
 
673
<td><p><span class="term"><em class="parameter"><code>status</code></em> :</span></p></td>
698
674
<td> Exit status for the client.
699
675
</td>
700
676
</tr>
703
679
</div>
704
680
<hr>
705
681
<div class="refsect2" lang="en">
706
 
<a name="id367503"></a><h3>
707
 
<a name="prelude-client-set-flags"></a>prelude_client_set_flags ()</h3>
708
 
<a class="indexterm" name="id367513"></a><pre class="programlisting">int                 prelude_client_set_flags            (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client,
709
 
                                                         <a href="libprelude-prelude-client.html#prelude-client-flags-t">prelude_client_flags_t</a> flags);</pre>
 
682
<a name="prelude-client-set-flags"></a><h3>prelude_client_set_flags ()</h3>
 
683
<pre class="programlisting">int                 prelude_client_set_flags            (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client,
 
684
                                                         <a class="link" href="libprelude-prelude-client.html#prelude-client-flags-t" title="enum prelude_client_flags_t">prelude_client_flags_t</a> flags);</pre>
710
685
<p>
711
686
Set specific flags in the <em class="parameter"><code>client</code></em> structure.
712
687
This function can be called anytime after the creation of the
715
690
<p>
716
691
When settings asynchronous flags such as <span class="type">PRELUDE_CLIENT_FLAGS_ASYNC_SEND</span>
717
692
or <span class="type">PRELUDE_CLIENT_FLAGS_ASYNC_TIMER</span>, be carefull to call
718
 
<a href="libprelude-prelude-client.html#prelude-client-set-flags"><code class="function">prelude_client_set_flags()</code></a> in the same process you want to use the
 
693
<a class="link" href="libprelude-prelude-client.html#prelude-client-set-flags" title="prelude_client_set_flags ()"><code class="function">prelude_client_set_flags()</code></a> in the same process you want to use the
719
694
asynchronous API from. Threads aren't copied accross <code class="function">fork()</code>.</p>
720
695
<p>
721
696
 
724
699
<col align="left" valign="top">
725
700
<tbody>
726
701
<tr>
727
 
<td><span class="term"><em class="parameter"><code>client</code></em>&#160;:</span></td>
728
 
<td> Pointer on a <a href="libprelude-prelude-client.html#prelude-client-t"><span class="type">prelude_client_t</span></a> object.
 
702
<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td>
 
703
<td> Pointer on a <a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t"><span class="type">prelude_client_t</span></a> object.
729
704
</td>
730
705
</tr>
731
706
<tr>
732
 
<td><span class="term"><em class="parameter"><code>flags</code></em>&#160;:</span></td>
 
707
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
733
708
<td> Or'd list of flags used by <em class="parameter"><code>client</code></em>.
734
709
</td>
735
710
</tr>
736
711
<tr>
737
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
712
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
738
713
<td> 0 if setting <em class="parameter"><code>flags</code></em> succeed, -1 otherwise.
739
714
</td>
740
715
</tr>
743
718
</div>
744
719
<hr>
745
720
<div class="refsect2" lang="en">
746
 
<a name="id367645"></a><h3>
747
 
<a name="prelude-client-set-config-filename"></a>prelude_client_set_config_filename ()</h3>
748
 
<a class="indexterm" name="id367656"></a><pre class="programlisting">int                 prelude_client_set_config_filename  (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client,
 
721
<a name="prelude-client-set-config-filename"></a><h3>prelude_client_set_config_filename ()</h3>
 
722
<pre class="programlisting">int                 prelude_client_set_config_filename  (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client,
749
723
                                                         const char *filename);</pre>
750
724
<p>
751
725
The default for a client is to use a template configuration file (idmef-client.conf).
759
733
<col align="left" valign="top">
760
734
<tbody>
761
735
<tr>
762
 
<td><span class="term"><em class="parameter"><code>client</code></em>&#160;:</span></td>
763
 
<td> pointer on a <a href="libprelude-prelude-client.html#prelude-client-t"><span class="type">prelude_client_t</span></a> object.
 
736
<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td>
 
737
<td> pointer on a <a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t"><span class="type">prelude_client_t</span></a> object.
764
738
</td>
765
739
</tr>
766
740
<tr>
767
 
<td><span class="term"><em class="parameter"><code>filename</code></em>&#160;:</span></td>
 
741
<td><p><span class="term"><em class="parameter"><code>filename</code></em> :</span></p></td>
768
742
<td> Configuration file to use for this client.
769
743
</td>
770
744
</tr>
771
745
<tr>
772
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
746
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
773
747
<td> 0 on success, -1 if an error occured.
774
748
</td>
775
749
</tr>
778
752
</div>
779
753
<hr>
780
754
<div class="refsect2" lang="en">
781
 
<a name="id367741"></a><h3>
782
 
<a name="prelude-client-get-config-filename"></a>prelude_client_get_config_filename ()</h3>
783
 
<a class="indexterm" name="id367751"></a><pre class="programlisting">const char*         prelude_client_get_config_filename  (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client);</pre>
 
755
<a name="prelude-client-get-config-filename"></a><h3>prelude_client_get_config_filename ()</h3>
 
756
<pre class="programlisting">const char*         prelude_client_get_config_filename  (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client);</pre>
784
757
<p>
785
758
Return the filename where <em class="parameter"><code>client</code></em> configuration is stored.
786
 
This filename is originally set by the <a href="libprelude-prelude-client.html#prelude-client-new"><code class="function">prelude_client_new()</code></a> function.</p>
 
759
This filename is originally set by the <a class="link" href="libprelude-prelude-client.html#prelude-client-new" title="prelude_client_new ()"><code class="function">prelude_client_new()</code></a> function.</p>
787
760
<p>
788
761
 
789
762
</p>
791
764
<col align="left" valign="top">
792
765
<tbody>
793
766
<tr>
794
 
<td><span class="term"><em class="parameter"><code>client</code></em>&#160;:</span></td>
795
 
<td> pointer on a <a href="libprelude-prelude-client.html#prelude-client-t"><span class="type">prelude_client_t</span></a> object.
 
767
<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td>
 
768
<td> pointer on a <a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t"><span class="type">prelude_client_t</span></a> object.
796
769
</td>
797
770
</tr>
798
771
<tr>
799
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
772
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
800
773
<td> a pointer to <em class="parameter"><code>client</code></em> configuration filename.
801
774
</td>
802
775
</tr>
805
778
</div>
806
779
<hr>
807
780
<div class="refsect2" lang="en">
808
 
<a name="id367831"></a><h3>
809
 
<a name="prelude-client-is-setup-needed"></a>prelude_client_is_setup_needed ()</h3>
810
 
<a class="indexterm" name="id367843"></a><pre class="programlisting"><a href="libprelude-prelude-inttypes.html#prelude-bool-t">prelude_bool_t</a>      prelude_client_is_setup_needed      (int error);</pre>
 
781
<a name="prelude-client-is-setup-needed"></a><h3>prelude_client_is_setup_needed ()</h3>
 
782
<pre class="programlisting"><a class="link" href="libprelude-prelude-inttypes.html#prelude-bool-t" title="enum prelude_bool_t">prelude_bool_t</a>      prelude_client_is_setup_needed      (int error);</pre>
811
783
<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
812
784
<h3 class="title">Warning</h3>
813
785
<p><code class="literal">prelude_client_is_setup_needed</code> is deprecated and should not be used in newly-written code. use standard error API.</p>
814
786
</div>
815
787
<p>
816
788
This function should be called as a result of an error by
817
 
the <a href="libprelude-prelude-client.html#prelude-client-start"><code class="function">prelude_client_start()</code></a> function, to know if the analyzer
818
 
need to be registered.
819
 
</p>
820
 
<p>
821
 
Returns:</p>
 
789
the <a class="link" href="libprelude-prelude-client.html#prelude-client-start" title="prelude_client_start ()"><code class="function">prelude_client_start()</code></a> function, to know if the analyzer
 
790
need to be registered.</p>
822
791
<p>
823
792
 
824
793
</p>
826
795
<col align="left" valign="top">
827
796
<tbody>
828
797
<tr>
829
 
<td><span class="term"><em class="parameter"><code>error</code></em>&#160;:</span></td>
830
 
<td> Error returned by <a href="libprelude-prelude-client.html#prelude-client-start"><code class="function">prelude_client_start()</code></a>.
 
798
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
 
799
<td> Error returned by <a class="link" href="libprelude-prelude-client.html#prelude-client-start" title="prelude_client_start ()"><code class="function">prelude_client_start()</code></a>.
831
800
</td>
832
801
</tr>
833
802
<tr>
834
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
803
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
835
804
<td> TRUE if setup is needed, FALSE otherwise.
836
805
</td>
837
806
</tr>
840
809
</div>
841
810
<hr>
842
811
<div class="refsect2" lang="en">
843
 
<a name="id367928"></a><h3>
844
 
<a name="prelude-client-get-profile"></a>prelude_client_get_profile ()</h3>
845
 
<a class="indexterm" name="id367938"></a><pre class="programlisting"><a href="libprelude-prelude-client-profile.html#prelude-client-profile-t">prelude_client_profile_t</a>* prelude_client_get_profile    (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client);</pre>
846
 
<p>
847
 
 
848
 
</p>
849
 
<div class="variablelist"><table border="0">
850
 
<col align="left" valign="top">
851
 
<tbody>
852
 
<tr>
853
 
<td><span class="term"><em class="parameter"><code>client</code></em>&#160;:</span></td>
854
 
<td>
855
 
</td>
856
 
</tr>
857
 
<tr>
858
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
859
 
<td>
860
 
 
861
 
 
862
 
</td>
863
 
</tr>
864
 
</tbody>
865
 
</table></div>
866
 
</div>
867
 
<hr>
868
 
<div class="refsect2" lang="en">
869
 
<a name="id367988"></a><h3>
870
 
<a name="prelude-client-new-msgbuf"></a>prelude_client_new_msgbuf ()</h3>
871
 
<a class="indexterm" name="id367998"></a><pre class="programlisting">int                 prelude_client_new_msgbuf           (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client,
872
 
                                                         <a href="libprelude-prelude-msgbuf.html#prelude-msgbuf-t">prelude_msgbuf_t</a> **msgbuf);</pre>
873
 
<p>
874
 
 
875
 
</p>
876
 
<div class="variablelist"><table border="0">
877
 
<col align="left" valign="top">
878
 
<tbody>
879
 
<tr>
880
 
<td><span class="term"><em class="parameter"><code>client</code></em>&#160;:</span></td>
881
 
<td>
882
 
</td>
883
 
</tr>
884
 
<tr>
885
 
<td><span class="term"><em class="parameter"><code>msgbuf</code></em>&#160;:</span></td>
886
 
<td>
887
 
</td>
888
 
</tr>
889
 
<tr>
890
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
891
 
<td>
892
 
 
893
 
 
894
 
</td>
895
 
</tr>
896
 
</tbody>
897
 
</table></div>
898
 
</div>
899
 
<hr>
900
 
<div class="refsect2" lang="en">
901
 
<a name="id368066"></a><h3>
902
 
<a name="prelude-client-handle-msg-default"></a>prelude_client_handle_msg_default ()</h3>
903
 
<a class="indexterm" name="id368076"></a><pre class="programlisting">int                 prelude_client_handle_msg_default   (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client,
904
 
                                                         <a href="libprelude-prelude-msg.html#prelude-msg-t">prelude_msg_t</a> *msg,
905
 
                                                         <a href="libprelude-prelude-msgbuf.html#prelude-msgbuf-t">prelude_msgbuf_t</a> *msgbuf);</pre>
906
 
<p>
907
 
 
908
 
</p>
909
 
<div class="variablelist"><table border="0">
910
 
<col align="left" valign="top">
911
 
<tbody>
912
 
<tr>
913
 
<td><span class="term"><em class="parameter"><code>client</code></em>&#160;:</span></td>
914
 
<td>
915
 
</td>
916
 
</tr>
917
 
<tr>
918
 
<td><span class="term"><em class="parameter"><code>msg</code></em>&#160;:</span></td>
919
 
<td>
920
 
</td>
921
 
</tr>
922
 
<tr>
923
 
<td><span class="term"><em class="parameter"><code>msgbuf</code></em>&#160;:</span></td>
924
 
<td>
925
 
</td>
926
 
</tr>
927
 
<tr>
928
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
929
 
<td>
930
 
 
931
 
 
932
 
</td>
933
 
</tr>
934
 
</tbody>
935
 
</table></div>
936
 
</div>
937
 
<hr>
938
 
<div class="refsect2" lang="en">
939
 
<a name="id368163"></a><h3>
940
 
<a name="prelude-client-get-setup-error"></a>prelude_client_get_setup_error ()</h3>
941
 
<a class="indexterm" name="id368173"></a><pre class="programlisting">const char*         prelude_client_get_setup_error      (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client);</pre>
942
 
<p>
943
 
 
944
 
</p>
945
 
<div class="variablelist"><table border="0">
946
 
<col align="left" valign="top">
947
 
<tbody>
948
 
<tr>
949
 
<td><span class="term"><em class="parameter"><code>client</code></em>&#160;:</span></td>
950
 
<td>
951
 
</td>
952
 
</tr>
953
 
<tr>
954
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
955
 
<td>
956
 
 
957
 
 
958
 
</td>
959
 
</tr>
960
 
</tbody>
961
 
</table></div>
962
 
</div>
963
 
<hr>
964
 
<div class="refsect2" lang="en">
965
 
<a name="id368223"></a><h3>
966
 
<a name="prelude-client-print-setup-error"></a>prelude_client_print_setup_error ()</h3>
967
 
<a class="indexterm" name="id368234"></a><pre class="programlisting">void                prelude_client_print_setup_error    (<a href="libprelude-prelude-client.html#prelude-client-t">prelude_client_t</a> *client);</pre>
 
812
<a name="prelude-client-get-profile"></a><h3>prelude_client_get_profile ()</h3>
 
813
<pre class="programlisting"><a class="link" href="libprelude-prelude-client-profile.html#prelude-client-profile-t" title="prelude_client_profile_t">prelude_client_profile_t</a>* prelude_client_get_profile    (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client);</pre>
 
814
<p>
 
815
 
 
816
</p>
 
817
<div class="variablelist"><table border="0">
 
818
<col align="left" valign="top">
 
819
<tbody>
 
820
<tr>
 
821
<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td>
 
822
<td>
 
823
</td>
 
824
</tr>
 
825
<tr>
 
826
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
827
<td>
 
828
 
 
829
 
 
830
</td>
 
831
</tr>
 
832
</tbody>
 
833
</table></div>
 
834
</div>
 
835
<hr>
 
836
<div class="refsect2" lang="en">
 
837
<a name="prelude-client-new-msgbuf"></a><h3>prelude_client_new_msgbuf ()</h3>
 
838
<pre class="programlisting">int                 prelude_client_new_msgbuf           (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client,
 
839
                                                         <a class="link" href="libprelude-prelude-msgbuf.html#prelude-msgbuf-t" title="prelude_msgbuf_t">prelude_msgbuf_t</a> **msgbuf);</pre>
 
840
<p>
 
841
 
 
842
</p>
 
843
<div class="variablelist"><table border="0">
 
844
<col align="left" valign="top">
 
845
<tbody>
 
846
<tr>
 
847
<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td>
 
848
<td>
 
849
</td>
 
850
</tr>
 
851
<tr>
 
852
<td><p><span class="term"><em class="parameter"><code>msgbuf</code></em> :</span></p></td>
 
853
<td>
 
854
</td>
 
855
</tr>
 
856
<tr>
 
857
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
858
<td>
 
859
 
 
860
 
 
861
</td>
 
862
</tr>
 
863
</tbody>
 
864
</table></div>
 
865
</div>
 
866
<hr>
 
867
<div class="refsect2" lang="en">
 
868
<a name="prelude-client-handle-msg-default"></a><h3>prelude_client_handle_msg_default ()</h3>
 
869
<pre class="programlisting">int                 prelude_client_handle_msg_default   (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client,
 
870
                                                         <a class="link" href="libprelude-prelude-msg.html#prelude-msg-t" title="prelude_msg_t">prelude_msg_t</a> *msg,
 
871
                                                         <a class="link" href="libprelude-prelude-msgbuf.html#prelude-msgbuf-t" title="prelude_msgbuf_t">prelude_msgbuf_t</a> *msgbuf);</pre>
 
872
<p>
 
873
 
 
874
</p>
 
875
<div class="variablelist"><table border="0">
 
876
<col align="left" valign="top">
 
877
<tbody>
 
878
<tr>
 
879
<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td>
 
880
<td>
 
881
</td>
 
882
</tr>
 
883
<tr>
 
884
<td><p><span class="term"><em class="parameter"><code>msg</code></em> :</span></p></td>
 
885
<td>
 
886
</td>
 
887
</tr>
 
888
<tr>
 
889
<td><p><span class="term"><em class="parameter"><code>msgbuf</code></em> :</span></p></td>
 
890
<td>
 
891
</td>
 
892
</tr>
 
893
<tr>
 
894
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
895
<td>
 
896
 
 
897
 
 
898
</td>
 
899
</tr>
 
900
</tbody>
 
901
</table></div>
 
902
</div>
 
903
<hr>
 
904
<div class="refsect2" lang="en">
 
905
<a name="prelude-client-get-setup-error"></a><h3>prelude_client_get_setup_error ()</h3>
 
906
<pre class="programlisting">const char*         prelude_client_get_setup_error      (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client);</pre>
 
907
<p>
 
908
 
 
909
</p>
 
910
<div class="variablelist"><table border="0">
 
911
<col align="left" valign="top">
 
912
<tbody>
 
913
<tr>
 
914
<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td>
 
915
<td>
 
916
</td>
 
917
</tr>
 
918
<tr>
 
919
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
920
<td>
 
921
 
 
922
 
 
923
</td>
 
924
</tr>
 
925
</tbody>
 
926
</table></div>
 
927
</div>
 
928
<hr>
 
929
<div class="refsect2" lang="en">
 
930
<a name="prelude-client-print-setup-error"></a><h3>prelude_client_print_setup_error ()</h3>
 
931
<pre class="programlisting">void                prelude_client_print_setup_error    (<a class="link" href="libprelude-prelude-client.html#prelude-client-t" title="prelude_client_t">prelude_client_t</a> *client);</pre>
968
932
<p>
969
933
 
970
934
</p>
971
935
<div class="variablelist"><table border="0">
972
936
<col align="left" valign="top">
973
937
<tbody><tr>
974
 
<td><span class="term"><em class="parameter"><code>client</code></em>&#160;:</span></td>
 
938
<td><p><span class="term"><em class="parameter"><code>client</code></em> :</span></p></td>
975
939
<td>
976
940
 
977
941
 
981
945
</div>
982
946
</div>
983
947
<div class="refsect1" lang="en">
984
 
<a name="id368275"></a><h2>See Also</h2>
 
948
<a name="libprelude-prelude-client.see-also"></a><h2>See Also</h2>
985
949
<p>
986
950
 
987
 
<a href="libprelude-idmef-tree-wrap.html#idmef-message-t"><span class="type">idmef_message_t</span></a>
988
 
<a href="libprelude-idmef-path.html#idmef-path-t"><span class="type">idmef_path_t</span></a>
 
951
<a class="link" href="libprelude-idmef-tree-wrap.html#idmef-message-t" title="idmef_message_t"><span class="type">idmef_message_t</span></a>
 
952
<a class="link" href="libprelude-idmef-path.html#idmef-path-t" title="idmef_path_t"><span class="type">idmef_path_t</span></a>
989
953
 
990
954
</p>
991
955
</div>
992
956
</div>
 
957
<div class="footer">
 
958
<hr>
 
959
          Generated by GTK-Doc V1.10</div>
993
960
</body>
994
961
</html>