Change in osmo-msc[master]: add LOG_TRANS, proper context for all transactions

Neels Hofmeyr gerrit-no-reply at lists.osmocom.org
Tue Mar 5 22:33:59 UTC 2019


Neels Hofmeyr has uploaded this change for review. ( https://gerrit.osmocom.org/13139


Change subject: add LOG_TRANS, proper context for all transactions
......................................................................

add LOG_TRANS, proper context for all transactions

Change-Id: I2e60964d7a3c06d051debd1c707051a0eb3101ba
---
M include/osmocom/msc/transaction.h
M src/libmsc/gsm_04_08_cc.c
M src/libmsc/gsm_04_11.c
M src/libmsc/gsm_04_11_gsup.c
M src/libmsc/gsm_09_11.c
M src/libmsc/transaction.c
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_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_ss.err
M tests/msc_vlr/msc_vlr_test_umts_authen.err
14 files changed, 640 insertions(+), 640 deletions(-)



  git pull ssh://gerrit.osmocom.org:29418/osmo-msc refs/changes/39/13139/1

diff --git a/include/osmocom/msc/transaction.h b/include/osmocom/msc/transaction.h
index 401b463..688fba9 100644
--- a/include/osmocom/msc/transaction.h
+++ b/include/osmocom/msc/transaction.h
@@ -3,14 +3,30 @@
 #include <osmocom/msc/gsm_data.h>
 #include <osmocom/msc/gsm_subscriber.h>
 #include <osmocom/core/linuxlist.h>
+#include <osmocom/core/fsm.h>
 #include <osmocom/msc/gsm_04_11.h>
 #include <osmocom/msc/mncc.h>
+#include <osmocom/msc/msc_a.h>
+#include <osmocom/msc/debug.h>
 #include <osmocom/gsm/gsm0411_smc.h>
 #include <osmocom/gsm/gsm0411_smr.h>
 
 /* Used for late TID assignment */
 #define TRANS_ID_UNASSIGNED 0xff
 
+#define LOG_TRANS_CAT(trans, subsys, level, fmt, args...) \
+	LOGP(subsys, level, \
+	     "trans(%s %s callref-0x%x tid-%u%s) " fmt, \
+	     (trans) ? gsm48_pdisc_name((trans)->protocol) : "NULL", \
+	     (trans) ? ((trans)->msc_a ? (trans)->msc_a->c.fi->id : vlr_subscr_name((trans)->vsub)) : "NULL", \
+	     (trans) ? (trans)->callref : 0, \
+	     (trans) ? (trans)->transaction_id : 0, \
+	     (trans) && (trans)->paging_request ? ",PAGING" : "", \
+	     ##args)
+
+#define LOG_TRANS(trans, level, fmt, args...) \
+	     LOG_TRANS_CAT(trans, trans_log_subsys(trans), level, fmt, ##args)
+
 enum bridge_state {
 	BRIDGE_STATE_NONE,
 	BRIDGE_STATE_LOOPBACK_PENDING,
@@ -117,3 +133,20 @@
 			  uint8_t protocol);
 struct gsm_trans *trans_has_conn(const struct msc_a *msc_a);
 void trans_conn_closed(const struct msc_a *msc_a);
+
+static inline int trans_log_subsys(const struct gsm_trans *trans)
+{
+	if (!trans)
+		return DMSC;
+	switch (trans->protocol) {
+	case GSM48_PDISC_CC:
+		return DCC;
+	case GSM48_PDISC_SMS:
+		return DLSMS;
+	default:
+		break;
+	}
+	if (trans->msc_a)
+		return trans->msc_a->c.ran->log_subsys;
+	return DMSC;
+}
diff --git a/src/libmsc/gsm_04_08_cc.c b/src/libmsc/gsm_04_08_cc.c
index 3ecfacc..24a07e9 100644
--- a/src/libmsc/gsm_04_08_cc.c
+++ b/src/libmsc/gsm_04_08_cc.c
@@ -74,8 +74,7 @@
 static void gsm48_cc_guard_timeout(void *arg)
 {
 	struct gsm_trans *trans = arg;
-	DEBUGP(DCC, "(sub %s) guard timeout expired\n",
-	       vlr_subscr_msisdn_or_name(trans->vsub));
+	LOG_TRANS(trans, LOGL_DEBUG, "guard timeout expired\n");
 	trans_free(trans);
 	return;
 }
@@ -83,8 +82,7 @@
 static void gsm48_stop_guard_timer(struct gsm_trans *trans)
 {
 	if (osmo_timer_pending(&trans->cc.timer_guard)) {
-		DEBUGP(DCC, "(sub %s) stopping pending guard timer\n",
-		       vlr_subscr_msisdn_or_name(trans->vsub));
+		LOG_TRANS(trans, LOGL_DEBUG, "stopping pending guard timer\n");
 		osmo_timer_del(&trans->cc.timer_guard);
 	}
 }
@@ -101,9 +99,7 @@
 	 * timer will time out and hard-clear the connection. */
 	if (osmo_timer_pending(&trans->cc.timer_guard))
 		gsm48_stop_guard_timer(trans);
-	DEBUGP(DCC, "(sub %s) starting guard timer with %d seconds\n",
-	       vlr_subscr_msisdn_or_name(trans->vsub),
-	       trans->net->mncc_guard_timeout);
+	LOG_TRANS(trans, LOGL_DEBUG, "starting guard timer with %d seconds\n", trans->net->mncc_guard_timeout);
 	osmo_timer_setup(&trans->cc.timer_guard, gsm48_cc_guard_timeout, trans);
 	osmo_timer_schedule(&trans->cc.timer_guard,
 			    trans->net->mncc_guard_timeout, 0);
@@ -176,11 +172,9 @@
 	if (state > 31 || state < 0)
 		return;
 
-	DEBUGP(DCC, "(ti %02x sub %s) new state %s -> %s\n",
-	       trans->transaction_id,
-	       vlr_subscr_name(trans->vsub),
-	       gsm48_cc_state_name(trans->cc.state),
-	       gsm48_cc_state_name(state));
+	LOG_TRANS(trans, LOGL_DEBUG, "new state %s -> %s\n",
+		  gsm48_cc_state_name(trans->cc.state),
+		  gsm48_cc_state_name(state));
 
 	count_statistics(trans, state);
 	trans->cc.state = state;
@@ -212,7 +206,7 @@
 static void gsm48_stop_cc_timer(struct gsm_trans *trans)
 {
 	if (osmo_timer_pending(&trans->cc.timer)) {
-		DEBUGP(DCC, "stopping pending timer T%x\n", trans->cc.Tcurrent);
+		LOG_TRANS(trans, LOGL_DEBUG, "stopping pending timer T%x\n", trans->cc.Tcurrent);
 		osmo_timer_del(&trans->cc.timer);
 		trans->cc.Tcurrent = 0;
 	}
@@ -224,31 +218,7 @@
 	struct msgb *msg;
 	unsigned char *data;
 
-	DEBUGP(DMNCC, "transmit message %s\n", get_mncc_name(msg_type));
-
-#if BEFORE_MSCSPLIT
-	/* Re-enable this log output once we can obtain this information via
-	 * A-interface, see OS#2391. */
-	if (trans)
-		if (trans->conn && trans->conn->lchan)
-			DEBUGP(DCC, "(bts %d trx %d ts %d ti %x sub %s) "
-				"Sending '%s' to MNCC.\n",
-				trans->conn->lchan->ts->trx->bts->nr,
-				trans->conn->lchan->ts->trx->nr,
-				trans->conn->lchan->ts->nr, trans->transaction_id,
-				vlr_subscr_msisdn_or_name(trans->vsub),
-				get_mncc_name(msg_type));
-		else
-			DEBUGP(DCC, "(bts - trx - ts - ti -- sub %s) "
-				"Sending '%s' to MNCC.\n",
-				vlr_subscr_msisdn_or_name(trans->vsub),
-				get_mncc_name(msg_type));
-	else
-		DEBUGP(DCC, "(bts - trx - ts - ti -- sub -) "
-			"Sending '%s' to MNCC.\n", get_mncc_name(msg_type));
-#else
-	DEBUGP(DCC, "Sending '%s' to MNCC.\n", get_mncc_name(msg_type));
-#endif
+	LOG_TRANS_CAT(trans, DMNCC, LOGL_DEBUG, "tx %s\n", get_mncc_name(msg_type));
 
 	mncc->msg_type = msg_type;
 
@@ -321,7 +291,7 @@
 	}
 
 	if (msc_a) {
-		LOG_MSC_A_CAT(msc_a, DCC, LOGL_DEBUG, "Paging succeeded\n");
+		LOG_TRANS(trans, LOGL_DEBUG, "Paging succeeded\n");
 		/* Assign conn */
 		msc_a_get(msc_a, MSC_A_USE_CC);
 		trans->msc_a = msc_a;
@@ -330,7 +300,7 @@
 		/* send SETUP request to called party */
 		gsm48_cc_tx_setup(trans, &trans->cc.msg);
 	} else {
-		LOGP(DCC, LOGL_DEBUG, "%s Paging expired\n", vlr_subscr_name(trans->vsub));
+		LOG_TRANS(trans, LOGL_DEBUG, "Paging expired\n");
 		/* Temporarily out of order */
 		mncc_release_ind(trans->net, trans,
 				 trans->callref,
@@ -350,11 +320,19 @@
 	struct call_leg *cl1;
 	struct call_leg *cl2;
 
-	if (!trans1 || !trans2)
+	if (!trans1 || !trans2) {
+		LOG_TRANS(trans1 ? : trans2, LOGL_ERROR, "Cannot MNCC_BRIDGE, one or both call legs are unset\n");
 		return -EIO;
+	}
 
-	if (!trans1->msc_a || !trans2->msc_a)
+	if (!trans1->msc_a || !trans2->msc_a) {
+		LOG_TRANS(trans1, LOGL_ERROR, "Cannot MNCC_BRIDGE, one or both call legs lack an active connection\n");
+		LOG_TRANS(trans2, LOGL_ERROR, "Cannot MNCC_BRIDGE, one or both call legs lack an active connection\n");
 		return -EIO;
+	}
+
+	LOG_TRANS(trans1, LOGL_DEBUG, "MNCC_BRIDGE: Local bridge to callref 0x%x\n", trans2->callref);
+	LOG_TRANS(trans2, LOGL_DEBUG, "MNCC_BRIDGE: Local bridge to callref 0x%x\n", trans1->callref);
 
 	/* This call bridging mechanism is only used with the internal MNCC (with external MNCC briding would be done by
 	 * the PBX). For inter-MSC Handover scenarios, an external MNCC is mandatory. The conclusion is that in this
@@ -368,7 +346,7 @@
 
 static int gsm48_cc_rx_status_enq(struct gsm_trans *trans, struct msgb *msg)
 {
-	DEBUGP(DCC, "-> STATUS ENQ\n");
+	LOG_TRANS(trans, LOGL_DEBUG, "-> STATUS ENQ\n");
 	return gsm48_cc_tx_status(trans, msg);
 }
 
@@ -464,7 +442,9 @@
 	if (!trans0 || !trans1)
 		return;
 
-	DEBUGP(DCC, "Failed to bridge TCH for calls %x <-> %x :: %s \n",
+	LOG_TRANS(trans0, LOGL_ERROR, "Failed to bridge TCH for calls %x <-> %x :: %s \n",
+	       trans0->callref, trans1->callref, strerror(err));
+	LOG_TRANS(trans1, LOGL_ERROR, "Failed to bridge TCH for calls %x <-> %x :: %s \n",
 	       trans0->callref, trans1->callref, strerror(err));
 
 	memset(&mx_rel, 0, sizeof(struct gsm_mncc));
@@ -481,7 +461,7 @@
 static void gsm48_start_cc_timer(struct gsm_trans *trans, int current,
 				 int sec, int micro)
 {
-	DEBUGP(DCC, "starting timer T%x with %d seconds\n", current, sec);
+	LOG_TRANS(trans, LOGL_DEBUG, "starting timer T%x with %d seconds\n", current, sec);
 	osmo_timer_setup(&trans->cc.timer, gsm48_cc_timeout, trans);
 	osmo_timer_schedule(&trans->cc.timer, sec, micro);
 	trans->cc.Tcurrent = current;
@@ -571,9 +551,8 @@
 
 	new_cc_state(trans, GSM_CSTATE_INITIATED);
 
-	LOGP(DCC, setup.emergency ? LOGL_NOTICE : LOGL_INFO, "Subscriber %s (%s) sends %sSETUP to %s\n",
-	     vlr_subscr_name(trans->vsub), trans->vsub->msisdn, setup.emergency ? "EMERGENCY_" : "",
-	     setup.called.number);
+	LOG_TRANS(trans, setup.emergency ? LOGL_NOTICE : LOGL_INFO, "%sSETUP to %s\n",
+		  setup.emergency ? "EMERGENCY_" : "", setup.called.number);
 
 	rate_ctr_inc(&trans->net->msc_ctrs->ctr[MSC_CTR_CALL_MO_SETUP]);
 
@@ -597,7 +576,7 @@
 
 	/* transaction id must not be assigned */
 	if (trans->transaction_id != TRANS_ID_UNASSIGNED) {
-		DEBUGP(DCC, "TX Setup with assigned transaction. "
+		LOG_TRANS(trans, LOGL_DEBUG, "TX Setup with assigned transaction. "
 			"This is not allowed!\n");
 		/* Temporarily out of order */
 		rc = mncc_release_ind(trans->net, trans, trans->callref,
@@ -1636,13 +1615,13 @@
 	/* Find callref */
 	trans = trans_find_by_callref(net, callref);
 	if (!trans) {
-		LOGP(DMNCC, LOGL_ERROR, "RTP create for non-existing trans\n");
+		LOG_TRANS_CAT(trans, DMNCC, LOGL_ERROR, "RTP create for non-existing trans\n");
 		mncc_recv_rtp_err(net, callref, MNCC_RTP_CREATE);
 		return -EIO;
 	}
 	log_set_context(LOG_CTX_VLR_SUBSCR, trans->vsub);
 	if (!trans->msc_a) {
-		LOGP(DMNCC, LOGL_NOTICE, "RTP create for trans without conn\n");
+		LOG_TRANS_CAT(trans, DMNCC, LOGL_NOTICE, "RTP create for trans without conn\n");
 		mncc_recv_rtp_err(net, callref, MNCC_RTP_CREATE);
 		return 0;
 	}
@@ -1689,7 +1668,7 @@
 	msg_type = GSM_TCHF_FRAME;
 
 	if (!call_leg_has_local_ip(cl, RTP_TO_CN)) {
-		LOG_MSC_A_CAT(msc_a, DMNCC, LOGL_ERROR, "Cannot RTP CREATE to MNCC, no local RTP IP:port set up\n");
+		LOG_TRANS_CAT(trans, DMNCC, LOGL_ERROR, "Cannot RTP CREATE to MNCC, no local RTP IP:port set up\n");
 		return -EINVAL;
 	}
 	rtp_cn_local = &cl->rtp[RTP_TO_CN]->local;
@@ -1717,13 +1696,13 @@
 	/* Find callref */
 	trans = trans_find_by_callref(net, rtp->callref);
 	if (!trans) {
-		LOGP(DMNCC, LOGL_ERROR, "RTP connect for non-existing trans\n");
+		LOG_TRANS_CAT(trans, DMNCC, LOGL_ERROR, "RTP connect for non-existing trans\n");
 		mncc_recv_rtp_err(net, rtp->callref, MNCC_RTP_CONNECT);
 		return -EIO;
 	}
 	log_set_context(LOG_CTX_VLR_SUBSCR, trans->vsub);
 	if (!trans->msc_a) {
-		LOGP(DMNCC, LOGL_ERROR, "RTP connect for trans without conn\n");
+		LOG_TRANS_CAT(trans, DMNCC, LOGL_ERROR, "RTP connect for trans without conn\n");
 		mncc_recv_rtp_err(net, rtp->callref, MNCC_RTP_CONNECT);
 		return -EIO;
 	}
@@ -1732,7 +1711,7 @@
 	rtps = cl ? cl->rtp[RTP_TO_CN] : NULL;
 
 	if (!rtps) {
-		LOG_MSC_A_CAT(trans->msc_a, DMNCC, LOGL_ERROR, "RTP connect for trans without ongoing call\n");
+		LOG_TRANS_CAT(trans, DMNCC, LOGL_ERROR, "RTP connect for trans without ongoing call\n");
 		mncc_recv_rtp_err(net, rtp->callref, MNCC_RTP_CONNECT);
 		return -EINVAL;
 	}
@@ -1804,12 +1783,10 @@
 int mncc_tx_to_cc(struct gsm_network *net, int msg_type, void *arg)
 {
 	int i, rc = 0;
-	struct gsm_trans *trans = NULL, *transt;
+	struct gsm_trans *trans = NULL;
 	struct msc_a *msc_a = NULL;
 	struct gsm_mncc *data = arg, rel;
 
-	DEBUGP(DMNCC, "receive message %s\n", get_mncc_name(msg_type));
-
 	/* handle special messages */
 	switch(msg_type) {
 	case MNCC_BRIDGE:
@@ -1831,7 +1808,7 @@
 	case GSM_TCHF_FRAME_EFR:
 	case GSM_TCHH_FRAME:
 	case GSM_TCH_FRAME_AMR:
-		LOGP(DMNCC, LOGL_ERROR, "RTP streams must be handled externally; %s not supported.\n",
+		LOG_TRANS_CAT(trans, DMNCC, LOGL_ERROR, "RTP streams must be handled externally; %s not supported.\n",
 		     get_mncc_name(msg_type));
 		return -ENOTSUP;
 	}
@@ -1848,51 +1825,43 @@
 		struct msub *msub;
 
 		if (msg_type != MNCC_SETUP_REQ) {
-			DEBUGP(DCC, "(bts - trx - ts - ti -- sub %s) "
-				"Received '%s' from MNCC with "
-				"unknown callref %d\n", data->called.number,
-				get_mncc_name(msg_type), data->callref);
+			LOG_TRANS_CAT(trans, DCC, LOGL_ERROR, "Unknown call reference for %s\n",
+				      get_mncc_name(msg_type));
 			/* Invalid call reference */
 			return mncc_release_ind(net, NULL, data->callref,
 						GSM48_CAUSE_LOC_PRN_S_LU,
 						GSM48_CC_CAUSE_INVAL_TRANS_ID);
 		}
 		if (!data->called.number[0] && !data->imsi[0]) {
-			DEBUGP(DCC, "(bts - trx - ts - ti) "
-				"Received '%s' from MNCC with "
-				"no number or IMSI\n", get_mncc_name(msg_type));
+			LOG_TRANS_CAT(trans, DCC, LOGL_ERROR, "Neither number nor IMSI in %s\n",
+				      get_mncc_name(msg_type));
 			/* Invalid number */
 			return mncc_release_ind(net, NULL, data->callref,
 						GSM48_CAUSE_LOC_PRN_S_LU,
 						GSM48_CC_CAUSE_INV_NR_FORMAT);
 		}
 		/* New transaction due to setup, find subscriber */
-		if (data->called.number[0])
-			vsub = vlr_subscr_find_by_msisdn(net->vlr,
-							 data->called.number, __func__);
-		else
+		if (data->called.number[0]) {
+			vsub = vlr_subscr_find_by_msisdn(net->vlr, data->called.number, __func__);
+			if (!vsub)
+				LOG_TRANS_CAT(trans, DCC, LOGL_ERROR, "rx %s for unknown subscriber number '%s'\n",
+					      get_mncc_name(msg_type), data->called.number);
+		} else {
 			vsub = vlr_subscr_find_by_imsi(net->vlr, data->imsi, __func__);
-
+			if (!vsub)
+				LOG_TRANS_CAT(trans, DCC, LOGL_ERROR, "rx %s for unknown subscriber IMSI '%s'\n",
+					      get_mncc_name(msg_type), data->imsi);
+		}
+		if (!vsub)
+			return mncc_release_ind(net, NULL, data->callref, GSM48_CAUSE_LOC_PRN_S_LU,
+						GSM48_CC_CAUSE_UNASSIGNED_NR);
 		/* update the subscriber we deal with */
 		log_set_context(LOG_CTX_VLR_SUBSCR, vsub);
 
-		/* If subscriber is not found */
-		if (!vsub) {
-			DEBUGP(DCC, "(bts - trx - ts - ti -- sub %s) "
-				"Received '%s' from MNCC with "
-				"unknown subscriber %s\n", data->called.number,
-				get_mncc_name(msg_type), data->called.number);
-			/* Unknown subscriber */
-			return mncc_release_ind(net, NULL, data->callref,
-						GSM48_CAUSE_LOC_PRN_S_LU,
-						GSM48_CC_CAUSE_UNASSIGNED_NR);
-		}
 		/* If subscriber is not "attached" */
-		if (!vsub->cgi.lai.lac) {
-			DEBUGP(DCC, "(bts - trx - ts - ti -- sub %s) "
-				"Received '%s' from MNCC with "
-				"detached subscriber %s\n", data->called.number,
-				get_mncc_name(msg_type), vlr_subscr_name(vsub));
+		if (!vsub->lu_complete) {
+			LOG_TRANS_CAT(trans, DCC, LOGL_ERROR, "rx %s for subscriber that is not attached: %s\n",
+				      get_mncc_name(msg_type), vlr_subscr_name(vsub));
 			vlr_subscr_put(vsub, __func__);
 			/* Temporarily out of order */
 			return mncc_release_ind(net, NULL, data->callref,
@@ -1903,7 +1872,7 @@
 		trans = trans_alloc(net, vsub, GSM48_PDISC_CC,
 				    TRANS_ID_UNASSIGNED, data->callref);
 		if (!trans) {
-			LOGP(DCC, LOGL_ERROR, "No memory for trans.\n");
+			LOG_TRANS(trans, LOGL_ERROR, "No memory for trans.\n");
 			vlr_subscr_put(vsub, __func__);
 			/* Ressource unavailable */
 			mncc_release_ind(net, NULL, data->callref,
@@ -1917,22 +1886,16 @@
 
 		/* If subscriber has no conn */
 		if (!msub) {
-			/* find transaction with this subscriber already paging */
-			llist_for_each_entry(transt, &net->trans_list, entry) {
-				/* Transaction of our conn? */
-				if (transt == trans ||
-				    transt->vsub != vsub)
-					continue;
-				DEBUGP(DCC, "(bts - trx - ts - ti -- sub %s) "
-					"Received '%s' from MNCC with "
-					"unallocated channel, paging already "
-					"started for lac %d.\n",
-					data->called.number,
-					get_mncc_name(msg_type), vsub->cgi.lai.lac);
+
+			if (vsub->cs.is_paging) {
+				LOG_TRANS(trans, LOGL_DEBUG,
+					  "rx %s, subscriber not yet connected, paging already started\n",
+					  get_mncc_name(msg_type));
 				vlr_subscr_put(vsub, __func__);
 				trans_free(trans);
 				return 0;
 			}
+
 			/* store setup information until paging succeeds */
 			memcpy(&trans->cc.msg, data, sizeof(struct gsm_mncc));
 
@@ -1940,7 +1903,7 @@
 			trans->paging_request = paging_request_start(vsub, PAGING_CAUSE_CALL_CONVERSATIONAL,
 								     cc_paging_cb, trans, "MNCC: establish call");
 			if (!trans->paging_request) {
-				LOGP(DCC, LOGL_ERROR, "Failed to allocate paging token.\n");
+				LOG_TRANS(trans, LOGL_ERROR, "Failed to allocate paging token.\n");
 				trans_free(trans);
 			}
 			vlr_subscr_put(vsub, __func__);
@@ -1957,6 +1920,8 @@
 		log_set_context(LOG_CTX_VLR_SUBSCR, trans->vsub);
 	}
 
+	LOG_TRANS_CAT(trans, DMNCC, LOGL_DEBUG, "rx %s\n", get_mncc_name(msg_type));
+
 	gsm48_start_guard_timer(trans);
 
 	if (trans->msc_a)
@@ -1964,8 +1929,7 @@
 
 	/* if paging did not respond yet */
 	if (!msc_a) {
-		LOG_MSC_A_CAT(msc_a, DCC, LOGL_DEBUG, "Received '%s' from MNCC in paging state\n",
-			      get_mncc_name(msg_type));
+		LOG_TRANS(trans, LOGL_DEBUG, "rx %s in paging state\n", get_mncc_name(msg_type));
 		mncc_set_cause(&rel, GSM48_CAUSE_LOC_PRN_S_LU,
 				GSM48_CC_CAUSE_NORM_CALL_CLEAR);
 		if (msg_type == MNCC_REL_REQ)
@@ -1976,9 +1940,8 @@
 		trans_free(trans);
 		return rc;
 	} else {
-		LOG_MSC_A_CAT(msc_a, DCC, LOGL_DEBUG, "(ti %02x) Received '%s' from MNCC in state %d (%s)\n",
-			      trans->transaction_id, get_mncc_name(msg_type), trans->cc.state,
-			      gsm48_cc_state_name(trans->cc.state));
+		LOG_TRANS(trans, LOGL_DEBUG, "rx %s in state %s\n",
+			      get_mncc_name(msg_type), gsm48_cc_state_name(trans->cc.state));
 	}
 
 	/* Find function for current state and message */
@@ -1987,7 +1950,8 @@
 		 && ((1 << trans->cc.state) & downstatelist[i].states))
 			break;
 	if (i == DOWNSLLEN) {
-		DEBUGP(DCC, "Message '%s' unhandled at state '%s'\n", get_mncc_name(msg_type), gsm48_cc_state_name(trans->cc.state));
+		LOG_TRANS(trans, LOGL_DEBUG, "Message '%s' unhandled at state '%s'\n",
+			  get_mncc_name(msg_type), gsm48_cc_state_name(trans->cc.state));
 		return 0;
 	}
 
@@ -2062,39 +2026,28 @@
 	int i, rc = 0;
 
 	if (msg_type & 0x80) {
-		DEBUGP(DCC, "MSG 0x%2x not defined for PD error\n", msg_type);
+		LOG_TRANS(trans, LOGL_DEBUG, "MSG 0x%2x not defined for PD error\n", msg_type);
 		return -EINVAL;
 	}
 
 	if (!vsub) {
-		LOGP(DCC, LOGL_ERROR, "Invalid conn: no subscriber\n");
+		LOG_TRANS(trans, LOGL_ERROR, "Invalid conn: no subscriber\n");
 		return -EINVAL;
 	}
 
 	/* Find transaction */
 	trans = trans_find_by_id(msc_a, GSM48_PDISC_CC, transaction_id);
 
-#if BEFORE_MSCSPLIT
-	/* Re-enable this log output once we can obtain this information via
-	 * A-interface, see OS#2391. */
-	DEBUGP(DCC, "(bts %d trx %d ts %d ti %x sub %s) "
-		"Received '%s' from MS in state %d (%s)\n",
-		conn->bts->nr, conn->lchan->ts->trx->nr, conn->lchan->ts->nr,
-		transaction_id, vlr_subscr_msisdn_or_name(conn->vsub),
-		gsm48_cc_msg_name(msg_type), trans?(trans->cc.state):0,
-		gsm48_cc_state_name(trans?(trans->cc.state):0));
-#endif
-
 	/* Create transaction */
 	if (!trans) {
-		DEBUGP(DCC, "Unknown transaction ID %x, "
+		LOG_TRANS(trans, LOGL_DEBUG, "Unknown transaction ID %x, "
 			"creating new trans.\n", transaction_id);
 		/* Create transaction */
 		trans = trans_alloc(net, vsub,
 				    GSM48_PDISC_CC,
 				    transaction_id, new_callref++);
 		if (!trans) {
-			LOGP(DCC, LOGL_ERROR, "No memory for trans.\n");
+			LOG_TRANS(trans, LOGL_ERROR, "No memory for trans.\n");
 			rc = gsm48_tx_simple(msc_a,
 					     GSM48_PDISC_CC | (transaction_id << 4),
 					     GSM48_MT_CC_RELEASE_COMPL);
@@ -2119,13 +2072,16 @@
 			msc_a_put(msc_a, MSC_A_USE_CM_SERVICE_CC);
 	}
 
+	LOG_TRANS(trans, LOGL_DEBUG, "rx %s in state %s\n", gsm48_cc_msg_name(msg_type),
+		  gsm48_cc_state_name(trans?(trans->cc.state):0));
+
 	/* find function for current state and message */
 	for (i = 0; i < DATASLLEN; i++)
 		if ((msg_type == datastatelist[i].type)
 		 && ((1 << trans->cc.state) & datastatelist[i].states))
 			break;
 	if (i == DATASLLEN) {
-		DEBUGP(DCC, "Message unhandled at this state.\n");
+		LOG_TRANS(trans, LOGL_DEBUG, "Message unhandled at this state.\n");
 		return 0;
 	}
 
diff --git a/src/libmsc/gsm_04_11.c b/src/libmsc/gsm_04_11.c
index 2cbbcaa..5660440 100644
--- a/src/libmsc/gsm_04_11.c
+++ b/src/libmsc/gsm_04_11.c
@@ -121,11 +121,11 @@
 	osmo_signal_dispatch(SS_SMS, sig_no, &sig);
 }
 
-static int gsm411_sendmsg(struct msc_a *msc_a, struct msgb *msg)
+static int gsm411_sendmsg(struct gsm_trans *trans, struct msgb *msg)
 {
-	DEBUGP(DLSMS, "GSM4.11 TX %s\n", msgb_hexdump(msg));
+	LOG_TRANS(trans, LOGL_DEBUG, "GSM4.11 TX %s\n", msgb_hexdump(msg));
 	msg->l3h = msg->data;
-	return msc_a_tx_dtap_to_i(msc_a, msg);
+	return msc_a_tx_dtap_to_i(trans->msc_a, msg);
 }
 
 /* Paging callback for MT SMS (Paging is triggered by SMC) */
@@ -133,7 +133,7 @@
 {
 	struct gsm_sms *sms = trans->sms.sms;
 
-	DEBUGP(DLSMS, "%s(%s)\n", __func__, msc_a ? "success" : "expired");
+	LOG_TRANS(trans, LOGL_DEBUG, "%s(%s)\n", __func__, msc_a ? "success" : "expired");
 
 	if (msc_a) {
 		/* Paging succeeded */
@@ -167,19 +167,17 @@
 
 	/* Check if connection is already established */
 	if (trans->msc_a != NULL) {
-		LOG_MSC_A_CAT(trans->msc_a, DLSMS, LOGL_DEBUG, "Using an existing connection\n");
+		LOG_TRANS(trans, LOGL_DEBUG, "Using an existing connection\n");
 		return gsm411_smc_recv(&trans->sms.smc_inst,
 			GSM411_MMSMS_EST_CNF, NULL, 0);
 	}
 
 	/* Initiate Paging procedure */
-	LOGP(DLSMS, LOGL_DEBUG, "Initiating Paging procedure "
-		"for %s due to MMSMS_EST_REQ\n", vlr_subscr_name(trans->vsub));
+	LOG_TRANS(trans, LOGL_DEBUG, "Initiating Paging due to MMSMS_EST_REQ\n");
 	trans->paging_request = paging_request_start(trans->vsub, PAGING_CAUSE_SIGNALLING_LOW_PRIO,
 						     mmsms_paging_cb, trans, "MT-SMS");
 	if (!trans->paging_request) {
-		LOGP(DLSMS, LOGL_ERROR, "Failed to initiate Paging procedure for %s\n",
-		     vlr_subscr_name(trans->vsub));
+		LOG_TRANS(trans, LOGL_ERROR, "Failed to initiate Paging\n");
 		/* Inform SMC about channel establishment failure */
 		gsm411_smc_recv(&trans->sms.smc_inst, GSM411_MMSMS_REL_IND, NULL, 0);
 		trans_free(trans);
@@ -201,9 +199,9 @@
 	gh->msg_type = msg_type;
 	OMSC_LINKID_CB(msg) = trans->dlci;
 
-	DEBUGP(DLSMS, "sending CP message (trans=%x)\n", trans->transaction_id);
+	LOG_TRANS(trans, LOGL_DEBUG, "sending CP message (trans=%x)\n", trans->transaction_id);
 
-	return gsm411_sendmsg(trans->msc_a, msg);
+	return gsm411_sendmsg(trans, msg);
 }
 
 /* mm_send: receive MMCCSMS sap message from SMC */
@@ -223,12 +221,12 @@
 		rc = gsm411_cp_sendmsg(msg, trans, cp_msg_type);
 		break;
 	case GSM411_MMSMS_REL_REQ:
-		DEBUGP(DLSMS, "Got MMSMS_REL_REQ, destroying transaction.\n");
+		LOG_TRANS(trans, LOGL_DEBUG, "Got MMSMS_REL_REQ, destroying transaction.\n");
 		msgb_free(msg);
 		trans_free(trans);
 		break;
 	default:
-		LOGP(DLSMS, LOGL_NOTICE, "Unhandled MMCCSMS msg 0x%x\n", msg_type);
+		LOG_TRANS(trans, LOGL_NOTICE, "Unhandled MMCCSMS msg 0x%x\n", msg_type);
 		msgb_free(msg);
 		rc = -EINVAL;
 	}
@@ -247,10 +245,10 @@
 	return gsm411_smc_send(&trans->sms.smc_inst, msg_type, msg);
 }
 
-static int gsm340_rx_sms_submit(struct gsm_sms *gsms)
+static int gsm340_rx_sms_submit(struct gsm_trans *trans, struct gsm_sms *gsms)
 {
 	if (db_sms_store(gsms) != 0) {
-		LOGP(DLSMS, LOGL_ERROR, "Failed to store SMS in Database\n");
+		LOG_TRANS(trans, LOGL_ERROR, "Failed to store SMS in Database\n");
 		return GSM411_RP_CAUSE_MO_NET_OUT_OF_ORDER;
 	}
 	/* dispatch a signal to tell higher level about it */
@@ -269,7 +267,7 @@
 
 /* generate a msgb containing an 03.40 9.2.2.1 SMS-DELIVER TPDU derived from
  * struct gsm_sms, returns total size of TPDU */
-static int gsm340_gen_sms_deliver_tpdu(struct msgb *msg, struct gsm_sms *sms)
+static int gsm340_gen_sms_deliver_tpdu(struct gsm_trans *trans, struct msgb *msg, struct gsm_sms *sms)
 {
 	uint8_t *smsp;
 	uint8_t oa[12];	/* max len per 03.40 */
@@ -332,8 +330,8 @@
 		memcpy(smsp, sms->user_data, sms->user_data_len);
 		break;
 	default:
-		LOGP(DLSMS, LOGL_NOTICE, "Unhandled Data Coding Scheme: 0x%02X\n",
-		     sms->data_coding_scheme);
+		LOG_TRANS(trans, LOGL_NOTICE, "Unhandled Data Coding Scheme: 0x%02X\n",
+			  sms->data_coding_scheme);
 		break;
 	}
 
@@ -341,7 +339,7 @@
 }
 
 /* As defined by GSM 03.40, Section 9.2.2.3. */
-static int gsm340_gen_sms_status_report_tpdu(struct msgb *msg,
+static int gsm340_gen_sms_status_report_tpdu(struct gsm_trans *trans, struct msgb *msg,
 					     struct gsm_sms *sms)
 {
 	unsigned int old_msg_len = msg->len;
@@ -381,15 +379,16 @@
 	/* From GSM 03.40, Section 9.2.3.15, 0x00 means OK. */
 	*smsp = 0x00;
 
-	LOGP(DLSMS, LOGL_INFO, "sending status report for SMS reference %x\n",
-	     sms->msg_ref);
+	LOG_TRANS(trans, LOGL_INFO, "sending status report for SMS reference %x\n",
+		  sms->msg_ref);
 
 	return msg->len - old_msg_len;
 }
 
-static int sms_route_mt_sms(struct msc_a *msc_a, struct gsm_sms *gsms)
+static int sms_route_mt_sms(struct gsm_trans *trans, struct gsm_sms *gsms)
 {
 	int rc;
+	struct msc_a *msc_a = trans->msc_a;
 	struct gsm_network *net = msc_a_net(msc_a);
 
 #ifdef BUILD_SMPP
@@ -405,7 +404,7 @@
 			/* unknown subscriber, try local */
 			goto try_local;
 		if (rc < 0) {
-			LOG_MSC_A_CAT(msc_a, DLSMS, LOGL_ERROR, "SMS delivery error: %d.", rc);
+			LOG_TRANS(trans, LOGL_ERROR, "SMS delivery error: %d.", rc);
 	 		rc = GSM411_RP_CAUSE_MO_TEMP_FAIL;
 			/* rc will be logged by gsm411_send_rp_error() */
 			rate_ctr_inc(&net->msc_ctrs->ctr[MSC_CTR_SMS_DELIVER_UNKNOWN_ERROR]);
@@ -430,7 +429,7 @@
 		if (rc == GSM411_RP_CAUSE_MO_NUM_UNASSIGNED) {
 			rate_ctr_inc(&net->msc_ctrs->ctr[MSC_CTR_SMS_NO_RECEIVER]);
 		} else if (rc < 0) {
-			LOG_MSC_A_CAT(msc_a, DLSMS, LOGL_ERROR, "SMS delivery error: %d.", rc);
+			LOG_TRANS(trans, LOGL_ERROR, "SMS delivery error: %d.", rc);
 	 		rc = GSM411_RP_CAUSE_MO_TEMP_FAIL;
 			/* rc will be logged by gsm411_send_rp_error() */
 			rate_ctr_inc(&net->msc_ctrs->ctr[MSC_CTR_SMS_DELIVER_UNKNOWN_ERROR]);
@@ -493,11 +492,11 @@
 	/* length in bytes of the destination address */
 	da_len_bytes = 2 + *smsp/2 + *smsp%2;
 	if (da_len_bytes > 12) {
-		LOGP(DLSMS, LOGL_ERROR, "Destination Address > 12 bytes ?!?\n");
+		LOG_TRANS(trans, LOGL_ERROR, "Destination Address > 12 bytes ?!?\n");
 		rc = GSM411_RP_CAUSE_SEMANT_INC_MSG;
 		goto out;
 	} else if (da_len_bytes < 4) {
-		LOGP(DLSMS, LOGL_ERROR, "Destination Address < 4 bytes ?!?\n");
+		LOG_TRANS(trans, LOGL_ERROR, "Destination Address < 4 bytes ?!?\n");
 		rc = GSM411_RP_CAUSE_SEMANT_INC_MSG;
 		goto out;
 	}
@@ -538,8 +537,7 @@
 		sms_vp = 0;
 		break;
 	default:
-		LOGP(DLSMS, LOGL_NOTICE,
-		     "SMS Validity period not implemented: 0x%02x\n", sms_vpf);
+		LOG_TRANS(trans, LOGL_NOTICE, "SMS Validity period not implemented: 0x%02x\n", sms_vpf);
 		rc = GSM411_RP_CAUSE_MO_NET_OUT_OF_ORDER;
 		goto out;
 	}
@@ -561,19 +559,19 @@
 
 	OSMO_STRLCPY_ARRAY(gsms->src.addr, vsub->msisdn);
 
-	LOG_MSC_A_CAT(msc_a, DLSMS, LOGL_INFO,
-		      "RX SMS: Sender: %s, MTI: 0x%02x, VPF: 0x%02x, "
-		      "MR: 0x%02x PID: 0x%02x, DCS: 0x%02x, DA: %s, "
-		      "UserDataLength: 0x%02x, UserData: \"%s\"\n",
-		      vlr_subscr_name(vsub), sms_mti, sms_vpf, gsms->msg_ref,
-		      gsms->protocol_id, gsms->data_coding_scheme, gsms->dst.addr,
-		      gsms->user_data_len,
-		      sms_alphabet == DCS_7BIT_DEFAULT ? gsms->text :
-		      osmo_hexdump(gsms->user_data, gsms->user_data_len));
+	LOG_TRANS(trans, LOGL_INFO,
+		  "MO SMS -- MTI: 0x%02x, VPF: 0x%02x, "
+		  "MR: 0x%02x PID: 0x%02x, DCS: 0x%02x, DA: %s, "
+		  "UserDataLength: 0x%02x, UserData: \"%s\"\n",
+		  sms_mti, sms_vpf, gsms->msg_ref,
+		  gsms->protocol_id, gsms->data_coding_scheme, gsms->dst.addr,
+		  gsms->user_data_len,
+		  sms_alphabet == DCS_7BIT_DEFAULT ? gsms->text :
+		  osmo_hexdump(gsms->user_data, gsms->user_data_len));
 
 	gsms->validity_minutes = gsm340_validity_period(sms_vpf, sms_vp);
 
-	rc = sms_route_mt_sms(msc_a, gsms);
+	rc = sms_route_mt_sms(trans, gsms);
 
 	/*
 	 * This SMS got routed through SMPP or no receiver exists.
@@ -583,15 +581,15 @@
 	switch (sms_mti) {
 	case GSM340_SMS_SUBMIT_MS2SC:
 		/* MS is submitting a SMS */
-		rc = gsm340_rx_sms_submit(gsms);
+		rc = gsm340_rx_sms_submit(trans, gsms);
 		break;
 	case GSM340_SMS_COMMAND_MS2SC:
 	case GSM340_SMS_DELIVER_REP_MS2SC:
-		LOGP(DLSMS, LOGL_NOTICE, "Unimplemented MTI 0x%02x\n", sms_mti);
+		LOG_TRANS(trans, LOGL_NOTICE, "Unimplemented MTI 0x%02x\n", sms_mti);
 		rc = GSM411_RP_CAUSE_IE_NOTEXIST;
 		break;
 	default:
-		LOGP(DLSMS, LOGL_NOTICE, "Undefined MTI 0x%02x\n", sms_mti);
+		LOG_TRANS(trans, LOGL_NOTICE, "Undefined MTI 0x%02x\n", sms_mti);
 		rc = GSM411_RP_CAUSE_IE_NOTEXIST;
 		break;
 	}
@@ -622,7 +620,7 @@
 {
 	struct msgb *msg = gsm411_msgb_alloc();
 
-	DEBUGP(DLSMS, "TX: SMS RP ACK\n");
+	LOG_TRANS(trans, LOGL_DEBUG, "TX: SMS RP ACK\n");
 
 	return gsm411_rp_sendmsg(&trans->sms.smr_inst, msg, GSM411_MT_RP_ACK_MT,
 		msg_ref, GSM411_SM_RL_REPORT_REQ);
@@ -635,7 +633,7 @@
 
 	msgb_tv_put(msg, 1, cause);
 
-	LOGP(DLSMS, LOGL_NOTICE, "TX: SMS RP ERROR, cause %d (%s)\n", cause,
+	LOG_TRANS(trans, LOGL_NOTICE, "TX: SMS RP ERROR, cause %d (%s)\n", cause,
 		get_value_string(gsm411_rp_cause_strs, cause));
 
 	return gsm411_rp_sendmsg(&trans->sms.smr_inst, msg,
@@ -687,14 +685,14 @@
 	if (rpud_len)
 		rp_ud = &rph->data[1+src_len+1+dst_len+1];
 
-	DEBUGP(DLSMS, "RX_RP-DATA: src_len=%u, dst_len=%u ud_len=%u\n",
+	LOG_TRANS(trans, LOGL_DEBUG, "RX_RP-DATA: src_len=%u, dst_len=%u ud_len=%u\n",
 		src_len, dst_len, rpud_len);
 
 	if (src_len && src)
-		LOGP(DLSMS, LOGL_ERROR, "RP-DATA (MO) with SRC ?!?\n");
+		LOG_TRANS(trans, LOGL_ERROR, "RP-DATA (MO) with SRC ?!?\n");
 
 	if (!dst_len || !dst || !rpud_len || !rp_ud) {
-		LOGP(DLSMS, LOGL_ERROR,
+		LOG_TRANS(trans, LOGL_ERROR,
 			"RP-DATA (MO) without DST or TPDU ?!?\n");
 		gsm411_send_rp_error(trans, rph->msg_ref,
 				     GSM411_RP_CAUSE_INV_MAND_INF);
@@ -703,12 +701,12 @@
 
 	msg->l4h = rp_ud;
 
-	DEBUGP(DLSMS, "DST(%u,%s)\n", dst_len, osmo_hexdump(dst, dst_len));
+	LOG_TRANS(trans, LOGL_DEBUG, "DST(%u,%s)\n", dst_len, osmo_hexdump(dst, dst_len));
 
 	return gsm411_rx_rp_ud(msg, trans, rph, dst, dst_len);
 }
 
-static struct gsm_sms *sms_report_alloc(struct gsm_sms *sms)
+static struct gsm_sms *sms_report_alloc(struct gsm_sms *sms, struct gsm_trans *trans)
 {
 	struct gsm_sms *sms_report;
 	int len;
@@ -733,7 +731,7 @@
 		       "id:%.08llu sub:000 dlvrd:000 submit date:YYMMDDhhmm done date:YYMMDDhhmm stat:DELIVRD err:000 text:%.20s",
 		       sms->id, sms->text);
 	sms_report->user_data_len = len;
-	LOGP(DLSMS, LOGL_NOTICE, "%s\n", sms_report->user_data);
+	LOG_TRANS(trans, LOGL_NOTICE, "%s\n", sms_report->user_data);
 
 	/* This represents a sms report. */
 	sms_report->is_report = true;
@@ -741,25 +739,24 @@
 	return sms_report;
 }
 
-static void sms_status_report(struct gsm_sms *gsms,
-			      struct msc_a *msc_a)
+static void sms_status_report(struct gsm_sms *gsms, struct gsm_trans *trans)
 {
 	struct gsm_sms *sms_report;
 	int rc;
 
-	sms_report = sms_report_alloc(gsms);
+	sms_report = sms_report_alloc(gsms, trans);
 
-	rc = sms_route_mt_sms(msc_a, sms_report);
+	rc = sms_route_mt_sms(trans, sms_report);
 	if (rc < 0) {
-		LOGP(DLSMS, LOGL_ERROR,
-		     "Failed to send status report! err=%d\n", rc);
+		LOG_TRANS(trans, LOGL_ERROR, "Failed to send status report! err=%d\n", rc);
+		return;
 	}
 
 	/* No route via SMPP, send the GSM 03.40 status-report now. */
 	if (sms_report->receiver)
-		gsm340_rx_sms_submit(sms_report);
+		gsm340_rx_sms_submit(trans, sms_report);
 
-	LOGP(DLSMS, LOGL_NOTICE, "Status report has been sent\n");
+	LOG_TRANS(trans, LOGL_NOTICE, "Status report has been sent\n");
 
 	sms_free(sms_report);
 }
@@ -780,7 +777,7 @@
 	}
 
 	if (!sms) {
-		LOGP(DLSMS, LOGL_ERROR, "RX RP-ACK but no sms in transaction?!?\n");
+		LOG_TRANS(trans, LOGL_ERROR, "RX RP-ACK but no sms in transaction?!?\n");
 		return gsm411_send_rp_error(trans, rph->msg_ref,
 					    GSM411_RP_CAUSE_PROTOCOL_ERR);
 	}
@@ -791,7 +788,7 @@
 	send_signal(S_SMS_DELIVERED, trans, sms, 0);
 
 	if (sms->status_rep_req)
-		sms_status_report(sms, trans->msc_a);
+		sms_status_report(sms, trans);
 
 	sms_free(sms);
 	trans->sms.sms = NULL;
@@ -812,7 +809,7 @@
 	 * successfully receive the SMS.  We need to investigate
 	 * the cause and take action depending on it */
 
-	LOG_MSC_A_CAT(msc_a, DLSMS, LOGL_NOTICE, "RX SMS RP-ERROR, cause %d:%d (%s)\n",
+	LOG_TRANS(trans, LOGL_NOTICE, "RX SMS RP-ERROR, cause %d:%d (%s)\n",
 		      cause_len, cause, get_value_string(gsm411_rp_cause_strs, cause));
 
 	if (trans->net->sms_over_gsup) {
@@ -821,7 +818,7 @@
 	}
 
 	if (!sms) {
-		LOG_MSC_A_CAT(msc_a, DLSMS, LOGL_ERROR, "RX RP-ERR, but no sms in transaction?!?\n");
+		LOG_TRANS(trans, LOGL_ERROR, "RX RP-ERR, but no sms in transaction?!?\n");
 		return -EINVAL;
 #if 0
 		return gsm411_send_rp_error(trans, rph->msg_ref,
@@ -880,15 +877,15 @@
 
 	switch (msg_type) {
 	case GSM411_MT_RP_DATA_MO:
-		DEBUGP(DLSMS, "RX SMS RP-DATA (MO)\n");
+		LOG_TRANS(trans, LOGL_DEBUG, "RX SMS RP-DATA (MO)\n");
 		rc = gsm411_rx_rp_data(msg, trans, rp_data);
 		break;
 	case GSM411_MT_RP_SMMA_MO:
-		DEBUGP(DLSMS, "RX SMS RP-SMMA\n");
+		LOG_TRANS(trans, LOGL_DEBUG, "RX SMS RP-SMMA\n");
 		rc = gsm411_rx_rp_smma(msg, trans, rp_data);
 		break;
 	default:
-		LOGP(DLSMS, LOGL_NOTICE, "Invalid RP type 0x%02x\n", msg_type);
+		LOG_TRANS(trans, LOGL_NOTICE, "Invalid RP type 0x%02x\n", msg_type);
 		rc = -EINVAL;
 		break;
 	}
@@ -906,15 +903,15 @@
 
 	switch (msg_type) {
 	case GSM411_MT_RP_ACK_MO:
-		DEBUGP(DLSMS, "RX SMS RP-ACK (MO)\n");
+		LOG_TRANS(trans, LOGL_DEBUG, "RX SMS RP-ACK (MO)\n");
 		rc = gsm411_rx_rp_ack(trans, rp_data);
 		break;
 	case GSM411_MT_RP_ERROR_MO:
-		DEBUGP(DLSMS, "RX SMS RP-ERROR (MO)\n");
+		LOG_TRANS(trans, LOGL_DEBUG, "RX SMS RP-ERROR (MO)\n");
 		rc = gsm411_rx_rp_error(trans, rp_data);
 		break;
 	default:
-		LOGP(DLSMS, LOGL_NOTICE, "Invalid RP type 0x%02x\n", msg_type);
+		LOG_TRANS(trans, LOGL_NOTICE, "Invalid RP type 0x%02x\n", msg_type);
 		rc = -EINVAL;
 		break;
 	}
@@ -942,7 +939,7 @@
 			rc = gsm411_rx_rl_report(msg, gh, trans);
 		break;
 	default:
-		LOGP(DLSMS, LOGL_NOTICE, "Unhandled SM-RL message 0x%x\n", msg_type);
+		LOG_TRANS(trans, LOGL_NOTICE, "Unhandled SM-RL message 0x%x\n", msg_type);
 		rc = -EINVAL;
 	}
 
@@ -963,21 +960,21 @@
 	switch (msg_type) {
 	case GSM411_MNSMS_EST_IND:
 	case GSM411_MNSMS_DATA_IND:
-		DEBUGP(DLSMS, "MNSMS-DATA/EST-IND\n");
+		LOG_TRANS(trans, LOGL_DEBUG, "MNSMS-DATA/EST-IND\n");
 		rc = gsm411_smr_recv(&trans->sms.smr_inst, msg_type, msg);
 		break;
 	case GSM411_MNSMS_ERROR_IND:
 		if (gh)
-			DEBUGP(DLSMS, "MNSMS-ERROR-IND, cause %d (%s)\n",
+			LOG_TRANS(trans, LOGL_DEBUG, "MNSMS-ERROR-IND, cause %d (%s)\n",
 				gh->data[0],
 				get_value_string(gsm411_cp_cause_strs,
 				gh->data[0]));
 		else
-			DEBUGP(DLSMS, "MNSMS-ERROR-IND, no cause\n");
+			LOG_TRANS(trans, LOGL_DEBUG, "MNSMS-ERROR-IND, no cause\n");
 		rc = gsm411_smr_recv(&trans->sms.smr_inst, msg_type, msg);
 		break;
 	default:
-		LOGP(DLSMS, LOGL_NOTICE, "Unhandled MNCCSMS msg 0x%x\n", msg_type);
+		LOG_TRANS(trans, LOGL_NOTICE, "Unhandled MNCCSMS msg 0x%x\n", msg_type);
 		rc = -EINVAL;
 	}
 
@@ -990,7 +987,7 @@
 	/* Allocate a new transaction */
 	struct gsm_trans *trans = trans_alloc(net, vsub, GSM48_PDISC_SMS, tid, new_callref++);
 	if (!trans) {
-		LOGP(DLSMS, LOGL_ERROR, "No memory for transaction\n");
+		LOG_TRANS(trans, LOGL_ERROR, "No memory for transaction\n");
 		return NULL;
 	}
 
@@ -1005,7 +1002,7 @@
 		osmo_fsm_inst_dispatch(msc_a->c.fi, MSC_A_EV_TRANSACTION_ACCEPTED, trans);
 		if (mo) {
 			if (!osmo_use_count_by(&msc_a->use_count, MSC_A_USE_CM_SERVICE_SMS))
-				LOG_MSC_A_CAT(msc_a, DLSMS, LOGL_ERROR, "MO SMS without prior CM Service Request\n");
+				LOG_TRANS(trans, LOGL_ERROR, "MO SMS without prior CM Service Request\n");
 			else
 				msc_a_put(msc_a, MSC_A_USE_CM_SERVICE_SMS);
 		}
@@ -1048,15 +1045,13 @@
 					       struct vlr_subscr *vsub)
 {
 	struct msub *msub;
-	struct gsm_trans *trans;
+	struct gsm_trans *trans = NULL;
 	int tid;
 
-	LOGP(DLSMS, LOGL_INFO, "Going to send a MT SMS\n");
-
 	/* Generate a new transaction ID */
 	tid = trans_assign_trans_id(net, vsub, GSM48_PDISC_SMS);
 	if (tid == -1) {
-		LOGP(DLSMS, LOGL_ERROR, "No available transaction IDs\n");
+		LOG_TRANS(trans, LOGL_ERROR, "No available transaction IDs\n");
 		return NULL;
 	}
 
@@ -1068,9 +1063,11 @@
 	if (!trans)
 		return NULL;
 
+	LOG_TRANS(trans, LOGL_INFO, "Going to send a MT SMS\n");
+
 	/* Assign a unique SM-RP Message Reference */
 	if (gsm411_assign_sm_rp_mr(trans) != 0) {
-		LOGP(DLSMS, LOGL_ERROR, "Failed to assign SM-RP-MR\n");
+		LOG_TRANS(trans, LOGL_ERROR, "Failed to assign SM-RP-MR\n");
 		trans_free(trans);
 		return NULL;
 	}
@@ -1128,10 +1125,10 @@
 
 	if (sms->is_report) {
 		/* generate the 03.40 SMS-STATUS-REPORT TPDU */
-		rc = gsm340_gen_sms_status_report_tpdu(msg, sms);
+		rc = gsm340_gen_sms_status_report_tpdu(trans, msg, sms);
 	} else {
 		/* generate the 03.40 SMS-DELIVER TPDU */
-		rc = gsm340_gen_sms_deliver_tpdu(msg, sms);
+		rc = gsm340_gen_sms_deliver_tpdu(trans, msg, sms);
 	}
 	if (rc < 0) {
 		send_signal(S_SMS_UNKNOWN_ERROR, trans, sms, 0);
@@ -1203,16 +1200,13 @@
 	struct vlr_subscr *vsub = msc_a_vsub(msc_a);
 	struct gsm_network *net = msc_a_net(msc_a);
 
-	LOG_MSC_A_CAT(msc_a, DLSMS, LOGL_DEBUG, "receiving data (trans_id=%x, msg_type=%s)\n", transaction_id,
-		      gsm48_pdisc_msgtype_name(gsm48_hdr_pdisc(gh), gsm48_hdr_msg_type(gh)));
-
 	trans = trans_find_by_id(msc_a, GSM48_PDISC_SMS, transaction_id);
 
 	/*
 	 * A transaction we created but don't know about?
 	 */
 	if (!trans && (transaction_id & 0x8) == 0) {
-		LOGP(DLSMS, LOGL_ERROR, "trans_id=%x allocated by us but known "
+		LOG_TRANS(trans, LOGL_ERROR, "trans_id=%x allocated by us but known "
 			"to us anymore. We are ignoring it, maybe a CP-ERROR "
 			"from a MS?\n",
 			transaction_id);
@@ -1231,6 +1225,9 @@
 		trans->dlci = OMSC_LINKID_CB(msg); /* DLCI as received from BSC */
 	}
 
+	LOG_TRANS(trans, LOGL_DEBUG, "receiving SMS message %s\n",
+		  gsm48_pdisc_msgtype_name(gsm48_hdr_pdisc(gh), gsm48_hdr_msg_type(gh)));
+
 	/* 5.4: For MO, if a CP-DATA is received for a new
 	 * transaction, equals reception of an implicit
 	 * last CP-ACK for previous transaction */
@@ -1248,7 +1245,7 @@
 			if (!ptrans)
 				continue;
 
-			DEBUGP(DLSMS, "Implicit CP-ACK for trans_id=%x\n", i);
+			LOG_TRANS(ptrans, LOGL_DEBUG, "Implicit CP-ACK for trans_id=%x\n", i);
 
 			/* Finish it for good */
 			trans_free(ptrans);
@@ -1274,7 +1271,7 @@
 	trans->sms.smc_inst.mm_send = NULL;
 
 	if (trans->sms.sms) {
-		LOGP(DLSMS, LOGL_ERROR, "Transaction contains SMS.\n");
+		LOG_TRANS(trans, LOGL_ERROR, "Freeing transaction that still contains an SMS -- discarding\n");
 		send_signal(S_SMS_UNKNOWN_ERROR, trans, trans->sms.sms, 0);
 		sms_free(trans->sms.sms);
 		trans->sms.sms = NULL;
@@ -1299,7 +1296,7 @@
 
 		sms = trans->sms.sms;
 		if (!sms) {
-			LOGP(DLSMS, LOGL_ERROR, "SAPI Reject but no SMS.\n");
+			LOG_TRANS(trans, LOGL_ERROR, "SAPI Reject but no SMS.\n");
 			continue;
 		}
 
diff --git a/src/libmsc/gsm_04_11_gsup.c b/src/libmsc/gsm_04_11_gsup.c
index 5f4dbe1..a2a2ac1 100644
--- a/src/libmsc/gsm_04_11_gsup.c
+++ b/src/libmsc/gsm_04_11_gsup.c
@@ -59,7 +59,7 @@
 	/* Associate logging messages with this subscriber */
 	log_set_context(LOG_CTX_VLR_SUBSCR, trans->vsub);
 
-	LOGP(DLSMS, LOGL_DEBUG, "TX GSUP MO-forwardSM-Req\n");
+	LOG_TRANS(trans, LOGL_DEBUG, "TX GSUP MO-forwardSM-Req\n");
 
 	/* Assign SM-RP-MR to transaction state */
 	trans->sms.sm_rp_mr = sm_rp_mr;
@@ -68,7 +68,7 @@
 	bcd_len = gsm48_encode_bcd_number(bcd_buf, sizeof(bcd_buf),
 		0, trans->vsub->msisdn);
 	if (bcd_len <= 0 || bcd_len > sizeof(bcd_buf)) {
-		LOGP(DLSMS, LOGL_ERROR, "Failed to encode subscriber's MSISDN\n");
+		LOG_TRANS(trans, LOGL_ERROR, "Failed to encode subscriber's MSISDN\n");
 		return -EINVAL;
 	}
 
@@ -100,7 +100,7 @@
 	/* Associate logging messages with this subscriber */
 	log_set_context(LOG_CTX_VLR_SUBSCR, trans->vsub);
 
-	LOGP(DLSMS, LOGL_DEBUG, "TX GSUP READY-FOR-SM Req\n");
+	LOG_TRANS(trans, LOGL_DEBUG, "TX GSUP READY-FOR-SM Req\n");
 
 	/* Assign SM-RP-MR to transaction state */
 	trans->sms.sm_rp_mr = sm_rp_mr;
@@ -149,9 +149,6 @@
 		OSMO_ASSERT(0);
 	}
 
-	LOGP(DLSMS, LOGL_DEBUG, "RX %s-%s\n", msg_name,
-		msg_is_err ? "Err" : "Res");
-
 	/* Make sure that 'SMS over GSUP' is expected */
 	if (!net->sms_over_gsup) {
 		/* TODO: notify sender about that? */
@@ -166,20 +163,22 @@
 	if (msg_is_err && !gsup_msg->sm_rp_cause)
 		goto msg_error;
 
-	/* Attempt to find a DTAP-connection */
-	msub = msub_for_vsub(vsub);
-	if (!msub) {
-		/* FIXME: should we establish it then? */
-		LOGP(DLSMS, LOGL_NOTICE, "No connection found for %s, "
+	/* Attempt to find DTAP-transaction */
+	trans = trans_find_by_sm_rp_mr(net, vsub, *(gsup_msg->sm_rp_mr));
+	if (!trans) {
+		LOGP(DLSMS, LOGL_NOTICE, "No transaction found for %s, "
 			"ignoring %s-%s message...\n", vlr_subscr_name(vsub),
 			msg_name, msg_is_err ? "Err" : "Res");
 		return -EIO; /* TODO: notify sender about that? */
 	}
 
-	/* Attempt to find DTAP-transaction */
-	trans = trans_find_by_sm_rp_mr(net, vsub, *(gsup_msg->sm_rp_mr));
-	if (!trans) {
-		LOGP(DLSMS, LOGL_NOTICE, "No transaction found for %s, "
+	LOG_TRANS(trans, LOGL_DEBUG, "RX %s-%s\n", msg_name, msg_is_err ? "Err" : "Res");
+
+	/* Attempt to find a DTAP-connection */
+	msub = msub_for_vsub(vsub);
+	if (!msub) {
+		/* FIXME: should we establish it then? */
+		LOG_TRANS(trans, LOGL_NOTICE, "No connection found for %s, "
 			"ignoring %s-%s message...\n", vlr_subscr_name(vsub),
 			msg_name, msg_is_err ? "Err" : "Res");
 		return -EIO; /* TODO: notify sender about that? */
@@ -210,7 +209,7 @@
 	/* Associate logging messages with this subscriber */
 	log_set_context(LOG_CTX_VLR_SUBSCR, trans->vsub);
 
-	LOGP(DLSMS, LOGL_DEBUG, "TX MT-forwardSM-Res\n");
+	LOG_TRANS(trans, LOGL_DEBUG, "TX MT-forwardSM-Res\n");
 
 	/* Initialize a new GSUP message */
 	gsup_sm_msg_init(&gsup_msg, OSMO_GSUP_MSGT_MT_FORWARD_SM_RESULT,
@@ -227,7 +226,7 @@
 	/* Associate logging messages with this subscriber */
 	log_set_context(LOG_CTX_VLR_SUBSCR, trans->vsub);
 
-	LOGP(DLSMS, LOGL_DEBUG, "TX MT-forwardSM-Err\n");
+	LOG_TRANS(trans, LOGL_DEBUG, "TX MT-forwardSM-Err\n");
 
 	/* Initialize a new GSUP message */
 	gsup_sm_msg_init(&gsup_msg, OSMO_GSUP_MSGT_MT_FORWARD_SM_ERROR,
diff --git a/src/libmsc/gsm_09_11.c b/src/libmsc/gsm_09_11.c
index 99820cb..ed169f3 100644
--- a/src/libmsc/gsm_09_11.c
+++ b/src/libmsc/gsm_09_11.c
@@ -62,8 +62,7 @@
 	if (trans->net->ncss_guard_timeout == 0)
 		return;
 
-	LOGP(DMM, LOGL_NOTICE, "SS/USSD session timeout, releasing "
-		"transaction (trans=%p, callref=%x)\n", trans, trans->callref);
+	LOG_TRANS(trans, LOGL_NOTICE, "SS/USSD session timeout, releasing\n");
 
 	/* Indicate connection release to subscriber (if active) */
 	if (trans->msc_a != NULL) {
@@ -116,9 +115,6 @@
 	/* Associate logging messages with this subscriber */
 	log_set_context(LOG_CTX_VLR_SUBSCR, vsub);
 
-	DEBUGP(DMM, "Received SS/USSD data (trans_id=%x, msg_type=%s)\n",
-		tid, gsm48_pdisc_msgtype_name(GSM48_PDISC_NC_SS, msg_type));
-
 	/* Reuse existing transaction, or create a new one */
 	trans = trans_find_by_id(msc_a, GSM48_PDISC_NC_SS, tid);
 	if (!trans) {
@@ -134,19 +130,17 @@
 		 * a supplementary service.
 		 */
 		if (msg_type != GSM0480_MTYPE_REGISTER) {
-			LOGP(DMM, LOGL_ERROR, "Unexpected message (msg_type=%s), "
-				"transaction is not allocated yet\n",
-				gsm48_pdisc_msgtype_name(GSM48_PDISC_NC_SS, msg_type));
+			LOG_TRANS(trans, LOGL_ERROR, "Rx wrong SS/USSD message type for new transaction: %s\n",
+				  gsm48_pdisc_msgtype_name(GSM48_PDISC_NC_SS, msg_type));
 			gsm48_tx_simple(msc_a,
 				GSM48_PDISC_NC_SS | (tid << 4),
 				GSM0480_MTYPE_RELEASE_COMPLETE);
 			return -EINVAL;
 		}
 
-		DEBUGP(DMM, " -> (new transaction)\n");
 		trans = trans_alloc(net, vsub, GSM48_PDISC_NC_SS, tid, new_callref++);
 		if (!trans) {
-			LOGP(DMM, LOGL_ERROR, " -> No memory for trans\n");
+			LOG_TRANS(trans, LOGL_ERROR, " -> No memory for trans\n");
 			gsm48_tx_simple(msc_a,
 				GSM48_PDISC_NC_SS | (tid << 4),
 				GSM0480_MTYPE_RELEASE_COMPLETE);
@@ -174,6 +168,9 @@
 			msc_a_put(msc_a, MSC_A_USE_CM_SERVICE_SS);
 	}
 
+	LOG_TRANS(trans, LOGL_DEBUG, "Received SS/USSD msg %s\n",
+		  gsm48_pdisc_msgtype_name(GSM48_PDISC_NC_SS, msg_type));
+
 	/* (Re)schedule the inactivity timer */
 	if (net->ncss_guard_timeout > 0) {
 		osmo_timer_schedule(&trans->ss.timer_guard, net->ncss_guard_timeout, 0);
@@ -183,16 +180,15 @@
 	rc = gsm0480_extract_ie_by_tag(gh, msgb_l3len(msg),
 		&facility_ie, &facility_ie_len, GSM0480_IE_FACILITY);
 	if (rc) {
-		LOGP(DMM, LOGL_ERROR, "GSM 04.80 message parsing error, "
-			"couldn't extract Facility IE\n");
+		LOG_TRANS(trans, LOGL_ERROR, "GSM 04.80 message parsing error, couldn't extract Facility IE\n");
 		goto error;
 	}
 
 	/* Facility IE is optional for RELEASE COMPLETE */
 	if (msg_type != GSM0480_MTYPE_RELEASE_COMPLETE) {
 		if (!facility_ie || facility_ie_len < 2) {
-			LOGP(DMM, LOGL_ERROR, "GSM 04.80 message parsing error, "
-				"missing mandatory Facility IE\n");
+			LOG_TRANS(trans, LOGL_ERROR, "GSM 04.80 message parsing error,"
+				  " missing mandatory Facility IE\n");
 			rc = -EINVAL;
 			goto error;
 		}
@@ -231,7 +227,7 @@
 	/* Allocate GSUP message buffer */
 	gsup_msgb = osmo_gsup_client_msgb_alloc();
 	if (!gsup_msgb) {
-		LOGP(DMM, LOGL_ERROR, "Couldn't allocate GSUP message\n");
+		LOG_TRANS(trans, LOGL_ERROR, "Couldn't allocate GSUP message\n");
 		rc = -ENOMEM;
 		goto error;
 	}
@@ -239,14 +235,14 @@
 	/* Encode GSUP message */
 	rc = osmo_gsup_encode(gsup_msgb, &gsup_msg);
 	if (rc) {
-		LOGP(DMM, LOGL_ERROR, "Couldn't encode GSUP message\n");
+		LOG_TRANS(trans, LOGL_ERROR, "Couldn't encode GSUP message\n");
 		goto error;
 	}
 
 	/* Finally send */
 	rc = osmo_gsup_client_send(net->vlr->gsup_client, gsup_msgb);
 	if (rc) {
-		LOGP(DMM, LOGL_ERROR, "Couldn't send GSUP message\n");
+		LOG_TRANS(trans, LOGL_ERROR, "Couldn't send GSUP message\n");
 		goto error;
 	}
 
@@ -334,33 +330,37 @@
 	struct gsm_trans *trans, *transt;
 	int tid;
 
+	/* Allocate transaction first, for log context */
+	trans = trans_alloc(net, vsub, GSM48_PDISC_NC_SS,
+		TRANS_ID_UNASSIGNED, gsup_msg->session_id);
+
+	if (!trans) {
+		LOG_TRANS(trans, LOGL_ERROR, " -> No memory for trans\n");
+		return NULL;
+	}
+
 	if (gsup_msg->session_state != OSMO_GSUP_SESSION_STATE_BEGIN) {
-		LOGP(DMM, LOGL_ERROR, "Received non-BEGIN message "
+		LOG_TRANS(trans, LOGL_ERROR, "Received non-BEGIN message "
 			"for non-existing transaction\n");
+		trans_free(trans);
 		return NULL;
 	}
 
 	if (!gsup_msg->ss_info || gsup_msg->ss_info_len < 2) {
-		LOGP(DMM, LOGL_ERROR, "Missing mandatory Facility IE\n");
+		LOG_TRANS(trans, LOGL_ERROR, "Missing mandatory Facility IE\n");
+		trans_free(trans);
 		return NULL;
 	}
 
 	/* If subscriber is not "attached" */
 	if (!vsub->cgi.lai.lac) {
-		LOGP(DMM, LOGL_ERROR, "Network-originated session "
+		LOG_TRANS(trans, LOGL_ERROR, "Network-originated session "
 			"rejected - subscriber is not attached\n");
+		trans_free(trans);
 		return NULL;
 	}
 
-	DEBUGP(DMM, "Establishing network-originated session\n");
-
-	/* Allocate a new transaction */
-	trans = trans_alloc(net, vsub, GSM48_PDISC_NC_SS,
-		TRANS_ID_UNASSIGNED, gsup_msg->session_id);
-	if (!trans) {
-		LOGP(DMM, LOGL_ERROR, " -> No memory for trans\n");
-		return NULL;
-	}
+	LOG_TRANS(trans, LOGL_DEBUG, "Establishing network-originated session\n");
 
 	/* Count active NC SS/USSD sessions */
 	osmo_counter_inc(net->active_nc_ss);
@@ -368,7 +368,7 @@
 	/* Assign transaction ID */
 	tid = trans_assign_trans_id(trans->net, trans->vsub, GSM48_PDISC_NC_SS);
 	if (tid < 0) {
-		LOGP(DMM, LOGL_ERROR, "No free transaction ID\n");
+		LOG_TRANS(trans, LOGL_ERROR, "No free transaction ID\n");
 		/* TODO: inform HLR about this */
 		/* TODO: release connection with subscriber */
 		trans->callref = 0;
@@ -391,7 +391,7 @@
 		return trans;
 	}
 
-	DEBUGP(DMM, "Triggering Paging Request\n");
+	LOG_TRANS(trans, LOGL_DEBUG, "Triggering Paging Request\n");
 
 	/* Find transaction with this subscriber already paging */
 	llist_for_each_entry(transt, &net->trans_list, entry) {
@@ -399,7 +399,7 @@
 		if (transt == trans || transt->vsub != vsub)
 			continue;
 
-		LOGP(DMM, LOGL_ERROR, "Paging already started, "
+		LOG_TRANS(trans, LOGL_ERROR, "Paging already started, "
 			"rejecting message...\n");
 		trans_free(trans);
 		/* FIXME: WTF IS THIS!? This is completely insane. Presence of a trans doesn't indicate Paging, and even
@@ -411,7 +411,7 @@
 	trans->paging_request = paging_request_start(vsub, PAGING_CAUSE_SIGNALLING_HIGH_PRIO,
 						     ss_paging_cb, trans, "GSM 09.11 SS/USSD");
 	if (!trans->paging_request) {
-		LOGP(DMM, LOGL_ERROR, "Failed to allocate paging token\n");
+		LOG_TRANS(trans, LOGL_ERROR, "Failed to allocate paging token\n");
 		trans_free(trans);
 		return NULL;
 	}
@@ -524,7 +524,7 @@
 	/* Missing or incorrect session state */
 	case OSMO_GSUP_SESSION_STATE_NONE:
 	default:
-		LOGP(DMM, LOGL_ERROR, "Unexpected session state %d\n",
+		LOG_TRANS(trans, LOGL_ERROR, "Unexpected session state %d\n",
 			gsup_msg->session_state);
 		/* FIXME: send ERROR back to the HLR */
 		msgb_free(ss_msg);
@@ -534,7 +534,7 @@
 	/* Facility IE is optional only for RELEASE COMPLETE */
 	if (gh->msg_type != GSM0480_MTYPE_RELEASE_COMPLETE) {
 		if (!gsup_msg->ss_info || gsup_msg->ss_info_len < 2) {
-			LOGP(DMM, LOGL_ERROR, "Missing mandatory Facility IE "
+			LOG_TRANS(trans, LOGL_ERROR, "Missing mandatory Facility IE "
 				"for mapped 0x%02x message\n", gh->msg_type);
 			/* FIXME: send ERROR back to the HLR */
 			msgb_free(ss_msg);
@@ -558,8 +558,7 @@
 	/* Sent to the MS, give ownership of ss_msg */
 	msc_a = trans->msc_a;
 	if (!msc_a) {
-		LOGP(DMM, LOGL_ERROR, "Cannot send SS message, no local MSC-A role defined for %s\n",
-		     vlr_subscr_name(vsub));
+		LOG_TRANS(trans, LOGL_ERROR, "Cannot send SS message, no local MSC-A role defined for subscriber\n");
 		msgb_free(ss_msg);
 		return -EINVAL;
 	}
diff --git a/src/libmsc/transaction.c b/src/libmsc/transaction.c
index b410701..5507021 100644
--- a/src/libmsc/transaction.c
+++ b/src/libmsc/transaction.c
@@ -113,18 +113,14 @@
 			      uint8_t protocol, uint8_t trans_id,
 			      uint32_t callref)
 {
-	struct gsm_trans *trans;
+	struct gsm_trans *trans = NULL; /* (NULL for LOG_TRANS() before allocation) */
 
 	/* a valid subscriber is indispensable */
 	if (vsub == NULL) {
-		LOGP(DVLR, LOGL_ERROR,
-		     "unable to alloc transaction, invalid subscriber (NULL)\n");
+		LOG_TRANS(trans, LOGL_ERROR, "unable to alloc transaction, invalid subscriber (NULL)\n");
 		return NULL;
 	}
 
-	DEBUGP(DCC, "(ti %02x sub %s callref %x) New transaction\n",
-	       trans_id, vlr_subscr_name(vsub), callref);
-
 	trans = talloc_zero(tall_trans_ctx, struct gsm_trans);
 	if (!trans)
 		return NULL;
@@ -138,6 +134,7 @@
 	trans->net = net;
 	llist_add_tail(&trans->entry, &net->trans_list);
 
+	LOG_TRANS(trans, LOGL_DEBUG, "New transaction\n");
 	return trans;
 }
 
@@ -149,6 +146,8 @@
 	const char *usage_token;
 	struct msc_a *msc_a;
 
+	LOG_TRANS(trans, LOGL_DEBUG, "Freeing transaction\n");
+
 	switch (trans->protocol) {
 	case GSM48_PDISC_CC:
 		_gsm48_cc_trans_free(trans);
@@ -250,10 +249,7 @@
 	 * will trigger another call to trans_free. This is something the llist
 	 * macro can not handle and we need to re-iterate the list every time.
 	 */
-	while (1) {
-		struct gsm_trans *trans = trans_has_conn(msc_a);
-		if (!trans)
-			return;
+	struct gsm_trans *trans;
+	while ((trans = trans_has_conn(msc_a)))
 		trans_free(trans);
-	}
 }
diff --git a/tests/msc_vlr/msc_vlr_test_call.err b/tests/msc_vlr/msc_vlr_test_call.err
index 60bd377..8cc6152 100644
--- a/tests/msc_vlr/msc_vlr_test_call.err
+++ b/tests/msc_vlr/msc_vlr_test_call.err
@@ -296,26 +296,26 @@
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (cm_service_cc,rx_from_ms)
 DIUCS msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: CC GSM48_MT_CC_SETUP
-DCC Unknown transaction ID 8, creating new trans.
-DCC (ti 08 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 callref 80000001) New transaction
+DMSC trans(NULL NULL callref-0x0 tid-0) Unknown transaction ID 8, creating new trans.
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 + CC: now used by 3 (attached,active-conn,CC)
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 callref-0x80000001 tid-8) New transaction
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: Received Event MSC_A_EV_TRANSACTION_ACCEPTED
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: state_chg to MSC_A_ST_COMMUNICATING
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: + cc: now used by 3 (cm_service_cc,rx_from_ms,cc)
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: - cm_service_cc: now used by 2 (rx_from_ms,cc)
-DCC (sub 42342) starting guard timer with 180 seconds
-DCC (ti 08 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state NULL -> INITIATED
-DCC Subscriber IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 (42342) sends SETUP to 123
-DMNCC transmit message MNCC_SETUP_IND
-DCC Sending 'MNCC_SETUP_IND' to MNCC.
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) rx SETUP in state NULL
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) starting guard timer with 180 seconds
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) new state NULL -> INITIATED
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) SETUP to 123
+DMNCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) tx MNCC_SETUP_IND
   MSC --> MNCC: callref 0x80000001: MNCC_SETUP_IND
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: - rx_from_ms: now used by 1 (cc)
 - MNCC says that's fine
-DMNCC receive message MNCC_CALL_PROC_REQ
-DCC (sub 42342) stopping pending guard timer
-DCC (sub 42342) starting guard timer with 180 seconds
-DCC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: (ti 08) Received 'MNCC_CALL_PROC_REQ' from MNCC in state 1 (INITIATED)
-DCC (ti 08 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state INITIATED -> MO_CALL_PROC
+DMNCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) rx MNCC_CALL_PROC_REQ
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) stopping pending guard timer
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) starting guard timer with 180 seconds
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) rx MNCC_CALL_PROC_REQ in state INITIATED
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) new state INITIATED -> MO_CALL_PROC
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: NAS down: DTAP on UTRAN-Iu
 - DTAP --UTRAN-Iu--> MS: GSM48_MT_CC_CALL_PROC: 8302
 - DTAP matches expected message
@@ -326,21 +326,21 @@
   MS <--Call Assignment-- MSC: callref=0x80000001
 - Total time passed: 1.000023 s
 - The other call leg got established (not shown here), MNCC tells us so
-DMNCC receive message MNCC_ALERT_REQ
-DCC (sub 42342) stopping pending guard timer
-DCC (sub 42342) starting guard timer with 180 seconds
-DCC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: (ti 08) Received 'MNCC_ALERT_REQ' from MNCC in state 3 (MO_CALL_PROC)
-DCC (ti 08 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state MO_CALL_PROC -> CALL_DELIVERED
+DMNCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) rx MNCC_ALERT_REQ
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) stopping pending guard timer
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) starting guard timer with 180 seconds
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) rx MNCC_ALERT_REQ in state MO_CALL_PROC
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) new state MO_CALL_PROC -> CALL_DELIVERED
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: NAS down: DTAP on UTRAN-Iu
 - DTAP --UTRAN-Iu--> MS: GSM48_MT_CC_ALERTING: 8301
 - DTAP matches expected message
 DMSC dummy_msc_i(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){0}: Received Event unknown 0x3
-DMNCC receive message MNCC_SETUP_RSP
-DCC (sub 42342) stopping pending guard timer
-DCC (sub 42342) starting guard timer with 180 seconds
-DCC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: (ti 08) Received 'MNCC_SETUP_RSP' from MNCC in state 4 (CALL_DELIVERED)
-DCC starting timer T313 with 30 seconds
-DCC (ti 08 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state CALL_DELIVERED -> CONNECT_IND
+DMNCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) rx MNCC_SETUP_RSP
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) stopping pending guard timer
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) starting guard timer with 180 seconds
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) rx MNCC_SETUP_RSP in state CALL_DELIVERED
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) starting timer T313 with 30 seconds
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) new state CALL_DELIVERED -> CONNECT_IND
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: NAS down: DTAP on UTRAN-Iu
 - DTAP --UTRAN-Iu--> MS: GSM48_MT_CC_CONNECT: 8307
 - DTAP matches expected message
@@ -350,11 +350,11 @@
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: + rx_from_ms: now used by 2 (cc,rx_from_ms)
 DIUCS msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: Dispatching 04.08 message: CC GSM48_MT_CC_CONNECT_ACK
-DCC stopping pending timer T313
-DCC (ti 08 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state CONNECT_IND -> ACTIVE
-DCC (sub 42342) stopping pending guard timer
-DMNCC transmit message MNCC_SETUP_COMPL_IND
-DCC Sending 'MNCC_SETUP_COMPL_IND' to MNCC.
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) rx CONNECT_ACK in state CONNECT_IND
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) stopping pending timer T313
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) new state CONNECT_IND -> ACTIVE
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) stopping pending guard timer
+DMNCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) tx MNCC_SETUP_COMPL_IND
   MSC --> MNCC: callref 0x80000001: MNCC_SETUP_COMPL_IND
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: - rx_from_ms: now used by 1 (cc)
 
@@ -368,16 +368,16 @@
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: + rx_from_ms: now used by 2 (cc,rx_from_ms)
 DIUCS msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: Dispatching 04.08 message: CC GSM48_MT_CC_DISCONNECT
-DCC (ti 08 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state ACTIVE -> DISCONNECT_IND
-DMNCC transmit message MNCC_DISC_IND
-DCC Sending 'MNCC_DISC_IND' to MNCC.
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) rx DISCONNECT in state ACTIVE
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) new state ACTIVE -> DISCONNECT_IND
+DMNCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) tx MNCC_DISC_IND
   MSC --> MNCC: callref 0x80000001: MNCC_DISC_IND
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: - rx_from_ms: now used by 1 (cc)
-DMNCC receive message MNCC_REL_REQ
-DCC (sub 42342) starting guard timer with 180 seconds
-DCC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: (ti 08) Received 'MNCC_REL_REQ' from MNCC in state 12 (DISCONNECT_IND)
-DCC starting timer T308 with 10 seconds
-DCC (ti 08 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state DISCONNECT_IND -> RELEASE_REQ
+DMNCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) rx MNCC_REL_REQ
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) starting guard timer with 180 seconds
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) rx MNCC_REL_REQ in state DISCONNECT_IND
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) starting timer T308 with 10 seconds
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) new state DISCONNECT_IND -> RELEASE_REQ
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: NAS down: DTAP on UTRAN-Iu
 - DTAP --UTRAN-Iu--> MS: GSM48_MT_CC_RELEASE: 832d
 - DTAP matches expected message
@@ -386,12 +386,13 @@
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: + rx_from_ms: now used by 2 (cc,rx_from_ms)
 DIUCS msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: Dispatching 04.08 message: CC GSM48_MT_CC_RELEASE_COMPL
-DCC stopping pending timer T308
-DMNCC transmit message MNCC_REL_CNF
-DCC Sending 'MNCC_REL_CNF' to MNCC.
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) rx RELEASE_COMPL in state RELEASE_REQ
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) stopping pending timer T308
+DMNCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000001 tid-8) tx MNCC_REL_CNF
   MSC --> MNCC: callref 0x80000001: MNCC_REL_CNF
-DCC (ti 08 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state RELEASE_REQ -> NULL
-DCC (sub 42342) stopping pending guard timer
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x0 tid-8) Freeing transaction
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x0 tid-8) new state RELEASE_REQ -> NULL
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x0 tid-8) stopping pending guard timer
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 - CC: now used by 2 (attached,active-conn)
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: - cc: now used by 1 (rx_from_ms)
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: - rx_from_ms: now used by 0 (-)
@@ -651,10 +652,9 @@
 
 
 - after a while, MNCC asks us to setup a call, causing Paging
-DMNCC receive message MNCC_SETUP_REQ
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 + mncc_tx_to_cc: now used by 2 (attached,mncc_tx_to_cc)
-DCC (ti ff sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 callref 423) New transaction
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 + CC: now used by 3 (attached,mncc_tx_to_cc,CC)
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 callref-0x423 tid-255) New transaction
 DPAG Paging: IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 for MNCC: establish call: Starting paging
   paging request (CALL_CONVERSATIONAL) to IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 on UTRAN-Iu
   strcmp(paging_expecting_imsi, vsub->imsi) == 0
@@ -738,12 +738,12 @@
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTH_CIPH}: state_chg to MSC_A_ST_AUTHENTICATED
 DPAG Paging: IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 for MNCC: establish call: Paging Response action (success)
 DPAG Paging: IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 for MNCC: establish call: Removing Paging Request
-DCC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Paging succeeded
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 callref-0x423 tid-255) Paging succeeded
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + cc: now used by 2 (paging-response,cc)
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Received Event MSC_A_EV_TRANSACTION_ACCEPTED
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: state_chg to MSC_A_ST_COMMUNICATING
-DCC starting timer T303 with 30 seconds
-DCC (ti 00 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state NULL -> CALL_PRESENT
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) starting timer T303 with 30 seconds
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) new state NULL -> CALL_PRESENT
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: NAS down: DTAP on UTRAN-Iu
 - DTAP --UTRAN-Iu--> MS: GSM48_MT_CC_SETUP: 0305
 - DTAP matches expected message
@@ -754,15 +754,15 @@
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: + rx_from_ms: now used by 2 (cc,rx_from_ms)
 DIUCS msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: Dispatching 04.08 message: CC GSM48_MT_CC_CALL_CONF
-DCC stopping pending timer T303
-DCC starting timer T310 with 30 seconds
-DCC (ti 00 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state CALL_PRESENT -> MO_TERM_CALL_CONF
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) rx CALL_CONF in state CALL_PRESENT
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) stopping pending timer T303
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) starting timer T310 with 30 seconds
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) new state CALL_PRESENT -> MO_TERM_CALL_CONF
 DIUCS msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: Starting call assignment
 DCC call_leg(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){ESTABLISHING}: Allocated
 DCC call_leg(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){ESTABLISHING}: is child of msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP)
   MS <--Call Assignment-- MSC: callref=0x423
-DMNCC transmit message MNCC_CALL_CONF_IND
-DCC Sending 'MNCC_CALL_CONF_IND' to MNCC.
+DMNCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) tx MNCC_CALL_CONF_IND
   MSC --> MNCC: callref 0x423: MNCC_CALL_CONF_IND
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: - rx_from_ms: now used by 1 (cc)
 - Total time passed: 1.000023 s
@@ -770,11 +770,11 @@
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: + rx_from_ms: now used by 2 (cc,rx_from_ms)
 DIUCS msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: Dispatching 04.08 message: CC GSM48_MT_CC_ALERTING
-DCC stopping pending timer T310
-DCC starting timer T301 with 180 seconds
-DCC (ti 00 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state MO_TERM_CALL_CONF -> CALL_RECEIVED
-DMNCC transmit message MNCC_ALERT_IND
-DCC Sending 'MNCC_ALERT_IND' to MNCC.
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) rx ALERTING in state MO_TERM_CALL_CONF
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) stopping pending timer T310
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) starting timer T301 with 180 seconds
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) new state MO_TERM_CALL_CONF -> CALL_RECEIVED
+DMNCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) tx MNCC_ALERT_IND
   MSC --> MNCC: callref 0x423: MNCC_ALERT_IND
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: - rx_from_ms: now used by 1 (cc)
 - Total time passed: 2.000046 s
@@ -782,17 +782,17 @@
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: + rx_from_ms: now used by 2 (cc,rx_from_ms)
 DIUCS msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: Dispatching 04.08 message: CC GSM48_MT_CC_CONNECT
-DCC stopping pending timer T301
-DCC (ti 00 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state CALL_RECEIVED -> CONNECT_REQUEST
-DMNCC transmit message MNCC_SETUP_CNF
-DCC Sending 'MNCC_SETUP_CNF' to MNCC.
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) rx CONNECT in state CALL_RECEIVED
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) stopping pending timer T301
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) new state CALL_RECEIVED -> CONNECT_REQUEST
+DMNCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) tx MNCC_SETUP_CNF
   MSC --> MNCC: callref 0x423: MNCC_SETUP_CNF
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: - rx_from_ms: now used by 1 (cc)
-DMNCC receive message MNCC_SETUP_COMPL_REQ
-DCC (sub 42342) starting guard timer with 180 seconds
-DCC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: (ti 00) Received 'MNCC_SETUP_COMPL_REQ' from MNCC in state 8 (CONNECT_REQUEST)
-DCC (ti 00 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state CONNECT_REQUEST -> ACTIVE
-DCC (sub 42342) stopping pending guard timer
+DMNCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) rx MNCC_SETUP_COMPL_REQ
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) starting guard timer with 180 seconds
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) rx MNCC_SETUP_COMPL_REQ in state CONNECT_REQUEST
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) new state CONNECT_REQUEST -> ACTIVE
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) stopping pending guard timer
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: NAS down: DTAP on UTRAN-Iu
 - DTAP --UTRAN-Iu--> MS: GSM48_MT_CC_CONNECT_ACK: 030f
 - DTAP matches expected message
@@ -808,16 +808,16 @@
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: + rx_from_ms: now used by 2 (cc,rx_from_ms)
 DIUCS msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: Dispatching 04.08 message: CC GSM48_MT_CC_DISCONNECT
-DCC (ti 00 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state ACTIVE -> DISCONNECT_IND
-DMNCC transmit message MNCC_DISC_IND
-DCC Sending 'MNCC_DISC_IND' to MNCC.
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) rx DISCONNECT in state ACTIVE
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) new state ACTIVE -> DISCONNECT_IND
+DMNCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) tx MNCC_DISC_IND
   MSC --> MNCC: callref 0x423: MNCC_DISC_IND
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: - rx_from_ms: now used by 1 (cc)
-DMNCC receive message MNCC_REL_REQ
-DCC (sub 42342) starting guard timer with 180 seconds
-DCC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: (ti 00) Received 'MNCC_REL_REQ' from MNCC in state 12 (DISCONNECT_IND)
-DCC starting timer T308 with 10 seconds
-DCC (ti 00 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state DISCONNECT_IND -> RELEASE_REQ
+DMNCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) rx MNCC_REL_REQ
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) starting guard timer with 180 seconds
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) rx MNCC_REL_REQ in state DISCONNECT_IND
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) starting timer T308 with 10 seconds
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) new state DISCONNECT_IND -> RELEASE_REQ
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: NAS down: DTAP on UTRAN-Iu
 - DTAP --UTRAN-Iu--> MS: GSM48_MT_CC_RELEASE: 032d
 - DTAP matches expected message
@@ -826,12 +826,13 @@
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: + rx_from_ms: now used by 2 (cc,rx_from_ms)
 DIUCS msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: Dispatching 04.08 message: CC GSM48_MT_CC_RELEASE_COMPL
-DCC stopping pending timer T308
-DMNCC transmit message MNCC_REL_CNF
-DCC Sending 'MNCC_REL_CNF' to MNCC.
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) rx RELEASE_COMPL in state RELEASE_REQ
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) stopping pending timer T308
+DMNCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) tx MNCC_REL_CNF
   MSC --> MNCC: callref 0x423: MNCC_REL_CNF
-DCC (ti 00 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state RELEASE_REQ -> NULL
-DCC (sub 42342) stopping pending guard timer
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x0 tid-0) Freeing transaction
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x0 tid-0) new state RELEASE_REQ -> NULL
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x0 tid-0) stopping pending guard timer
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 - CC: now used by 2 (attached,active-conn)
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: - cc: now used by 1 (rx_from_ms)
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: - rx_from_ms: now used by 0 (-)
@@ -1091,10 +1092,9 @@
 
 
 - after a while, MNCC asks us to setup a call, causing Paging
-DMNCC receive message MNCC_SETUP_REQ
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 + mncc_tx_to_cc: now used by 2 (attached,mncc_tx_to_cc)
-DCC (ti ff sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 callref 423) New transaction
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 + CC: now used by 3 (attached,mncc_tx_to_cc,CC)
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 callref-0x423 tid-255) New transaction
 DPAG Paging: IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 for MNCC: establish call: Starting paging
   paging request (CALL_CONVERSATIONAL) to IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 on UTRAN-Iu
   strcmp(paging_expecting_imsi, vsub->imsi) == 0
@@ -1178,12 +1178,12 @@
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTH_CIPH}: state_chg to MSC_A_ST_AUTHENTICATED
 DPAG Paging: IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 for MNCC: establish call: Paging Response action (success)
 DPAG Paging: IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 for MNCC: establish call: Removing Paging Request
-DCC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Paging succeeded
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 callref-0x423 tid-255) Paging succeeded
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + cc: now used by 2 (paging-response,cc)
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Received Event MSC_A_EV_TRANSACTION_ACCEPTED
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: state_chg to MSC_A_ST_COMMUNICATING
-DCC starting timer T303 with 30 seconds
-DCC (ti 00 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state NULL -> CALL_PRESENT
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) starting timer T303 with 30 seconds
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) new state NULL -> CALL_PRESENT
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: NAS down: DTAP on UTRAN-Iu
 - DTAP --UTRAN-Iu--> MS: GSM48_MT_CC_SETUP: 0305
 - DTAP matches expected message
@@ -1194,15 +1194,15 @@
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: + rx_from_ms: now used by 2 (cc,rx_from_ms)
 DIUCS msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: Dispatching 04.08 message: CC GSM48_MT_CC_CALL_CONF
-DCC stopping pending timer T303
-DCC starting timer T310 with 30 seconds
-DCC (ti 00 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state CALL_PRESENT -> MO_TERM_CALL_CONF
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) rx CALL_CONF in state CALL_PRESENT
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) stopping pending timer T303
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) starting timer T310 with 30 seconds
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) new state CALL_PRESENT -> MO_TERM_CALL_CONF
 DIUCS msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: Starting call assignment
 DCC call_leg(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){ESTABLISHING}: Allocated
 DCC call_leg(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){ESTABLISHING}: is child of msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP)
   MS <--Call Assignment-- MSC: callref=0x423
-DMNCC transmit message MNCC_CALL_CONF_IND
-DCC Sending 'MNCC_CALL_CONF_IND' to MNCC.
+DMNCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) tx MNCC_CALL_CONF_IND
   MSC --> MNCC: callref 0x423: MNCC_CALL_CONF_IND
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: - rx_from_ms: now used by 1 (cc)
 - Total time passed: 1.000023 s
@@ -1210,11 +1210,11 @@
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: + rx_from_ms: now used by 2 (cc,rx_from_ms)
 DIUCS msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: Dispatching 04.08 message: CC GSM48_MT_CC_ALERTING
-DCC stopping pending timer T310
-DCC starting timer T301 with 180 seconds
-DCC (ti 00 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state MO_TERM_CALL_CONF -> CALL_RECEIVED
-DMNCC transmit message MNCC_ALERT_IND
-DCC Sending 'MNCC_ALERT_IND' to MNCC.
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) rx ALERTING in state MO_TERM_CALL_CONF
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) stopping pending timer T310
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) starting timer T301 with 180 seconds
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) new state MO_TERM_CALL_CONF -> CALL_RECEIVED
+DMNCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) tx MNCC_ALERT_IND
   MSC --> MNCC: callref 0x423: MNCC_ALERT_IND
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_COMMUNICATING}: - rx_from_ms: now used by 1 (cc)
 - Total time passed: 16.000046 s
@@ -1225,18 +1225,18 @@
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 + msc_a_fsm_releasing_onenter: now used by 4 (attached,CC,active-conn,msc_a_fsm_releasing_onenter)
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 + vlr_subscr_cancel_attach_fsm: now used by 5 (attached,CC,active-conn,msc_a_fsm_releasing_onenter,vlr_subscr_cancel_attach_fsm)
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 - vlr_subscr_cancel_attach_fsm: now used by 4 (attached,CC,active-conn,msc_a_fsm_releasing_onenter)
-DCC stopping pending timer T301
-DCC starting timer T308 with 10 seconds
-DCC (ti 00 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state CALL_RECEIVED -> RELEASE_REQ
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) Freeing transaction
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) stopping pending timer T301
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) starting timer T308 with 10 seconds
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) new state CALL_RECEIVED -> RELEASE_REQ
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_RELEASING}: NAS down: DTAP on UTRAN-Iu
 - DTAP --UTRAN-Iu--> MS: GSM48_MT_CC_RELEASE: 032d080281af
 - DTAP matches expected message
 DMSC dummy_msc_i(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){0}: Received Event unknown 0x3
-DMNCC transmit message MNCC_REL_CNF
-DCC Sending 'MNCC_REL_CNF' to MNCC.
+DMNCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) tx MNCC_REL_CNF
   MSC --> MNCC: callref 0x423: MNCC_REL_CNF
-DCC stopping pending timer T308
-DCC (ti 00 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state RELEASE_REQ -> NULL
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) stopping pending timer T308
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x423 tid-0) new state RELEASE_REQ -> NULL
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 - CC: now used by 3 (attached,active-conn,msc_a_fsm_releasing_onenter)
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_RELEASING}: - cc: now used by 0 (-)
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_RELEASING}: Received Event MSC_A_EV_UNUSED
@@ -1578,26 +1578,26 @@
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (cm_service_cc,rx_from_ms)
 DIUCS msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: CC GSM48_MT_CC_SETUP
-DCC Unknown transaction ID 8, creating new trans.
-DCC (ti 08 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 callref 80000002) New transaction
+DMSC trans(NULL NULL callref-0x0 tid-0) Unknown transaction ID 8, creating new trans.
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 + CC: now used by 3 (attached,active-conn,CC)
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 callref-0x80000002 tid-8) New transaction
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: Received Event MSC_A_EV_TRANSACTION_ACCEPTED
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: state_chg to MSC_A_ST_COMMUNICATING
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: + cc: now used by 3 (cm_service_cc,rx_from_ms,cc)
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: - cm_service_cc: now used by 2 (rx_from_ms,cc)
-DCC (sub 42342) starting guard timer with 180 seconds
-DCC (ti 08 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state NULL -> INITIATED
-DCC Subscriber IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 (42342) sends SETUP to 123
-DMNCC transmit message MNCC_SETUP_IND
-DCC Sending 'MNCC_SETUP_IND' to MNCC.
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000002 tid-8) rx SETUP in state NULL
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000002 tid-8) starting guard timer with 180 seconds
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000002 tid-8) new state NULL -> INITIATED
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000002 tid-8) SETUP to 123
+DMNCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000002 tid-8) tx MNCC_SETUP_IND
   MSC --> MNCC: callref 0x80000002: MNCC_SETUP_IND
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: - rx_from_ms: now used by 1 (cc)
 - MNCC says that's fine
-DMNCC receive message MNCC_CALL_PROC_REQ
-DCC (sub 42342) stopping pending guard timer
-DCC (sub 42342) starting guard timer with 180 seconds
-DCC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: (ti 08) Received 'MNCC_CALL_PROC_REQ' from MNCC in state 1 (INITIATED)
-DCC (ti 08 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state INITIATED -> MO_CALL_PROC
+DMNCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000002 tid-8) rx MNCC_CALL_PROC_REQ
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000002 tid-8) stopping pending guard timer
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000002 tid-8) starting guard timer with 180 seconds
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000002 tid-8) rx MNCC_CALL_PROC_REQ in state INITIATED
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000002 tid-8) new state INITIATED -> MO_CALL_PROC
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: NAS down: DTAP on UTRAN-Iu
 - DTAP --UTRAN-Iu--> MS: GSM48_MT_CC_CALL_PROC: 8302
 - DTAP matches expected message
@@ -1607,18 +1607,18 @@
 DCC call_leg(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){ESTABLISHING}: is child of msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ)
   MS <--Call Assignment-- MSC: callref=0x80000002
 - But the other side's MSISDN could not be resolved, MNCC tells us to cancel
-DMNCC receive message MNCC_REL_REQ
-DCC (sub 42342) stopping pending guard timer
-DCC (sub 42342) starting guard timer with 180 seconds
-DCC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: (ti 08) Received 'MNCC_REL_REQ' from MNCC in state 3 (MO_CALL_PROC)
-DCC starting timer T308 with 10 seconds
-DCC (ti 08 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state MO_CALL_PROC -> RELEASE_REQ
+DMNCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000002 tid-8) rx MNCC_REL_REQ
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000002 tid-8) stopping pending guard timer
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000002 tid-8) starting guard timer with 180 seconds
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000002 tid-8) rx MNCC_REL_REQ in state MO_CALL_PROC
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000002 tid-8) starting timer T308 with 10 seconds
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000002 tid-8) new state MO_CALL_PROC -> RELEASE_REQ
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: NAS down: DTAP on UTRAN-Iu
 - DTAP --UTRAN-Iu--> MS: GSM48_MT_CC_RELEASE: 832d
 - DTAP matches expected message
 DMSC dummy_msc_i(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){0}: Received Event unknown 0x3
 - Total time passed: 10.000023 s
-DCC starting timer T308 with 10 seconds
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000002 tid-8) starting timer T308 with 10 seconds
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: NAS down: DTAP on UTRAN-Iu
 - DTAP --UTRAN-Iu--> MS: GSM48_MT_CC_RELEASE: 832d
 - DTAP matches expected message
@@ -1627,12 +1627,13 @@
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: + rx_from_ms: now used by 2 (cc,rx_from_ms)
 DIUCS msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: Dispatching 04.08 message: CC GSM48_MT_CC_RELEASE_COMPL
-DCC stopping pending timer T308
-DMNCC transmit message MNCC_REL_CNF
-DCC Sending 'MNCC_REL_CNF' to MNCC.
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000002 tid-8) rx RELEASE_COMPL in state RELEASE_REQ
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000002 tid-8) stopping pending timer T308
+DMNCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000002 tid-8) tx MNCC_REL_CNF
   MSC --> MNCC: callref 0x80000002: MNCC_REL_CNF
-DCC (ti 08 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state RELEASE_REQ -> NULL
-DCC (sub 42342) stopping pending guard timer
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x0 tid-8) Freeing transaction
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x0 tid-8) new state RELEASE_REQ -> NULL
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x0 tid-8) stopping pending guard timer
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 - CC: now used by 2 (attached,active-conn)
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: - cc: now used by 1 (rx_from_ms)
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: - rx_from_ms: now used by 0 (-)
@@ -1979,26 +1980,26 @@
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (cm_service_cc,rx_from_ms)
 DIUCS msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: CC GSM48_MT_CC_SETUP
-DCC Unknown transaction ID 8, creating new trans.
-DCC (ti 08 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 callref 80000003) New transaction
+DMSC trans(NULL NULL callref-0x0 tid-0) Unknown transaction ID 8, creating new trans.
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 + CC: now used by 3 (attached,active-conn,CC)
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 callref-0x80000003 tid-8) New transaction
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: Received Event MSC_A_EV_TRANSACTION_ACCEPTED
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: state_chg to MSC_A_ST_COMMUNICATING
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: + cc: now used by 3 (cm_service_cc,rx_from_ms,cc)
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: - cm_service_cc: now used by 2 (rx_from_ms,cc)
-DCC (sub 42342) starting guard timer with 180 seconds
-DCC (ti 08 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state NULL -> INITIATED
-DCC Subscriber IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 (42342) sends SETUP to 123
-DMNCC transmit message MNCC_SETUP_IND
-DCC Sending 'MNCC_SETUP_IND' to MNCC.
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000003 tid-8) rx SETUP in state NULL
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000003 tid-8) starting guard timer with 180 seconds
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000003 tid-8) new state NULL -> INITIATED
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000003 tid-8) SETUP to 123
+DMNCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000003 tid-8) tx MNCC_SETUP_IND
   MSC --> MNCC: callref 0x80000003: MNCC_SETUP_IND
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: - rx_from_ms: now used by 1 (cc)
 - MNCC says that's fine
-DMNCC receive message MNCC_CALL_PROC_REQ
-DCC (sub 42342) stopping pending guard timer
-DCC (sub 42342) starting guard timer with 180 seconds
-DCC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: (ti 08) Received 'MNCC_CALL_PROC_REQ' from MNCC in state 1 (INITIATED)
-DCC (ti 08 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state INITIATED -> MO_CALL_PROC
+DMNCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000003 tid-8) rx MNCC_CALL_PROC_REQ
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000003 tid-8) stopping pending guard timer
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000003 tid-8) starting guard timer with 180 seconds
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000003 tid-8) rx MNCC_CALL_PROC_REQ in state INITIATED
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000003 tid-8) new state INITIATED -> MO_CALL_PROC
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: NAS down: DTAP on UTRAN-Iu
 - DTAP --UTRAN-Iu--> MS: GSM48_MT_CC_CALL_PROC: 8302
 - DTAP matches expected message
@@ -2008,30 +2009,30 @@
 DCC call_leg(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){ESTABLISHING}: is child of msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ)
   MS <--Call Assignment-- MSC: callref=0x80000003
 - But the other side's MSISDN could not be resolved, MNCC tells us to cancel
-DMNCC receive message MNCC_REL_REQ
-DCC (sub 42342) stopping pending guard timer
-DCC (sub 42342) starting guard timer with 180 seconds
-DCC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: (ti 08) Received 'MNCC_REL_REQ' from MNCC in state 3 (MO_CALL_PROC)
-DCC starting timer T308 with 10 seconds
-DCC (ti 08 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state MO_CALL_PROC -> RELEASE_REQ
+DMNCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000003 tid-8) rx MNCC_REL_REQ
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000003 tid-8) stopping pending guard timer
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000003 tid-8) starting guard timer with 180 seconds
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000003 tid-8) rx MNCC_REL_REQ in state MO_CALL_PROC
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000003 tid-8) starting timer T308 with 10 seconds
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000003 tid-8) new state MO_CALL_PROC -> RELEASE_REQ
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: NAS down: DTAP on UTRAN-Iu
 - DTAP --UTRAN-Iu--> MS: GSM48_MT_CC_RELEASE: 832d
 - DTAP matches expected message
 DMSC dummy_msc_i(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){0}: Received Event unknown 0x3
 - Despite our repeated CC Release Requests, the MS does not respond anymore
 - Total time passed: 10.000023 s
-DCC starting timer T308 with 10 seconds
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000003 tid-8) starting timer T308 with 10 seconds
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: NAS down: DTAP on UTRAN-Iu
 - DTAP --UTRAN-Iu--> MS: GSM48_MT_CC_RELEASE: 832d
 - DTAP matches expected message
 DMSC dummy_msc_i(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){0}: Received Event unknown 0x3
 - The CC Release times out and we still properly clear the conn
 - Total time passed: 20.000046 s
-DMNCC transmit message MNCC_REL_CNF
-DCC Sending 'MNCC_REL_CNF' to MNCC.
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000003 tid-8) Freeing transaction
+DMNCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000003 tid-8) tx MNCC_REL_CNF
   MSC --> MNCC: callref 0x80000003: MNCC_REL_CNF
-DCC (ti 08 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100) new state RELEASE_REQ -> NULL
-DCC (sub 42342) stopping pending guard timer
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000003 tid-8) new state RELEASE_REQ -> NULL
+DCC trans(CC IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ callref-0x80000003 tid-8) stopping pending guard timer
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 - CC: now used by 2 (attached,active-conn)
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: - cc: now used by 0 (-)
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: Received Event MSC_A_EV_UNUSED
diff --git a/tests/msc_vlr/msc_vlr_test_gsm_authen.err b/tests/msc_vlr/msc_vlr_test_gsm_authen.err
index 007f2f2..2d832f0 100644
--- a/tests/msc_vlr/msc_vlr_test_gsm_authen.err
+++ b/tests/msc_vlr/msc_vlr_test_gsm_authen.err
@@ -334,19 +334,19 @@
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + test_gsm_authen: now used by 2 (attached,test_gsm_authen)
   llist_count(&vsub->cs.requests) == 0
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + SMS-receiver: now used by 3 (attached,test_gsm_authen,SMS-receiver)
-DLSMS Going to send a MT SMS
-DCC (ti 00 sub IMSI-901700000004620:MSISDN-46071 callref 40000001) New transaction
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + SMS: now used by 4 (attached,test_gsm_authen,SMS-receiver,SMS)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000001 tid-0) New transaction
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000001 tid-0) Going to send a MT SMS
 DLSMS SMR(0) message SM-RL-DATA_REQ received in state IDLE
 DLSMS SMR(0) TX SMS RP-DATA
 DLSMS SMR(0) new RP state IDLE -> WAIT_FOR_RP_ACK
 DLSMS SMC(0) message MNSMS-EST-REQ received in state IDLE
 DLSMS SMC(0) new CP state IDLE -> MM_CONN_PENDING
-DLSMS Initiating Paging procedure for IMSI-901700000004620:MSISDN-46071 due to MMSMS_EST_REQ
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000001 tid-0) Initiating Paging due to MMSMS_EST_REQ
 DPAG Paging: IMSI-901700000004620:MSISDN-46071 for MT-SMS: Starting paging
   paging request (SIGNALLING_LOW_PRIO) to IMSI-901700000004620:MSISDN-46071 on GERAN-A
   strcmp(paging_expecting_imsi, vsub->imsi) == 0
@@ -441,13 +441,13 @@
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTH_CIPH}: state_chg to MSC_A_ST_AUTHENTICATED
 DPAG Paging: IMSI-901700000004620:MSISDN-46071 for MT-SMS: Paging Response action (success)
 DPAG Paging: IMSI-901700000004620:MSISDN-46071 for MT-SMS: Removing Paging Request
-DLSMS mmsms_paging_cb(success)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000001 tid-0) mmsms_paging_cb(success)
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + sms: now used by 3 (paging-response,rx_from_ms,sms)
 DLSMS SMC(0) message MMSMS-EST-CNF received in state MM_CONN_PENDING
 DLSMS SMC(0) send CP data
 DLSMS SMC(0) new CP state MM_CONN_PENDING -> WAIT_CP_ACK
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 64 70 f1 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 64 70 f1 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on GERAN-A
 - DTAP --GERAN-A--> MS: SMS:0x01: 09015801000791447758100650004c0005806470f1000007101000000000445079da1e1ee7416937485e9ea7c965373d1d6683c270383b3d0ed3d36ff71c949e83c22072799e9687c5ec32a81d96afcbf4b4fb0c7ac3e9e9b7db05
 - DTAP matches expected message
@@ -467,7 +467,7 @@
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (sms,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x04
-DLSMS msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x04)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) receiving SMS message SMS:0x04
 DLSMS SMC(0) message MMSMS-DATA-IND (CP ACK) received in state WAIT_CP_ACK
 DLSMS SMC(0) received CP-ACK
 DLSMS SMC(0) new CP state WAIT_CP_ACK -> MM_ESTABLISHED
@@ -478,25 +478,26 @@
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (sms,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x01
-DLSMS msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x01)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) receiving SMS message SMS:0x01
 DLSMS SMC(0) message MMSMS-DATA-IND (CP DATA) received in state MM_ESTABLISHED
 DLSMS SMC(0) received CP-DATA
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 04 
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) GSM4.11 TX 09 04 
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on GERAN-A
 - DTAP --GERAN-A--> MS: SMS:0x04: 0904
 - DTAP matches expected message
 DMSC dummy_msc_i(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){0}: Received Event unknown 0x3
-DLSMS MNSMS-DATA/EST-IND
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) MNSMS-DATA/EST-IND
 DLSMS SMR(0) message MNSMS-DATA-IND received in state WAIT_FOR_RP_ACK
 DLSMS SMR(0) RX SMS RP-ACK
 DLSMS SMR(0) new RP state WAIT_FOR_RP_ACK -> IDLE
-DLSMS RX SMS RP-ACK (MO)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) RX SMS RP-ACK (MO)
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - SMS-receiver: now used by 3 (attached,SMS,active-conn)
 DLSMS SMR(0) TX: MNSMS-REL-REQ
 DLSMS SMC(0) message MNSMS-REL-REQ received in state MM_ESTABLISHED
 DLSMS SMC(0) new CP state MM_ESTABLISHED -> IDLE
-DLSMS Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) Freeing transaction
 DLSMS SMR(0) clearing SMR instance
 DLSMS SMC(0) clearing instance
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - SMS: now used by 2 (attached,active-conn)
@@ -985,19 +986,19 @@
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 + test_gsm_authen_tmsi: now used by 2 (attached,test_gsm_authen_tmsi)
   llist_count(&vsub->cs.requests) == 0
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 + SMS-receiver: now used by 3 (attached,test_gsm_authen_tmsi,SMS-receiver)
-DLSMS Going to send a MT SMS
-DCC (ti 00 sub IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 callref 40000002) New transaction
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 + SMS: now used by 4 (attached,test_gsm_authen_tmsi,SMS-receiver,SMS)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 callref-0x40000002 tid-0) New transaction
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 callref-0x40000002 tid-0) Going to send a MT SMS
 DLSMS SMR(0) message SM-RL-DATA_REQ received in state IDLE
 DLSMS SMR(0) TX SMS RP-DATA
 DLSMS SMR(0) new RP state IDLE -> WAIT_FOR_RP_ACK
 DLSMS SMC(0) message MNSMS-EST-REQ received in state IDLE
 DLSMS SMC(0) new CP state IDLE -> MM_CONN_PENDING
-DLSMS Initiating Paging procedure for IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 due to MMSMS_EST_REQ
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 callref-0x40000002 tid-0) Initiating Paging due to MMSMS_EST_REQ
 DPAG Paging: IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 for MT-SMS: Starting paging
   paging request (SIGNALLING_LOW_PRIO) to IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 on GERAN-A
   paging_expecting_tmsi == 0x03020100
@@ -1092,13 +1093,13 @@
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTH_CIPH}: state_chg to MSC_A_ST_AUTHENTICATED
 DPAG Paging: IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 for MT-SMS: Paging Response action (success)
 DPAG Paging: IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 for MT-SMS: Removing Paging Request
-DLSMS mmsms_paging_cb(success)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 callref-0x40000002 tid-0) mmsms_paging_cb(success)
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + sms: now used by 3 (paging-response,rx_from_ms,sms)
 DLSMS SMC(0) message MMSMS-EST-CNF received in state MM_CONN_PENDING
 DLSMS SMC(0) send CP data
 DLSMS SMC(0) new CP state MM_CONN_PENDING -> WAIT_CP_ACK
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 64 70 f1 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 64 70 f1 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on GERAN-A
 - DTAP --GERAN-A--> MS: SMS:0x01: 09015801000791447758100650004c0005806470f1000007101000000000445079da1e1ee7416937485e9ea7c965373d1d6683c270383b3d0ed3d36ff71c949e83c22072799e9687c5ec32a81d96afcbf4b4fb0c7ac3e9e9b7db05
 - DTAP matches expected message
@@ -1118,7 +1119,7 @@
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (sms,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x04
-DLSMS msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x04)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) receiving SMS message SMS:0x04
 DLSMS SMC(0) message MMSMS-DATA-IND (CP ACK) received in state WAIT_CP_ACK
 DLSMS SMC(0) received CP-ACK
 DLSMS SMC(0) new CP state WAIT_CP_ACK -> MM_ESTABLISHED
@@ -1129,25 +1130,26 @@
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (sms,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x01
-DLSMS msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x01)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) receiving SMS message SMS:0x01
 DLSMS SMC(0) message MMSMS-DATA-IND (CP DATA) received in state MM_ESTABLISHED
 DLSMS SMC(0) received CP-DATA
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 04 
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) GSM4.11 TX 09 04 
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on GERAN-A
 - DTAP --GERAN-A--> MS: SMS:0x04: 0904
 - DTAP matches expected message
 DMSC dummy_msc_i(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){0}: Received Event unknown 0x3
-DLSMS MNSMS-DATA/EST-IND
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) MNSMS-DATA/EST-IND
 DLSMS SMR(0) message MNSMS-DATA-IND received in state WAIT_FOR_RP_ACK
 DLSMS SMR(0) RX SMS RP-ACK
 DLSMS SMR(0) new RP state WAIT_FOR_RP_ACK -> IDLE
-DLSMS RX SMS RP-ACK (MO)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) RX SMS RP-ACK (MO)
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 - SMS-receiver: now used by 3 (attached,SMS,active-conn)
 DLSMS SMR(0) TX: MNSMS-REL-REQ
 DLSMS SMC(0) message MNSMS-REL-REQ received in state MM_ESTABLISHED
 DLSMS SMC(0) new CP state MM_ESTABLISHED -> IDLE
-DLSMS Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) Freeing transaction
 DLSMS SMR(0) clearing SMR instance
 DLSMS SMC(0) clearing instance
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 - SMS: now used by 2 (attached,active-conn)
@@ -3019,19 +3021,19 @@
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342 + test_gsm_milenage_authen: now used by 2 (attached,test_gsm_milenage_authen)
   llist_count(&vsub->cs.requests) == 0
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342 + SMS-receiver: now used by 3 (attached,test_gsm_milenage_authen,SMS-receiver)
-DLSMS Going to send a MT SMS
-DCC (ti 00 sub IMSI-901700000010650:MSISDN-42342 callref 40000003) New transaction
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342 + SMS: now used by 4 (attached,test_gsm_milenage_authen,SMS-receiver,SMS)
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342 callref-0x40000003 tid-0) New transaction
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342 callref-0x40000003 tid-0) Going to send a MT SMS
 DLSMS SMR(0) message SM-RL-DATA_REQ received in state IDLE
 DLSMS SMR(0) TX SMS RP-DATA
 DLSMS SMR(0) new RP state IDLE -> WAIT_FOR_RP_ACK
 DLSMS SMC(0) message MNSMS-EST-REQ received in state IDLE
 DLSMS SMC(0) new CP state IDLE -> MM_CONN_PENDING
-DLSMS Initiating Paging procedure for IMSI-901700000010650:MSISDN-42342 due to MMSMS_EST_REQ
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342 callref-0x40000003 tid-0) Initiating Paging due to MMSMS_EST_REQ
 DPAG Paging: IMSI-901700000010650:MSISDN-42342 for MT-SMS: Starting paging
   paging request (SIGNALLING_LOW_PRIO) to IMSI-901700000010650:MSISDN-42342 on GERAN-A
   strcmp(paging_expecting_imsi, vsub->imsi) == 0
@@ -3126,13 +3128,13 @@
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTH_CIPH}: state_chg to MSC_A_ST_AUTHENTICATED
 DPAG Paging: IMSI-901700000010650:MSISDN-42342 for MT-SMS: Paging Response action (success)
 DPAG Paging: IMSI-901700000010650:MSISDN-42342 for MT-SMS: Removing Paging Request
-DLSMS mmsms_paging_cb(success)
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342 callref-0x40000003 tid-0) mmsms_paging_cb(success)
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + sms: now used by 3 (paging-response,rx_from_ms,sms)
 DLSMS SMC(0) message MMSMS-EST-CNF received in state MM_CONN_PENDING
 DLSMS SMC(0) send CP data
 DLSMS SMC(0) new CP state MM_CONN_PENDING -> WAIT_CP_ACK
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 24 43 f2 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000003 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000003 tid-0) GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 24 43 f2 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on GERAN-A
 - DTAP --GERAN-A--> MS: SMS:0x01: 09015801000791447758100650004c0005802443f2000007101000000000445079da1e1ee7416937485e9ea7c965373d1d6683c270383b3d0ed3d36ff71c949e83c22072799e9687c5ec32a81d96afcbf4b4fb0c7ac3e9e9b7db05
 - DTAP matches expected message
@@ -3152,7 +3154,7 @@
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (sms,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x04
-DLSMS msc_a(IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x04)
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000003 tid-0) receiving SMS message SMS:0x04
 DLSMS SMC(0) message MMSMS-DATA-IND (CP ACK) received in state WAIT_CP_ACK
 DLSMS SMC(0) received CP-ACK
 DLSMS SMC(0) new CP state WAIT_CP_ACK -> MM_ESTABLISHED
@@ -3163,25 +3165,26 @@
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (sms,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x01
-DLSMS msc_a(IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x01)
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000003 tid-0) receiving SMS message SMS:0x01
 DLSMS SMC(0) message MMSMS-DATA-IND (CP DATA) received in state MM_ESTABLISHED
 DLSMS SMC(0) received CP-DATA
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 04 
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000003 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000003 tid-0) GSM4.11 TX 09 04 
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on GERAN-A
 - DTAP --GERAN-A--> MS: SMS:0x04: 0904
 - DTAP matches expected message
 DMSC dummy_msc_i(IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP){0}: Received Event unknown 0x3
-DLSMS MNSMS-DATA/EST-IND
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000003 tid-0) MNSMS-DATA/EST-IND
 DLSMS SMR(0) message MNSMS-DATA-IND received in state WAIT_FOR_RP_ACK
 DLSMS SMR(0) RX SMS RP-ACK
 DLSMS SMR(0) new RP state WAIT_FOR_RP_ACK -> IDLE
-DLSMS RX SMS RP-ACK (MO)
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000003 tid-0) RX SMS RP-ACK (MO)
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342 - SMS-receiver: now used by 3 (attached,SMS,active-conn)
 DLSMS SMR(0) TX: MNSMS-REL-REQ
 DLSMS SMC(0) message MNSMS-REL-REQ received in state MM_ESTABLISHED
 DLSMS SMC(0) new CP state MM_ESTABLISHED -> IDLE
-DLSMS Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000003 tid-0) Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000003 tid-0) Freeing transaction
 DLSMS SMR(0) clearing SMR instance
 DLSMS SMC(0) clearing instance
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342 - SMS: now used by 2 (attached,active-conn)
diff --git a/tests/msc_vlr/msc_vlr_test_gsm_ciph.err b/tests/msc_vlr/msc_vlr_test_gsm_ciph.err
index ee028ce..29f30a1 100644
--- a/tests/msc_vlr/msc_vlr_test_gsm_ciph.err
+++ b/tests/msc_vlr/msc_vlr_test_gsm_ciph.err
@@ -370,19 +370,19 @@
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + test_ciph: now used by 2 (attached,test_ciph)
   llist_count(&vsub->cs.requests) == 0
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + SMS-receiver: now used by 3 (attached,test_ciph,SMS-receiver)
-DLSMS Going to send a MT SMS
-DCC (ti 00 sub IMSI-901700000004620:MSISDN-46071 callref 40000001) New transaction
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + SMS: now used by 4 (attached,test_ciph,SMS-receiver,SMS)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000001 tid-0) New transaction
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000001 tid-0) Going to send a MT SMS
 DLSMS SMR(0) message SM-RL-DATA_REQ received in state IDLE
 DLSMS SMR(0) TX SMS RP-DATA
 DLSMS SMR(0) new RP state IDLE -> WAIT_FOR_RP_ACK
 DLSMS SMC(0) message MNSMS-EST-REQ received in state IDLE
 DLSMS SMC(0) new CP state IDLE -> MM_CONN_PENDING
-DLSMS Initiating Paging procedure for IMSI-901700000004620:MSISDN-46071 due to MMSMS_EST_REQ
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000001 tid-0) Initiating Paging due to MMSMS_EST_REQ
 DPAG Paging: IMSI-901700000004620:MSISDN-46071 for MT-SMS: Starting paging
   paging request (SIGNALLING_LOW_PRIO) to IMSI-901700000004620:MSISDN-46071 on GERAN-A
   strcmp(paging_expecting_imsi, vsub->imsi) == 0
@@ -509,13 +509,13 @@
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTH_CIPH}: state_chg to MSC_A_ST_AUTHENTICATED
 DPAG Paging: IMSI-901700000004620:MSISDN-46071 for MT-SMS: Paging Response action (success)
 DPAG Paging: IMSI-901700000004620:MSISDN-46071 for MT-SMS: Removing Paging Request
-DLSMS mmsms_paging_cb(success)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000001 tid-0) mmsms_paging_cb(success)
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + sms: now used by 3 (paging-response,ms_sends_ciphering_mode_complete,sms)
 DLSMS SMC(0) message MMSMS-EST-CNF received in state MM_CONN_PENDING
 DLSMS SMC(0) send CP data
 DLSMS SMC(0) new CP state MM_CONN_PENDING -> WAIT_CP_ACK
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 64 70 f1 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 64 70 f1 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on GERAN-A
 - DTAP --GERAN-A--> MS: SMS:0x01: 09015801000791447758100650004c0005806470f1000007101000000000445079da1e1ee7416937485e9ea7c965373d1d6683c270383b3d0ed3d36ff71c949e83c22072799e9687c5ec32a81d96afcbf4b4fb0c7ac3e9e9b7db05
 - DTAP matches expected message
@@ -535,7 +535,7 @@
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (sms,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x04
-DLSMS msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x04)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) receiving SMS message SMS:0x04
 DLSMS SMC(0) message MMSMS-DATA-IND (CP ACK) received in state WAIT_CP_ACK
 DLSMS SMC(0) received CP-ACK
 DLSMS SMC(0) new CP state WAIT_CP_ACK -> MM_ESTABLISHED
@@ -546,25 +546,26 @@
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (sms,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x01
-DLSMS msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x01)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) receiving SMS message SMS:0x01
 DLSMS SMC(0) message MMSMS-DATA-IND (CP DATA) received in state MM_ESTABLISHED
 DLSMS SMC(0) received CP-DATA
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 04 
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) GSM4.11 TX 09 04 
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on GERAN-A
 - DTAP --GERAN-A--> MS: SMS:0x04: 0904
 - DTAP matches expected message
 DMSC dummy_msc_i(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){0}: Received Event unknown 0x3
-DLSMS MNSMS-DATA/EST-IND
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) MNSMS-DATA/EST-IND
 DLSMS SMR(0) message MNSMS-DATA-IND received in state WAIT_FOR_RP_ACK
 DLSMS SMR(0) RX SMS RP-ACK
 DLSMS SMR(0) new RP state WAIT_FOR_RP_ACK -> IDLE
-DLSMS RX SMS RP-ACK (MO)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) RX SMS RP-ACK (MO)
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - SMS-receiver: now used by 3 (attached,SMS,active-conn)
 DLSMS SMR(0) TX: MNSMS-REL-REQ
 DLSMS SMC(0) message MNSMS-REL-REQ received in state MM_ESTABLISHED
 DLSMS SMC(0) new CP state MM_ESTABLISHED -> IDLE
-DLSMS Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) Freeing transaction
 DLSMS SMR(0) clearing SMR instance
 DLSMS SMC(0) clearing instance
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - SMS: now used by 2 (attached,active-conn)
@@ -1090,19 +1091,19 @@
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 + test_ciph_tmsi: now used by 2 (attached,test_ciph_tmsi)
   llist_count(&vsub->cs.requests) == 0
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 + SMS-receiver: now used by 3 (attached,test_ciph_tmsi,SMS-receiver)
-DLSMS Going to send a MT SMS
-DCC (ti 00 sub IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 callref 40000002) New transaction
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 + SMS: now used by 4 (attached,test_ciph_tmsi,SMS-receiver,SMS)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 callref-0x40000002 tid-0) New transaction
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 callref-0x40000002 tid-0) Going to send a MT SMS
 DLSMS SMR(0) message SM-RL-DATA_REQ received in state IDLE
 DLSMS SMR(0) TX SMS RP-DATA
 DLSMS SMR(0) new RP state IDLE -> WAIT_FOR_RP_ACK
 DLSMS SMC(0) message MNSMS-EST-REQ received in state IDLE
 DLSMS SMC(0) new CP state IDLE -> MM_CONN_PENDING
-DLSMS Initiating Paging procedure for IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 due to MMSMS_EST_REQ
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 callref-0x40000002 tid-0) Initiating Paging due to MMSMS_EST_REQ
 DPAG Paging: IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 for MT-SMS: Starting paging
   paging request (SIGNALLING_LOW_PRIO) to IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 on GERAN-A
   paging_expecting_tmsi == 0x03020100
@@ -1229,13 +1230,13 @@
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTH_CIPH}: state_chg to MSC_A_ST_AUTHENTICATED
 DPAG Paging: IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 for MT-SMS: Paging Response action (success)
 DPAG Paging: IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 for MT-SMS: Removing Paging Request
-DLSMS mmsms_paging_cb(success)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 callref-0x40000002 tid-0) mmsms_paging_cb(success)
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + sms: now used by 3 (paging-response,ms_sends_ciphering_mode_complete,sms)
 DLSMS SMC(0) message MMSMS-EST-CNF received in state MM_CONN_PENDING
 DLSMS SMC(0) send CP data
 DLSMS SMC(0) new CP state MM_CONN_PENDING -> WAIT_CP_ACK
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 64 70 f1 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 64 70 f1 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on GERAN-A
 - DTAP --GERAN-A--> MS: SMS:0x01: 09015801000791447758100650004c0005806470f1000007101000000000445079da1e1ee7416937485e9ea7c965373d1d6683c270383b3d0ed3d36ff71c949e83c22072799e9687c5ec32a81d96afcbf4b4fb0c7ac3e9e9b7db05
 - DTAP matches expected message
@@ -1255,7 +1256,7 @@
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (sms,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x04
-DLSMS msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x04)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) receiving SMS message SMS:0x04
 DLSMS SMC(0) message MMSMS-DATA-IND (CP ACK) received in state WAIT_CP_ACK
 DLSMS SMC(0) received CP-ACK
 DLSMS SMC(0) new CP state WAIT_CP_ACK -> MM_ESTABLISHED
@@ -1266,25 +1267,26 @@
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (sms,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x01
-DLSMS msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x01)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) receiving SMS message SMS:0x01
 DLSMS SMC(0) message MMSMS-DATA-IND (CP DATA) received in state MM_ESTABLISHED
 DLSMS SMC(0) received CP-DATA
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 04 
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) GSM4.11 TX 09 04 
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on GERAN-A
 - DTAP --GERAN-A--> MS: SMS:0x04: 0904
 - DTAP matches expected message
 DMSC dummy_msc_i(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){0}: Received Event unknown 0x3
-DLSMS MNSMS-DATA/EST-IND
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) MNSMS-DATA/EST-IND
 DLSMS SMR(0) message MNSMS-DATA-IND received in state WAIT_FOR_RP_ACK
 DLSMS SMR(0) RX SMS RP-ACK
 DLSMS SMR(0) new RP state WAIT_FOR_RP_ACK -> IDLE
-DLSMS RX SMS RP-ACK (MO)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) RX SMS RP-ACK (MO)
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 - SMS-receiver: now used by 3 (attached,SMS,active-conn)
 DLSMS SMR(0) TX: MNSMS-REL-REQ
 DLSMS SMC(0) message MNSMS-REL-REQ received in state MM_ESTABLISHED
 DLSMS SMC(0) new CP state MM_ESTABLISHED -> IDLE
-DLSMS Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) Freeing transaction
 DLSMS SMR(0) clearing SMR instance
 DLSMS SMC(0) clearing instance
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 - SMS: now used by 2 (attached,active-conn)
@@ -2729,19 +2731,19 @@
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342 + test_gsm_ciph_in_umts_env: now used by 2 (attached,test_gsm_ciph_in_umts_env)
   llist_count(&vsub->cs.requests) == 0
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342 + SMS-receiver: now used by 3 (attached,test_gsm_ciph_in_umts_env,SMS-receiver)
-DLSMS Going to send a MT SMS
-DCC (ti 00 sub IMSI-901700000010650:MSISDN-42342 callref 40000003) New transaction
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342 + SMS: now used by 4 (attached,test_gsm_ciph_in_umts_env,SMS-receiver,SMS)
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342 callref-0x40000003 tid-0) New transaction
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342 callref-0x40000003 tid-0) Going to send a MT SMS
 DLSMS SMR(0) message SM-RL-DATA_REQ received in state IDLE
 DLSMS SMR(0) TX SMS RP-DATA
 DLSMS SMR(0) new RP state IDLE -> WAIT_FOR_RP_ACK
 DLSMS SMC(0) message MNSMS-EST-REQ received in state IDLE
 DLSMS SMC(0) new CP state IDLE -> MM_CONN_PENDING
-DLSMS Initiating Paging procedure for IMSI-901700000010650:MSISDN-42342 due to MMSMS_EST_REQ
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342 callref-0x40000003 tid-0) Initiating Paging due to MMSMS_EST_REQ
 DPAG Paging: IMSI-901700000010650:MSISDN-42342 for MT-SMS: Starting paging
   paging request (SIGNALLING_LOW_PRIO) to IMSI-901700000010650:MSISDN-42342 on GERAN-A
   strcmp(paging_expecting_imsi, vsub->imsi) == 0
@@ -2850,13 +2852,13 @@
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTH_CIPH}: state_chg to MSC_A_ST_AUTHENTICATED
 DPAG Paging: IMSI-901700000010650:MSISDN-42342 for MT-SMS: Paging Response action (success)
 DPAG Paging: IMSI-901700000010650:MSISDN-42342 for MT-SMS: Removing Paging Request
-DLSMS mmsms_paging_cb(success)
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342 callref-0x40000003 tid-0) mmsms_paging_cb(success)
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + sms: now used by 3 (paging-response,ms_sends_ciphering_mode_complete,sms)
 DLSMS SMC(0) message MMSMS-EST-CNF received in state MM_CONN_PENDING
 DLSMS SMC(0) send CP data
 DLSMS SMC(0) new CP state MM_CONN_PENDING -> WAIT_CP_ACK
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 24 43 f2 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000003 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000003 tid-0) GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 24 43 f2 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on GERAN-A
 - DTAP --GERAN-A--> MS: SMS:0x01: 09015801000791447758100650004c0005802443f2000007101000000000445079da1e1ee7416937485e9ea7c965373d1d6683c270383b3d0ed3d36ff71c949e83c22072799e9687c5ec32a81d96afcbf4b4fb0c7ac3e9e9b7db05
 - DTAP matches expected message
@@ -2876,7 +2878,7 @@
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (sms,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x04
-DLSMS msc_a(IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x04)
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000003 tid-0) receiving SMS message SMS:0x04
 DLSMS SMC(0) message MMSMS-DATA-IND (CP ACK) received in state WAIT_CP_ACK
 DLSMS SMC(0) received CP-ACK
 DLSMS SMC(0) new CP state WAIT_CP_ACK -> MM_ESTABLISHED
@@ -2887,25 +2889,26 @@
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (sms,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x01
-DLSMS msc_a(IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x01)
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000003 tid-0) receiving SMS message SMS:0x01
 DLSMS SMC(0) message MMSMS-DATA-IND (CP DATA) received in state MM_ESTABLISHED
 DLSMS SMC(0) received CP-DATA
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 04 
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000003 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000003 tid-0) GSM4.11 TX 09 04 
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on GERAN-A
 - DTAP --GERAN-A--> MS: SMS:0x04: 0904
 - DTAP matches expected message
 DMSC dummy_msc_i(IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP){0}: Received Event unknown 0x3
-DLSMS MNSMS-DATA/EST-IND
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000003 tid-0) MNSMS-DATA/EST-IND
 DLSMS SMR(0) message MNSMS-DATA-IND received in state WAIT_FOR_RP_ACK
 DLSMS SMR(0) RX SMS RP-ACK
 DLSMS SMR(0) new RP state WAIT_FOR_RP_ACK -> IDLE
-DLSMS RX SMS RP-ACK (MO)
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000003 tid-0) RX SMS RP-ACK (MO)
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342 - SMS-receiver: now used by 3 (attached,SMS,active-conn)
 DLSMS SMR(0) TX: MNSMS-REL-REQ
 DLSMS SMC(0) message MNSMS-REL-REQ received in state MM_ESTABLISHED
 DLSMS SMC(0) new CP state MM_ESTABLISHED -> IDLE
-DLSMS Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000003 tid-0) Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000003 tid-0) Freeing transaction
 DLSMS SMR(0) clearing SMR instance
 DLSMS SMC(0) clearing instance
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342 - SMS: now used by 2 (attached,active-conn)
@@ -3374,19 +3377,19 @@
 DREF VLR subscr IMSI-901700000004620:MSISDN-42342 + test_a5_3_supported: now used by 2 (attached,test_a5_3_supported)
   llist_count(&vsub->cs.requests) == 0
 DREF VLR subscr IMSI-901700000004620:MSISDN-42342 + SMS-receiver: now used by 3 (attached,test_a5_3_supported,SMS-receiver)
-DLSMS Going to send a MT SMS
-DCC (ti 00 sub IMSI-901700000004620:MSISDN-42342 callref 40000004) New transaction
 DREF VLR subscr IMSI-901700000004620:MSISDN-42342 + SMS: now used by 4 (attached,test_a5_3_supported,SMS-receiver,SMS)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-42342 callref-0x40000004 tid-0) New transaction
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-42342 callref-0x40000004 tid-0) Going to send a MT SMS
 DLSMS SMR(0) message SM-RL-DATA_REQ received in state IDLE
 DLSMS SMR(0) TX SMS RP-DATA
 DLSMS SMR(0) new RP state IDLE -> WAIT_FOR_RP_ACK
 DLSMS SMC(0) message MNSMS-EST-REQ received in state IDLE
 DLSMS SMC(0) new CP state IDLE -> MM_CONN_PENDING
-DLSMS Initiating Paging procedure for IMSI-901700000004620:MSISDN-42342 due to MMSMS_EST_REQ
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-42342 callref-0x40000004 tid-0) Initiating Paging due to MMSMS_EST_REQ
 DPAG Paging: IMSI-901700000004620:MSISDN-42342 for MT-SMS: Starting paging
   paging request (SIGNALLING_LOW_PRIO) to IMSI-901700000004620:MSISDN-42342 on GERAN-A
   strcmp(paging_expecting_imsi, vsub->imsi) == 0
@@ -3513,13 +3516,13 @@
 DMSC msc_a(IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTH_CIPH}: state_chg to MSC_A_ST_AUTHENTICATED
 DPAG Paging: IMSI-901700000004620:MSISDN-42342 for MT-SMS: Paging Response action (success)
 DPAG Paging: IMSI-901700000004620:MSISDN-42342 for MT-SMS: Removing Paging Request
-DLSMS mmsms_paging_cb(success)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-42342 callref-0x40000004 tid-0) mmsms_paging_cb(success)
 DREF msc_a(IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + sms: now used by 3 (paging-response,ms_sends_ciphering_mode_complete,sms)
 DLSMS SMC(0) message MMSMS-EST-CNF received in state MM_CONN_PENDING
 DLSMS SMC(0) send CP data
 DLSMS SMC(0) new CP state MM_CONN_PENDING -> WAIT_CP_ACK
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 24 43 f2 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000004 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000004 tid-0) GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 24 43 f2 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
 DMSC msc_a(IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on GERAN-A
 - DTAP --GERAN-A--> MS: SMS:0x01: 09015801000791447758100650004c0005802443f2000007101000000000445079da1e1ee7416937485e9ea7c965373d1d6683c270383b3d0ed3d36ff71c949e83c22072799e9687c5ec32a81d96afcbf4b4fb0c7ac3e9e9b7db05
 - DTAP matches expected message
@@ -3539,7 +3542,7 @@
 DREF msc_a(IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (sms,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x04
-DLSMS msc_a(IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x04)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000004 tid-0) receiving SMS message SMS:0x04
 DLSMS SMC(0) message MMSMS-DATA-IND (CP ACK) received in state WAIT_CP_ACK
 DLSMS SMC(0) received CP-ACK
 DLSMS SMC(0) new CP state WAIT_CP_ACK -> MM_ESTABLISHED
@@ -3550,25 +3553,26 @@
 DREF msc_a(IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (sms,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x01
-DLSMS msc_a(IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x01)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000004 tid-0) receiving SMS message SMS:0x01
 DLSMS SMC(0) message MMSMS-DATA-IND (CP DATA) received in state MM_ESTABLISHED
 DLSMS SMC(0) received CP-DATA
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 04 
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000004 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000004 tid-0) GSM4.11 TX 09 04 
 DMSC msc_a(IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on GERAN-A
 - DTAP --GERAN-A--> MS: SMS:0x04: 0904
 - DTAP matches expected message
 DMSC dummy_msc_i(IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP){0}: Received Event unknown 0x3
-DLSMS MNSMS-DATA/EST-IND
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000004 tid-0) MNSMS-DATA/EST-IND
 DLSMS SMR(0) message MNSMS-DATA-IND received in state WAIT_FOR_RP_ACK
 DLSMS SMR(0) RX SMS RP-ACK
 DLSMS SMR(0) new RP state WAIT_FOR_RP_ACK -> IDLE
-DLSMS RX SMS RP-ACK (MO)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000004 tid-0) RX SMS RP-ACK (MO)
 DREF VLR subscr IMSI-901700000004620:MSISDN-42342 - SMS-receiver: now used by 3 (attached,SMS,active-conn)
 DLSMS SMR(0) TX: MNSMS-REL-REQ
 DLSMS SMC(0) message MNSMS-REL-REQ received in state MM_ESTABLISHED
 DLSMS SMC(0) new CP state MM_ESTABLISHED -> IDLE
-DLSMS Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000004 tid-0) Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000004 tid-0) Freeing transaction
 DLSMS SMR(0) clearing SMR instance
 DLSMS SMC(0) clearing instance
 DREF VLR subscr IMSI-901700000004620:MSISDN-42342 - SMS: now used by 2 (attached,active-conn)
@@ -4037,19 +4041,19 @@
 DREF VLR subscr IMSI-901700000004620:MSISDN-42342 + test_cm_service_needs_classmark_update: now used by 2 (attached,test_cm_service_needs_classmark_update)
   llist_count(&vsub->cs.requests) == 0
 DREF VLR subscr IMSI-901700000004620:MSISDN-42342 + SMS-receiver: now used by 3 (attached,test_cm_service_needs_classmark_update,SMS-receiver)
-DLSMS Going to send a MT SMS
-DCC (ti 00 sub IMSI-901700000004620:MSISDN-42342 callref 40000005) New transaction
 DREF VLR subscr IMSI-901700000004620:MSISDN-42342 + SMS: now used by 4 (attached,test_cm_service_needs_classmark_update,SMS-receiver,SMS)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-42342 callref-0x40000005 tid-0) New transaction
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-42342 callref-0x40000005 tid-0) Going to send a MT SMS
 DLSMS SMR(0) message SM-RL-DATA_REQ received in state IDLE
 DLSMS SMR(0) TX SMS RP-DATA
 DLSMS SMR(0) new RP state IDLE -> WAIT_FOR_RP_ACK
 DLSMS SMC(0) message MNSMS-EST-REQ received in state IDLE
 DLSMS SMC(0) new CP state IDLE -> MM_CONN_PENDING
-DLSMS Initiating Paging procedure for IMSI-901700000004620:MSISDN-42342 due to MMSMS_EST_REQ
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-42342 callref-0x40000005 tid-0) Initiating Paging due to MMSMS_EST_REQ
 DPAG Paging: IMSI-901700000004620:MSISDN-42342 for MT-SMS: Starting paging
   paging request (SIGNALLING_LOW_PRIO) to IMSI-901700000004620:MSISDN-42342 on GERAN-A
   strcmp(paging_expecting_imsi, vsub->imsi) == 0
@@ -4153,13 +4157,13 @@
 DMSC msc_a(IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTH_CIPH}: state_chg to MSC_A_ST_AUTHENTICATED
 DPAG Paging: IMSI-901700000004620:MSISDN-42342 for MT-SMS: Paging Response action (success)
 DPAG Paging: IMSI-901700000004620:MSISDN-42342 for MT-SMS: Removing Paging Request
-DLSMS mmsms_paging_cb(success)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-42342 callref-0x40000005 tid-0) mmsms_paging_cb(success)
 DREF msc_a(IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + sms: now used by 3 (paging-response,ms_sends_ciphering_mode_complete,sms)
 DLSMS SMC(0) message MMSMS-EST-CNF received in state MM_CONN_PENDING
 DLSMS SMC(0) send CP data
 DLSMS SMC(0) new CP state MM_CONN_PENDING -> WAIT_CP_ACK
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 24 43 f2 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000005 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000005 tid-0) GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 24 43 f2 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
 DMSC msc_a(IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on GERAN-A
 - DTAP --GERAN-A--> MS: SMS:0x01: 09015801000791447758100650004c0005802443f2000007101000000000445079da1e1ee7416937485e9ea7c965373d1d6683c270383b3d0ed3d36ff71c949e83c22072799e9687c5ec32a81d96afcbf4b4fb0c7ac3e9e9b7db05
 - DTAP matches expected message
@@ -4179,7 +4183,7 @@
 DREF msc_a(IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (sms,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x04
-DLSMS msc_a(IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x04)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000005 tid-0) receiving SMS message SMS:0x04
 DLSMS SMC(0) message MMSMS-DATA-IND (CP ACK) received in state WAIT_CP_ACK
 DLSMS SMC(0) received CP-ACK
 DLSMS SMC(0) new CP state WAIT_CP_ACK -> MM_ESTABLISHED
@@ -4190,25 +4194,26 @@
 DREF msc_a(IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (sms,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x01
-DLSMS msc_a(IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x01)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000005 tid-0) receiving SMS message SMS:0x01
 DLSMS SMC(0) message MMSMS-DATA-IND (CP DATA) received in state MM_ESTABLISHED
 DLSMS SMC(0) received CP-DATA
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 04 
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000005 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000005 tid-0) GSM4.11 TX 09 04 
 DMSC msc_a(IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on GERAN-A
 - DTAP --GERAN-A--> MS: SMS:0x04: 0904
 - DTAP matches expected message
 DMSC dummy_msc_i(IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP){0}: Received Event unknown 0x3
-DLSMS MNSMS-DATA/EST-IND
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000005 tid-0) MNSMS-DATA/EST-IND
 DLSMS SMR(0) message MNSMS-DATA-IND received in state WAIT_FOR_RP_ACK
 DLSMS SMR(0) RX SMS RP-ACK
 DLSMS SMR(0) new RP state WAIT_FOR_RP_ACK -> IDLE
-DLSMS RX SMS RP-ACK (MO)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000005 tid-0) RX SMS RP-ACK (MO)
 DREF VLR subscr IMSI-901700000004620:MSISDN-42342 - SMS-receiver: now used by 3 (attached,SMS,active-conn)
 DLSMS SMR(0) TX: MNSMS-REL-REQ
 DLSMS SMC(0) message MNSMS-REL-REQ received in state MM_ESTABLISHED
 DLSMS SMC(0) new CP state MM_ESTABLISHED -> IDLE
-DLSMS Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000005 tid-0) Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-42342:no-conn:PAGING_RESP callref-0x40000005 tid-0) Freeing transaction
 DLSMS SMR(0) clearing SMR instance
 DLSMS SMC(0) clearing instance
 DREF VLR subscr IMSI-901700000004620:MSISDN-42342 - SMS: now used by 2 (attached,active-conn)
diff --git a/tests/msc_vlr/msc_vlr_test_ms_timeout.err b/tests/msc_vlr/msc_vlr_test_ms_timeout.err
index 0b5231b..a1186f1 100644
--- a/tests/msc_vlr/msc_vlr_test_ms_timeout.err
+++ b/tests/msc_vlr/msc_vlr_test_ms_timeout.err
@@ -560,19 +560,19 @@
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + test_ms_timeout_paging: now used by 2 (attached,test_ms_timeout_paging)
   llist_count(&vsub->cs.requests) == 0
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + SMS-receiver: now used by 3 (attached,test_ms_timeout_paging,SMS-receiver)
-DLSMS Going to send a MT SMS
-DCC (ti 00 sub IMSI-901700000004620:MSISDN-46071 callref 40000001) New transaction
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + SMS: now used by 4 (attached,test_ms_timeout_paging,SMS-receiver,SMS)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000001 tid-0) New transaction
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000001 tid-0) Going to send a MT SMS
 DLSMS SMR(0) message SM-RL-DATA_REQ received in state IDLE
 DLSMS SMR(0) TX SMS RP-DATA
 DLSMS SMR(0) new RP state IDLE -> WAIT_FOR_RP_ACK
 DLSMS SMC(0) message MNSMS-EST-REQ received in state IDLE
 DLSMS SMC(0) new CP state IDLE -> MM_CONN_PENDING
-DLSMS Initiating Paging procedure for IMSI-901700000004620:MSISDN-46071 due to MMSMS_EST_REQ
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000001 tid-0) Initiating Paging due to MMSMS_EST_REQ
 DPAG Paging: IMSI-901700000004620:MSISDN-46071 for MT-SMS: Starting paging
   paging request (SIGNALLING_LOW_PRIO) to IMSI-901700000004620:MSISDN-46071 on GERAN-A
   strcmp(paging_expecting_imsi, vsub->imsi) == 0
@@ -587,19 +587,19 @@
   vsub->cs.is_paging == 1
 - another request is added to the list but does not cause another paging
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + SMS-receiver: now used by 6 (attached,2*SMS-receiver,SMS,Paging,test_ms_timeout_paging)
-DLSMS Going to send a MT SMS
-DCC (ti 01 sub IMSI-901700000004620:MSISDN-46071 callref 40000002) New transaction
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + SMS: now used by 7 (attached,2*SMS-receiver,2*SMS,Paging,test_ms_timeout_paging)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000002 tid-1) New transaction
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000002 tid-1) Going to send a MT SMS
 DLSMS SMR(0) message SM-RL-DATA_REQ received in state IDLE
 DLSMS SMR(0) TX SMS RP-DATA
 DLSMS SMR(0) new RP state IDLE -> WAIT_FOR_RP_ACK
 DLSMS SMC(0) message MNSMS-EST-REQ received in state IDLE
 DLSMS SMC(0) new CP state IDLE -> MM_CONN_PENDING
-DLSMS Initiating Paging procedure for IMSI-901700000004620:MSISDN-46071 due to MMSMS_EST_REQ
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000002 tid-1) Initiating Paging due to MMSMS_EST_REQ
 DPAG Paging: IMSI-901700000004620:MSISDN-46071 for MT-SMS: Already paging, not starting another request
   llist_count(&vsub->cs.requests) == 2
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - test_ms_timeout_paging: now used by 6 (attached,2*SMS-receiver,2*SMS,Paging)
@@ -608,33 +608,35 @@
 - Total time passed: 11.000000 s
 DPAG Paging: IMSI-901700000004620:MSISDN-46071 for MT-SMS: Paging Response action (expired)
 DPAG Paging: IMSI-901700000004620:MSISDN-46071 for MT-SMS: Removing Paging Request
-DLSMS mmsms_paging_cb(expired)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000001 tid-0) mmsms_paging_cb(expired)
 DLSMS SMC(0) message MMSMS-REL-IND received in state MM_CONN_PENDING
 DLSMS SMC(0) MM layer is released
 DLSMS SMC(0) new CP state MM_CONN_PENDING -> IDLE
-DLSMS MNSMS-ERROR-IND, no cause
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000001 tid-0) MNSMS-ERROR-IND, no cause
 DLSMS SMR(0) message MNSMS-ERROR-IND received in state WAIT_FOR_RP_ACK
 DLSMS SMR(0) TX SMS MNSMS-ERROR-IND
 DLSMS SMR(0) new RP state WAIT_FOR_RP_ACK -> IDLE
 DLSMS SMR(0) TX: MNSMS-REL-REQ
 DLSMS SMC(0) message MNSMS-REL-REQ received in state IDLE
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - SMS-receiver: now used by 5 (attached,SMS-receiver,2*SMS,Paging)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000001 tid-0) Freeing transaction
 DLSMS SMR(0) clearing SMR instance
 DLSMS SMC(0) clearing instance
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - SMS: now used by 4 (attached,SMS-receiver,SMS,Paging)
 DPAG Paging: IMSI-901700000004620:MSISDN-46071 for MT-SMS: Paging Response action (expired)
 DPAG Paging: IMSI-901700000004620:MSISDN-46071 for MT-SMS: Removing Paging Request
-DLSMS mmsms_paging_cb(expired)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000002 tid-1) mmsms_paging_cb(expired)
 DLSMS SMC(0) message MMSMS-REL-IND received in state MM_CONN_PENDING
 DLSMS SMC(0) MM layer is released
 DLSMS SMC(0) new CP state MM_CONN_PENDING -> IDLE
-DLSMS MNSMS-ERROR-IND, no cause
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000002 tid-1) MNSMS-ERROR-IND, no cause
 DLSMS SMR(0) message MNSMS-ERROR-IND received in state WAIT_FOR_RP_ACK
 DLSMS SMR(0) TX SMS MNSMS-ERROR-IND
 DLSMS SMR(0) new RP state WAIT_FOR_RP_ACK -> IDLE
 DLSMS SMR(0) TX: MNSMS-REL-REQ
 DLSMS SMC(0) message MNSMS-REL-REQ received in state IDLE
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - SMS-receiver: now used by 3 (attached,SMS,Paging)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000002 tid-1) Freeing transaction
 DLSMS SMR(0) clearing SMR instance
 DLSMS SMC(0) clearing instance
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - SMS: now used by 2 (attached,Paging)
@@ -646,19 +648,19 @@
 
 - Now that the timeout has expired, another Paging is sent on request
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + SMS-receiver: now used by 3 (attached,test_ms_timeout_paging,SMS-receiver)
-DLSMS Going to send a MT SMS
-DCC (ti 00 sub IMSI-901700000004620:MSISDN-46071 callref 40000003) New transaction
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + SMS: now used by 4 (attached,test_ms_timeout_paging,SMS-receiver,SMS)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000003 tid-0) New transaction
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000003 tid-0) Going to send a MT SMS
 DLSMS SMR(0) message SM-RL-DATA_REQ received in state IDLE
 DLSMS SMR(0) TX SMS RP-DATA
 DLSMS SMR(0) new RP state IDLE -> WAIT_FOR_RP_ACK
 DLSMS SMC(0) message MNSMS-EST-REQ received in state IDLE
 DLSMS SMC(0) new CP state IDLE -> MM_CONN_PENDING
-DLSMS Initiating Paging procedure for IMSI-901700000004620:MSISDN-46071 due to MMSMS_EST_REQ
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000003 tid-0) Initiating Paging due to MMSMS_EST_REQ
 DPAG Paging: IMSI-901700000004620:MSISDN-46071 for MT-SMS: Starting paging
   paging request (SIGNALLING_LOW_PRIO) to IMSI-901700000004620:MSISDN-46071 on GERAN-A
   strcmp(paging_expecting_imsi, vsub->imsi) == 0
@@ -686,17 +688,18 @@
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + active-conn: now used by 6 (attached,SMS-receiver,SMS,Paging,gsm48_rx_mm_imsi_detach_ind,active-conn)
 DPAG Paging: IMSI-901700000004620:MSISDN-46071 for MT-SMS: Paging Response action (expired)
 DPAG Paging: IMSI-901700000004620:MSISDN-46071 for MT-SMS: Removing Paging Request
-DLSMS mmsms_paging_cb(expired)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000003 tid-0) mmsms_paging_cb(expired)
 DLSMS SMC(0) message MMSMS-REL-IND received in state MM_CONN_PENDING
 DLSMS SMC(0) MM layer is released
 DLSMS SMC(0) new CP state MM_CONN_PENDING -> IDLE
-DLSMS MNSMS-ERROR-IND, no cause
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000003 tid-0) MNSMS-ERROR-IND, no cause
 DLSMS SMR(0) message MNSMS-ERROR-IND received in state WAIT_FOR_RP_ACK
 DLSMS SMR(0) TX SMS MNSMS-ERROR-IND
 DLSMS SMR(0) new RP state WAIT_FOR_RP_ACK -> IDLE
 DLSMS SMR(0) TX: MNSMS-REL-REQ
 DLSMS SMC(0) message MNSMS-REL-REQ received in state IDLE
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - SMS-receiver: now used by 5 (attached,SMS,Paging,gsm48_rx_mm_imsi_detach_ind,active-conn)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000003 tid-0) Freeing transaction
 DLSMS SMR(0) clearing SMR instance
 DLSMS SMC(0) clearing instance
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - SMS: now used by 4 (attached,Paging,gsm48_rx_mm_imsi_detach_ind,active-conn)
diff --git a/tests/msc_vlr/msc_vlr_test_no_authen.err b/tests/msc_vlr/msc_vlr_test_no_authen.err
index 2113415..472ce36 100644
--- a/tests/msc_vlr/msc_vlr_test_no_authen.err
+++ b/tests/msc_vlr/msc_vlr_test_no_authen.err
@@ -241,19 +241,19 @@
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + test_no_authen: now used by 2 (attached,test_no_authen)
   llist_count(&vsub->cs.requests) == 0
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + SMS-receiver: now used by 3 (attached,test_no_authen,SMS-receiver)
-DLSMS Going to send a MT SMS
-DCC (ti 00 sub IMSI-901700000004620:MSISDN-46071 callref 40000001) New transaction
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + SMS: now used by 4 (attached,test_no_authen,SMS-receiver,SMS)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000001 tid-0) New transaction
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000001 tid-0) Going to send a MT SMS
 DLSMS SMR(0) message SM-RL-DATA_REQ received in state IDLE
 DLSMS SMR(0) TX SMS RP-DATA
 DLSMS SMR(0) new RP state IDLE -> WAIT_FOR_RP_ACK
 DLSMS SMC(0) message MNSMS-EST-REQ received in state IDLE
 DLSMS SMC(0) new CP state IDLE -> MM_CONN_PENDING
-DLSMS Initiating Paging procedure for IMSI-901700000004620:MSISDN-46071 due to MMSMS_EST_REQ
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000001 tid-0) Initiating Paging due to MMSMS_EST_REQ
 DPAG Paging: IMSI-901700000004620:MSISDN-46071 for MT-SMS: Starting paging
   paging request (SIGNALLING_LOW_PRIO) to IMSI-901700000004620:MSISDN-46071 on GERAN-A
   strcmp(paging_expecting_imsi, vsub->imsi) == 0
@@ -301,13 +301,13 @@
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTH_CIPH}: state_chg to MSC_A_ST_AUTHENTICATED
 DPAG Paging: IMSI-901700000004620:MSISDN-46071 for MT-SMS: Paging Response action (success)
 DPAG Paging: IMSI-901700000004620:MSISDN-46071 for MT-SMS: Removing Paging Request
-DLSMS mmsms_paging_cb(success)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000001 tid-0) mmsms_paging_cb(success)
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + sms: now used by 3 (rx_from_ms,paging-response,sms)
 DLSMS SMC(0) message MMSMS-EST-CNF received in state MM_CONN_PENDING
 DLSMS SMC(0) send CP data
 DLSMS SMC(0) new CP state MM_CONN_PENDING -> WAIT_CP_ACK
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 64 70 f1 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 64 70 f1 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on GERAN-A
 - DTAP --GERAN-A--> MS: SMS:0x01: 09015801000791447758100650004c0005806470f1000007101000000000445079da1e1ee7416937485e9ea7c965373d1d6683c270383b3d0ed3d36ff71c949e83c22072799e9687c5ec32a81d96afcbf4b4fb0c7ac3e9e9b7db05
 - DTAP matches expected message
@@ -328,7 +328,7 @@
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (sms,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x04
-DLSMS msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x04)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) receiving SMS message SMS:0x04
 DLSMS SMC(0) message MMSMS-DATA-IND (CP ACK) received in state WAIT_CP_ACK
 DLSMS SMC(0) received CP-ACK
 DLSMS SMC(0) new CP state WAIT_CP_ACK -> MM_ESTABLISHED
@@ -339,25 +339,26 @@
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (sms,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x01
-DLSMS msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x01)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) receiving SMS message SMS:0x01
 DLSMS SMC(0) message MMSMS-DATA-IND (CP DATA) received in state MM_ESTABLISHED
 DLSMS SMC(0) received CP-DATA
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 04 
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) GSM4.11 TX 09 04 
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on GERAN-A
 - DTAP --GERAN-A--> MS: SMS:0x04: 0904
 - DTAP matches expected message
 DMSC dummy_msc_i(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){0}: Received Event unknown 0x3
-DLSMS MNSMS-DATA/EST-IND
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) MNSMS-DATA/EST-IND
 DLSMS SMR(0) message MNSMS-DATA-IND received in state WAIT_FOR_RP_ACK
 DLSMS SMR(0) RX SMS RP-ACK
 DLSMS SMR(0) new RP state WAIT_FOR_RP_ACK -> IDLE
-DLSMS RX SMS RP-ACK (MO)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) RX SMS RP-ACK (MO)
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - SMS-receiver: now used by 3 (attached,SMS,active-conn)
 DLSMS SMR(0) TX: MNSMS-REL-REQ
 DLSMS SMC(0) message MNSMS-REL-REQ received in state MM_ESTABLISHED
 DLSMS SMC(0) new CP state MM_ESTABLISHED -> IDLE
-DLSMS Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) Freeing transaction
 DLSMS SMR(0) clearing SMR instance
 DLSMS SMC(0) clearing instance
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - SMS: now used by 2 (attached,active-conn)
@@ -753,19 +754,19 @@
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 + test_no_authen_tmsi: now used by 2 (attached,test_no_authen_tmsi)
   llist_count(&vsub->cs.requests) == 0
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 + SMS-receiver: now used by 3 (attached,test_no_authen_tmsi,SMS-receiver)
-DLSMS Going to send a MT SMS
-DCC (ti 00 sub IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 callref 40000002) New transaction
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 + SMS: now used by 4 (attached,test_no_authen_tmsi,SMS-receiver,SMS)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 callref-0x40000002 tid-0) New transaction
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 callref-0x40000002 tid-0) Going to send a MT SMS
 DLSMS SMR(0) message SM-RL-DATA_REQ received in state IDLE
 DLSMS SMR(0) TX SMS RP-DATA
 DLSMS SMR(0) new RP state IDLE -> WAIT_FOR_RP_ACK
 DLSMS SMC(0) message MNSMS-EST-REQ received in state IDLE
 DLSMS SMC(0) new CP state IDLE -> MM_CONN_PENDING
-DLSMS Initiating Paging procedure for IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 due to MMSMS_EST_REQ
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 callref-0x40000002 tid-0) Initiating Paging due to MMSMS_EST_REQ
 DPAG Paging: IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 for MT-SMS: Starting paging
   paging request (SIGNALLING_LOW_PRIO) to IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 on GERAN-A
   paging_expecting_tmsi == 0x03020100
@@ -813,13 +814,13 @@
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTH_CIPH}: state_chg to MSC_A_ST_AUTHENTICATED
 DPAG Paging: IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 for MT-SMS: Paging Response action (success)
 DPAG Paging: IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 for MT-SMS: Removing Paging Request
-DLSMS mmsms_paging_cb(success)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 callref-0x40000002 tid-0) mmsms_paging_cb(success)
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + sms: now used by 3 (rx_from_ms,paging-response,sms)
 DLSMS SMC(0) message MMSMS-EST-CNF received in state MM_CONN_PENDING
 DLSMS SMC(0) send CP data
 DLSMS SMC(0) new CP state MM_CONN_PENDING -> WAIT_CP_ACK
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 64 70 f1 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 64 70 f1 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on GERAN-A
 - DTAP --GERAN-A--> MS: SMS:0x01: 09015801000791447758100650004c0005806470f1000007101000000000445079da1e1ee7416937485e9ea7c965373d1d6683c270383b3d0ed3d36ff71c949e83c22072799e9687c5ec32a81d96afcbf4b4fb0c7ac3e9e9b7db05
 - DTAP matches expected message
@@ -840,7 +841,7 @@
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (sms,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x04
-DLSMS msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x04)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) receiving SMS message SMS:0x04
 DLSMS SMC(0) message MMSMS-DATA-IND (CP ACK) received in state WAIT_CP_ACK
 DLSMS SMC(0) received CP-ACK
 DLSMS SMC(0) new CP state WAIT_CP_ACK -> MM_ESTABLISHED
@@ -851,25 +852,26 @@
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (sms,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x01
-DLSMS msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x01)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) receiving SMS message SMS:0x01
 DLSMS SMC(0) message MMSMS-DATA-IND (CP DATA) received in state MM_ESTABLISHED
 DLSMS SMC(0) received CP-DATA
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 04 
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) GSM4.11 TX 09 04 
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on GERAN-A
 - DTAP --GERAN-A--> MS: SMS:0x04: 0904
 - DTAP matches expected message
 DMSC dummy_msc_i(IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP){0}: Received Event unknown 0x3
-DLSMS MNSMS-DATA/EST-IND
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) MNSMS-DATA/EST-IND
 DLSMS SMR(0) message MNSMS-DATA-IND received in state WAIT_FOR_RP_ACK
 DLSMS SMR(0) RX SMS RP-ACK
 DLSMS SMR(0) new RP state WAIT_FOR_RP_ACK -> IDLE
-DLSMS RX SMS RP-ACK (MO)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) RX SMS RP-ACK (MO)
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 - SMS-receiver: now used by 3 (attached,SMS,active-conn)
 DLSMS SMR(0) TX: MNSMS-REL-REQ
 DLSMS SMC(0) message MNSMS-REL-REQ received in state MM_ESTABLISHED
 DLSMS SMC(0) new CP state MM_ESTABLISHED -> IDLE
-DLSMS Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) Freeing transaction
 DLSMS SMR(0) clearing SMR instance
 DLSMS SMC(0) clearing instance
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071:TMSI-0x03020100 - SMS: now used by 2 (attached,active-conn)
diff --git a/tests/msc_vlr/msc_vlr_test_reject_concurrency.err b/tests/msc_vlr/msc_vlr_test_reject_concurrency.err
index 372c1cc..abf2947 100644
--- a/tests/msc_vlr/msc_vlr_test_reject_concurrency.err
+++ b/tests/msc_vlr/msc_vlr_test_reject_concurrency.err
@@ -1522,19 +1522,19 @@
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + _page: now used by 2 (attached,_page)
   llist_count(&vsub->cs.requests) == 0
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + SMS-receiver: now used by 3 (attached,_page,SMS-receiver)
-DLSMS Going to send a MT SMS
-DCC (ti 00 sub IMSI-901700000004620:MSISDN-46071 callref 40000001) New transaction
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + SMS: now used by 4 (attached,_page,SMS-receiver,SMS)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000001 tid-0) New transaction
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000001 tid-0) Going to send a MT SMS
 DLSMS SMR(0) message SM-RL-DATA_REQ received in state IDLE
 DLSMS SMR(0) TX SMS RP-DATA
 DLSMS SMR(0) new RP state IDLE -> WAIT_FOR_RP_ACK
 DLSMS SMC(0) message MNSMS-EST-REQ received in state IDLE
 DLSMS SMC(0) new CP state IDLE -> MM_CONN_PENDING
-DLSMS Initiating Paging procedure for IMSI-901700000004620:MSISDN-46071 due to MMSMS_EST_REQ
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000001 tid-0) Initiating Paging due to MMSMS_EST_REQ
 DPAG Paging: IMSI-901700000004620:MSISDN-46071 for MT-SMS: Starting paging
   paging request (SIGNALLING_LOW_PRIO) to IMSI-901700000004620:MSISDN-46071 on GERAN-A
   strcmp(paging_expecting_imsi, vsub->imsi) == 0
@@ -1578,13 +1578,13 @@
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTH_CIPH}: state_chg to MSC_A_ST_AUTHENTICATED
 DPAG Paging: IMSI-901700000004620:MSISDN-46071 for MT-SMS: Paging Response action (success)
 DPAG Paging: IMSI-901700000004620:MSISDN-46071 for MT-SMS: Removing Paging Request
-DLSMS mmsms_paging_cb(success)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000001 tid-0) mmsms_paging_cb(success)
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + sms: now used by 3 (rx_from_ms,paging-response,sms)
 DLSMS SMC(0) message MMSMS-EST-CNF received in state MM_CONN_PENDING
 DLSMS SMC(0) send CP data
 DLSMS SMC(0) new CP state MM_CONN_PENDING -> WAIT_CP_ACK
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 64 70 f1 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 64 70 f1 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on GERAN-A
 - DTAP --GERAN-A--> MS: SMS:0x01: 09015801000791447758100650004c0005806470f1000007101000000000445079da1e1ee7416937485e9ea7c965373d1d6683c270383b3d0ed3d36ff71c949e83c22072799e9687c5ec32a81d96afcbf4b4fb0c7ac3e9e9b7db05
 - DTAP matches expected message
@@ -1613,7 +1613,7 @@
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (sms,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x04
-DLSMS msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x04)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) receiving SMS message SMS:0x04
 DLSMS SMC(0) message MMSMS-DATA-IND (CP ACK) received in state WAIT_CP_ACK
 DLSMS SMC(0) received CP-ACK
 DLSMS SMC(0) new CP state WAIT_CP_ACK -> MM_ESTABLISHED
@@ -1624,25 +1624,26 @@
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (sms,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x01
-DLSMS msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x01)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) receiving SMS message SMS:0x01
 DLSMS SMC(0) message MMSMS-DATA-IND (CP DATA) received in state MM_ESTABLISHED
 DLSMS SMC(0) received CP-DATA
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 04 
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) GSM4.11 TX 09 04 
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on GERAN-A
 - DTAP --GERAN-A--> MS: SMS:0x04: 0904
 - DTAP matches expected message
 DMSC dummy_msc_i(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){0}: Received Event unknown 0x3
-DLSMS MNSMS-DATA/EST-IND
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) MNSMS-DATA/EST-IND
 DLSMS SMR(0) message MNSMS-DATA-IND received in state WAIT_FOR_RP_ACK
 DLSMS SMR(0) RX SMS RP-ACK
 DLSMS SMR(0) new RP state WAIT_FOR_RP_ACK -> IDLE
-DLSMS RX SMS RP-ACK (MO)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) RX SMS RP-ACK (MO)
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - SMS-receiver: now used by 3 (attached,SMS,active-conn)
 DLSMS SMR(0) TX: MNSMS-REL-REQ
 DLSMS SMC(0) message MNSMS-REL-REQ received in state MM_ESTABLISHED
 DLSMS SMC(0) new CP state MM_ESTABLISHED -> IDLE
-DLSMS Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000001 tid-0) Freeing transaction
 DLSMS SMR(0) clearing SMR instance
 DLSMS SMC(0) clearing instance
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - SMS: now used by 2 (attached,active-conn)
@@ -1832,19 +1833,19 @@
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + _page: now used by 2 (attached,_page)
   llist_count(&vsub->cs.requests) == 0
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + SMS-receiver: now used by 3 (attached,_page,SMS-receiver)
-DLSMS Going to send a MT SMS
-DCC (ti 00 sub IMSI-901700000004620:MSISDN-46071 callref 40000002) New transaction
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + SMS: now used by 4 (attached,_page,SMS-receiver,SMS)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000002 tid-0) New transaction
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000002 tid-0) Going to send a MT SMS
 DLSMS SMR(0) message SM-RL-DATA_REQ received in state IDLE
 DLSMS SMR(0) TX SMS RP-DATA
 DLSMS SMR(0) new RP state IDLE -> WAIT_FOR_RP_ACK
 DLSMS SMC(0) message MNSMS-EST-REQ received in state IDLE
 DLSMS SMC(0) new CP state IDLE -> MM_CONN_PENDING
-DLSMS Initiating Paging procedure for IMSI-901700000004620:MSISDN-46071 due to MMSMS_EST_REQ
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000002 tid-0) Initiating Paging due to MMSMS_EST_REQ
 DPAG Paging: IMSI-901700000004620:MSISDN-46071 for MT-SMS: Starting paging
   paging request (SIGNALLING_LOW_PRIO) to IMSI-901700000004620:MSISDN-46071 on GERAN-A
   strcmp(paging_expecting_imsi, vsub->imsi) == 0
@@ -1888,13 +1889,13 @@
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTH_CIPH}: state_chg to MSC_A_ST_AUTHENTICATED
 DPAG Paging: IMSI-901700000004620:MSISDN-46071 for MT-SMS: Paging Response action (success)
 DPAG Paging: IMSI-901700000004620:MSISDN-46071 for MT-SMS: Removing Paging Request
-DLSMS mmsms_paging_cb(success)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000002 tid-0) mmsms_paging_cb(success)
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + sms: now used by 3 (rx_from_ms,paging-response,sms)
 DLSMS SMC(0) message MMSMS-EST-CNF received in state MM_CONN_PENDING
 DLSMS SMC(0) send CP data
 DLSMS SMC(0) new CP state MM_CONN_PENDING -> WAIT_CP_ACK
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 64 70 f1 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000002 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000002 tid-0) GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 64 70 f1 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on GERAN-A
 - DTAP --GERAN-A--> MS: SMS:0x01: 09015801000791447758100650004c0005806470f1000007101000000000445079da1e1ee7416937485e9ea7c965373d1d6683c270383b3d0ed3d36ff71c949e83c22072799e9687c5ec32a81d96afcbf4b4fb0c7ac3e9e9b7db05
 - DTAP matches expected message
@@ -1928,7 +1929,7 @@
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 3 (sms,cm_service_sms,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x04
-DLSMS msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x04)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ callref-0x40000002 tid-0) receiving SMS message SMS:0x04
 DLSMS SMC(0) message MMSMS-DATA-IND (CP ACK) received in state WAIT_CP_ACK
 DLSMS SMC(0) received CP-ACK
 DLSMS SMC(0) new CP state WAIT_CP_ACK -> MM_ESTABLISHED
@@ -1939,25 +1940,26 @@
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 3 (sms,cm_service_sms,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x01
-DLSMS msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x01)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ callref-0x40000002 tid-0) receiving SMS message SMS:0x01
 DLSMS SMC(0) message MMSMS-DATA-IND (CP DATA) received in state MM_ESTABLISHED
 DLSMS SMC(0) received CP-DATA
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 04 
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ callref-0x40000002 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ callref-0x40000002 tid-0) GSM4.11 TX 09 04 
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on GERAN-A
 - DTAP --GERAN-A--> MS: SMS:0x04: 0904
 - DTAP matches expected message
 DMSC dummy_msc_i(IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ){0}: Received Event unknown 0x3
-DLSMS MNSMS-DATA/EST-IND
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ callref-0x40000002 tid-0) MNSMS-DATA/EST-IND
 DLSMS SMR(0) message MNSMS-DATA-IND received in state WAIT_FOR_RP_ACK
 DLSMS SMR(0) RX SMS RP-ACK
 DLSMS SMR(0) new RP state WAIT_FOR_RP_ACK -> IDLE
-DLSMS RX SMS RP-ACK (MO)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ callref-0x40000002 tid-0) RX SMS RP-ACK (MO)
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - SMS-receiver: now used by 3 (attached,SMS,active-conn)
 DLSMS SMR(0) TX: MNSMS-REL-REQ
 DLSMS SMC(0) message MNSMS-REL-REQ received in state MM_ESTABLISHED
 DLSMS SMC(0) new CP state MM_ESTABLISHED -> IDLE
-DLSMS Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ callref-0x40000002 tid-0) Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ callref-0x40000002 tid-0) Freeing transaction
 DLSMS SMR(0) clearing SMR instance
 DLSMS SMC(0) clearing instance
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - SMS: now used by 2 (attached,active-conn)
@@ -2165,19 +2167,19 @@
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + _page: now used by 2 (attached,_page)
   llist_count(&vsub->cs.requests) == 0
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + SMS-receiver: now used by 3 (attached,_page,SMS-receiver)
-DLSMS Going to send a MT SMS
-DCC (ti 00 sub IMSI-901700000004620:MSISDN-46071 callref 40000003) New transaction
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + SMS: now used by 4 (attached,_page,SMS-receiver,SMS)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000003 tid-0) New transaction
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000003 tid-0) Going to send a MT SMS
 DLSMS SMR(0) message SM-RL-DATA_REQ received in state IDLE
 DLSMS SMR(0) TX SMS RP-DATA
 DLSMS SMR(0) new RP state IDLE -> WAIT_FOR_RP_ACK
 DLSMS SMC(0) message MNSMS-EST-REQ received in state IDLE
 DLSMS SMC(0) new CP state IDLE -> MM_CONN_PENDING
-DLSMS Initiating Paging procedure for IMSI-901700000004620:MSISDN-46071 due to MMSMS_EST_REQ
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000003 tid-0) Initiating Paging due to MMSMS_EST_REQ
 DPAG Paging: IMSI-901700000004620:MSISDN-46071 for MT-SMS: Starting paging
   paging request (SIGNALLING_LOW_PRIO) to IMSI-901700000004620:MSISDN-46071 on GERAN-A
   strcmp(paging_expecting_imsi, vsub->imsi) == 0
@@ -2221,13 +2223,13 @@
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTH_CIPH}: state_chg to MSC_A_ST_AUTHENTICATED
 DPAG Paging: IMSI-901700000004620:MSISDN-46071 for MT-SMS: Paging Response action (success)
 DPAG Paging: IMSI-901700000004620:MSISDN-46071 for MT-SMS: Removing Paging Request
-DLSMS mmsms_paging_cb(success)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071 callref-0x40000003 tid-0) mmsms_paging_cb(success)
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + sms: now used by 3 (rx_from_ms,paging-response,sms)
 DLSMS SMC(0) message MMSMS-EST-CNF received in state MM_CONN_PENDING
 DLSMS SMC(0) send CP data
 DLSMS SMC(0) new CP state MM_CONN_PENDING -> WAIT_CP_ACK
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 64 70 f1 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000003 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000003 tid-0) GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 64 70 f1 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on GERAN-A
 - DTAP --GERAN-A--> MS: SMS:0x01: 09015801000791447758100650004c0005806470f1000007101000000000445079da1e1ee7416937485e9ea7c965373d1d6683c270383b3d0ed3d36ff71c949e83c22072799e9687c5ec32a81d96afcbf4b4fb0c7ac3e9e9b7db05
 - DTAP matches expected message
@@ -2253,7 +2255,7 @@
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (sms,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x04
-DLSMS msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x04)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000003 tid-0) receiving SMS message SMS:0x04
 DLSMS SMC(0) message MMSMS-DATA-IND (CP ACK) received in state WAIT_CP_ACK
 DLSMS SMC(0) received CP-ACK
 DLSMS SMC(0) new CP state WAIT_CP_ACK -> MM_ESTABLISHED
@@ -2264,25 +2266,26 @@
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (sms,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x01
-DLSMS msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x01)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000003 tid-0) receiving SMS message SMS:0x01
 DLSMS SMC(0) message MMSMS-DATA-IND (CP DATA) received in state MM_ESTABLISHED
 DLSMS SMC(0) received CP-DATA
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 04 
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000003 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000003 tid-0) GSM4.11 TX 09 04 
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on GERAN-A
 - DTAP --GERAN-A--> MS: SMS:0x04: 0904
 - DTAP matches expected message
 DMSC dummy_msc_i(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){0}: Received Event unknown 0x3
-DLSMS MNSMS-DATA/EST-IND
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000003 tid-0) MNSMS-DATA/EST-IND
 DLSMS SMR(0) message MNSMS-DATA-IND received in state WAIT_FOR_RP_ACK
 DLSMS SMR(0) RX SMS RP-ACK
 DLSMS SMR(0) new RP state WAIT_FOR_RP_ACK -> IDLE
-DLSMS RX SMS RP-ACK (MO)
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000003 tid-0) RX SMS RP-ACK (MO)
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - SMS-receiver: now used by 3 (attached,SMS,active-conn)
 DLSMS SMR(0) TX: MNSMS-REL-REQ
 DLSMS SMC(0) message MNSMS-REL-REQ received in state MM_ESTABLISHED
 DLSMS SMC(0) new CP state MM_ESTABLISHED -> IDLE
-DLSMS Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000003 tid-0) Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x40000003 tid-0) Freeing transaction
 DLSMS SMR(0) clearing SMR instance
 DLSMS SMC(0) clearing instance
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - SMS: now used by 2 (attached,active-conn)
diff --git a/tests/msc_vlr/msc_vlr_test_ss.err b/tests/msc_vlr/msc_vlr_test_ss.err
index 9fb6c44..baf76cf 100644
--- a/tests/msc_vlr/msc_vlr_test_ss.err
+++ b/tests/msc_vlr/msc_vlr_test_ss.err
@@ -182,14 +182,13 @@
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (cm_service_ss,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: NCSS GSM0480_MTYPE_REGISTER
-DMM Received SS/USSD data (trans_id=8, msg_type=GSM0480_MTYPE_REGISTER)
-DMM  -> (new transaction)
-DCC (ti 08 sub IMSI-901700000004620:MSISDN-46071 callref 20000001) New transaction
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + NCSS: now used by 3 (attached,active-conn,NCSS)
+DMSC trans(NCSS IMSI-901700000004620:MSISDN-46071 callref-0x20000001 tid-8) New transaction
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: + nc_ss: now used by 3 (cm_service_ss,rx_from_ms,nc_ss)
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: Received Event MSC_A_EV_TRANSACTION_ACCEPTED
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ){MSC_A_ST_AUTHENTICATED}: state_chg to MSC_A_ST_COMMUNICATING
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: - cm_service_ss: now used by 2 (rx_from_ms,nc_ss)
+DBSSAP trans(NCSS IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ callref-0x20000001 tid-8) Received SS/USSD msg GSM0480_MTYPE_REGISTER
 GSUP --> HLR: OSMO_GSUP_MSGT_PROC_SS_REQUEST: 20010809710000004026f03004200000013101013515a11302010102013b300b04010f0406aa510c061b01
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: - rx_from_ms: now used by 1 (nc_ss)
 <-- GSUP rx OSMO_GSUP_MSGT_PROC_SS_REQUEST: 20010809710000004026f03004200000013101033527a225020101302002013b301b04010f0416d9775d0e2ae3e965f73cfd7683d27310cd06bbc51a0d
@@ -200,6 +199,7 @@
 - DTAP --GERAN-A--> MS: GSM0480_MTYPE_RELEASE_COMPLETE: 8b2a1c27a225020101302002013b301b04010f0416d9775d0e2ae3e965f73cfd7683d27310cd06bbc51a0d
 - DTAP matches expected message
 DMSC dummy_msc_i(IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ){0}: Received Event unknown 0x3
+DBSSAP trans(NCSS IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ callref-0x20000001 tid-8) Freeing transaction
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - NCSS: now used by 3 (attached,active-conn,vlr_gsupc_read_cb)
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: - nc_ss: now used by 0 (-)
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: Received Event MSC_A_EV_UNUSED
@@ -392,10 +392,10 @@
 DVLR GSUP rx 43: 20010809710000004026f03004200001013101013515a11302010102013b300b04010f0406aa510c061b01
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + vlr_gsupc_read_cb: now used by 3 (attached,_test_ss_ussd_no,vlr_gsupc_read_cb)
 DMSC Routed to GSM 09.11 SS/USSD handler
-DMM Establishing network-originated session
-DCC (ti ff sub IMSI-901700000004620:MSISDN-46071 callref 20000101) New transaction
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + NCSS: now used by 4 (attached,_test_ss_ussd_no,vlr_gsupc_read_cb,NCSS)
-DMM Triggering Paging Request
+DMSC trans(NCSS IMSI-901700000004620:MSISDN-46071 callref-0x20000101 tid-255) New transaction
+DMSC trans(NCSS IMSI-901700000004620:MSISDN-46071 callref-0x20000101 tid-255) Establishing network-originated session
+DMSC trans(NCSS IMSI-901700000004620:MSISDN-46071 callref-0x20000101 tid-0) Triggering Paging Request
 DPAG Paging: IMSI-901700000004620:MSISDN-46071 for GSM 09.11 SS/USSD: Starting paging
   paging request (SIGNALLING_HIGH_PRIO) to IMSI-901700000004620:MSISDN-46071 on GERAN-A
   strcmp(paging_expecting_imsi, vsub->imsi) == 0
@@ -461,7 +461,7 @@
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (nc_ss,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: NCSS GSM0480_MTYPE_FACILITY
-DMM Received SS/USSD data (trans_id=0, msg_type=GSM0480_MTYPE_FACILITY)
+DBSSAP trans(NCSS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x20000101 tid-0) Received SS/USSD msg GSM0480_MTYPE_FACILITY
 GSUP --> HLR: OSMO_GSUP_MSGT_PROC_SS_REQUEST: 20010809710000004026f03004200001013101023527a225020101302002013b301b04010f0416d9775d0e2ae3e965f73cfd7683d27310cd06bbc51a0d
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: - rx_from_ms: now used by 1 (nc_ss)
   dtap_tx_confirmed == 1
@@ -474,6 +474,7 @@
 - DTAP --GERAN-A--> MS: GSM0480_MTYPE_RELEASE_COMPLETE: 0b2a
 - DTAP matches expected message
 DMSC dummy_msc_i(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){0}: Received Event unknown 0x3
+DBSSAP trans(NCSS IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP callref-0x20000101 tid-0) Freeing transaction
 DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - NCSS: now used by 3 (attached,active-conn,vlr_gsupc_read_cb)
 DREF msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: - nc_ss: now used by 0 (-)
 DMSC msc_a(IMSI-901700000004620:MSISDN-46071:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Received Event MSC_A_EV_UNUSED
diff --git a/tests/msc_vlr/msc_vlr_test_umts_authen.err b/tests/msc_vlr/msc_vlr_test_umts_authen.err
index a23fef7..d3b9819 100644
--- a/tests/msc_vlr/msc_vlr_test_umts_authen.err
+++ b/tests/msc_vlr/msc_vlr_test_umts_authen.err
@@ -350,19 +350,19 @@
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 + _test_umts_authen: now used by 2 (attached,_test_umts_authen)
   llist_count(&vsub->cs.requests) == 0
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 + SMS-receiver: now used by 3 (attached,_test_umts_authen,SMS-receiver)
-DLSMS Going to send a MT SMS
-DCC (ti 00 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 callref 40000001) New transaction
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 + SMS: now used by 4 (attached,_test_umts_authen,SMS-receiver,SMS)
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 callref-0x40000001 tid-0) New transaction
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 callref-0x40000001 tid-0) Going to send a MT SMS
 DLSMS SMR(0) message SM-RL-DATA_REQ received in state IDLE
 DLSMS SMR(0) TX SMS RP-DATA
 DLSMS SMR(0) new RP state IDLE -> WAIT_FOR_RP_ACK
 DLSMS SMC(0) message MNSMS-EST-REQ received in state IDLE
 DLSMS SMC(0) new CP state IDLE -> MM_CONN_PENDING
-DLSMS Initiating Paging procedure for IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 due to MMSMS_EST_REQ
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 callref-0x40000001 tid-0) Initiating Paging due to MMSMS_EST_REQ
 DPAG Paging: IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 for MT-SMS: Starting paging
   paging request (SIGNALLING_LOW_PRIO) to IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 on GERAN-A
   strcmp(paging_expecting_imsi, vsub->imsi) == 0
@@ -458,13 +458,13 @@
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTH_CIPH}: state_chg to MSC_A_ST_AUTHENTICATED
 DPAG Paging: IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 for MT-SMS: Paging Response action (success)
 DPAG Paging: IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 for MT-SMS: Removing Paging Request
-DLSMS mmsms_paging_cb(success)
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 callref-0x40000001 tid-0) mmsms_paging_cb(success)
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + sms: now used by 3 (paging-response,rx_from_ms,sms)
 DLSMS SMC(0) message MMSMS-EST-CNF received in state MM_CONN_PENDING
 DLSMS SMC(0) send CP data
 DLSMS SMC(0) new CP state MM_CONN_PENDING -> WAIT_CP_ACK
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 24 43 f2 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000001 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000001 tid-0) GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 24 43 f2 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on GERAN-A
 - DTAP --GERAN-A--> MS: SMS:0x01: 09015801000791447758100650004c0005802443f2000007101000000000445079da1e1ee7416937485e9ea7c965373d1d6683c270383b3d0ed3d36ff71c949e83c22072799e9687c5ec32a81d96afcbf4b4fb0c7ac3e9e9b7db05
 - DTAP matches expected message
@@ -484,7 +484,7 @@
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (sms,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x04
-DLSMS msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x04)
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000001 tid-0) receiving SMS message SMS:0x04
 DLSMS SMC(0) message MMSMS-DATA-IND (CP ACK) received in state WAIT_CP_ACK
 DLSMS SMC(0) received CP-ACK
 DLSMS SMC(0) new CP state WAIT_CP_ACK -> MM_ESTABLISHED
@@ -495,25 +495,26 @@
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (sms,rx_from_ms)
 DBSSAP msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x01
-DLSMS msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x01)
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000001 tid-0) receiving SMS message SMS:0x01
 DLSMS SMC(0) message MMSMS-DATA-IND (CP DATA) received in state MM_ESTABLISHED
 DLSMS SMC(0) received CP-DATA
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 04 
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000001 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000001 tid-0) GSM4.11 TX 09 04 
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on GERAN-A
 - DTAP --GERAN-A--> MS: SMS:0x04: 0904
 - DTAP matches expected message
 DMSC dummy_msc_i(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){0}: Received Event unknown 0x3
-DLSMS MNSMS-DATA/EST-IND
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000001 tid-0) MNSMS-DATA/EST-IND
 DLSMS SMR(0) message MNSMS-DATA-IND received in state WAIT_FOR_RP_ACK
 DLSMS SMR(0) RX SMS RP-ACK
 DLSMS SMR(0) new RP state WAIT_FOR_RP_ACK -> IDLE
-DLSMS RX SMS RP-ACK (MO)
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000001 tid-0) RX SMS RP-ACK (MO)
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 - SMS-receiver: now used by 3 (attached,SMS,active-conn)
 DLSMS SMR(0) TX: MNSMS-REL-REQ
 DLSMS SMC(0) message MNSMS-REL-REQ received in state MM_ESTABLISHED
 DLSMS SMC(0) new CP state MM_ESTABLISHED -> IDLE
-DLSMS Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000001 tid-0) Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000001 tid-0) Freeing transaction
 DLSMS SMR(0) clearing SMR instance
 DLSMS SMC(0) clearing instance
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 - SMS: now used by 2 (attached,active-conn)
@@ -992,19 +993,19 @@
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 + _test_umts_authen: now used by 2 (attached,_test_umts_authen)
   llist_count(&vsub->cs.requests) == 0
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 + SMS-receiver: now used by 3 (attached,_test_umts_authen,SMS-receiver)
-DLSMS Going to send a MT SMS
-DCC (ti 00 sub IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 callref 40000002) New transaction
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 + SMS: now used by 4 (attached,_test_umts_authen,SMS-receiver,SMS)
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 callref-0x40000002 tid-0) New transaction
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
 DLSMS SMC(0) instance created for network
 DLSMS SMR(0) instance created for network.
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 callref-0x40000002 tid-0) Going to send a MT SMS
 DLSMS SMR(0) message SM-RL-DATA_REQ received in state IDLE
 DLSMS SMR(0) TX SMS RP-DATA
 DLSMS SMR(0) new RP state IDLE -> WAIT_FOR_RP_ACK
 DLSMS SMC(0) message MNSMS-EST-REQ received in state IDLE
 DLSMS SMC(0) new CP state IDLE -> MM_CONN_PENDING
-DLSMS Initiating Paging procedure for IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 due to MMSMS_EST_REQ
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 callref-0x40000002 tid-0) Initiating Paging due to MMSMS_EST_REQ
 DPAG Paging: IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 for MT-SMS: Starting paging
   paging request (SIGNALLING_LOW_PRIO) to IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 on UTRAN-Iu
   strcmp(paging_expecting_imsi, vsub->imsi) == 0
@@ -1112,13 +1113,13 @@
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTH_CIPH}: state_chg to MSC_A_ST_AUTHENTICATED
 DPAG Paging: IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 for MT-SMS: Paging Response action (success)
 DPAG Paging: IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 for MT-SMS: Removing Paging Request
-DLSMS mmsms_paging_cb(success)
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 callref-0x40000002 tid-0) mmsms_paging_cb(success)
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + sms: now used by 2 (paging-response,sms)
 DLSMS SMC(0) message MMSMS-EST-CNF received in state MM_CONN_PENDING
 DLSMS SMC(0) send CP data
 DLSMS SMC(0) new CP state MM_CONN_PENDING -> WAIT_CP_ACK
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 24 43 f2 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) GSM4.11 TX 09 01 58 01 00 07 91 44 77 58 10 06 50 00 4c 00 05 80 24 43 f2 00 00 07 10 10 00 00 00 00 44 50 79 da 1e 1e e7 41 69 37 48 5e 9e a7 c9 65 37 3d 1d 66 83 c2 70 38 3b 3d 0e d3 d3 6f f7 1c 94 9e 83 c2 20 72 79 9e 96 87 c5 ec 32 a8 1d 96 af cb f4 b4 fb 0c 7a c3 e9 e9 b7 db 05 
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on UTRAN-Iu
 - DTAP --UTRAN-Iu--> MS: SMS:0x01: 09015801000791447758100650004c0005802443f2000007101000000000445079da1e1ee7416937485e9ea7c965373d1d6683c270383b3d0ed3d36ff71c949e83c22072799e9687c5ec32a81d96afcbf4b4fb0c7ac3e9e9b7db05
 - DTAP matches expected message
@@ -1136,7 +1137,7 @@
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (sms,rx_from_ms)
 DIUCS msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x04
-DLSMS msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x04)
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) receiving SMS message SMS:0x04
 DLSMS SMC(0) message MMSMS-DATA-IND (CP ACK) received in state WAIT_CP_ACK
 DLSMS SMC(0) received CP-ACK
 DLSMS SMC(0) new CP state WAIT_CP_ACK -> MM_ESTABLISHED
@@ -1147,25 +1148,26 @@
 DREF msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: + rx_from_ms: now used by 2 (sms,rx_from_ms)
 DIUCS msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS up: DTAP
 DRLL msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Dispatching 04.08 message: SMS SMS:0x01
-DLSMS msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: receiving data (trans_id=0, msg_type=SMS:0x01)
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) receiving SMS message SMS:0x01
 DLSMS SMC(0) message MMSMS-DATA-IND (CP DATA) received in state MM_ESTABLISHED
 DLSMS SMC(0) received CP-DATA
-DLSMS sending CP message (trans=0)
-DLSMS GSM4.11 TX 09 04 
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) sending CP message (trans=0)
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) GSM4.11 TX 09 04 
 DMSC msc_a(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: NAS down: DTAP on UTRAN-Iu
 - DTAP --UTRAN-Iu--> MS: SMS:0x04: 0904
 - DTAP matches expected message
 DMSC dummy_msc_i(IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP){0}: Received Event unknown 0x3
-DLSMS MNSMS-DATA/EST-IND
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) MNSMS-DATA/EST-IND
 DLSMS SMR(0) message MNSMS-DATA-IND received in state WAIT_FOR_RP_ACK
 DLSMS SMR(0) RX SMS RP-ACK
 DLSMS SMR(0) new RP state WAIT_FOR_RP_ACK -> IDLE
-DLSMS RX SMS RP-ACK (MO)
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) RX SMS RP-ACK (MO)
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 - SMS-receiver: now used by 3 (attached,SMS,active-conn)
 DLSMS SMR(0) TX: MNSMS-REL-REQ
 DLSMS SMC(0) message MNSMS-REL-REQ received in state MM_ESTABLISHED
 DLSMS SMC(0) new CP state MM_ESTABLISHED -> IDLE
-DLSMS Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) Got MMSMS_REL_REQ, destroying transaction.
+DLSMS trans(SMS IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100:no-conn:PAGING_RESP callref-0x40000002 tid-0) Freeing transaction
 DLSMS SMR(0) clearing SMR instance
 DLSMS SMC(0) clearing instance
 DREF VLR subscr IMSI-901700000010650:MSISDN-42342:TMSI-0x03020100 - SMS: now used by 2 (attached,active-conn)

-- 
To view, visit https://gerrit.osmocom.org/13139
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-msc
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I2e60964d7a3c06d051debd1c707051a0eb3101ba
Gerrit-Change-Number: 13139
Gerrit-PatchSet: 1
Gerrit-Owner: Neels Hofmeyr <nhofmeyr at sysmocom.de>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20190305/5debe703/attachment-0001.html>


More information about the gerrit-log mailing list