aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/include
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2009-07-26 14:24:11 +0200
committerHarald Welte <laforge@gnumonks.org>2009-07-26 14:24:11 +0200
commit0803b98cc089b499cbaea8cd3284eba60bd71f43 (patch)
tree3d886e4d09ee17c4f77ee0a4a64bb458293e2826 /openbsc/include
parentb8b4073e1842cd1de4b432e201865a96baa4c067 (diff)
move definition of 'struct gsm_trans' to transaction.h
Diffstat (limited to 'openbsc/include')
-rw-r--r--openbsc/include/openbsc/gsm_data.h38
-rw-r--r--openbsc/include/openbsc/transaction.h45
2 files changed, 45 insertions, 38 deletions
diff --git a/openbsc/include/openbsc/gsm_data.h b/openbsc/include/openbsc/gsm_data.h
index 087123f51..7ada2a13d 100644
--- a/openbsc/include/openbsc/gsm_data.h
+++ b/openbsc/include/openbsc/gsm_data.h
@@ -99,44 +99,6 @@ struct gsm_lchan;
struct gsm_subscriber;
struct gsm_mncc;
-/* One transaction */
-struct gsm_trans {
- /* Entry in list of all transactions */
- struct llist_head entry;
-
- /* The protocol within which we live */
- u_int8_t protocol;
-
- /* The current transaction ID */
- u_int8_t transaction_id;
-
- /* To whom we belong, unique identifier of remote MM entity */
- struct gsm_subscriber *subscr;
-
- /* The LCHAN that we're currently using to transmit messages */
- struct gsm_lchan *lchan;
-
- /* reference from MNCC or other application */
- u_int32_t callref;
-
- union {
- struct {
-
- /* current call state */
- int state;
-
- /* current timer and message queue */
- int Tcurrent; /* current CC timer */
- int T308_second; /* used to send release again */
- struct timer_list timer;
- struct gsm_mncc msg; /* stores setup/disconnect/release message */
- } cc;
- struct {
- } sms;
- };
-};
-
-
/* Network Management State */
struct gsm_nm_state {
u_int8_t operational;
diff --git a/openbsc/include/openbsc/transaction.h b/openbsc/include/openbsc/transaction.h
index 39ed50035..c51be8175 100644
--- a/openbsc/include/openbsc/transaction.h
+++ b/openbsc/include/openbsc/transaction.h
@@ -3,6 +3,51 @@
#include <openbsc/gsm_data.h>
#include <openbsc/gsm_subscriber.h>
+#include <openbsc/linuxlist.h>
+#include <openbsc/gsm_04_11.h>
+
+/* One transaction */
+struct gsm_trans {
+ /* Entry in list of all transactions */
+ struct llist_head entry;
+
+ /* The protocol within which we live */
+ u_int8_t protocol;
+
+ /* The current transaction ID */
+ u_int8_t transaction_id;
+
+ /* To whom we belong, unique identifier of remote MM entity */
+ struct gsm_subscriber *subscr;
+
+ /* The LCHAN that we're currently using to transmit messages */
+ struct gsm_lchan *lchan;
+
+ /* reference from MNCC or other application */
+ u_int32_t callref;
+
+ union {
+ struct {
+
+ /* current call state */
+ int state;
+
+ /* current timer and message queue */
+ int Tcurrent; /* current CC timer */
+ int T308_second; /* used to send release again */
+ struct timer_list timer;
+ struct gsm_mncc msg; /* stores setup/disconnect/release message */
+ } cc;
+ struct {
+ enum gsm411_cp_state cp_state;
+ enum gsm411_rp_state rp_state;
+
+ struct timer_list timer;
+ } sms;
+ };
+};
+
+
struct gsm_trans *trans_find_by_id(struct gsm_subscriber *subscr,
u_int8_t proto, u_int8_t trans_id);