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);