aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src/gsm_subscriber.c
diff options
context:
space:
mode:
authorHolger Freyther <ich@tamarin.(none)>2009-03-31 04:35:19 +0200
committerHolger Hans Peter Freyther <zecke@selfish.org>2009-06-10 13:20:39 +0200
commit04866d42792f59b334a13e836237947222b41127 (patch)
tree2ae505601aeaa371677ad1963f571d25950e7744 /openbsc/src/gsm_subscriber.c
parentfdac4cc176892734ad782dccc2dc45a0282298a2 (diff)
Proposal for a "channel request" interface...
Reuqests for a subscriber a stored within the gsm_subscriber datastructure and it will keep track how many channels are allocated for this user and of which type to decide on policy... e.g. attempt to submit SMS during a phone call and not doing paging but a simple (immediate) assignment of the channel...
Diffstat (limited to 'openbsc/src/gsm_subscriber.c')
-rw-r--r--openbsc/src/gsm_subscriber.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/openbsc/src/gsm_subscriber.c b/openbsc/src/gsm_subscriber.c
index 3f608ec30..3a8179335 100644
--- a/openbsc/src/gsm_subscriber.c
+++ b/openbsc/src/gsm_subscriber.c
@@ -27,6 +27,7 @@
#include <string.h>
#include <openbsc/gsm_subscriber.h>
+#include <openbsc/paging.h>
#include <openbsc/debug.h>
#include <openbsc/db.h>
@@ -45,6 +46,8 @@ struct gsm_subscriber *subscr_alloc(void)
llist_add_tail(&s->entry, &active_subscribers);
s->use_count = 1;
+ INIT_LLIST_HEAD(&s->requests);
+
return s;
}
@@ -131,6 +134,13 @@ struct gsm_subscriber *subscr_put(struct gsm_subscriber *subscr)
return NULL;
}
+void subscr_get_channel(struct gsm_subscriber *subscr,
+ struct gsm_network *network, int type,
+ gsm_cbfn *cbfn, void *param)
+{
+ paging_request(network, subscr, type, cbfn, param);
+}
+
void subscr_put_channel(struct gsm_lchan *lchan)
{
/*
@@ -141,3 +151,4 @@ void subscr_put_channel(struct gsm_lchan *lchan)
*/
put_lchan(lchan);
}
+