pespin submitted this change.

View Change

Approvals: laforge: Looks good to me, but someone else must approve Jenkins Builder: Verified fixeria: Looks good to me, but someone else must approve pespin: Looks good to me, approved
MGCP_Emulation: Make sure peer is running before Tx

This avoid DTE with "Broken pipe" if messages are being transmitted
while tear down process has already started, even if components are
created as "alive".

Change-Id: I8724870b9b967ffa49c3da03e1cdb2941f81653a
---
M library/MGCP_Emulation.ttcn
1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/library/MGCP_Emulation.ttcn b/library/MGCP_Emulation.ttcn
index 3167579..7106f63 100644
--- a/library/MGCP_Emulation.ttcn
+++ b/library/MGCP_Emulation.ttcn
@@ -252,9 +252,17 @@

private function f_forward_to_client(MGCP_RecvFrom mrf, MGCP_ConnHdlr vc_conn) runs on MGCP_Emulation_CT {
if (g_pars.multi_conn_mode) {
- MGCP_CLIENT_MULTI.send(mrf) to vc_conn;
+ if (MGCP_CLIENT_MULTI.checkstate("Connected") and vc_conn.running) {
+ MGCP_CLIENT_MULTI.send(mrf) to vc_conn;
+ } else {
+ log("MGCP_CLIENT_MULTI: Discarding msg due to peer unavailable: ", mrf);
+ }
} else {
- MGCP_CLIENT.send(mrf.msg.command) to vc_conn;
+ if (MGCP_CLIENT.checkstate("Connected") and vc_conn.running) {
+ MGCP_CLIENT.send(mrf.msg.command) to vc_conn;
+ } else {
+ log("MGCP_CLIENT: Discarding msg due to peer unavailable: ", mrf);
+ }
}
}


To view, visit change 39484. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-MessageType: merged
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: I8724870b9b967ffa49c3da03e1cdb2941f81653a
Gerrit-Change-Number: 39484
Gerrit-PatchSet: 2
Gerrit-Owner: pespin <pespin@sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy@sysmocom.de>
Gerrit-Reviewer: laforge <laforge@osmocom.org>
Gerrit-Reviewer: pespin <pespin@sysmocom.de>