diff options
author | Holger Hans Peter Freyther <zecke@selfish.org> | 2011-03-02 21:44:01 +0100 |
---|---|---|
committer | Holger Hans Peter Freyther <zecke@selfish.org> | 2011-03-02 21:44:01 +0100 |
commit | 0d20e0d12f27d23591200a76eee1e9b31308efd5 (patch) | |
tree | 8cf838479efc6dc635a1d890110aa62bb30d5700 | |
parent | d523131339fa31697c457a57d93f5e8dc7231fcb (diff) |
mgcp: Mark certain endpoints as blocked.
Right now for the virtual trunk 0x0 and 0x1F is blocked, for the
E1 like interface we have 0x0 and 0x1 blocked. This should start
to be configurable in the future.
-rw-r--r-- | include/mgcp/mgcp_internal.h | 1 | ||||
-rw-r--r-- | src/mgcp_ss7.c | 8 |
2 files changed, 7 insertions, 2 deletions
diff --git a/include/mgcp/mgcp_internal.h b/include/mgcp/mgcp_internal.h index 3197543..838e84c 100644 --- a/include/mgcp/mgcp_internal.h +++ b/include/mgcp/mgcp_internal.h @@ -124,6 +124,7 @@ struct mgcp_endpoint { struct mgcp_rtp_tap taps[MGCP_TAP_COUNT]; /* Special MGW handling */ + int blocked; unsigned int audio_port; int block_processing; }; diff --git a/src/mgcp_ss7.c b/src/mgcp_ss7.c index f7b2ff4..c047108 100644 --- a/src/mgcp_ss7.c +++ b/src/mgcp_ss7.c @@ -698,8 +698,10 @@ static struct mgcp_ss7 *mgcp_ss7_init(struct mgcp_config *cfg) for (i = 1; i < cfg->trunk.number_endpoints; ++i) { int multiplex, timeslot; mgcp_endpoint_to_timeslot(i, &multiplex, ×lot); - if (timeslot == 0x0 || timeslot == 0x1F) + if (timeslot == 0x0 || timeslot == 0x1F) { + cfg->trunk.endpoints[i].blocked = 1; continue; + } dsp_resource += 1; @@ -724,8 +726,10 @@ static struct mgcp_ss7 *mgcp_ss7_init(struct mgcp_config *cfg) for (i = 1; i < trunk->number_endpoints; ++i) { int multiplex, timeslot; mgcp_endpoint_to_timeslot(i, &multiplex, ×lot); - if (timeslot == 0x0 || timeslot == 0x1F) + if (timeslot == 0x0 || timeslot == 0x1) { + trunk->endpoints[i].blocked = 1; continue; + } dsp_resource += 1; |