aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc
diff options
context:
space:
mode:
authorNeels Hofmeyr <nhofmeyr@sysmocom.de>2016-05-30 21:44:32 +0200
committerNeels Hofmeyr <nhofmeyr@sysmocom.de>2016-09-29 13:23:52 +0200
commitb108f9da024cd76d76833a1dfb1d29cc0a71f905 (patch)
tree2ba21d92efe48508d593b4e79d0471e4cb86db74 /openbsc
parent4b2cd3a27799de4becd6a5b1300f431da82345b1 (diff)
cut off libbsc paging, pending paging in libmsc
Temporarily disable all paging to be able to link libmsc without libbsc. Skip the paging part of channel_test because the paging is now disabled. In osmo-nitb, paging is done on BSC level and MSC level "at the same time". When the new CSCN is fully operational, paging will be controlled separately on the MSC level, and the BSC (RNC) level will be instructed over an IuCS or A-interface to negotiate paging with the MS (UE). This MSC level paging does not yet exist and will be added in subsequent commits. Change-Id: I8b6920ddc54fc3f2876a59664e6722666d8a8a4a
Diffstat (limited to 'openbsc')
-rw-r--r--openbsc/src/libmsc/gsm_04_08.c7
-rw-r--r--openbsc/src/libmsc/gsm_subscriber.c11
-rw-r--r--openbsc/src/libmsc/vty_interface_layer3.c4
-rw-r--r--openbsc/tests/channel/channel_test.c3
-rw-r--r--openbsc/tests/channel/channel_test.ok1
5 files changed, 24 insertions, 2 deletions
diff --git a/openbsc/src/libmsc/gsm_04_08.c b/openbsc/src/libmsc/gsm_04_08.c
index 64860ecdd..7f53b1712 100644
--- a/openbsc/src/libmsc/gsm_04_08.c
+++ b/openbsc/src/libmsc/gsm_04_08.c
@@ -1178,7 +1178,6 @@ static int gsm48_rx_rr_pag_resp(struct gsm_subscriber_connection *conn, struct m
uint8_t mi_type;
char mi_string[GSM48_MI_SIZE];
struct gsm_subscriber *subscr = NULL;
- int rc = 0;
resp = (struct gsm48_pag_resp *) &gh->data[0];
gsm48_paging_extract_mi(resp, msgb_l3len(msg) - sizeof(*gh),
@@ -1213,8 +1212,14 @@ static int gsm48_rx_rr_pag_resp(struct gsm_subscriber_connection *conn, struct m
/* We received a paging */
conn->expire_timer_stopped = 1;
+#if 0
+ TODO implement paging response in libmsc!
+ Excluding this to be able to link without libbsc:
rc = gsm48_handle_paging_resp(conn, msg, subscr);
return rc;
+#else
+ return -ENOTSUP;
+#endif
}
static int gsm48_rx_rr_app_info(struct gsm_subscriber_connection *conn, struct msgb *msg)
diff --git a/openbsc/src/libmsc/gsm_subscriber.c b/openbsc/src/libmsc/gsm_subscriber.c
index 8163f4b70..19c424af8 100644
--- a/openbsc/src/libmsc/gsm_subscriber.c
+++ b/openbsc/src/libmsc/gsm_subscriber.c
@@ -71,6 +71,10 @@ static struct gsm_subscriber *get_subscriber(struct gsm_subscriber_group *sgrp,
return subscr;
}
+#if 0
+TODO implement paging response in libmsc!
+Excluding this to be able to link without libbsc:
+
/*
* We got the channel assigned and can now hand this channel
* over to one of our callbacks.
@@ -163,6 +167,7 @@ static int subscr_paging_cb(unsigned int hooknum, unsigned int event,
/* We _really_ have a channel, secure it now ! */
return gsm48_secure_channel(conn, pr->key_seq, subscr_paging_sec_cb, param);
}
+#endif
struct subscr_request *subscr_request_channel(struct gsm_subscriber *subscr,
int channel_type, gsm_cbfn *cbfn, void *param)
@@ -174,8 +179,14 @@ struct subscr_request *subscr_request_channel(struct gsm_subscriber *subscr,
if (!subscr->is_paging) {
LOGP(DMM, LOGL_DEBUG, "Subscriber %s not paged yet.\n",
subscr_name(subscr));
+#if 0
+ TODO implement paging response in libmsc!
+ Excluding this to be able to link without libbsc:
rc = paging_request(subscr->group->net, subscr, channel_type,
subscr_paging_cb, subscr);
+#else
+ rc = -ENOTSUP;
+#endif
if (rc <= 0) {
LOGP(DMM, LOGL_ERROR, "Subscriber %s paging failed: %d\n",
subscr_name(subscr), rc);
diff --git a/openbsc/src/libmsc/vty_interface_layer3.c b/openbsc/src/libmsc/vty_interface_layer3.c
index 641a86ec9..ead6c70c8 100644
--- a/openbsc/src/libmsc/vty_interface_layer3.c
+++ b/openbsc/src/libmsc/vty_interface_layer3.c
@@ -802,7 +802,11 @@ DEFUN(show_stats,
{
struct gsm_network *net = gsmnet_from_vty(vty);
+#if 0
+ TODO implement statistics specifically for libmsc!
+ Excluding this to be able to link without libbsc:
openbsc_vty_print_statistics(vty, net);
+#endif
vty_out(vty, "Location Update : %lu attach, %lu normal, %lu periodic%s",
net->msc_ctrs->ctr[MSC_CTR_LOC_UPDATE_TYPE_ATTACH].current,
net->msc_ctrs->ctr[MSC_CTR_LOC_UPDATE_TYPE_NORMAL].current,
diff --git a/openbsc/tests/channel/channel_test.c b/openbsc/tests/channel/channel_test.c
index c7bd3424d..7c47ee06f 100644
--- a/openbsc/tests/channel/channel_test.c
+++ b/openbsc/tests/channel/channel_test.c
@@ -83,12 +83,15 @@ void test_request_chan(void)
/* Ask for a channel... */
struct subscr_request *sr;
+#warning _______________SKIPPING SOME TESTS____________________
+#if 0
sr = subscr_request_channel(subscr, RSL_CHANNEED_TCH_F, subscr_cb, (void*)0x2342L);
OSMO_ASSERT(sr);
OSMO_ASSERT(s_cbfn);
s_cbfn(101, 200, (void*)0x1323L, &s_conn, s_data);
OSMO_ASSERT(s_end);
+#endif
}
void test_dyn_ts_subslots(void)
diff --git a/openbsc/tests/channel/channel_test.ok b/openbsc/tests/channel/channel_test.ok
index 33c819350..c582b4dae 100644
--- a/openbsc/tests/channel/channel_test.ok
+++ b/openbsc/tests/channel/channel_test.ok
@@ -1,3 +1,2 @@
Testing the gsm_subscriber chan logic
-Reached, didn't crash, test passed
Testing subslot numbers for pchan types