diff options
author | Neels Hofmeyr <nhofmeyr@sysmocom.de> | 2023-03-14 19:48:34 +0100 |
---|---|---|
committer | Neels Hofmeyr <nhofmeyr@sysmocom.de> | 2023-03-30 03:49:56 +0200 |
commit | 0e501c5adbb19d1531e7102db946993ca25019f9 (patch) | |
tree | 17b464b6d54da3b86a3da4b356514a4e07ac9124 | |
parent | 95b39b5b046869b6682578cb1f60ce419d412772 (diff) |
mgcp_client: guard against duplicate CI requestsneels/iuup2amr
Change-Id: I78da85e7ad19288c610f3d147e5af7021043a589
-rw-r--r-- | src/libosmo-mgcp-client/mgcp_client_endpoint_fsm.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/libosmo-mgcp-client/mgcp_client_endpoint_fsm.c b/src/libosmo-mgcp-client/mgcp_client_endpoint_fsm.c index a01bbdc32..a6f7e6ee1 100644 --- a/src/libosmo-mgcp-client/mgcp_client_endpoint_fsm.c +++ b/src/libosmo-mgcp-client/mgcp_client_endpoint_fsm.c @@ -626,6 +626,11 @@ void osmo_mgcpc_ep_ci_request(struct osmo_mgcpc_ep_ci *ci, LOGP(DLMGCP, LOGL_ERROR, "Invalid MGW endpoint request: no ci\n"); goto dispatch_error; } + if (ci->pending) { + LOG_CI(ci, LOGL_ERROR, "verb %s is already pending, wait for notify event before requesting %s\n", + osmo_mgcp_verb_name(ci->verb), osmo_mgcp_verb_name(verb)); + goto dispatch_error; + } if (!verb_info && verb != MGCP_VERB_DLCX) { LOG_CI(ci, LOGL_ERROR, "Invalid MGW endpoint request: missing verb details for %s\n", osmo_mgcp_verb_name(verb)); |