From c34bcd42e494200a7057dadcfa7e34fdbe6c0fca Mon Sep 17 00:00:00 2001 From: Philipp Maier Date: Fri, 11 Aug 2017 17:42:35 +0200 Subject: sccp: function to get sccp instance from sccp user It is currently impossible to find out which SCCP instance handles a particular user. Introduce function to lookup the SCCP instance from a given SCCP user. Change-Id: I9562c4f1d00e2ebb3252c5dea598b643aa393719 --- include/osmocom/sigtran/sccp_sap.h | 1 + src/sccp_user.c | 10 ++++++++++ 2 files changed, 11 insertions(+) diff --git a/include/osmocom/sigtran/sccp_sap.h b/include/osmocom/sigtran/sccp_sap.h index 796597f..bf1b368 100644 --- a/include/osmocom/sigtran/sccp_sap.h +++ b/include/osmocom/sigtran/sccp_sap.h @@ -247,6 +247,7 @@ struct osmo_sccp_instance * osmo_sccp_instance_create(struct osmo_ss7_instance *ss7, void *priv); void osmo_sccp_instance_destroy(struct osmo_sccp_instance *inst); struct osmo_ss7_instance *osmo_sccp_get_ss7(struct osmo_sccp_instance *sccp); +struct osmo_sccp_instance *osmo_sccp_get_sccp(const struct osmo_sccp_user *scu); void osmo_sccp_user_unbind(struct osmo_sccp_user *scu); void osmo_sccp_user_set_priv(struct osmo_sccp_user *scu, void *priv); diff --git a/src/sccp_user.c b/src/sccp_user.c index c0e2b5a..a4568cf 100644 --- a/src/sccp_user.c +++ b/src/sccp_user.c @@ -602,3 +602,13 @@ struct osmo_ss7_instance *osmo_sccp_get_ss7(struct osmo_sccp_instance *sccp) { return sccp->ss7; } + +/*! \brief get the SCCP instance that is related to the given sccp user + * \param[in] scu SCCP user + * \returns SCCP instance; NULL if scu was NULL */ +struct osmo_sccp_instance *osmo_sccp_get_sccp(const struct osmo_sccp_user *scu) +{ + if (!scu) + return NULL; + return scu->inst; +} -- cgit v1.2.3