diff options
author | Pablo Neira Ayuso <pablo@gnumonks.org> | 2011-10-03 22:09:45 +0200 |
---|---|---|
committer | Pablo Neira Ayuso <pablo@netfilter.org> | 2011-10-04 02:36:46 +0200 |
commit | 8bf16493f68fd53c6e14f1612caf7425c73b2f4d (patch) | |
tree | 3ec412622ca065b7d835f6cfbc953d8ea6b1546a /include |
initial commit
Diffstat (limited to 'include')
-rw-r--r-- | include/Makefile.am | 1 | ||||
-rw-r--r-- | include/osmocom/Makefile.am | 1 | ||||
-rw-r--r-- | include/osmocom/netif/Makefile.am | 3 | ||||
-rw-r--r-- | include/osmocom/netif/stream.h | 44 |
4 files changed, 49 insertions, 0 deletions
diff --git a/include/Makefile.am b/include/Makefile.am new file mode 100644 index 0000000..b255997 --- /dev/null +++ b/include/Makefile.am @@ -0,0 +1 @@ +SUBDIRS=osmocom diff --git a/include/osmocom/Makefile.am b/include/osmocom/Makefile.am new file mode 100644 index 0000000..df0aef9 --- /dev/null +++ b/include/osmocom/Makefile.am @@ -0,0 +1 @@ +SUBDIRS=netif diff --git a/include/osmocom/netif/Makefile.am b/include/osmocom/netif/Makefile.am new file mode 100644 index 0000000..8b68362 --- /dev/null +++ b/include/osmocom/netif/Makefile.am @@ -0,0 +1,3 @@ +osmonetif_HEADERS = stream.h + +osmonetifdir = $(includedir)/osmocom/netif diff --git a/include/osmocom/netif/stream.h b/include/osmocom/netif/stream.h new file mode 100644 index 0000000..4f6407a --- /dev/null +++ b/include/osmocom/netif/stream.h @@ -0,0 +1,44 @@ +#ifndef _OSMO_STREAM_H_ +#define _OSMO_STREAM_H_ + +#include <stdint.h> +#include <osmocom/core/linuxlist.h> +#include <osmocom/core/timer.h> +#include <osmocom/core/select.h> + +struct stream_server_link; + +struct stream_server_link *stream_server_link_create(void *ctx); +void stream_server_link_destroy(struct stream_server_link *link); + +void stream_server_link_set_addr(struct stream_server_link *link, const char *addr); +void stream_server_link_set_port(struct stream_server_link *link, uint16_t port); +void stream_server_link_set_accept_cb(struct stream_server_link *link, int (*accept_cb)(struct stream_server_link *link, int fd)); + +int stream_server_link_open(struct stream_server_link *link); +void stream_server_link_close(struct stream_server_link *link); + +struct stream_server_conn; + +struct stream_server_conn *stream_server_conn_create(void *ctx, struct stream_server_link *link, int fd, int (*cb)(struct stream_server_conn *conn, struct msgb *msg), int (*closed_cb)(struct stream_server_conn *conn), void *data); +void stream_server_conn_destroy(struct stream_server_conn *conn); + +void stream_server_conn_send(struct stream_server_conn *conn, struct msgb *msg); + +struct stream_client_conn; + +void stream_client_conn_set_addr(struct stream_client_conn *link, const char *addr); +void stream_client_conn_set_port(struct stream_client_conn *link, uint16_t port); +void stream_client_conn_set_data(struct stream_client_conn *link, void *data); +void stream_client_conn_set_connect_cb(struct stream_client_conn *link, int (*connect_cb)(struct stream_client_conn *link)); +void stream_client_conn_set_read_cb(struct stream_client_conn *link, int (*read_cb)(struct stream_client_conn *link, struct msgb *msgb)); + +struct stream_client_conn *stream_client_conn_create(void *ctx); +void stream_client_conn_destroy(struct stream_client_conn *link); + +int stream_client_conn_open(struct stream_client_conn *link); +void stream_client_conn_close(struct stream_client_conn *link); + +void stream_client_conn_send(struct stream_client_conn *link, struct msgb *msg); + +#endif |