aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNeels Hofmeyr <neels@hofmeyr.de>2020-05-27 00:04:26 +0200
committerNeels Hofmeyr <neels@hofmeyr.de>2020-06-19 03:58:13 +0200
commit9aac5c2d215d6309445801d1f3cd954933942615 (patch)
tree8cd996b3f5582565c08eaddce0ed2e75d23788cd
parent46d526a3dff7527ba23fde1df3d6243e7edf6486 (diff)
add rudimentary NRI support for MSC pooling
This patch served for a manual testing counterpart for osmo-bsc to implement MSC pooling. This enables a basic MSC pooling setup, but for a production setup, osmo-msc would still lack various features related to unloading subscribers to another MSC as explained in 3GPP TS 23.236. Change-Id: Iafe0878a0a2c8669080d757b34a398ea75fced36
-rw-r--r--include/osmocom/msc/vlr.h2
-rw-r--r--src/libmsc/msc_vty.c77
-rw-r--r--src/libvlr/vlr.c12
-rw-r--r--tests/msc_vlr/msc_vlr_test_authen_reuse.err16
-rw-r--r--tests/msc_vlr/msc_vlr_test_call.err14
-rw-r--r--tests/msc_vlr/msc_vlr_test_gsm_authen.err20
-rw-r--r--tests/msc_vlr/msc_vlr_test_gsm_ciph.err20
-rw-r--r--tests/msc_vlr/msc_vlr_test_hlr_reject.err20
-rw-r--r--tests/msc_vlr/msc_vlr_test_hlr_timeout.err8
-rw-r--r--tests/msc_vlr/msc_vlr_test_ms_timeout.err12
-rw-r--r--tests/msc_vlr/msc_vlr_test_no_authen.err22
-rw-r--r--tests/msc_vlr/msc_vlr_test_reject_concurrency.err24
-rw-r--r--tests/msc_vlr/msc_vlr_test_rest.err10
-rw-r--r--tests/msc_vlr/msc_vlr_test_ss.err8
-rw-r--r--tests/msc_vlr/msc_vlr_test_umts_authen.err28
-rw-r--r--tests/msc_vlr/msc_vlr_tests.c43
-rw-r--r--tests/test_nodes.vty3
17 files changed, 217 insertions, 122 deletions
diff --git a/include/osmocom/msc/vlr.h b/include/osmocom/msc/vlr.h
index 83f83c717..3b9bbc41c 100644
--- a/include/osmocom/msc/vlr.h
+++ b/include/osmocom/msc/vlr.h
@@ -269,6 +269,8 @@ struct vlr_instance {
bool auth_reuse_old_sets_on_error;
bool parq_retrieve_imsi;
bool is_ps;
+ uint8_t nri_bitlen;
+ struct osmo_nri_ranges *nri_ranges;
} cfg;
/* A free-form pointer for use by the caller */
void *user_ctx;
diff --git a/src/libmsc/msc_vty.c b/src/libmsc/msc_vty.c
index a92609d7f..29deb5e82 100644
--- a/src/libmsc/msc_vty.c
+++ b/src/libmsc/msc_vty.c
@@ -33,6 +33,7 @@
#include <osmocom/gsm/protocol/gsm_08_58.h>
#include <osmocom/gsm/protocol/gsm_04_14.h>
#include <osmocom/gsm/protocol/gsm_08_08.h>
+#include <osmocom/gsm/gsm23236.h>
#include <osmocom/sigtran/sccp_helpers.h>
@@ -657,6 +658,76 @@ DEFUN(cfg_msc_osmux,
return CMD_SUCCESS;
}
+#define NRI_STR "Mapping of Network Resource Indicators to this MSC, for MSC pooling\n"
+DEFUN(cfg_msc_nri_bitlen, cfg_msc_nri_bitlen_cmd,
+ "nri bitlen <0-15>",
+ NRI_STR
+ "Set number of NRI bits to place in TMSI identities (always starting just after the most significant octet)\n"
+ "bit count (default: " OSMO_STRINGIFY_VAL(NRI_BITLEN_DEFAULT) ")\n")
+{
+ gsmnet->vlr->cfg.nri_bitlen = atoi(argv[0]);
+ return CMD_SUCCESS;
+}
+
+#define NRI_STR "Mapping of Network Resource Indicators to this MSC, for MSC pooling\n"
+#define NRI_ARGS_TO_STR_FMT "%s%s%s"
+#define NRI_ARGS_TO_STR_ARGS(ARGC, ARGV) ARGV[0], (ARGC>1)? ".." : "", (ARGC>1)? ARGV[1] : ""
+#define NRI_FIRST_LAST_STR "First value of the NRI value range, should not surpass the configured 'nri bitlen'.\n" \
+ "Last value of the NRI value range, should not surpass the configured 'nri bitlen' and be larger than the" \
+ " first value; if omitted, apply only the first value.\n"
+
+DEFUN(cfg_msc_nri_add, cfg_msc_nri_add_cmd,
+ "nri add <0-32767> [<0-32767>]",
+ NRI_STR "Add NRI value or range to the NRI mapping for this MSC\n"
+ NRI_FIRST_LAST_STR)
+{
+ const char *message;
+ int rc = osmo_nri_ranges_vty_add(&message, NULL, gsmnet->vlr->cfg.nri_ranges, argc, argv, gsmnet->vlr->cfg.nri_bitlen);
+ if (message) {
+ vty_out(vty, "%% %s: " NRI_ARGS_TO_STR_FMT, message, NRI_ARGS_TO_STR_ARGS(argc, argv));
+ }
+ if (rc < 0)
+ return CMD_WARNING;
+ return CMD_SUCCESS;
+}
+
+DEFUN(cfg_msc_nri_del, cfg_msc_nri_del_cmd,
+ "nri del <0-32767> [<0-32767>]",
+ NRI_STR "Remove NRI value or range from the NRI mapping for this MSC\n"
+ NRI_FIRST_LAST_STR)
+{
+ const char *message;
+ int rc = osmo_nri_ranges_vty_del(&message, NULL, gsmnet->vlr->cfg.nri_ranges, argc, argv);
+ if (message) {
+ vty_out(vty, "%% %s: " NRI_ARGS_TO_STR_FMT, message, NRI_ARGS_TO_STR_ARGS(argc, argv));
+ }
+ if (rc < 0)
+ return CMD_WARNING;
+ return CMD_SUCCESS;
+}
+
+static void msc_write_nri(struct vty *vty)
+{
+ struct osmo_nri_range *r;
+
+ llist_for_each_entry(r, &gsmnet->vlr->cfg.nri_ranges->entries, entry) {
+ if (osmo_nri_range_validate(r, 255))
+ vty_out(vty, " %% INVALID RANGE:");
+ vty_out(vty, " nri add %d", r->first);
+ if (r->first != r->last)
+ vty_out(vty, " %d", r->last);
+ vty_out(vty, "%s", VTY_NEWLINE);
+ }
+}
+
+DEFUN(show_nri, show_nri_cmd,
+ "show nri",
+ SHOW_STR NRI_STR)
+{
+ msc_write_nri(vty);
+ return CMD_SUCCESS;
+}
+
static int config_write_msc(struct vty *vty)
{
vty_out(vty, "msc%s", VTY_NEWLINE);
@@ -722,6 +793,8 @@ static int config_write_msc(struct vty *vty)
/* Timer introspection commands (generic osmo_tdef API) */
osmo_tdef_vty_groups_write(vty, " ");
+ msc_write_nri(vty);
+
return CMD_SUCCESS;
}
@@ -2002,6 +2075,9 @@ void msc_vty_init(struct gsm_network *msc_network)
install_element(MSC_NODE, &cfg_msc_no_sms_over_gsup_cmd);
install_element(MSC_NODE, &cfg_msc_osmux_cmd);
install_element(MSC_NODE, &cfg_msc_handover_number_range_cmd);
+ install_element(MSC_NODE, &cfg_msc_nri_bitlen_cmd);
+ install_element(MSC_NODE, &cfg_msc_nri_add_cmd);
+ install_element(MSC_NODE, &cfg_msc_nri_del_cmd);
neighbor_ident_vty_init(msc_network);
@@ -2023,6 +2099,7 @@ void msc_vty_init(struct gsm_network *msc_network)
install_element_ve(&show_bsc_cmd);
install_element_ve(&show_msc_conn_cmd);
install_element_ve(&show_msc_transaction_cmd);
+ install_element_ve(&show_nri_cmd);
install_element_ve(&sms_send_pend_cmd);
install_element_ve(&sms_delete_expired_cmd);
diff --git a/src/libvlr/vlr.c b/src/libvlr/vlr.c
index 3a44d3090..33d6331c0 100644
--- a/src/libvlr/vlr.c
+++ b/src/libvlr/vlr.c
@@ -25,6 +25,7 @@
#include <osmocom/core/timer.h>
#include <osmocom/core/tdef.h>
#include <osmocom/gsm/protocol/gsm_04_08_gprs.h>
+#include <osmocom/gsm/gsm23236.h>
#include <osmocom/gsm/gsup.h>
#include <osmocom/gsm/apn.h>
#include <osmocom/gsm/gsm48.h>
@@ -329,6 +330,15 @@ int vlr_subscr_alloc_tmsi(struct vlr_subscr *vsub)
LOGP(DDB, LOGL_ERROR, "osmo_get_rand_id() failed: %s\n", strerror(-rc));
return rc;
}
+
+ if (!llist_empty(&vlr->cfg.nri_ranges->entries)) {
+ int16_t nri_v;
+ osmo_tmsi_nri_v_limit_by_ranges(&tmsi, vlr->cfg.nri_ranges, vlr->cfg.nri_bitlen);
+ osmo_tmsi_nri_v_get(&nri_v, tmsi, vlr->cfg.nri_bitlen);
+ LOGP(DVLR, LOGL_DEBUG, "New NRI from range [%s] = 0x%x --> TMSI 0x%08x\n",
+ osmo_nri_ranges_to_str_c(OTC_SELECT, vlr->cfg.nri_ranges), nri_v, tmsi);
+ }
+
/* throw the dice again, if the TSMI doesn't fit */
if (tmsi == GSM_RESERVED_TMSI)
continue;
@@ -1246,6 +1256,8 @@ struct vlr_instance *vlr_alloc(void *ctx, const struct vlr_ops *ops)
/* defaults */
vlr->cfg.assign_tmsi = true;
+ vlr->cfg.nri_bitlen = OSMO_NRI_BITLEN_DEFAULT;
+ vlr->cfg.nri_ranges = osmo_nri_ranges_alloc(vlr);
/* reset shared timer definitions */
osmo_tdefs_reset(msc_tdefs_vlr);
diff --git a/tests/msc_vlr/msc_vlr_test_authen_reuse.err b/tests/msc_vlr/msc_vlr_test_authen_reuse.err
index fc33b38ba..9b0dac271 100644
--- a/tests/msc_vlr/msc_vlr_test_authen_reuse.err
+++ b/tests/msc_vlr/msc_vlr_test_authen_reuse.err
@@ -1,6 +1,6 @@
DLMGCP MGCP client: using endpoint domain '@mgw'
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_auth_use_twice_geran
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -504,7 +504,7 @@ DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:GERAN-A:NONE){MSC_A
===== test_auth_use_twice_geran: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_auth_use_twice_utran
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -1036,7 +1036,7 @@ DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:UTRAN-Iu:NONE){MSC_
===== test_auth_use_twice_utran: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_auth_use_infinitely_geran
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -1644,7 +1644,7 @@ DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:GERAN-A:NONE){MSC_A
===== test_auth_use_infinitely_geran: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_auth_use_infinitely_utran
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -2288,7 +2288,7 @@ DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:UTRAN-Iu:NONE){MSC_
===== test_auth_use_infinitely_utran: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_no_auth_reuse_geran
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -2676,7 +2676,7 @@ DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:GERAN-A:NONE){MSC_A
===== test_no_auth_reuse_geran: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_no_auth_reuse_utran
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -3084,8 +3084,8 @@ DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:UTRAN-Iu:NONE){MSC_
===== test_no_auth_reuse_utran: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
diff --git a/tests/msc_vlr/msc_vlr_test_call.err b/tests/msc_vlr/msc_vlr_test_call.err
index a8c79847e..337483c5f 100644
--- a/tests/msc_vlr/msc_vlr_test_call.err
+++ b/tests/msc_vlr/msc_vlr_test_call.err
@@ -1,6 +1,6 @@
DLMGCP MGCP client: using endpoint domain '@mgw'
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_call_mo
- Total time passed: 0.000000 s
@@ -474,7 +474,7 @@ DVLR freeing VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 (max t
===== test_call_mo: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_call_mt
- Total time passed: 0.000000 s
@@ -945,7 +945,7 @@ DVLR freeing VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 (max t
===== test_call_mt: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_call_mt2
- Total time passed: 0.000000 s
@@ -1370,7 +1370,7 @@ DVLR freeing VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 (max t
===== test_call_mt2: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_call_mo_to_unknown
- Total time passed: 0.000000 s
@@ -1798,7 +1798,7 @@ DVLR freeing VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 (max t
===== test_call_mo_to_unknown: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_call_mo_to_unknown_timeout
- Total time passed: 0.000000 s
@@ -2222,8 +2222,8 @@ DVLR freeing VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 (max t
===== test_call_mo_to_unknown_timeout: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
diff --git a/tests/msc_vlr/msc_vlr_test_gsm_authen.err b/tests/msc_vlr/msc_vlr_test_gsm_authen.err
index 70423557c..3da091ff6 100644
--- a/tests/msc_vlr/msc_vlr_test_gsm_authen.err
+++ b/tests/msc_vlr/msc_vlr_test_gsm_authen.err
@@ -1,6 +1,6 @@
DLMGCP MGCP client: using endpoint domain '@mgw'
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_gsm_authen
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -584,7 +584,7 @@ DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:NONE){MSC_A_ST_RELEASED}: D
===== test_gsm_authen: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_gsm_authen_tmsi
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -1407,7 +1407,7 @@ DMSC msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x07060504:GERAN-A:NONE){MSC_A
===== test_gsm_authen_tmsi: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_gsm_authen_imei
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -1719,7 +1719,7 @@ DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:NONE){MSC_A_ST_RELEASED}: D
===== test_gsm_authen_imei: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_gsm_authen_imei_nack
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -1984,7 +1984,7 @@ DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:LU){MSC_A_ST_RELEASED}: Dea
===== test_gsm_authen_imei_nack: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_gsm_authen_imei_err
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -2250,7 +2250,7 @@ DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:LU){MSC_A_ST_RELEASED}: Dea
===== test_gsm_authen_imei_err: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_gsm_authen_tmsi_imei
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -2603,7 +2603,7 @@ DMSC msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:GERAN-A:NONE){MSC_A
===== test_gsm_authen_tmsi_imei: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_gsm_milenage_authen
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -3161,7 +3161,7 @@ DMSC msc_a(IMSI-901700000010650:MSISDN-42342:GERAN-A:NONE){MSC_A_ST_RELEASED}: D
===== test_gsm_milenage_authen: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_wrong_sres_length
- Total time passed: 0.000000 s
@@ -3306,8 +3306,8 @@ DMSC msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_RELEASED}: Deallocated, inc
===== test_wrong_sres_length: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
diff --git a/tests/msc_vlr/msc_vlr_test_gsm_ciph.err b/tests/msc_vlr/msc_vlr_test_gsm_ciph.err
index e75309618..edd4ee651 100644
--- a/tests/msc_vlr/msc_vlr_test_gsm_ciph.err
+++ b/tests/msc_vlr/msc_vlr_test_gsm_ciph.err
@@ -1,6 +1,6 @@
DLMGCP MGCP client: using endpoint domain '@mgw'
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_ciph
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -652,7 +652,7 @@ DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:NONE){MSC_A_ST_RELEASED}: D
===== test_ciph: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_ciph_tmsi
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -1352,7 +1352,7 @@ DMSC msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:GERAN-A:NONE){MSC_A
===== test_ciph_tmsi: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_ciph_imei
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -1671,7 +1671,7 @@ DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:NONE){MSC_A_ST_RELEASED}: D
===== test_ciph_imei: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_ciph_imeisv
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -1955,7 +1955,7 @@ DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:NONE){MSC_A_ST_RELEASED}: D
===== test_ciph_imeisv: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_ciph_tmsi_imei
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -2315,7 +2315,7 @@ DMSC msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:GERAN-A:NONE){MSC_A
===== test_ciph_tmsi_imei: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_gsm_ciph_in_umts_env
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -2912,7 +2912,7 @@ DMSC msc_a(IMSI-901700000010650:MSISDN-42342:GERAN-A:NONE){MSC_A_ST_RELEASED}: D
===== test_gsm_ciph_in_umts_env: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_a5_3_supported
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -3556,7 +3556,7 @@ DMSC msc_a(IMSI-901700000004620:MSISDN-42342:GERAN-A:NONE){MSC_A_ST_RELEASED}: D
===== test_a5_3_supported: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_cm_service_needs_classmark_update
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -4178,8 +4178,8 @@ DMSC msc_a(IMSI-901700000004620:MSISDN-42342:GERAN-A:NONE){MSC_A_ST_RELEASED}: D
===== test_cm_service_needs_classmark_update: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
diff --git a/tests/msc_vlr/msc_vlr_test_hlr_reject.err b/tests/msc_vlr/msc_vlr_test_hlr_reject.err
index f0d94b447..51fc0e84b 100644
--- a/tests/msc_vlr/msc_vlr_test_hlr_reject.err
+++ b/tests/msc_vlr/msc_vlr_test_hlr_reject.err
@@ -1,6 +1,6 @@
DLMGCP MGCP client: using endpoint domain '@mgw'
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_hlr_rej_auth_info_unknown_imsi
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -101,7 +101,7 @@ DMSC msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_RELEASED}: Deallocated, inc
===== test_hlr_rej_auth_info_unknown_imsi: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_hlr_rej_auth_info_net_fail
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -202,7 +202,7 @@ DMSC msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_RELEASED}: Deallocated, inc
===== test_hlr_rej_auth_info_net_fail: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_hlr_rej_auth_info_net_fail_reuse_tuples
@@ -528,7 +528,7 @@ DVLR freeing VLR subscr IMSI-901700000004620:MSISDN-46071 (max total use count w
===== test_hlr_rej_auth_info_net_fail_reuse_tuples: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_hlr_rej_auth_info_net_fail_no_reuse_tuples
@@ -794,7 +794,7 @@ DVLR freeing VLR subscr IMSI-901700000004620:MSISDN-46071 (max total use count w
===== test_hlr_rej_auth_info_net_fail_no_reuse_tuples: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_hlr_rej_auth_info_unkown_imsi_no_reuse_tuples
@@ -1061,7 +1061,7 @@ DVLR freeing VLR subscr IMSI-901700000004620:MSISDN-46071 (max total use count w
===== test_hlr_rej_auth_info_unkown_imsi_no_reuse_tuples: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_hlr_acc_but_no_auth_tuples
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -1161,7 +1161,7 @@ DMSC msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_RELEASED}: Deallocated, inc
===== test_hlr_acc_but_no_auth_tuples: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_hlr_rej_lu
- Location Update request causes a GSUP LU request to HLR
@@ -1264,7 +1264,7 @@ DMSC msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_RELEASED}: Deallocated, inc
===== test_hlr_rej_lu: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_hlr_no_insert_data
- Location Update request causes a GSUP LU request to HLR
@@ -1380,8 +1380,8 @@ DVLR freeing VLR subscr IMSI-901700000004620 (max total use count was 5)
===== test_hlr_no_insert_data: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
diff --git a/tests/msc_vlr/msc_vlr_test_hlr_timeout.err b/tests/msc_vlr/msc_vlr_test_hlr_timeout.err
index 371753372..d68b4f72c 100644
--- a/tests/msc_vlr/msc_vlr_test_hlr_timeout.err
+++ b/tests/msc_vlr/msc_vlr_test_hlr_timeout.err
@@ -1,6 +1,6 @@
DLMGCP MGCP client: using endpoint domain '@mgw'
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_hlr_timeout_lu_auth_info
- Total time passed: 0.000000 s
@@ -110,7 +110,7 @@ DMSC msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_RELEASED}: Deallocated, inc
===== test_hlr_timeout_lu_auth_info: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_hlr_timeout_lu_upd_loc_result
- Total time passed: 0.000000 s
@@ -237,8 +237,8 @@ DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:LU){MSC_A_ST_RELEASED}: Dea
===== test_hlr_timeout_lu_upd_loc_result: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
diff --git a/tests/msc_vlr/msc_vlr_test_ms_timeout.err b/tests/msc_vlr/msc_vlr_test_ms_timeout.err
index 66ea0bb1a..653e56c55 100644
--- a/tests/msc_vlr/msc_vlr_test_ms_timeout.err
+++ b/tests/msc_vlr/msc_vlr_test_ms_timeout.err
@@ -1,6 +1,6 @@
DLMGCP MGCP client: using endpoint domain '@mgw'
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_ms_timeout_lu_auth_resp
- Total time passed: 0.000000 s
@@ -129,7 +129,7 @@ DMSC msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_RELEASED}: Deallocated, inc
===== test_ms_timeout_lu_auth_resp: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_ms_timeout_cm_auth_resp
- Total time passed: 0.000000 s
@@ -402,7 +402,7 @@ DVLR freeing VLR subscr IMSI-901700000004620:MSISDN-46071 (max total use count w
===== test_ms_timeout_cm_auth_resp: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_ms_timeout_paging
- Total time passed: 0.000000 s
@@ -710,7 +710,7 @@ DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:NONE){MSC_A_ST_RELEASED}: D
===== test_ms_timeout_paging: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_classmark_update_timeout
- Total time passed: 0.000000 s
@@ -863,8 +863,8 @@ DMSC msc_a(IMSI-901700000004620:GERAN-A:LU){MSC_A_ST_RELEASED}: Deallocated, inc
===== test_classmark_update_timeout: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
diff --git a/tests/msc_vlr/msc_vlr_test_no_authen.err b/tests/msc_vlr/msc_vlr_test_no_authen.err
index 2ee21daba..a74c18f40 100644
--- a/tests/msc_vlr/msc_vlr_test_no_authen.err
+++ b/tests/msc_vlr/msc_vlr_test_no_authen.err
@@ -1,6 +1,6 @@
DLMGCP MGCP client: using endpoint domain '@mgw'
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_no_authen
- Location Update request causes a GSUP LU request to HLR
@@ -451,7 +451,7 @@ DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:NONE){MSC_A_ST_RELEASED}: D
===== test_no_authen: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_no_authen_tmsi
- Location Update request causes a GSUP LU request to HLR
@@ -1134,7 +1134,7 @@ DMSC msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x07060504:GERAN-A:NONE){MSC_A
===== test_no_authen_tmsi: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_no_authen_imei
- Location Update request causes a GSUP LU request to HLR
@@ -1385,7 +1385,7 @@ DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:NONE){MSC_A_ST_RELEASED}: D
===== test_no_authen_imei: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_no_authen_tmsi_imei
- Location Update request causes a GSUP LU request to HLR
@@ -1671,7 +1671,7 @@ DMSC msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:GERAN-A:NONE){MSC_A
===== test_no_authen_tmsi_imei: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_no_authen_imeisv
- Location Update request causes an IMEISV ID request back to the MS
@@ -1892,7 +1892,7 @@ DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:NONE){MSC_A_ST_RELEASED}: D
===== test_no_authen_imeisv: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_no_authen_imeisv_imei
- Location Update request causes an IMEISV ID request back to the MS
@@ -2124,7 +2124,7 @@ DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:NONE){MSC_A_ST_RELEASED}: D
===== test_no_authen_imeisv_imei: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_no_authen_imeisv_tmsi
- Location Update request causes an IMEISV ID request back to the MS
@@ -2590,7 +2590,7 @@ DMSC msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x07060504:GERAN-A:NONE){MSC_A
===== test_no_authen_imeisv_tmsi: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_no_authen_imeisv_tmsi_imei
- Location Update request causes an IMEISV ID request back to the MS
@@ -2859,7 +2859,7 @@ DMSC msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:GERAN-A:NONE){MSC_A
===== test_no_authen_imeisv_tmsi_imei: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_no_authen_subscr_expire
- Total time passed: 0.000000 s
@@ -2994,8 +2994,8 @@ DVLR freeing VLR subscr IMSI-901700000004620:MSISDN-46071 (max total use count w
===== test_no_authen_subscr_expire: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
diff --git a/tests/msc_vlr/msc_vlr_test_reject_concurrency.err b/tests/msc_vlr/msc_vlr_test_reject_concurrency.err
index 48086a737..4bad93e65 100644
--- a/tests/msc_vlr/msc_vlr_test_reject_concurrency.err
+++ b/tests/msc_vlr/msc_vlr_test_reject_concurrency.err
@@ -1,6 +1,6 @@
DLMGCP MGCP client: using endpoint domain '@mgw'
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_reject_2nd_conn
- Location Update Request on one connection
@@ -190,7 +190,7 @@ DVLR freeing VLR subscr IMSI-901700000004620:MSISDN-46071 (max total use count w
===== test_reject_2nd_conn: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_reject_lu_during_lu
- Location Update Request
@@ -331,7 +331,7 @@ DVLR freeing VLR subscr IMSI-901700000004620:MSISDN-46071 (max total use count w
===== test_reject_lu_during_lu: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_reject_cm_during_lu
- Location Update Request
@@ -477,7 +477,7 @@ DVLR freeing VLR subscr IMSI-901700000004620:MSISDN-46071 (max total use count w
===== test_reject_cm_during_lu: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_reject_paging_resp_during_lu
- Location Update Request
@@ -617,7 +617,7 @@ DVLR freeing VLR subscr IMSI-901700000004620:MSISDN-46071 (max total use count w
===== test_reject_paging_resp_during_lu: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_reject_lu_during_cm
@@ -853,7 +853,7 @@ DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:CM_SERVICE_REQ){MSC_A_ST_RE
===== test_reject_lu_during_cm: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_reject_cm_during_cm
@@ -1094,7 +1094,7 @@ DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:CM_SERVICE_REQ){MSC_A_ST_RE
===== test_reject_cm_during_cm: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_reject_paging_resp_during_cm
@@ -1319,7 +1319,7 @@ DVLR freeing VLR subscr IMSI-901700000004620:MSISDN-46071 (max total use count w
===== test_reject_paging_resp_during_cm: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_reject_lu_during_paging_resp
@@ -1619,7 +1619,7 @@ DVLR freeing VLR subscr IMSI-901700000004620:MSISDN-46071 (max total use count w
===== test_reject_lu_during_paging_resp: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_accept_cm_during_paging_resp
@@ -1943,7 +1943,7 @@ DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:CM_SERVICE_REQ){MSC_A_ST_RE
===== test_accept_cm_during_paging_resp: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_reject_paging_resp_during_paging_resp
@@ -2240,8 +2240,8 @@ DVLR freeing VLR subscr IMSI-901700000004620:MSISDN-46071 (max total use count w
===== test_reject_paging_resp_during_paging_resp: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
diff --git a/tests/msc_vlr/msc_vlr_test_rest.err b/tests/msc_vlr/msc_vlr_test_rest.err
index ad8d82287..be1a88869 100644
--- a/tests/msc_vlr/msc_vlr_test_rest.err
+++ b/tests/msc_vlr/msc_vlr_test_rest.err
@@ -1,6 +1,6 @@
DLMGCP MGCP client: using endpoint domain '@mgw'
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_cm_service_without_lu
- CM Service Request without a prior Location Updating
@@ -65,7 +65,7 @@ DMSC msc_a(IMSI-901700000004620:GERAN-A:CM_SERVICE_REQ){MSC_A_ST_RELEASED}: Deal
===== test_cm_service_without_lu: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_two_lu
- Location Update request causes a GSUP LU request to HLR
@@ -404,7 +404,7 @@ DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:NONE){MSC_A_ST_RELEASED}: D
===== test_two_lu: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_lu_unknown_tmsi
- Location Update request with unknown TMSI sends ID Request for IMSI
@@ -584,8 +584,8 @@ DVLR freeing VLR subscr IMSI-901700000004620:MSISDN-46071:TMSI-0x23422342 (max t
===== test_lu_unknown_tmsi: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
diff --git a/tests/msc_vlr/msc_vlr_test_ss.err b/tests/msc_vlr/msc_vlr_test_ss.err
index cd4cf5cec..f7f3e78ce 100644
--- a/tests/msc_vlr/msc_vlr_test_ss.err
+++ b/tests/msc_vlr/msc_vlr_test_ss.err
@@ -1,6 +1,6 @@
DLMGCP MGCP client: using endpoint domain '@mgw'
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_ss_ussd_mo_geran
- Location Update request causes a GSUP LU request to HLR
@@ -237,7 +237,7 @@ DVLR freeing VLR subscr IMSI-901700000004620:MSISDN-46071 (max total use count w
===== test_ss_ussd_mo_geran: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_ss_ussd_no_geran
- Location Update request causes a GSUP LU request to HLR
@@ -499,8 +499,8 @@ DVLR freeing VLR subscr IMSI-901700000004620:MSISDN-46071 (max total use count w
===== test_ss_ussd_no_geran: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
diff --git a/tests/msc_vlr/msc_vlr_test_umts_authen.err b/tests/msc_vlr/msc_vlr_test_umts_authen.err
index 53cce7938..0b049b9bd 100644
--- a/tests/msc_vlr/msc_vlr_test_umts_authen.err
+++ b/tests/msc_vlr/msc_vlr_test_umts_authen.err
@@ -1,6 +1,6 @@
DLMGCP MGCP client: using endpoint domain '@mgw'
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_umts_authen_geran
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -602,7 +602,7 @@ DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:GERAN-A:NONE){MSC_A
===== test_umts_authen_geran: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_umts_authen_utran
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -1210,7 +1210,7 @@ DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:UTRAN-Iu:NONE){MSC_
===== test_umts_authen_utran: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_umts_auth_ciph_utran
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -1842,7 +1842,7 @@ DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:UTRAN-Iu:NONE){MSC_
===== test_umts_auth_ciph_utran: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_umts_authen_resync_geran
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -2074,7 +2074,7 @@ DVLR freeing VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 (max t
===== test_umts_authen_resync_geran: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_umts_authen_resync_utran
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -2308,7 +2308,7 @@ DVLR freeing VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 (max t
===== test_umts_authen_resync_utran: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_umts_auth_ciph_resync_utran
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -2552,7 +2552,7 @@ DVLR freeing VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 (max t
===== test_umts_auth_ciph_resync_utran: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_umts_authen_too_short_res_geran
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -2670,7 +2670,7 @@ DMSC msc_a(IMSI-901700000010650:GERAN-A:LU){MSC_A_ST_RELEASED}: Deallocated, inc
===== test_umts_authen_too_short_res_geran: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_umts_authen_too_short_res_utran
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -2788,7 +2788,7 @@ DMSC msc_a(IMSI-901700000010650:UTRAN-Iu:LU){MSC_A_ST_RELEASED}: Deallocated, in
===== test_umts_authen_too_short_res_utran: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_umts_authen_too_long_res_geran
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -2906,7 +2906,7 @@ DMSC msc_a(IMSI-901700000010650:GERAN-A:LU){MSC_A_ST_RELEASED}: Deallocated, inc
===== test_umts_authen_too_long_res_geran: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_umts_authen_too_long_res_utran
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -3024,7 +3024,7 @@ DMSC msc_a(IMSI-901700000010650:UTRAN-Iu:LU){MSC_A_ST_RELEASED}: Deallocated, in
===== test_umts_authen_too_long_res_utran: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_umts_authen_only_sres_geran
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -3142,7 +3142,7 @@ DMSC msc_a(IMSI-901700000010650:GERAN-A:LU){MSC_A_ST_RELEASED}: Deallocated, inc
===== test_umts_authen_only_sres_geran: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
===== test_umts_authen_only_sres_utran
- Location Update request causes a GSUP Send Auth Info request to HLR
@@ -3260,8 +3260,8 @@ DMSC msc_a(IMSI-901700000010650:UTRAN-Iu:LU){MSC_A_ST_RELEASED}: Deallocated, in
===== test_umts_authen_only_sres_utran: SUCCESS
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
full talloc report on 'msgb' (total 0 bytes in 1 blocks)
-talloc_total_blocks(tall_bsc_ctx) == 19
+talloc_total_blocks(tall_bsc_ctx) == 20
diff --git a/tests/msc_vlr/msc_vlr_tests.c b/tests/msc_vlr/msc_vlr_tests.c
index e00c3379a..21af3ca8d 100644
--- a/tests/msc_vlr/msc_vlr_tests.c
+++ b/tests/msc_vlr/msc_vlr_tests.c
@@ -1049,30 +1049,31 @@ static void check_talloc(void *msgb_ctx, void *msc_vlr_tests_ctx)
talloc_report_full(msgb_ctx, stderr);
/* Expecting these to stick around in msc_vlr_tests_ctx:
* full talloc report on 'msgb' (total 0 bytes in 1 blocks)
- * talloc_total_blocks(tall_bsc_ctx) == 19
- * full talloc report on 'msc_vlr_tests_ctx' (total 6532 bytes in 19 blocks)
- * struct osmo_gsup_client contains 256 bytes in 1 blocks (ref 0) 0x56143306aa10
- * struct gsm_network contains 4775 bytes in 11 blocks (ref 0) 0x5614330697e0
- * struct mgcp_client contains 688 bytes in 1 blocks (ref 0) 0x56143306ad80
- * struct sccp_ran_inst contains 152 bytes in 1 blocks (ref 0) 0x56143306ac80
- * struct sccp_ran_inst contains 152 bytes in 1 blocks (ref 0) 0x56143306ab80
- * struct gsup_client_mux contains 152 bytes in 2 blocks (ref 0) 0x56143306a8a0
- * struct ipaccess_unit contains 64 bytes in 1 blocks (ref 0) 0x56143306a960
- * struct vlr_instance contains 248 bytes in 1 blocks (ref 0) 0x56143306a740
- * no_gsup_server contains 15 bytes in 1 blocks (ref 0) 0x56143306a6c0
- * stat_item.c:96 contains 144 bytes in 2 blocks (ref 0) 0x56143306a550
- * stat_item.c:118 contains 96 bytes in 1 blocks (ref 0) 0x56143306a5f0
- * rate_ctr.c:234 contains 2352 bytes in 1 blocks (ref 0) 0x561433069bb0
- * logging contains 1501 bytes in 5 blocks (ref 0) 0x561433068fe0
- * struct log_target contains 244 bytes in 2 blocks (ref 0) 0x561433069610
- * struct log_category contains 76 bytes in 1 blocks (ref 0) 0x561433069720
- * struct log_info contains 1256 bytes in 2 blocks (ref 0) 0x561433069050
- * struct log_info_cat contains 1216 bytes in 1 blocks (ref 0) 0x5614330690e0
- * msgb contains 0 bytes in 1 blocks (ref 0) 0x561433068f70
+ * talloc_total_blocks(tall_bsc_ctx) == 20
+ * full talloc report on 'msc_vlr_tests_ctx' (total 6556 bytes in 20 blocks)
+ * struct osmo_gsup_client contains 264 bytes in 1 blocks (ref 0) 0x613000000260
+ * struct gsm_network contains 4791 bytes in 12 blocks (ref 0) 0x6190000000e0
+ * struct mgcp_client contains 688 bytes in 1 blocks (ref 0) 0x6180000000e0
+ * struct sccp_ran_inst contains 152 bytes in 1 blocks (ref 0) 0x611000000320
+ * struct sccp_ran_inst contains 152 bytes in 1 blocks (ref 0) 0x6110000001e0
+ * struct gsup_client_mux contains 152 bytes in 2 blocks (ref 0) 0x6100000001a0
+ * struct ipaccess_unit contains 64 bytes in 1 blocks (ref 0) 0x60e000023180
+ * struct vlr_instance contains 264 bytes in 2 blocks (ref 0) 0x6130000000a0
+ * struct osmo_nri_ranges contains 16 bytes in 1 blocks (ref 0) 0x60b000000360
+ * no_gsup_server contains 15 bytes in 1 blocks (ref 0) 0x60b0000002b0
+ * ../../../src/libosmocore/src/stat_item.c:96 contains 144 bytes in 2 blocks (ref 0) 0x60d000000170
+ * ../../../src/libosmocore/src/stat_item.c:118 contains 96 bytes in 1 blocks (ref 0) 0x6100000000a0
+ * ../../../src/libosmocore/src/rate_ctr.c:234 contains 2352 bytes in 1 blocks (ref 0) 0x61e0000000e0
+ * logging contains 1501 bytes in 5 blocks (ref 0) 0x60b000000200
+ * struct log_target contains 244 bytes in 2 blocks (ref 0) 0x6120000000a0
+ * struct log_category contains 76 bytes in 1 blocks (ref 0) 0x60f0000000a0
+ * struct log_info contains 1256 bytes in 2 blocks (ref 0) 0x60d0000000a0
+ * struct log_info_cat contains 1216 bytes in 1 blocks (ref 0) 0x61a0000000e0
+ * msgb contains 0 bytes in 1 blocks (ref 0) 0x608000000180
*/
fprintf(stderr, "talloc_total_blocks(tall_bsc_ctx) == %zu\n",
talloc_total_blocks(msc_vlr_tests_ctx));
- if (talloc_total_blocks(msc_vlr_tests_ctx) != 19)
+ if (talloc_total_blocks(msc_vlr_tests_ctx) != 20)
talloc_report_full(msc_vlr_tests_ctx, stderr);
fprintf(stderr, "\n");
}
diff --git a/tests/test_nodes.vty b/tests/test_nodes.vty
index edb891b65..520f07c64 100644
--- a/tests/test_nodes.vty
+++ b/tests/test_nodes.vty
@@ -63,6 +63,9 @@ OsmoMSC(config-msc)# list
no sms-over-gsup
osmux (on|off|only)
handover-number range MSISDN_FIRST MSISDN_LAST
+ nri bitlen <0-15>
+ nri add <0-32767> [<0-32767>]
+ nri del <0-32767> [<0-32767>]
neighbor (a|iu) lac <0-65535> (ran-pc|msc-ipa-name) RAN_PC_OR_MSC_IPA_NAME
neighbor (a|iu) lac-ci <0-65535> <0-65535> (ran-pc|msc-ipa-name) RAN_PC_OR_MSC_IPA_NAME
neighbor (a|iu) cgi <0-999> <0-999> <0-65535> <0-65535> (ran-pc|msc-ipa-name) RAN_PC_OR_MSC_IPA_NAME