diff options
author | Holger Hans Peter Freyther <zecke@selfish.org> | 2011-09-14 19:50:00 +0200 |
---|---|---|
committer | Holger Hans Peter Freyther <zecke@selfish.org> | 2011-09-14 22:32:59 +0200 |
commit | 040c6bcb25f24b73839111dbce3a7114e7c59bf6 (patch) | |
tree | 0e62c747d7139fe6459244ec6aeb870acf789c5a /src/mgcp | |
parent | fa15805e81de8fa01037c01db98e9aff3b4fa475 (diff) |
mgcp: Reset endpoints via the trunk config instead of all of them
This change is coming from OpenBSC and was adjusted to mgcp_ss7
Diffstat (limited to 'src/mgcp')
-rw-r--r-- | src/mgcp/mgcp_protocol.c | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/mgcp/mgcp_protocol.c b/src/mgcp/mgcp_protocol.c index 6dc6090..f76342c 100644 --- a/src/mgcp/mgcp_protocol.c +++ b/src/mgcp/mgcp_protocol.c @@ -861,8 +861,21 @@ out_silent: static struct msgb *handle_rsip(struct mgcp_config *cfg, struct msgb *msg) { + struct mgcp_msg_ptr data_ptrs[6]; + const char *trans_id; + struct mgcp_endpoint *endp; + int found; + + found = mgcp_analyze_header(cfg, msg, data_ptrs, ARRAY_SIZE(data_ptrs), + &trans_id, &endp); + if (found != 0) { + LOGP(DMGCP, LOGL_ERROR, "Failed to find the endpoint.\n"); + return NULL; + } + if (cfg->reset_cb) - cfg->reset_cb(cfg); + cfg->reset_cb(endp->tcfg); + return NULL; } |