aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorPhilipp Maier <pmaier@sysmocom.de>2017-12-04 11:42:32 +0100
committerPhilipp Maier <pmaier@sysmocom.de>2017-12-20 11:48:18 +0100
commit75f2c8d47fe15fd12e96351d2c836917ff659c39 (patch)
treee17852c1a7a35ccd4fb6ab481e2d52b8c30d2af7 /include
parent472275c30195040312ded0c9dcbe06d1941e556b (diff)
mgcp: cancel transactions on timeout
when a transaction to the MGW times out, then the context information is freed. Unfortunately the client is not informed about this and will try to execute the callback anyway. explicitly cancel the transaction in order to prevent access to already freed data structures. Change-Id: I40794dff7d10e2b6a96863a2da7e9fbd5662a1bf
Diffstat (limited to 'include')
-rw-r--r--include/osmocom/bsc/osmo_bsc_mgcp.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/osmocom/bsc/osmo_bsc_mgcp.h b/include/osmocom/bsc/osmo_bsc_mgcp.h
index e4b038cd9..7452513e1 100644
--- a/include/osmocom/bsc/osmo_bsc_mgcp.h
+++ b/include/osmocom/bsc/osmo_bsc_mgcp.h
@@ -21,6 +21,7 @@
#pragma once
#include <osmocom/mgcp_client/mgcp_common.h>
+#include <osmocom/mgcp_client/mgcp_client.h>
/* MGCP state handler context. This context information stores all information
* to handle the direction of the RTP streams via MGCP. There is one instance
@@ -48,6 +49,7 @@ struct mgcp_ctx {
struct gsm_lchan *lchan;
struct gsm_lchan *ho_lchan;
struct msgb *resp;
+ mgcp_trans_id_t mgw_pending_trans;
};
struct mgcp_ctx *mgcp_assignm_req(void *ctx, struct mgcp_client *mgcp, struct osmo_bsc_sccp_con *conn,