aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHolger Hans Peter Freyther <zecke@selfish.org>2009-08-20 13:33:51 +0200
committerHolger Hans Peter Freyther <zecke@selfish.org>2009-08-20 13:56:45 +0200
commite4e8bf4dd00123ba06630c34fe45c84a91459094 (patch)
treee060a78f3f4de768cfb65cdb85be1f5a8ab54075
parent4a5cf5f23d04d98b6e83d676c3487add56a4dd03 (diff)
[subscr] Change the signature... the gsm_network is in the subscr
Remove the extra parameter from the method, the network can be taken from the subscriber.
-rw-r--r--openbsc/include/openbsc/gsm_subscriber.h3
-rw-r--r--openbsc/src/gsm_subscriber_base.c9
-rw-r--r--openbsc/tests/channel/channel_test.c3
3 files changed, 5 insertions, 10 deletions
diff --git a/openbsc/include/openbsc/gsm_subscriber.h b/openbsc/include/openbsc/gsm_subscriber.h
index f01a47ff0..aaf261eda 100644
--- a/openbsc/include/openbsc/gsm_subscriber.h
+++ b/openbsc/include/openbsc/gsm_subscriber.h
@@ -80,8 +80,7 @@ struct gsm_subscriber *subscr_get_by_id(struct gsm_network *net,
int subscr_update(struct gsm_subscriber *s, struct gsm_bts *bts, int reason);
void subscr_put_channel(struct gsm_lchan *lchan);
void subscr_get_channel(struct gsm_subscriber *subscr,
- struct gsm_network *network, int type,
- gsm_cbfn *cbfn, void *param);
+ int type, gsm_cbfn *cbfn, void *param);
/* internal */
struct gsm_subscriber *subscr_alloc(void);
diff --git a/openbsc/src/gsm_subscriber_base.c b/openbsc/src/gsm_subscriber_base.c
index 83addd0a8..d6a179b5c 100644
--- a/openbsc/src/gsm_subscriber_base.c
+++ b/openbsc/src/gsm_subscriber_base.c
@@ -58,9 +58,6 @@ struct subscr_request {
/* the requested channel type */
int channel_type;
- /* the bts we have decided to use */
- struct gsm_network *network;
-
/* the callback data */
gsm_cbfn *cbfn;
void *param;
@@ -100,7 +97,7 @@ static void subscr_send_paging_request(struct gsm_subscriber *subscr)
assert(!llist_empty(&subscr->requests));
request = (struct subscr_request *)subscr->requests.next;
- paging_request(request->network, subscr, request->channel_type,
+ paging_request(subscr->net, subscr, request->channel_type,
subscr_paging_cb, subscr);
}
@@ -146,8 +143,7 @@ struct gsm_subscriber *subscr_put(struct gsm_subscriber *subscr)
}
void subscr_get_channel(struct gsm_subscriber *subscr,
- struct gsm_network *network, int type,
- gsm_cbfn *cbfn, void *param)
+ int type, gsm_cbfn *cbfn, void *param)
{
struct subscr_request *request;
@@ -160,7 +156,6 @@ void subscr_get_channel(struct gsm_subscriber *subscr,
}
memset(request, 0, sizeof(*request));
- request->network = network;
request->subscr = subscr;
request->channel_type = type;
request->cbfn = cbfn;
diff --git a/openbsc/tests/channel/channel_test.c b/openbsc/tests/channel/channel_test.c
index 4dcf69ae2..1b01878b5 100644
--- a/openbsc/tests/channel/channel_test.c
+++ b/openbsc/tests/channel/channel_test.c
@@ -63,9 +63,10 @@ int main(int argc, char** argv)
/* Create a dummy subscriber */
struct gsm_subscriber *subscr = subscr_alloc();
subscr->lac = 23;
+ subscr->net = network;
/* Ask for a channel... */
- subscr_get_channel(subscr, network, RSL_CHANNEED_TCH_F, subscr_cb, (void*)0x2342L);
+ subscr_get_channel(subscr, RSL_CHANNEED_TCH_F, subscr_cb, (void*)0x2342L);
while (1) {
bsc_select_main(0);