[PATCH] osmo-mgw[master]: protocol: allow wildcarded DLCX

dexter gerrit-no-reply at lists.osmocom.org
Wed Oct 11 17:00:16 UTC 2017


Review at  https://gerrit.osmocom.org/4227

protocol: allow wildcarded DLCX

In many cases it is simpler to instruct the mgcp-gw to drop all
connections at once instead of removing each connection
individually.

drop all connections and release the endpoint in when no connection
id is supplied with the DLCX command.

Change-Id: Ib5fcc72775bf72b489ff79ade36fb345d8d20736
---
M src/libosmo-mgcp/mgcp_protocol.c
1 file changed, 14 insertions(+), 4 deletions(-)


  git pull ssh://gerrit.osmocom.org:29418/osmo-mgw refs/changes/27/4227/1

diff --git a/src/libosmo-mgcp/mgcp_protocol.c b/src/libosmo-mgcp/mgcp_protocol.c
index 5d4dd47..3ce324a 100644
--- a/src/libosmo-mgcp/mgcp_protocol.c
+++ b/src/libosmo-mgcp/mgcp_protocol.c
@@ -907,14 +907,24 @@
 		}
 	}
 
-	/* find the connection */
+	/* Analyze connection ID */
 	if (mgcp_parse_ci(&conn_id, ci)) {
-		LOGP(DLMGCP, LOGL_ERROR,
-		     "DLCX: endpoint:%x insufficient parameters, missing ci (connectionIdentifier)\n",
+		LOGP(DLMGCP, LOGL_NOTICE,
+		     "DLCX: endpoint:%x missing ci (connectionIdentifier), will remove all connections at once\n",
 		     ENDPOINT_NUMBER(endp));
-		return create_err_response(endp, 400, "DLCX", p->trans);
+
+		/* Appereantly no connection id had been supplied, this
+		 * means that the client wishes to toss all connections
+		 * at once. */
+		mgcp_release_endp(endp);
+
+		/* Note: In this case we do not return any statistics,
+		 * as we assume that the client is not interested in
+		 * this case. */
+		return create_ok_response(endp, 200, "DLCX", p->trans);
 	}
 
+	/* Find the connection */
 	conn = mgcp_conn_get_rtp(endp, conn_id);
 	if (!conn)
 		goto error3;

-- 
To view, visit https://gerrit.osmocom.org/4227
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ib5fcc72775bf72b489ff79ade36fb345d8d20736
Gerrit-PatchSet: 1
Gerrit-Project: osmo-mgw
Gerrit-Branch: master
Gerrit-Owner: dexter <pmaier at sysmocom.de>


More information about the gerrit-log mailing list