|  |  |  | Prelude library Reference Manual |  | 
|---|---|---|---|---|
| Top | Description | ||||
enum prelude_connection_permission_t; enum prelude_connection_state_t; typedef prelude_connection_t; void prelude_connection_destroy (prelude_connection_t *conn); int prelude_connection_send (prelude_connection_t *cnx, prelude_msg_t *msg); int prelude_connection_recv (prelude_connection_t *cnx, prelude_msg_t **outmsg); int prelude_connection_recv_idmef (prelude_connection_t *con, idmef_message_t **idmef); int prelude_connection_connect (prelude_connection_t *cnx, prelude_client_profile_t *profile, prelude_connection_permission_t permission); ssize_t prelude_connection_forward (prelude_connection_t *cnx, prelude_io_t *src, size_t count); const char * prelude_connection_get_local_addr (prelude_connection_t *cnx); unsigned int prelude_connection_get_local_port (prelude_connection_t *cnx); const char * prelude_connection_get_peer_addr (prelude_connection_t *cnx); unsigned int prelude_connection_get_peer_port (prelude_connection_t *cnx); prelude_bool_t prelude_connection_is_alive (prelude_connection_t *cnx); prelude_io_t * prelude_connection_get_fd (prelude_connection_t *cnx); int prelude_connection_close (prelude_connection_t *cnx); void prelude_connection_set_fd_ref (prelude_connection_t *cnx, prelude_io_t *fd); void prelude_connection_set_fd_nodup (prelude_connection_t *cnx, prelude_io_t *fd); void prelude_connection_set_state (prelude_connection_t *cnx, prelude_connection_state_t state); prelude_connection_state_t prelude_connection_get_state (prelude_connection_t *cnx); void prelude_connection_set_data (prelude_connection_t *cnx, void *data); void * prelude_connection_get_data (prelude_connection_t *cnx); const char * prelude_connection_get_default_socket_filename (void); prelude_connection_permission_t prelude_connection_get_permission (prelude_connection_t *conn); uint64_t prelude_connection_get_peer_analyzerid (prelude_connection_t *cnx); void prelude_connection_set_peer_analyzerid (prelude_connection_t *cnx, uint64_t analyzerid); int prelude_connection_new (prelude_connection_t **ret, const char *addr); prelude_connection_t * prelude_connection_ref (prelude_connection_t *conn); int prelude_connection_new_msgbuf (prelude_connection_t *connection, prelude_msgbuf_t **msgbuf); int prelude_connection_permission_to_string (prelude_connection_permission_t perm, prelude_string_t *out); int prelude_connection_permission_new_from_string (prelude_connection_permission_t *out, const char *buf);
typedef enum {
        PRELUDE_CONNECTION_PERMISSION_IDMEF_READ      = 0x01, /* client might read received IDMEF message */
        PRELUDE_CONNECTION_PERMISSION_ADMIN_READ      = 0x02, /* client might read received ADMIN message */
        PRELUDE_CONNECTION_PERMISSION_IDMEF_WRITE     = 0x04, /* client might send IDMEF message          */
        PRELUDE_CONNECTION_PERMISSION_ADMIN_WRITE     = 0x08  /* client might issue OPTION request        */
} prelude_connection_permission_t;
typedef enum {
        PRELUDE_CONNECTION_STATE_ESTABLISHED     = 0x01
} prelude_connection_state_t;
void prelude_connection_destroy (prelude_connection_t *conn);
Destroy the connection referenced by conn.
In case the connection is still alive, it is closed in a blocking
manner. Use prelude_connection_close() if you want to close the
connection in a non blocking manner prior prelude_connection_destroy().
| 
 | Pointer to a prelude_connection_t object. | 
int prelude_connection_send (prelude_connection_t *cnx, prelude_msg_t *msg);
| 
 | |
| 
 | |
| Returns : | 
int prelude_connection_recv (prelude_connection_t *cnx, prelude_msg_t **outmsg);
| 
 | |
| 
 | |
| Returns : | 
int prelude_connection_recv_idmef (prelude_connection_t *con, idmef_message_t **idmef);
| 
 | |
| 
 | |
| Returns : | 
int prelude_connection_connect (prelude_connection_t *cnx, prelude_client_profile_t *profile, prelude_connection_permission_t permission);
| 
 | |
| 
 | |
| 
 | |
| Returns : | 
ssize_t prelude_connection_forward (prelude_connection_t *cnx, prelude_io_t *src, size_t count);
| 
 | |
| 
 | |
| 
 | |
| Returns : | 
const char * prelude_connection_get_local_addr (prelude_connection_t *cnx);
| 
 | Pointer to a prelude_connection_t object. | 
| Returns : | the local address used to connect. | 
unsigned int prelude_connection_get_local_port (prelude_connection_t *cnx);
| 
 | Pointer to a prelude_connection_t object. | 
| Returns : | the local port used to connect. | 
const char * prelude_connection_get_peer_addr (prelude_connection_t *cnx);
| 
 | |
| Returns : | 
unsigned int prelude_connection_get_peer_port (prelude_connection_t *cnx);
| 
 | |
| Returns : | 
prelude_bool_t prelude_connection_is_alive (prelude_connection_t *cnx);
| 
 | Pointer to a prelude_connection_t object. | 
| Returns : | 0 if the connection associated with cnxis alive, -1 otherwise. | 
prelude_io_t * prelude_connection_get_fd (prelude_connection_t *cnx);
| 
 | Pointer to a prelude_connection_t object. | 
| Returns : | A pointer to the prelude_io_t object used for communicating with the peer. | 
int prelude_connection_close (prelude_connection_t *cnx);
| 
 | |
| Returns : | 
void prelude_connection_set_fd_ref (prelude_connection_t *cnx, prelude_io_t *fd);
| 
 | |
| 
 | 
void prelude_connection_set_fd_nodup (prelude_connection_t *cnx, prelude_io_t *fd);
| 
 | |
| 
 | 
void prelude_connection_set_state (prelude_connection_t *cnx, prelude_connection_state_t state);
| 
 | |
| 
 | 
prelude_connection_state_t prelude_connection_get_state (prelude_connection_t *cnx);
| 
 | |
| Returns : | 
void prelude_connection_set_data (prelude_connection_t *cnx, void *data);
| 
 | |
| 
 | 
void * prelude_connection_get_data (prelude_connection_t *cnx);
| 
 | |
| Returns : | 
const char *        prelude_connection_get_default_socket_filename
                                                        (void);
| Returns : | 
prelude_connection_permission_t prelude_connection_get_permission (prelude_connection_t *conn);
| 
 | |
| Returns : | 
uint64_t prelude_connection_get_peer_analyzerid (prelude_connection_t *cnx);
| 
 | |
| Returns : | 
void                prelude_connection_set_peer_analyzerid
                                                        (prelude_connection_t *cnx,
                                                         uint64_t analyzerid);
| 
 | |
| 
 | 
int prelude_connection_new (prelude_connection_t **ret, const char *addr);
| 
 | |
| 
 | |
| Returns : | 
prelude_connection_t * prelude_connection_ref (prelude_connection_t *conn);
Increases conn reference count.
prelude_connection_destroy() will decrease the refcount until it
reaches 0, at which point conn will be destroyed.
| 
 | Pointer to a prelude_connection_t object to reference. | 
| Returns : | conn. | 
int prelude_connection_new_msgbuf (prelude_connection_t *connection, prelude_msgbuf_t **msgbuf);
| 
 | |
| 
 | |
| Returns : | 
int                 prelude_connection_permission_to_string
                                                        (prelude_connection_permission_t perm,
                                                         prelude_string_t *out);
| 
 | |
| 
 | |
| Returns : | 
int                 prelude_connection_permission_new_from_string
                                                        (prelude_connection_permission_t *out,
                                                         const char *buf);
| 
 | |
| 
 | |
| Returns : |