lchan: Change transaction to work on the GSM Subscriber Connection
Change the MSC transaction code to operate on a GSM Subscriber Connection
instead of the lchan. This will help us to separate the two commands properly.
diff --git a/openbsc/src/gsm_04_11.c b/openbsc/src/gsm_04_11.c
index 4b59364..5f541ce 100644
--- a/openbsc/src/gsm_04_11.c
+++ b/openbsc/src/gsm_04_11.c
@@ -155,7 +155,7 @@
gh->msg_type = msg_type;
/* assign the outgoing lchan */
- msg->lchan = trans->lchan;
+ msg->lchan = trans->conn->lchan;
/* mobile originating */
switch (gh->msg_type) {
@@ -770,7 +770,7 @@
static int gsm411_rx_rp_error(struct msgb *msg, struct gsm_trans *trans,
struct gsm411_rp_hdr *rph)
{
- struct gsm_network *net = trans->lchan->ts->trx->bts->network;
+ struct gsm_network *net = trans->conn->lchan->ts->trx->bts->network;
struct gsm_sms *sms = trans->sms.sms;
u_int8_t cause_len = rph->data[0];
u_int8_t cause = rph->data[1];
@@ -941,8 +941,8 @@
trans->sms.is_mt = 0;
trans->sms.link_id = link_id;
- trans->lchan = lchan;
- use_subscr_con(&lchan->conn);
+ trans->conn = &lchan->conn;
+ use_subscr_con(trans->conn);
}
switch(msg_type) {
@@ -1074,8 +1074,8 @@
trans->sms.sms = sms;
trans->sms.link_id = UM_SAPI_SMS; /* FIXME: main or SACCH ? */
- trans->lchan = lchan;
- use_subscr_con(&lchan->conn);
+ trans->conn = &lchan->conn;
+ use_subscr_con(trans->conn);
/* Hardcode SMSC Originating Address for now */
data = (u_int8_t *)msgb_put(msg, 8);