prelude-connection

prelude-connection —

Synopsis




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_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);
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);

Description

Details

enum prelude_connection_permission_t

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;


enum prelude_connection_state_t

typedef enum {
        PRELUDE_CONNECTION_STATE_ESTABLISHED     = 0x01
} prelude_connection_state_t;


prelude_connection_t

typedef struct prelude_connection prelude_connection_t;


prelude_connection_destroy ()

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().

conn : Pointer to a prelude_connection_t object.

prelude_connection_send ()

int         prelude_connection_send         (prelude_connection_t *cnx,
                                             prelude_msg_t *msg);

cnx :
msg :
Returns :

prelude_connection_recv ()

int         prelude_connection_recv         (prelude_connection_t *cnx,
                                             prelude_msg_t **outmsg);

cnx :
outmsg :
Returns :

prelude_connection_connect ()

int         prelude_connection_connect      (prelude_connection_t *cnx,
                                             prelude_client_profile_t *profile,
                                             prelude_connection_permission_t permission);

cnx :
profile :
permission :
Returns :

prelude_connection_forward ()

ssize_t     prelude_connection_forward      (prelude_connection_t *cnx,
                                             prelude_io_t *src,
                                             size_t count);

cnx :
src :
count :
Returns :

prelude_connection_get_local_addr ()

const char* prelude_connection_get_local_addr
                                            (prelude_connection_t *cnx);

cnx : Pointer to a prelude_connection_t object.
Returns : the local address used to connect.

prelude_connection_get_local_port ()

unsigned int prelude_connection_get_local_port
                                            (prelude_connection_t *cnx);

cnx : Pointer to a prelude_connection_t object.
Returns : the local port used to connect.

prelude_connection_get_peer_addr ()

const char* prelude_connection_get_peer_addr
                                            (prelude_connection_t *cnx);

cnx :
Returns :

prelude_connection_get_peer_port ()

unsigned int prelude_connection_get_peer_port
                                            (prelude_connection_t *cnx);

cnx :
Returns :

prelude_connection_is_alive ()

prelude_bool_t prelude_connection_is_alive  (prelude_connection_t *cnx);

cnx : Pointer to a prelude_connection_t object.
Returns : 0 if the connection associated with cnx is alive, -1 otherwise.

prelude_connection_get_fd ()

prelude_io_t* prelude_connection_get_fd     (prelude_connection_t *cnx);

cnx : Pointer to a prelude_connection_t object.
Returns : A pointer to the prelude_io_t object used for communicating with the peer.

prelude_connection_close ()

int         prelude_connection_close        (prelude_connection_t *cnx);

cnx :
Returns :

prelude_connection_set_fd_ref ()

void        prelude_connection_set_fd_ref   (prelude_connection_t *cnx,
                                             prelude_io_t *fd);

cnx :
fd :

prelude_connection_set_fd_nodup ()

void        prelude_connection_set_fd_nodup (prelude_connection_t *cnx,
                                             prelude_io_t *fd);

cnx :
fd :

prelude_connection_set_state ()

void        prelude_connection_set_state    (prelude_connection_t *cnx,
                                             prelude_connection_state_t state);

cnx :
state :

prelude_connection_get_state ()

prelude_connection_state_t prelude_connection_get_state
                                            (prelude_connection_t *cnx);

cnx :
Returns :

prelude_connection_set_data ()

void        prelude_connection_set_data     (prelude_connection_t *cnx,
                                             void *data);

cnx :
data :

prelude_connection_get_data ()

void*       prelude_connection_get_data     (prelude_connection_t *cnx);

cnx :
Returns :

prelude_connection_get_default_socket_filename ()

const char* prelude_connection_get_default_socket_filename
                                            (void);

Returns :

prelude_connection_get_permission ()

prelude_connection_permission_t prelude_connection_get_permission
                                            (prelude_connection_t *conn);

conn :
Returns :

prelude_connection_get_peer_analyzerid ()

uint64_t    prelude_connection_get_peer_analyzerid
                                            (prelude_connection_t *cnx);

cnx :
Returns :

prelude_connection_set_peer_analyzerid ()

void        prelude_connection_set_peer_analyzerid
                                            (prelude_connection_t *cnx,
                                             uint64_t analyzerid);

cnx :
analyzerid :

prelude_connection_new ()

int         prelude_connection_new          (prelude_connection_t **ret,
                                             const char *addr);

ret :
addr :
Returns :

prelude_connection_new_msgbuf ()

int         prelude_connection_new_msgbuf   (prelude_connection_t *connection,
                                             prelude_msgbuf_t **msgbuf);

connection :
msgbuf :
Returns :

prelude_connection_permission_to_string ()

int         prelude_connection_permission_to_string
                                            (prelude_connection_permission_t perm,
                                             prelude_string_t *out);

perm :
out :
Returns :

prelude_connection_permission_new_from_string ()

int         prelude_connection_permission_new_from_string
                                            (prelude_connection_permission_t *out,
                                             const char *buf);

out :
buf :
Returns :