Change in osmo-msc[master]: add rudimentary NRI support for MSC pooling

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.

laforge gerrit-no-reply at lists.osmocom.org
Fri Jun 19 20:41:35 UTC 2020


laforge has submitted this change. ( https://gerrit.osmocom.org/c/osmo-msc/+/18770 )

Change subject: add rudimentary NRI support for MSC pooling
......................................................................

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
---
M include/osmocom/msc/vlr.h
M src/libmsc/msc_vty.c
M src/libvlr/vlr.c
M tests/msc_vlr/msc_vlr_test_authen_reuse.err
M tests/msc_vlr/msc_vlr_test_call.err
M tests/msc_vlr/msc_vlr_test_gsm_authen.err
M tests/msc_vlr/msc_vlr_test_gsm_ciph.err
M tests/msc_vlr/msc_vlr_test_hlr_reject.err
M tests/msc_vlr/msc_vlr_test_hlr_timeout.err
M tests/msc_vlr/msc_vlr_test_ms_timeout.err
M tests/msc_vlr/msc_vlr_test_no_authen.err
M tests/msc_vlr/msc_vlr_test_reject_concurrency.err
M tests/msc_vlr/msc_vlr_test_rest.err
M tests/msc_vlr/msc_vlr_test_ss.err
M tests/msc_vlr/msc_vlr_test_umts_authen.err
M tests/msc_vlr/msc_vlr_tests.c
M tests/test_nodes.vty
17 files changed, 217 insertions(+), 122 deletions(-)

Approvals:
  neels: Looks good to me, approved
  Jenkins Builder: Verified



diff --git a/include/osmocom/msc/vlr.h b/include/osmocom/msc/vlr.h
index 83f83c7..3b9bbc4 100644
--- a/include/osmocom/msc/vlr.h
+++ b/include/osmocom/msc/vlr.h
@@ -269,6 +269,8 @@
 		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 a92609d..29deb5e 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 @@
 	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 @@
 	/* Timer introspection commands (generic osmo_tdef API) */
 	osmo_tdef_vty_groups_write(vty, " ");
 
+	msc_write_nri(vty);
+
 	return CMD_SUCCESS;
 }
 
@@ -2002,6 +2075,9 @@
 	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 @@
 	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 3a44d30..33d6331 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 @@
 			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 @@
 
 	/* 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 fc33b38..9b0dac2 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 a8c7984..337483c 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 7042355..3da091f 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 e753096..edd4ee6 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 f0d94b4..51fc0e8 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 3717533..d68b4f7 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 @@
 ===== 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 @@
 ===== 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 66ea0bb..653e56c 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 2ee21da..a74c18f 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 48086a7..4bad93e 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 ad8d822..be1a888 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 cd4cf5c..f7f3e78 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 @@
 ===== 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 @@
 ===== 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 53cce79..0b049b9 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 @@
 ===== 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 e00c337..21af3ca 100644
--- a/tests/msc_vlr/msc_vlr_tests.c
+++ b/tests/msc_vlr/msc_vlr_tests.c
@@ -1049,30 +1049,31 @@
 	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 edb891b..520f07c 100644
--- a/tests/test_nodes.vty
+++ b/tests/test_nodes.vty
@@ -63,6 +63,9 @@
   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

-- 
To view, visit https://gerrit.osmocom.org/c/osmo-msc/+/18770
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-msc
Gerrit-Branch: master
Gerrit-Change-Id: Iafe0878a0a2c8669080d757b34a398ea75fced36
Gerrit-Change-Number: 18770
Gerrit-PatchSet: 6
Gerrit-Owner: neels <nhofmeyr at sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge at osmocom.org>
Gerrit-Reviewer: neels <nhofmeyr at sysmocom.de>
Gerrit-Reviewer: pespin <pespin at sysmocom.de>
Gerrit-MessageType: merged
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20200619/38a55fc4/attachment.htm>


More information about the gerrit-log mailing list