From 9176bd46e388b0ebfb22e2e0cbad892a099f9ef1 Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Thu, 23 Jul 2009 18:46:00 +0200 Subject: 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. --- openbsc/src/gsm_subscriber.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'openbsc/src/gsm_subscriber.c') diff --git a/openbsc/src/gsm_subscriber.c b/openbsc/src/gsm_subscriber.c index 32f436f28..1a5ea2f11 100644 --- a/openbsc/src/gsm_subscriber.c +++ b/openbsc/src/gsm_subscriber.c @@ -126,7 +126,8 @@ static void subscr_free(struct gsm_subscriber *subscr) talloc_free(subscr); } -struct gsm_subscriber *subscr_get_by_tmsi(const char *tmsi) +struct gsm_subscriber *subscr_get_by_tmsi(struct gsm_network *net, + const char *tmsi) { struct gsm_subscriber *subscr; @@ -136,10 +137,11 @@ struct gsm_subscriber *subscr_get_by_tmsi(const char *tmsi) return subscr_get(subscr); } - return db_get_subscriber(GSM_SUBSCRIBER_TMSI, tmsi); + return db_get_subscriber(net, GSM_SUBSCRIBER_TMSI, tmsi); } -struct gsm_subscriber *subscr_get_by_imsi(const char *imsi) +struct gsm_subscriber *subscr_get_by_imsi(struct gsm_network *net, + const char *imsi) { struct gsm_subscriber *subscr; @@ -148,10 +150,11 @@ struct gsm_subscriber *subscr_get_by_imsi(const char *imsi) return subscr_get(subscr); } - return db_get_subscriber(GSM_SUBSCRIBER_IMSI, imsi); + return db_get_subscriber(net, GSM_SUBSCRIBER_IMSI, imsi); } -struct gsm_subscriber *subscr_get_by_extension(const char *ext) +struct gsm_subscriber *subscr_get_by_extension(struct gsm_network *net, + const char *ext) { struct gsm_subscriber *subscr; @@ -160,7 +163,7 @@ struct gsm_subscriber *subscr_get_by_extension(const char *ext) return subscr_get(subscr); } - return db_get_subscriber(GSM_SUBSCRIBER_EXTENSION, ext); + return db_get_subscriber(net, GSM_SUBSCRIBER_EXTENSION, ext); } int subscr_update(struct gsm_subscriber *s, struct gsm_bts *bts, int reason) -- cgit v1.2.3