osmith has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bsc-nat/+/27709 )
Change subject: main: use osmo_fsm_set_dealloc_ctx(OTC_SELECT)
......................................................................
main: use osmo_fsm_set_dealloc_ctx(OTC_SELECT)
Prepare to use osmo_mgcp_ep_alloc in a future patch, which requires
using osmo_fsm_set_dealloc_ctx(OTC_SELECT) for deferred FSM deallocation
(see the warning in src/libosmo-mgcp-client/mgcp_client_endpoint_fsm.c).
Related: SYS#5560
Change-Id: I97abf88fa64cc1a4906f356c57912593d4366a37
---
M src/osmo-bsc-nat/main.c
1 file changed, 1 insertion(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bsc-nat refs/changes/09/27709/1
diff --git a/src/osmo-bsc-nat/main.c b/src/osmo-bsc-nat/main.c
index 6704565..7e9f90d 100644
--- a/src/osmo-bsc-nat/main.c
+++ b/src/osmo-bsc-nat/main.c
@@ -184,6 +184,7 @@
talloc_enable_null_tracking();
tall_bsc_nat_ctx = talloc_named_const(NULL, 0, "bsc_nat");
+ osmo_fsm_set_dealloc_ctx(OTC_SELECT);
rc = osmo_init_logging2(tall_bsc_nat_ctx, &bsc_nat_log_info);
if (rc < 0)
--
To view, visit https://gerrit.osmocom.org/c/osmo-bsc-nat/+/27709
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bsc-nat
Gerrit-Branch: master
Gerrit-Change-Id: I97abf88fa64cc1a4906f356c57912593d4366a37
Gerrit-Change-Number: 27709
Gerrit-PatchSet: 1
Gerrit-Owner: osmith <osmith(a)sysmocom.de>
Gerrit-MessageType: newchange
osmith has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bsc-nat/+/27704 )
Change subject: bssap: forward paging from MSC to all BSCs
......................................................................
bssap: forward paging from MSC to all BSCs
I've considered only forwarding to specific BSCs based on the cell
identifier list inside the paging. For that, the cell identifier would
need to be stored beforehand (read it from location update? or put it in
vty config?) and I'm not sure if it is required, so don't do this for
now and extend it later if needed.
Related: SYS#5560
Related: https://osmocom.org/projects/osmo-bscnat/wiki/AoIP_OsmoBSCNAT#PAGING-BSC
Change-Id: I2532d94aab82d136b932d57fa53c8ecf2d8d1fd9
---
M src/osmo-bsc-nat/bssap.c
1 file changed, 38 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bsc-nat refs/changes/04/27704/1
diff --git a/src/osmo-bsc-nat/bssap.c b/src/osmo-bsc-nat/bssap.c
index 94a450a..8e73a50 100644
--- a/src/osmo-bsc-nat/bssap.c
+++ b/src/osmo-bsc-nat/bssap.c
@@ -38,6 +38,41 @@
return osmo_sccp_tx_unitdata_msg(sccp_inst->scu, &sccp_inst->addr, addr, msg);
}
+static int bssmap_cn_handle_paging(struct osmo_sccp_addr *addr, struct msgb *msg, unsigned int length)
+{
+ struct bsc_nat_sccp_inst *sccp_inst = g_bsc_nat->ran.sccp_inst;
+ struct msc *msc = msc_get();
+ struct bsc *bsc;
+ int ret = 0;
+ int rc;
+
+ if (msc->addr.pc != addr->pc) {
+ LOGP(DMAIN, LOGL_ERROR, "Unexpected Rx PAGING in CN from %s, which is not %s\n",
+ osmo_ss7_pointcode_print(NULL, addr->pc), talloc_get_name(msc));
+ return -1;
+ }
+
+ LOGP(DMAIN, LOGL_DEBUG, "Rx PAGING from %s\n", talloc_get_name(msc));
+
+ msgb_pull_to_l2(msg);
+
+ /* Page all BSCs */
+ llist_for_each_entry(bsc, &g_bsc_nat->ran.bscs, list) {
+ LOGP(DMAIN, LOGL_DEBUG, "Fwd to %s\n", talloc_get_name(bsc));
+ rc = osmo_sccp_tx_unitdata(sccp_inst->scu,
+ &sccp_inst->addr,
+ &bsc->addr,
+ msg->data,
+ msgb_length(msg));
+ if (rc < 0) {
+ LOGP(DMAIN, LOGL_ERROR, "Fwd to %s failed\n", talloc_get_name(bsc));
+ ret = rc;
+ }
+ }
+
+ return ret;
+}
+
static int bssmap_cn_handle_reset_ack(struct osmo_sccp_addr *addr, struct msgb *msg, unsigned int length)
{
struct msc *msc = msc_get();
@@ -59,6 +94,9 @@
int ret = 0;
switch (msg->l3h[0]) {
+ case BSS_MAP_MSG_PAGING:
+ ret = bssmap_cn_handle_paging(addr, msg, length);
+ break;
case BSS_MAP_MSG_RESET_ACKNOWLEDGE:
ret = bssmap_cn_handle_reset_ack(addr, msg, length);
break;
--
To view, visit https://gerrit.osmocom.org/c/osmo-bsc-nat/+/27704
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bsc-nat
Gerrit-Branch: master
Gerrit-Change-Id: I2532d94aab82d136b932d57fa53c8ecf2d8d1fd9
Gerrit-Change-Number: 27704
Gerrit-PatchSet: 1
Gerrit-Owner: osmith <osmith(a)sysmocom.de>
Gerrit-MessageType: newchange
osmith has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bsc-nat/+/27705 )
Change subject: README: osmo-dev: add BSC{0,1}_CODEC_LIST="fr2"
......................................................................
README: osmo-dev: add BSC{0,1}_CODEC_LIST="fr2"
In the test setup, let the real BSC and virtual BSC use the same codec.
With this the voice frames are successfully sent back by the virtual MS.
When using a different codec, since transcoding is not implemented in
OsmoMGW, the stream becomes invalid in MGW-MSC and gets dropped by BTS1,
never reaching the virtual MS.
Related: SYS#5560
Change-Id: I78d666ad77c03459f5369b64e651e47ce1d4f12c
---
M README.md
1 file changed, 2 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bsc-nat refs/changes/05/27705/1
diff --git a/README.md b/README.md
index ca367a2..7c66e35 100644
--- a/README.md
+++ b/README.md
@@ -60,6 +60,8 @@
```
BSC_COUNT=2
+BSC0_CODEC_LIST="fr2"
+BSC1_CODEC_LIST="fr2"
BTS1_RUN_IN_OSMO_DEV=1
STP_RAN_IP="127.0.0.2"
MS_RUN_IN_OSMO_DEV=1
--
To view, visit https://gerrit.osmocom.org/c/osmo-bsc-nat/+/27705
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bsc-nat
Gerrit-Branch: master
Gerrit-Change-Id: I78d666ad77c03459f5369b64e651e47ce1d4f12c
Gerrit-Change-Number: 27705
Gerrit-PatchSet: 1
Gerrit-Owner: osmith <osmith(a)sysmocom.de>
Gerrit-MessageType: newchange