vlr_subscr: use osmo_use_count
Depends: Ife31e6798b4e728a23913179e346552a7dd338c0 (libosmocore)
Change-Id: Ib06d030e8464abe415ff597d462ed40eeddef475
diff --git a/src/libmsc/transaction.c b/src/libmsc/transaction.c
index 66126e6..b38c152 100644
--- a/src/libmsc/transaction.c
+++ b/src/libmsc/transaction.c
@@ -93,6 +93,11 @@
return NULL;
}
+static const char *trans_vsub_use(uint8_t proto)
+{
+ return get_value_string_or_null(gsm48_pdisc_names, proto) ? : "trans-proto-unknown";
+}
+
/*! Allocate a new transaction and add it to network list
* \param[in] net Netwokr in which we allocate transaction
* \param[in] subscr Subscriber for which we allocate transaction
@@ -121,8 +126,8 @@
if (!trans)
return NULL;
- trans->vsub = vlr_subscr_get(vsub);
-
+ vlr_subscr_get(vsub, trans_vsub_use(protocol));
+ trans->vsub = vsub;
trans->protocol = protocol;
trans->transaction_id = trans_id;
trans->callref = callref;
@@ -165,7 +170,7 @@
}
if (trans->vsub) {
- vlr_subscr_put(trans->vsub);
+ vlr_subscr_put(trans->vsub, trans_vsub_use(trans->protocol));
trans->vsub = NULL;
}