msgb ctx: use new msgb_talloc_ctx_init(), don't access talloc_msgb_ctx

Drop extern definitions of talloc_msgb_ctx and use msgb_talloc_ctx_init()
instead.

In sgsn_test.c, use a local variable msgb_ctx to do the talloc report
from the return value of msgb_talloc_ctx_init().

Change-Id: I2f9ace855f0ecbdc9adf5d75bcb1a3d666570de4
diff --git a/openbsc/src/gprs/gb_proxy_main.c b/openbsc/src/gprs/gb_proxy_main.c
index 2ddfca7..04875c7 100644
--- a/openbsc/src/gprs/gb_proxy_main.c
+++ b/openbsc/src/gprs/gb_proxy_main.c
@@ -189,8 +189,6 @@
 	}
 }
 
-extern void *tall_msgb_ctx;
-
 extern int bsc_vty_go_parent(struct vty *vty);
 
 static struct vty_app_info vty_info = {
@@ -231,7 +229,7 @@
 	int rc;
 
 	tall_bsc_ctx = talloc_named_const(NULL, 0, "nsip_proxy");
-	tall_msgb_ctx = talloc_named_const(tall_bsc_ctx, 0, "msgb");
+	msgb_talloc_ctx_init(tall_bsc_ctx, 0);
 
 	signal(SIGINT, &signal_handler);
 	signal(SIGABRT, &signal_handler);
diff --git a/openbsc/src/gprs/sgsn_main.c b/openbsc/src/gprs/sgsn_main.c
index 822c359..b4be631 100644
--- a/openbsc/src/gprs/sgsn_main.c
+++ b/openbsc/src/gprs/sgsn_main.c
@@ -163,7 +163,6 @@
 
 /* NSI that BSSGP uses when transmitting on NS */
 extern struct gprs_ns_inst *bssgp_nsi;
-extern void *tall_msgb_ctx;
 
 extern int bsc_vty_go_parent(struct vty *vty);
 
@@ -328,7 +327,7 @@
 
 	srand(time(NULL));
 	tall_bsc_ctx = talloc_named_const(NULL, 0, "osmo_sgsn");
-	tall_msgb_ctx = talloc_named_const(tall_bsc_ctx, 0, "msgb");
+	msgb_talloc_ctx_init(tall_bsc_ctx, 0);
 
 	signal(SIGINT, &signal_handler);
 	signal(SIGABRT, &signal_handler);
diff --git a/openbsc/src/libcommon/talloc_ctx.c b/openbsc/src/libcommon/talloc_ctx.c
index a917a8c..7a8bfd3 100644
--- a/openbsc/src/libcommon/talloc_ctx.c
+++ b/openbsc/src/libcommon/talloc_ctx.c
@@ -20,7 +20,6 @@
 #include <osmocom/core/talloc.h>
 
 extern void *tall_bsc_ctx;
-extern void *tall_msgb_ctx;
 extern void *tall_fle_ctx;
 extern void *tall_locop_ctx;
 extern void *tall_authciphop_ctx;
@@ -38,7 +37,7 @@
 
 void talloc_ctx_init(void *ctx_root)
 {
-	tall_msgb_ctx = talloc_named_const(ctx_root, 0, "msgb");
+	msgb_talloc_ctx_init(ctx_root, 0);
 	tall_fle_ctx = talloc_named_const(ctx_root, 0, "bs11_file_list_entry");
 	tall_locop_ctx = talloc_named_const(ctx_root, 0, "loc_updating_oper");
 	tall_authciphop_ctx = talloc_named_const(ctx_root, 0, "auth_ciph_oper");
diff --git a/openbsc/src/osmo-bsc_nat/bsc_nat.c b/openbsc/src/osmo-bsc_nat/bsc_nat.c
index 6ae8c05..a4dd679 100644
--- a/openbsc/src/osmo-bsc_nat/bsc_nat.c
+++ b/openbsc/src/osmo-bsc_nat/bsc_nat.c
@@ -1573,12 +1573,11 @@
 	osmo_timer_schedule(&sccp_close, SCCP_CLOSE_TIME, 0);
 }
 
-extern void *tall_msgb_ctx;
 extern void *tall_ctr_ctx;
 static void talloc_init_ctx()
 {
 	tall_bsc_ctx = talloc_named_const(NULL, 0, "nat");
-	tall_msgb_ctx = talloc_named_const(tall_bsc_ctx, 0, "msgb");
+	msgb_talloc_ctx_init(tall_bsc_ctx, 0);
 	tall_ctr_ctx = talloc_named_const(tall_bsc_ctx, 0, "counter");
 }