aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/include
diff options
context:
space:
mode:
authorDaniel Willmann <daniel@totalueberwachung.de>2011-02-18 14:32:56 +0100
committerHarald Welte <laforge@gnumonks.org>2011-07-13 14:07:11 +0200
commita86bc39cc9b37eca2ec9ddd8ea635667720967eb (patch)
tree46303280f1408eb33d21f0caae2ff99d00b9b5c2 /openbsc/include
parentfc5391f54e5d522c97bfda139e9089ab9141e10a (diff)
nat: Use libctrl and add command forwarding to osmo-bsc
Passes commands beginning with "bsc.<num>" to the bsc that is responsible for LAC <num>.
Diffstat (limited to 'openbsc/include')
-rw-r--r--openbsc/include/openbsc/bsc_nat.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/openbsc/include/openbsc/bsc_nat.h b/openbsc/include/openbsc/bsc_nat.h
index 97fa4fe2e..97c0a1cb4 100644
--- a/openbsc/include/openbsc/bsc_nat.h
+++ b/openbsc/include/openbsc/bsc_nat.h
@@ -67,6 +67,24 @@ enum {
};
/*
+ * Pending command entry
+ */
+struct bsc_cmd_list {
+ struct llist_head list_entry;
+
+ struct osmo_timer_list timeout;
+
+ /* The NATed ID used on the bsc_con*/
+ int nat_id;
+
+ /* The control connection from which the command originated */
+ struct ctrl_connection *ccon;
+
+ /* The command from the control connection */
+ struct ctrl_cmd *cmd;
+};
+
+/*
* Per BSC data structure
*/
struct bsc_connection {
@@ -94,6 +112,10 @@ struct bsc_connection {
int max_endpoints;
int last_endpoint;
+ /* track the pending commands for this BSC */
+ struct llist_head cmd_pending;
+ int last_id;
+
/* a back pointer */
struct bsc_nat *nat;
};