2011-10-05 10:28:21 +00:00
|
|
|
#ifndef _OSMO_DGRAM_H_
|
|
|
|
#define _OSMO_DGRAM_H_
|
|
|
|
|
2011-10-09 16:27:28 +00:00
|
|
|
struct osmo_dgram_client_conn;
|
2011-10-05 10:28:21 +00:00
|
|
|
|
2011-10-09 16:27:28 +00:00
|
|
|
struct osmo_dgram_client_conn *osmo_dgram_client_conn_create(void *ctx);
|
|
|
|
void osmo_dgram_client_conn_destroy(struct osmo_dgram_client_conn *conn);
|
2011-10-05 10:28:21 +00:00
|
|
|
|
2011-10-09 16:27:28 +00:00
|
|
|
void osmo_dgram_client_conn_set_addr(struct osmo_dgram_client_conn *conn, const char *addr);
|
|
|
|
void osmo_dgram_client_conn_set_port(struct osmo_dgram_client_conn *conn, uint16_t port);
|
|
|
|
void osmo_dgram_client_conn_set_data(struct osmo_dgram_client_conn *conn, void *data);
|
2011-10-05 10:28:21 +00:00
|
|
|
|
2011-10-09 16:27:28 +00:00
|
|
|
int osmo_dgram_client_conn_open(struct osmo_dgram_client_conn *conn);
|
|
|
|
void osmo_dgram_client_conn_close(struct osmo_dgram_client_conn *conn);
|
2011-10-05 10:28:21 +00:00
|
|
|
|
2011-10-09 16:27:28 +00:00
|
|
|
void osmo_dgram_client_conn_send(struct osmo_dgram_client_conn *conn, struct msgb *msg);
|
2011-10-05 10:28:21 +00:00
|
|
|
|
2011-10-09 16:27:28 +00:00
|
|
|
struct osmo_dgram_server_conn;
|
2011-10-05 10:28:21 +00:00
|
|
|
|
2011-10-09 16:27:28 +00:00
|
|
|
struct osmo_dgram_server_conn *osmo_dgram_server_conn_create(void *ctx);
|
2011-10-05 10:28:21 +00:00
|
|
|
|
2011-10-09 16:27:28 +00:00
|
|
|
void osmo_dgram_server_conn_set_addr(struct osmo_dgram_server_conn *conn, const char *addr);
|
|
|
|
void osmo_dgram_server_conn_set_port(struct osmo_dgram_server_conn *conn, uint16_t port);
|
2011-10-17 10:28:12 +00:00
|
|
|
void osmo_dgram_server_conn_set_read_cb(struct osmo_dgram_server_conn *conn, int (*read_cb)(struct osmo_dgram_server_conn *conn));
|
2011-10-09 16:27:28 +00:00
|
|
|
void osmo_dgram_server_conn_destroy(struct osmo_dgram_server_conn *conn);
|
2011-10-05 10:28:21 +00:00
|
|
|
|
2011-10-09 16:27:28 +00:00
|
|
|
int osmo_dgram_server_conn_open(struct osmo_dgram_server_conn *conn);
|
|
|
|
void osmo_dgram_server_conn_close(struct osmo_dgram_server_conn *conn);
|
2011-10-05 10:28:21 +00:00
|
|
|
|
2011-10-17 10:28:12 +00:00
|
|
|
int osmo_dgram_server_conn_recv(struct osmo_dgram_server_conn *conn, struct msgb *msg);
|
|
|
|
|
2011-10-09 16:27:28 +00:00
|
|
|
struct osmo_dgram_conn;
|
2011-10-05 10:28:21 +00:00
|
|
|
|
2011-10-09 16:27:28 +00:00
|
|
|
struct osmo_dgram_conn *osmo_dgram_conn_create(void *ctx);
|
|
|
|
void osmo_dgram_conn_destroy(struct osmo_dgram_conn *conn);
|
2011-10-05 10:28:21 +00:00
|
|
|
|
2011-10-09 16:27:28 +00:00
|
|
|
int osmo_dgram_conn_open(struct osmo_dgram_conn *conn);
|
|
|
|
void osmo_dgram_conn_close(struct osmo_dgram_conn *conn);
|
2011-10-05 10:28:21 +00:00
|
|
|
|
2011-10-09 16:27:28 +00:00
|
|
|
void osmo_dgram_conn_set_local_addr(struct osmo_dgram_conn *conn, const char *addr);
|
|
|
|
void osmo_dgram_conn_set_remote_addr(struct osmo_dgram_conn *conn, const char *addr);
|
|
|
|
void osmo_dgram_conn_set_local_port(struct osmo_dgram_conn *conn, uint16_t port);
|
|
|
|
void osmo_dgram_conn_set_remote_port(struct osmo_dgram_conn *conn, uint16_t port);
|
2011-10-17 10:28:12 +00:00
|
|
|
void osmo_dgram_conn_set_read_cb(struct osmo_dgram_conn *conn, int (*read_cb)(struct osmo_dgram_conn *conn));
|
2011-10-09 16:27:28 +00:00
|
|
|
void osmo_dgram_conn_set_data(struct osmo_dgram_client_conn *conn, void *data);
|
2011-10-05 10:28:21 +00:00
|
|
|
|
2011-10-09 16:27:28 +00:00
|
|
|
void osmo_dgram_conn_send(struct osmo_dgram_conn *conn, struct msgb *msg);
|
2011-10-17 10:28:12 +00:00
|
|
|
int osmo_dgram_conn_recv(struct osmo_dgram_conn *conn, struct msgb *msg);
|
2011-10-05 10:28:21 +00:00
|
|
|
|
|
|
|
#endif
|