aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVadim Yanitskiy <axilirator@gmail.com>2019-05-11 02:17:16 +0700
committerHarald Welte <laforge@gnumonks.org>2019-05-26 09:27:22 +0000
commitb683dcfe6bda723413b19c3bf5789d1a3bc3f7c7 (patch)
tree1639f6ec722cf2f9e9054837b03715792fc001c6
parenta3cdab448121c76a56ef547ffdc61e3f58a93dbc (diff)
transaction: accept trans_type enum in trans_log_subsys()
-rw-r--r--include/osmocom/msc/transaction.h6
-rw-r--r--src/libmsc/transaction.c7
2 files changed, 6 insertions, 7 deletions
diff --git a/include/osmocom/msc/transaction.h b/include/osmocom/msc/transaction.h
index ba609ea3b..69cd65229 100644
--- a/include/osmocom/msc/transaction.h
+++ b/include/osmocom/msc/transaction.h
@@ -159,11 +159,9 @@ int trans_assign_trans_id(const struct gsm_network *net, const struct vlr_subscr
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)
+static inline int trans_log_subsys(enum trans_type type)
{
- if (!trans)
- return DMSC;
- switch (trans->type) {
+ switch (type) {
case TRANS_CC:
case TRANS_SILENT_CALL:
return DCC;
diff --git a/src/libmsc/transaction.c b/src/libmsc/transaction.c
index d6f8c3b17..ebdaced5d 100644
--- a/src/libmsc/transaction.c
+++ b/src/libmsc/transaction.c
@@ -127,11 +127,12 @@ struct gsm_trans *trans_alloc(struct gsm_network *net,
enum trans_type type, uint8_t trans_id,
uint32_t callref)
{
- struct gsm_trans *trans = NULL; /* (NULL for LOG_TRANS() before allocation) */
+ int subsys = trans_log_subsys(type);
+ struct gsm_trans *trans;
/* a valid subscriber is indispensable */
if (vsub == NULL) {
- LOG_TRANS(trans, LOGL_ERROR, "unable to alloc transaction, invalid subscriber (NULL)\n");
+ LOGP(subsys, LOGL_ERROR, "unable to alloc transaction, invalid subscriber (NULL)\n");
return NULL;
}
@@ -142,11 +143,11 @@ struct gsm_trans *trans_alloc(struct gsm_network *net,
*trans = (struct gsm_trans){
.vsub = vsub,
.type = type,
+ .log_subsys = subsys,
.transaction_id = trans_id,
.callref = callref,
.net = net,
};
- trans->log_subsys = trans_log_subsys(trans);
vlr_subscr_get(vsub, trans_vsub_use(type));
llist_add_tail(&trans->entry, &net->trans_list);