aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhilipp Maier <pmaier@sysmocom.de>2020-08-10 22:52:51 +0200
committerPhilipp Maier <pmaier@sysmocom.de>2020-08-10 23:36:11 +0200
commit5a71251229c8ac5fe7196c62bb25a8b5780a27b3 (patch)
treee9b0a7f79d6024b16bc2be896b8389c0cea85902
parent113141d4f98fed6345bf509530db96da7d32e0e7 (diff)
mgcp_trunk: drop "trunk 0" limitationpmaier/mgw2
Due to the internal handling of the trunks it was not possible to allow an E1 trunk that has the ID 0. However this limitation is no longer present, so we now can allow an E1 trunk with ID 0. Change-Id: I302c2007628f607033686e277c407232351e66ad Related: OS#2659
-rw-r--r--src/libosmo-mgcp/mgcp_trunk.c4
-rw-r--r--src/libosmo-mgcp/mgcp_vty.c7
2 files changed, 3 insertions, 8 deletions
diff --git a/src/libosmo-mgcp/mgcp_trunk.c b/src/libosmo-mgcp/mgcp_trunk.c
index 617993fd4..84ad22052 100644
--- a/src/libosmo-mgcp/mgcp_trunk.c
+++ b/src/libosmo-mgcp/mgcp_trunk.c
@@ -190,7 +190,7 @@ int e1_trunk_nr_from_epname(const char *epname)
errno = 0;
trunk_nr = strtoul(epname + prefix_len, &str_trunk_nr_end, 10);
- if (errno == ERANGE || trunk_nr > 64 || trunk_nr == 0
+ if (errno == ERANGE || trunk_nr > 64
|| epname + prefix_len == str_trunk_nr_end
|| str_trunk_nr_end[0] != '/')
return -EINVAL;
@@ -217,7 +217,7 @@ struct mgcp_trunk *mgcp_trunk_by_name(const struct mgcp_config *cfg, const char
}
trunk_nr = e1_trunk_nr_from_epname(epname);
- if (trunk_nr > 0)
+ if (trunk_nr >= 0)
return mgcp_trunk_by_num(cfg, MGCP_TRUNK_E1, trunk_nr);
/* Earlier versions of osmo-mgw were accepting endpoint names
diff --git a/src/libosmo-mgcp/mgcp_vty.c b/src/libosmo-mgcp/mgcp_vty.c
index d2d4b23a5..22863c708 100644
--- a/src/libosmo-mgcp/mgcp_vty.c
+++ b/src/libosmo-mgcp/mgcp_vty.c
@@ -866,16 +866,11 @@ ALIAS_DEPRECATED(cfg_mgcp_agent_addr, cfg_mgcp_agent_addr_cmd_old,
"IPv4 Address of the callagent\n")
DEFUN(cfg_mgcp_trunk, cfg_mgcp_trunk_cmd,
- "trunk <1-64>", "Configure a SS7 trunk\n" "Trunk Nr\n")
+ "trunk <0-64>", "Configure a SS7 trunk\n" "Trunk Nr\n")
{
struct mgcp_trunk *trunk;
int index = atoi(argv[0]);
- /* Due to historical reasons, the trunk id number 0 is reserved for the
- * virtual trunk. This trunk is configured with separate VTY
- * parameters, so we restrict the access to trunks with id numbers
- * greater than 0. */
-
trunk = mgcp_trunk_by_num(g_cfg, MGCP_TRUNK_E1, index);
if (!trunk) {
trunk = mgcp_trunk_alloc(g_cfg, MGCP_TRUNK_E1, index);