aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/include/openbsc/control_if.h
diff options
context:
space:
mode:
Diffstat (limited to 'openbsc/include/openbsc/control_if.h')
-rw-r--r--openbsc/include/openbsc/control_if.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/openbsc/include/openbsc/control_if.h b/openbsc/include/openbsc/control_if.h
index 6afc86d76..d103332a9 100644
--- a/openbsc/include/openbsc/control_if.h
+++ b/openbsc/include/openbsc/control_if.h
@@ -5,17 +5,25 @@
#include <openbsc/control_cmd.h>
#include <openbsc/gsm_data.h>
+typedef int (*ctrl_cmd_handler)(struct ctrl_cmd *, void *);
+
struct ctrl_handle {
struct osmo_fd listen_fd;
struct gsm_network *gsmnet;
+ ctrl_cmd_handler handler;
+
/* List of control connections */
struct llist_head ccon_list;
};
+
int ctrl_cmd_send(struct osmo_wqueue *queue, struct ctrl_cmd *cmd);
-int ctrl_cmd_handle(struct ctrl_cmd *cmd, void *data);
-struct ctrl_handle *controlif_setup(struct gsm_network *gsmnet, uint16_t port);
+struct ctrl_handle *controlif_setup(struct gsm_network *, uint16_t port,
+ ctrl_cmd_handler handler);
+struct ctrl_handle *bsc_controlif_setup(struct gsm_network *gsmnet, uint16_t port);
+
+int bsc_ctrl_cmd_handle(struct ctrl_cmd *cmd, void *data);
#endif /* _CONTROL_IF_H */