diff options
author | Harald Welte <laforge@gnumonks.org> | 2009-07-23 18:46:00 +0200 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2009-07-23 18:46:00 +0200 |
commit | 9176bd46e388b0ebfb22e2e0cbad892a099f9ef1 (patch) | |
tree | caf3cd98bc1f3e38c9cd1833375bf871b533449e /openbsc/src/gsm_04_11.c | |
parent | 9f93c7d61ba6d0049a18f14ed99ebd237e11c89e (diff) |
make sure subscr->net is always set
since a subscriber is an element of the gsm_network, we have to ensure
subscr->net is always set correctly. We do this by using gsm_network
as an argument to all functions that resolve or create a subscriber.
Diffstat (limited to 'openbsc/src/gsm_04_11.c')
-rw-r--r-- | openbsc/src/gsm_04_11.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/openbsc/src/gsm_04_11.c b/openbsc/src/gsm_04_11.c index 6dac9d87c..527929120 100644 --- a/openbsc/src/gsm_04_11.c +++ b/openbsc/src/gsm_04_11.c @@ -182,6 +182,7 @@ static int gsm340_rx_sms_submit(struct msgb *msg, struct sms_submit *sms, * return value > 0: RP CAUSE for ERROR; < 0: silent error; 0 = success */ static int gsm340_rx_tpdu(struct msgb *msg) { + struct gsm_bts *bts = msg->lchan->ts->trx->bts; u_int8_t *smsp = msgb_sms(msg); struct sms_submit *sms; struct gsm_sms *gsms; @@ -291,7 +292,7 @@ static int gsm340_rx_tpdu(struct msgb *msg) gsms->validity_minutes = gsm340_validity_period(sms); /* determine gsms->receiver based on dialled number */ - gsms->receiver = subscr_get_by_extension(sms->dest_addr); + gsms->receiver = subscr_get_by_extension(bts->network, sms->dest_addr); if (sms->user_data) memcpy(gsms->header, sms->user_data, sms->ud_len); |