osmo-gbproxy: Free msgb in ns2 prim callback

Commit cce88282388f in libosmocore changed the msg ownership model - the
callback that the user registers is now responsible for freeing the msg.

Change-Id: Iee940aba7d94afefb5957dbe5f0b04dcf951b31c
Related: SYS#4998
diff --git a/src/gbproxy/gb_proxy.c b/src/gbproxy/gb_proxy.c
index ccf3f73..fb58284 100644
--- a/src/gbproxy/gb_proxy.c
+++ b/src/gbproxy/gb_proxy.c
@@ -1470,6 +1470,7 @@
 		msgb_nsei(oph->msg) = nsp->nsei;
 
 		rc = gbprox_rcvmsg(cfg, oph->msg);
+		msgb_free(oph->msg);
 		break;
 	case PRIM_NS_STATUS:
 		gprs_ns_prim_status_cb(cfg, nsp);
diff --git a/tests/gbproxy/gbproxy_test.c b/tests/gbproxy/gbproxy_test.c
index 1662980..76fc000 100644
--- a/tests/gbproxy/gbproxy_test.c
+++ b/tests/gbproxy/gbproxy_test.c
@@ -505,7 +505,6 @@
 			PRIM_OP_INDICATION, msg);
 
 	gprs_ns2_callback(&nsp.oph, &gbcfg);
-	talloc_free(msg);
 }
 static int gbprox_test_bssgp_send_cb(void *ctx, struct msgb *msg);
 
@@ -1037,9 +1036,8 @@
 		break;
 	}
 
-	/* Hand off to gbproxy */
+	/* Hand off to gbproxy which will free the msg */
 	return gprs_ns2_prim_cb(oph, ctx);
-
 }
 
 /* Get the next message from the receive FIFO