aboutsummaryrefslogtreecommitdiffstats
path: root/src/datagram.c
diff options
context:
space:
mode:
authorPablo Neira Ayuso <pablo@gnumonks.org>2012-08-15 20:10:32 +0200
committerPablo Neira Ayuso <pablo@gnumonks.org>2012-08-15 20:16:09 +0200
commitad2e9d637e27a6c51fa6f4ae8ec81075a6448c27 (patch)
tree3279404a3cbc23e345bc8a8b8c71f6017d14682b /src/datagram.c
parent4fd56b6d2f40c57ecc68addee2e690c359c212c7 (diff)
src: shorter names for datagram sockets
%s/_conn_/_/g %s/_conn//g %s/_server_/_tx_/g %s/_client_/_rx_/g %s/_SERVER_/_TX_/g %s/_CLIENT_/_RX_/g %s/_RECONFIG/_RECONF/g
Diffstat (limited to 'src/datagram.c')
-rw-r--r--src/datagram.c181
1 files changed, 90 insertions, 91 deletions
diff --git a/src/datagram.c b/src/datagram.c
index caac1c8..5630114 100644
--- a/src/datagram.c
+++ b/src/datagram.c
@@ -23,25 +23,25 @@
* Client side.
*/
-#define OSMO_DGRAM_CLIENT_F_RECONFIG (1 << 0)
+#define OSMO_DGRAM_CLI_F_RECONF (1 << 0)
-struct osmo_dgram_client_conn {
+struct osmo_dgram_tx {
struct osmo_fd ofd;
struct llist_head tx_queue;
const char *addr;
uint16_t port;
- int (*write_cb)(struct osmo_dgram_client_conn *conn);
+ int (*write_cb)(struct osmo_dgram_tx *conn);
void *data;
unsigned int flags;
};
-void osmo_dgram_client_conn_close(struct osmo_dgram_client_conn *conn)
+void osmo_dgram_tx_close(struct osmo_dgram_tx *conn)
{
osmo_fd_unregister(&conn->ofd);
close(conn->ofd.fd);
}
-static int osmo_dgram_client_write(struct osmo_dgram_client_conn *conn)
+static int osmo_dgram_tx_write(struct osmo_dgram_tx *conn)
{
struct msgb *msg;
struct llist_head *lh;
@@ -66,29 +66,29 @@ static int osmo_dgram_client_write(struct osmo_dgram_client_conn *conn)
return 0;
}
-static int osmo_dgram_client_fd_cb(struct osmo_fd *ofd, unsigned int what)
+static int osmo_dgram_tx_fd_cb(struct osmo_fd *ofd, unsigned int what)
{
- struct osmo_dgram_client_conn *conn = ofd->data;
+ struct osmo_dgram_tx *conn = ofd->data;
if (what & BSC_FD_WRITE) {
LOGP(DLINP, LOGL_DEBUG, "write\n");
- osmo_dgram_client_write(conn);
+ osmo_dgram_tx_write(conn);
}
return 0;
}
-struct osmo_dgram_client_conn *osmo_dgram_client_conn_create(void *ctx)
+struct osmo_dgram_tx *osmo_dgram_tx_create(void *crx)
{
- struct osmo_dgram_client_conn *conn;
+ struct osmo_dgram_tx *conn;
- conn = talloc_zero(ctx, struct osmo_dgram_client_conn);
+ conn = talloc_zero(crx, struct osmo_dgram_tx);
if (!conn)
return NULL;
conn->ofd.fd = -1;
conn->ofd.when |= BSC_FD_READ;
conn->ofd.priv_nr = 0; /* XXX */
- conn->ofd.cb = osmo_dgram_client_fd_cb;
+ conn->ofd.cb = osmo_dgram_tx_fd_cb;
conn->ofd.data = conn;
INIT_LLIST_HEAD(&conn->tx_queue);
@@ -96,44 +96,44 @@ struct osmo_dgram_client_conn *osmo_dgram_client_conn_create(void *ctx)
}
void
-osmo_dgram_client_conn_set_addr(struct osmo_dgram_client_conn *conn,
+osmo_dgram_tx_set_addr(struct osmo_dgram_tx *conn,
const char *addr)
{
if (conn->addr != NULL)
talloc_free((void *)conn->addr);
conn->addr = talloc_strdup(conn, addr);
- conn->flags |= OSMO_DGRAM_CLIENT_F_RECONFIG;
+ conn->flags |= OSMO_DGRAM_CLI_F_RECONF;
}
void
-osmo_dgram_client_conn_set_port(struct osmo_dgram_client_conn *conn,
+osmo_dgram_tx_set_port(struct osmo_dgram_tx *conn,
uint16_t port)
{
conn->port = port;
- conn->flags |= OSMO_DGRAM_CLIENT_F_RECONFIG;
+ conn->flags |= OSMO_DGRAM_CLI_F_RECONF;
}
void
-osmo_dgram_client_conn_set_data(struct osmo_dgram_client_conn *conn, void *data)
+osmo_dgram_tx_set_data(struct osmo_dgram_tx *conn, void *data)
{
conn->data = data;
}
-void osmo_dgram_client_conn_destroy(struct osmo_dgram_client_conn *conn)
+void osmo_dgram_tx_destroy(struct osmo_dgram_tx *conn)
{
talloc_free(conn);
}
-int osmo_dgram_client_conn_open(struct osmo_dgram_client_conn *conn)
+int osmo_dgram_tx_open(struct osmo_dgram_tx *conn)
{
int ret;
/* we are reconfiguring this socket, close existing first. */
- if ((conn->flags & OSMO_DGRAM_CLIENT_F_RECONFIG) && conn->ofd.fd >= 0)
- osmo_dgram_client_conn_close(conn);
+ if ((conn->flags & OSMO_DGRAM_CLI_F_RECONF) && conn->ofd.fd >= 0)
+ osmo_dgram_tx_close(conn);
- conn->flags &= ~OSMO_DGRAM_CLIENT_F_RECONFIG;
+ conn->flags &= ~OSMO_DGRAM_CLI_F_RECONF;
ret = osmo_sock_init(AF_INET, SOCK_DGRAM, IPPROTO_UDP,
conn->addr, conn->port,
@@ -149,7 +149,7 @@ int osmo_dgram_client_conn_open(struct osmo_dgram_client_conn *conn)
return 0;
}
-void osmo_dgram_client_conn_send(struct osmo_dgram_client_conn *conn,
+void osmo_dgram_tx_send(struct osmo_dgram_tx *conn,
struct msgb *msg)
{
msgb_enqueue(&conn->tx_queue, msg);
@@ -160,33 +160,33 @@ void osmo_dgram_client_conn_send(struct osmo_dgram_client_conn *conn,
* Server side.
*/
-#define OSMO_DGRAM_SERVER_F_RECONFIG (1 << 0)
+#define OSMO_DGRAM_RX_F_RECONF (1 << 0)
-struct osmo_dgram_server_conn {
+struct osmo_dgram_rx {
struct osmo_fd ofd;
const char *addr;
uint16_t port;
- int (*cb)(struct osmo_dgram_server_conn *conn);
+ int (*cb)(struct osmo_dgram_rx *conn);
void *data;
unsigned int flags;
};
-int osmo_dgram_server_conn_recv(struct osmo_dgram_server_conn *conn,
+int osmo_dgram_rx_recv(struct osmo_dgram_rx *conn,
struct msgb *msg)
{
int ret;
ret = recv(conn->ofd.fd, msg->data, msg->data_len, 0);
if (ret <= 0) {
- LOGP(DLINP, LOGL_ERROR, "error receiving data from client\n");
+ LOGP(DLINP, LOGL_ERROR, "error receiving data from tx\n");
return ret;
}
msgb_put(msg, ret);
- LOGP(DLINP, LOGL_DEBUG, "received %d bytes from client\n", ret);
+ LOGP(DLINP, LOGL_DEBUG, "received %d bytes from tx\n", ret);
return ret;
}
-static void osmo_dgram_server_conn_read(struct osmo_dgram_server_conn *conn)
+static void osmo_dgram_rx_read(struct osmo_dgram_rx *conn)
{
LOGP(DLINP, LOGL_DEBUG, "message received\n");
@@ -194,70 +194,70 @@ static void osmo_dgram_server_conn_read(struct osmo_dgram_server_conn *conn)
conn->cb(conn);
}
-static int osmo_dgram_server_conn_cb(struct osmo_fd *ofd, unsigned int what)
+static int osmo_dgram_rx_cb(struct osmo_fd *ofd, unsigned int what)
{
- struct osmo_dgram_server_conn *conn = ofd->data;
+ struct osmo_dgram_rx *conn = ofd->data;
LOGP(DLINP, LOGL_DEBUG, "read\n");
if (what & BSC_FD_READ)
- osmo_dgram_server_conn_read(conn);
+ osmo_dgram_rx_read(conn);
return 0;
}
-struct osmo_dgram_server_conn *osmo_dgram_server_conn_create(void *ctx)
+struct osmo_dgram_rx *osmo_dgram_rx_create(void *crx)
{
- struct osmo_dgram_server_conn *conn;
+ struct osmo_dgram_rx *conn;
- conn = talloc_zero(ctx, struct osmo_dgram_server_conn);
+ conn = talloc_zero(crx, struct osmo_dgram_rx);
if (!conn)
return NULL;
conn->ofd.fd = -1;
conn->ofd.when |= BSC_FD_READ;
- conn->ofd.cb = osmo_dgram_server_conn_cb;
+ conn->ofd.cb = osmo_dgram_rx_cb;
conn->ofd.data = conn;
return conn;
}
-void osmo_dgram_server_conn_set_addr(struct osmo_dgram_server_conn *conn,
+void osmo_dgram_rx_set_addr(struct osmo_dgram_rx *conn,
const char *addr)
{
if (conn->addr != NULL)
talloc_free((void *)conn->addr);
conn->addr = talloc_strdup(conn, addr);
- conn->flags |= OSMO_DGRAM_SERVER_F_RECONFIG;
+ conn->flags |= OSMO_DGRAM_RX_F_RECONF;
}
-void osmo_dgram_server_conn_set_port(struct osmo_dgram_server_conn *conn,
+void osmo_dgram_rx_set_port(struct osmo_dgram_rx *conn,
uint16_t port)
{
conn->port = port;
- conn->flags |= OSMO_DGRAM_SERVER_F_RECONFIG;
+ conn->flags |= OSMO_DGRAM_RX_F_RECONF;
}
-void osmo_dgram_server_conn_set_read_cb(struct osmo_dgram_server_conn *conn,
- int (*read_cb)(struct osmo_dgram_server_conn *conn))
+void osmo_dgram_rx_set_read_cb(struct osmo_dgram_rx *conn,
+ int (*read_cb)(struct osmo_dgram_rx *conn))
{
conn->cb = read_cb;
}
-void osmo_dgram_server_conn_destroy(struct osmo_dgram_server_conn *conn)
+void osmo_dgram_rx_destroy(struct osmo_dgram_rx *conn)
{
talloc_free(conn);
}
-int osmo_dgram_server_conn_open(struct osmo_dgram_server_conn *conn)
+int osmo_dgram_rx_open(struct osmo_dgram_rx *conn)
{
int ret;
/* we are reconfiguring this socket, close existing first. */
- if ((conn->flags & OSMO_DGRAM_SERVER_F_RECONFIG) && conn->ofd.fd >= 0)
- osmo_dgram_server_conn_close(conn);
+ if ((conn->flags & OSMO_DGRAM_RX_F_RECONF) && conn->ofd.fd >= 0)
+ osmo_dgram_rx_close(conn);
- conn->flags &= ~OSMO_DGRAM_SERVER_F_RECONFIG;
+ conn->flags &= ~OSMO_DGRAM_RX_F_RECONF;
ret = osmo_sock_init(AF_INET, SOCK_DGRAM, IPPROTO_UDP,
conn->addr, conn->port, OSMO_SOCK_F_BIND);
@@ -272,7 +272,7 @@ int osmo_dgram_server_conn_open(struct osmo_dgram_server_conn *conn)
return 0;
}
-void osmo_dgram_server_conn_close(struct osmo_dgram_server_conn *conn)
+void osmo_dgram_rx_close(struct osmo_dgram_rx *conn)
{
osmo_fd_unregister(&conn->ofd);
close(conn->ofd.fd);
@@ -282,17 +282,17 @@ void osmo_dgram_server_conn_close(struct osmo_dgram_server_conn *conn)
* Client+Server (bidirectional communications).
*/
-struct osmo_dgram_conn {
- struct osmo_dgram_server_conn *server;
- struct osmo_dgram_client_conn *client;
- int (*read_cb)(struct osmo_dgram_conn *conn);
+struct osmo_dgram {
+ struct osmo_dgram_rx *rx;
+ struct osmo_dgram_tx *tx;
+ int (*read_cb)(struct osmo_dgram *conn);
void *data;
};
static int
-dgram_server_conn_cb(struct osmo_dgram_server_conn *server)
+dgram_rx_cb(struct osmo_dgram_rx *rx)
{
- struct osmo_dgram_conn *conn = server->data;
+ struct osmo_dgram *conn = rx->data;
if (conn->read_cb)
return conn->read_cb(conn);
@@ -300,100 +300,99 @@ dgram_server_conn_cb(struct osmo_dgram_server_conn *server)
return 0;
}
-struct osmo_dgram_conn *osmo_dgram_conn_create(void *ctx)
+struct osmo_dgram *osmo_dgram_create(void *crx)
{
- struct osmo_dgram_conn *conn;
+ struct osmo_dgram *conn;
- conn = talloc_zero(ctx, struct osmo_dgram_conn);
+ conn = talloc_zero(crx, struct osmo_dgram);
if (!conn)
return NULL;
- conn->server = osmo_dgram_server_conn_create(ctx);
- if (conn->server == NULL)
+ conn->rx= osmo_dgram_rx_create(crx);
+ if (conn->rx == NULL)
return NULL;
- osmo_dgram_server_conn_set_read_cb(conn->server, dgram_server_conn_cb);
- conn->server->data = conn;
+ osmo_dgram_rx_set_read_cb(conn->rx, dgram_rx_cb);
+ conn->rx->data = conn;
- conn->client = osmo_dgram_client_conn_create(ctx);
- if (conn->client == NULL) {
- osmo_dgram_server_conn_destroy(conn->server);
+ conn->tx = osmo_dgram_tx_create(crx);
+ if (conn->tx == NULL) {
+ osmo_dgram_rx_destroy(conn->rx);
return NULL;
}
return conn;
}
-void osmo_dgram_conn_destroy(struct osmo_dgram_conn *conn)
+void osmo_dgram_destroy(struct osmo_dgram *conn)
{
- osmo_dgram_server_conn_destroy(conn->server);
- osmo_dgram_client_conn_destroy(conn->client);
+ osmo_dgram_rx_destroy(conn->rx);
+ osmo_dgram_tx_destroy(conn->tx);
}
void
-osmo_dgram_conn_set_local_addr(struct osmo_dgram_conn *conn, const char *addr)
+osmo_dgram_set_local_addr(struct osmo_dgram *conn, const char *addr)
{
- osmo_dgram_server_conn_set_addr(conn->server, addr);
+ osmo_dgram_rx_set_addr(conn->rx, addr);
}
void
-osmo_dgram_conn_set_remote_addr(struct osmo_dgram_conn *conn, const char *addr)
+osmo_dgram_set_remote_addr(struct osmo_dgram *conn, const char *addr)
{
- osmo_dgram_client_conn_set_addr(conn->client, addr);
+ osmo_dgram_tx_set_addr(conn->tx, addr);
}
void
-osmo_dgram_conn_set_local_port(struct osmo_dgram_conn *conn, uint16_t port)
+osmo_dgram_set_local_port(struct osmo_dgram *conn, uint16_t port)
{
- osmo_dgram_server_conn_set_port(conn->server, port);
+ osmo_dgram_rx_set_port(conn->rx, port);
}
void
-osmo_dgram_conn_set_remote_port(struct osmo_dgram_conn *conn, uint16_t port)
+osmo_dgram_set_remote_port(struct osmo_dgram *conn, uint16_t port)
{
- osmo_dgram_client_conn_set_port(conn->client, port);
+ osmo_dgram_tx_set_port(conn->tx, port);
}
-void osmo_dgram_conn_set_read_cb(struct osmo_dgram_conn *conn,
- int (*read_cb)(struct osmo_dgram_conn *conn))
+void osmo_dgram_set_read_cb(struct osmo_dgram *conn,
+ int (*read_cb)(struct osmo_dgram *conn))
{
conn->read_cb = read_cb;
}
-void
-osmo_dgram_conn_set_data(struct osmo_dgram_client_conn *conn, void *data)
+void osmo_dgram_set_data(struct osmo_dgram *conn, void *data)
{
conn->data = data;
}
-int osmo_dgram_conn_open(struct osmo_dgram_conn *conn)
+int osmo_dgram_open(struct osmo_dgram *conn)
{
int ret;
- ret = osmo_dgram_server_conn_open(conn->server);
+ ret = osmo_dgram_rx_open(conn->rx);
if (ret < 0)
return ret;
- ret = osmo_dgram_client_conn_open(conn->client);
+ ret = osmo_dgram_tx_open(conn->tx);
if (ret < 0) {
- osmo_dgram_server_conn_close(conn->server);
+ osmo_dgram_rx_close(conn->rx);
return ret;
}
return ret;
}
-void osmo_dgram_conn_close(struct osmo_dgram_conn *conn)
+void osmo_dgram_close(struct osmo_dgram *conn)
{
- osmo_dgram_server_conn_close(conn->server);
- osmo_dgram_client_conn_close(conn->client);
+ osmo_dgram_rx_close(conn->rx);
+ osmo_dgram_tx_close(conn->tx);
}
-void osmo_dgram_conn_send(struct osmo_dgram_conn *conn, struct msgb *msg)
+void osmo_dgram_send(struct osmo_dgram *conn, struct msgb *msg)
{
- osmo_dgram_client_conn_send(conn->client, msg);
+ osmo_dgram_tx_send(conn->tx, msg);
}
-int osmo_dgram_conn_recv(struct osmo_dgram_conn *conn, struct msgb *msg)
+int osmo_dgram_recv(struct osmo_dgram *conn, struct msgb *msg)
{
- return osmo_dgram_server_conn_recv(conn->server, msg);
+ return osmo_dgram_rx_recv(conn->rx, msg);
}