Module: kamailio
Branch: master
Commit: aec8c5f8d2b06fb96621aa881652d19a266d4e3d
URL: https://github.com/kamailio/kamailio/commit/aec8c5f8d2b06fb96621aa881652d19…
Author: Kamailio Dev <kamailio.dev(a)kamailio.org>
Committer: Kamailio Dev <kamailio.dev(a)kamailio.org>
Date: 2018-06-05T16:46:41+02:00
modules: readme files regenerated - rtpengine ... [skip ci]
---
Modified: src/modules/rtpengine/README
---
Diff: https://github.com/kamailio/kamailio/commit/aec8c5f8d2b06fb96621aa881652d19…
Patch: https://github.com/kamailio/kamailio/commit/aec8c5f8d2b06fb96621aa881652d19…
---
diff --git a/src/modules/rtpengine/README b/src/modules/rtpengine/README
index 478eaff3bb..77c62a7563 100644
--- a/src/modules/rtpengine/README
+++ b/src/modules/rtpengine/README
@@ -52,7 +52,7 @@ Richard Fuchs
1. Admin Guide
1. Overview
- 2. Multiple RTP proxy usage
+ 2. Usage With Multiple RTPEngine Instances
3. Dependencies
3.1. Kamailio Modules
@@ -249,7 +249,7 @@ Chapter 1. Admin Guide
Table of Contents
1. Overview
- 2. Multiple RTP proxy usage
+ 2. Usage With Multiple RTPEngine Instances
3. Dependencies
3.1. Kamailio Modules
@@ -362,19 +362,19 @@ Chapter 1. Admin Guide
however due to the incompatible control protocol, it only works with
RTP proxies which specifically support it.
-2. Multiple RTP proxy usage
+2. Usage With Multiple RTPEngine Instances
- The rtpengine module can support multiple RTP proxies for
+ The rtpengine module can support multiple RTPEngine instances for
balancing/distribution and control/selection purposes.
- The module allows definition of several sets of rtpproxies.
+ The module allows definition of several sets of RTPEngines.
Load-balancing will be performed over a set and the admin has the
ability to choose what set should be used. The set is selected via its
id - the id being defined with the set. Refer to the “rtpengine_sock”
module parameter definition for syntax description.
The balancing inside a set is done automatically by the module based on
- the weight of each RTP proxy from the set.
+ the weight of each RTPEngine from the set.
The selection of the set is done from script prior using
rtpengine_delete(), rtpengine_offer() or rtpengine_answer() functions -
@@ -395,11 +395,11 @@ Chapter 1. Admin Guide
the set was selected using setid_avp, the avp needs to be set only once
before rtpengine_offer() or rtpengine_manage() call.
- From the current implementation point of view, the sets of rtpproxy
- nodes are shared memory(shm), so all processes can see a common list of
- nodes. There is no locking when setting the nodes enabled/disabled (to
- keep the memory access as fast as possible). Thus, problems related to
- node state might appear for concurrent processes that might set the
+ From the current implementation point of view, the sets of rtpengine
+ nodes are in shared memory(shm), so all processes can see a common list
+ of nodes. There is no locking when setting the nodes enabled/disabled
+ (to keep the memory access as fast as possible). Thus, problems related
+ to node state might appear for concurrent processes that might set the
nodes enabled/disabled(e.g. by fifo command). This robustness problems
are overcome as follows.
@@ -809,12 +809,12 @@ mysql> describe rtpengine;
+----------+------------------+------+-----+---------------------+-------+
mysql> select * from rtpengine;
-+-------+---------------------------+--------+----------+---------------------+
-| setid | url | weight | disabled | stamp |
-+-------+---------------------------+--------+----------+---------------------+
-| 0 | udp:rtpproxy1.domain:8800 | 1 | 0 | 2016-03-10 10:30:54 |
-| 0 | udp:rtpproxy2.domain:8800 | 1 | 1 | 2016-03-10 10:30:54 |
-+-------+---------------------------+--------+----------+---------------------+
++-------+----------------------------+--------+----------+---------------------+
+| setid | url | weight | disabled | stamp |
++-------+----------------------------+--------+----------+---------------------+
+| 0 | udp:rtpengine1.domain:8800 | 1 | 0 | 2016-03-10 10:30:54 |
+| 0 | udp:rtpengine2.domain:8800 | 1 | 1 | 2016-03-10 10:30:54 |
++-------+----------------------------+--------+----------+---------------------+
mysql> select * from version;
+---------------------------+---------------+
Module: kamailio
Branch: master
Commit: 9383174b32b6b49dd9f0757450abadb45690515f
URL: https://github.com/kamailio/kamailio/commit/9383174b32b6b49dd9f0757450abadb…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2018-06-05T16:34:48+02:00
rtpengine: docs - updated some of rtpproxy occurences to rtpengine
---
Modified: src/modules/rtpengine/doc/rtpengine_admin.xml
---
Diff: https://github.com/kamailio/kamailio/commit/9383174b32b6b49dd9f0757450abadb…
Patch: https://github.com/kamailio/kamailio/commit/9383174b32b6b49dd9f0757450abadb…
---
diff --git a/src/modules/rtpengine/doc/rtpengine_admin.xml b/src/modules/rtpengine/doc/rtpengine_admin.xml
index ae875cfc4a..a43b8d8264 100644
--- a/src/modules/rtpengine/doc/rtpengine_admin.xml
+++ b/src/modules/rtpengine/doc/rtpengine_admin.xml
@@ -31,13 +31,13 @@
</section>
<section>
- <title>Multiple &rtp; proxy usage</title>
+ <title>Usage With Multiple RTPEngine Instances</title>
<para>
- The rtpengine module can support multiple &rtp; proxies for
+ The rtpengine module can support multiple RTPEngine instances for
balancing/distribution and control/selection purposes.
</para>
<para>
- The module allows definition of several sets of rtpproxies.
+ The module allows definition of several sets of RTPEngines.
Load-balancing will be performed over a set and the admin has the
ability to choose what set should be used. The set is selected via
its id - the id being defined with the set. Refer to the
@@ -46,7 +46,7 @@
</para>
<para>
The balancing inside a set is done automatically by the module based on
- the weight of each &rtp; proxy from the set.
+ the weight of each RTPEngine from the set.
</para>
<para>
The selection of the set is done from script prior using
@@ -74,8 +74,8 @@
set only once before rtpengine_offer() or rtpengine_manage() call.
</para>
<para>
- From the current implementation point of view, the sets of rtpproxy nodes
- are shared memory(shm), so all processes can see a common list of nodes.
+ From the current implementation point of view, the sets of rtpengine nodes
+ are in shared memory(shm), so all processes can see a common list of nodes.
There is no locking when setting the nodes enabled/disabled (to keep the
memory access as fast as possible). Thus, problems related to node state
might appear for concurrent processes that might set the nodes
@@ -573,12 +573,12 @@ mysql> describe rtpengine;
+----------+------------------+------+-----+---------------------+-------+
mysql> select * from rtpengine;
-+-------+---------------------------+--------+----------+---------------------+
-| setid | url | weight | disabled | stamp |
-+-------+---------------------------+--------+----------+---------------------+
-| 0 | udp:rtpproxy1.domain:8800 | 1 | 0 | 2016-03-10 10:30:54 |
-| 0 | udp:rtpproxy2.domain:8800 | 1 | 1 | 2016-03-10 10:30:54 |
-+-------+---------------------------+--------+----------+---------------------+
++-------+----------------------------+--------+----------+---------------------+
+| setid | url | weight | disabled | stamp |
++-------+----------------------------+--------+----------+---------------------+
+| 0 | udp:rtpengine1.domain:8800 | 1 | 0 | 2016-03-10 10:30:54 |
+| 0 | udp:rtpengine2.domain:8800 | 1 | 1 | 2016-03-10 10:30:54 |
++-------+----------------------------+--------+----------+---------------------+
mysql> select * from version;
+---------------------------+---------------+
Hello,
Kamailio SIP Server v5.1.4 stable release is out.
This is a maintenance release of the latest stable branch, 5.1, that
includes fixes since the release of v5.1.3. There is no change to
database schema or configuration language structure that you have to do
on previous installations of v5.1.x. Deployments running previous v5.1.x
versions are strongly recommended to be upgraded to v5.1.4.
For more details about version 5.1.4 (including links and guidelines to
download the tarball or from GIT repository), visit:
* https://www.kamailio.org/w/2018/06/kamailio-v5-1-4-released/
RPM, Debian/Ubuntu packages will be available soon as well.
Many thanks to all contributing and using Kamailio!
Cheers,
Daniel
--
Daniel-Constantin Mierla
www.twitter.com/miconda -- www.linkedin.com/in/miconda
Kamailio Advanced Training - www.asipto.com
Kamailio World Conference - www.kamailioworld.com
Hello,
I am considering to release a new minor version out of branch 5.1,
respectively the v5.1.4, sometime next week, likely on Tuesday, June 5,
2018. As usual, if there is any issue not yet reported on github
tracker, do it as soon as possible to give it a chance to be fixed.
Soon I am going to do the backports of commits with fixes in master that
apply in branch 5.1, so keep a close eye and if someone is missing, let
me know to push it in the stable branch.
Cheers,
Daniel
--
Daniel-Constantin Mierla -- www.asipto.comwww.twitter.com/miconda -- www.linkedin.com/in/miconda
Kamailio World Conference -- www.kamailioworld.com
Module: kamailio
Branch: 5.1
Commit: fa87c0be79e7e12f3ec57c8ec532f0240b7cdb31
URL: https://github.com/kamailio/kamailio/commit/fa87c0be79e7e12f3ec57c8ec532f02…
Author: Victor Seva <linuxmaniac(a)torreviejawireless.org>
Committer: Victor Seva <linuxmaniac(a)torreviejawireless.org>
Date: 2018-06-05T11:16:16+02:00
pkg/kamailio/deb: version set to 5.1.4
---
Modified: pkg/kamailio/deb/buster/changelog
Modified: pkg/kamailio/deb/debian/changelog
Modified: pkg/kamailio/deb/jessie/changelog
Modified: pkg/kamailio/deb/precise/changelog
Modified: pkg/kamailio/deb/sid/changelog
Modified: pkg/kamailio/deb/stretch/changelog
Modified: pkg/kamailio/deb/trusty/changelog
Modified: pkg/kamailio/deb/wheezy/changelog
Modified: pkg/kamailio/deb/xenial/changelog
---
Diff: https://github.com/kamailio/kamailio/commit/fa87c0be79e7e12f3ec57c8ec532f02…
Patch: https://github.com/kamailio/kamailio/commit/fa87c0be79e7e12f3ec57c8ec532f02…
---
diff --git a/pkg/kamailio/deb/buster/changelog b/pkg/kamailio/deb/buster/changelog
index b07aa09c42..b078c9f9a7 100644
--- a/pkg/kamailio/deb/buster/changelog
+++ b/pkg/kamailio/deb/buster/changelog
@@ -1,3 +1,9 @@
+kamailio (5.1.4) unstable; urgency=medium
+
+ * version set to 5.1.4
+
+ -- Victor Seva <vseva(a)debian.org> Tue, 05 Jun 2018 11:15:39 +0200
+
kamailio (5.1.3) unstable; urgency=medium
* version set to 5.1.3
diff --git a/pkg/kamailio/deb/debian/changelog b/pkg/kamailio/deb/debian/changelog
index b07aa09c42..b078c9f9a7 100644
--- a/pkg/kamailio/deb/debian/changelog
+++ b/pkg/kamailio/deb/debian/changelog
@@ -1,3 +1,9 @@
+kamailio (5.1.4) unstable; urgency=medium
+
+ * version set to 5.1.4
+
+ -- Victor Seva <vseva(a)debian.org> Tue, 05 Jun 2018 11:15:39 +0200
+
kamailio (5.1.3) unstable; urgency=medium
* version set to 5.1.3
diff --git a/pkg/kamailio/deb/jessie/changelog b/pkg/kamailio/deb/jessie/changelog
index b07aa09c42..b078c9f9a7 100644
--- a/pkg/kamailio/deb/jessie/changelog
+++ b/pkg/kamailio/deb/jessie/changelog
@@ -1,3 +1,9 @@
+kamailio (5.1.4) unstable; urgency=medium
+
+ * version set to 5.1.4
+
+ -- Victor Seva <vseva(a)debian.org> Tue, 05 Jun 2018 11:15:39 +0200
+
kamailio (5.1.3) unstable; urgency=medium
* version set to 5.1.3
diff --git a/pkg/kamailio/deb/precise/changelog b/pkg/kamailio/deb/precise/changelog
index b07aa09c42..b078c9f9a7 100644
--- a/pkg/kamailio/deb/precise/changelog
+++ b/pkg/kamailio/deb/precise/changelog
@@ -1,3 +1,9 @@
+kamailio (5.1.4) unstable; urgency=medium
+
+ * version set to 5.1.4
+
+ -- Victor Seva <vseva(a)debian.org> Tue, 05 Jun 2018 11:15:39 +0200
+
kamailio (5.1.3) unstable; urgency=medium
* version set to 5.1.3
diff --git a/pkg/kamailio/deb/sid/changelog b/pkg/kamailio/deb/sid/changelog
index b07aa09c42..b078c9f9a7 100644
--- a/pkg/kamailio/deb/sid/changelog
+++ b/pkg/kamailio/deb/sid/changelog
@@ -1,3 +1,9 @@
+kamailio (5.1.4) unstable; urgency=medium
+
+ * version set to 5.1.4
+
+ -- Victor Seva <vseva(a)debian.org> Tue, 05 Jun 2018 11:15:39 +0200
+
kamailio (5.1.3) unstable; urgency=medium
* version set to 5.1.3
diff --git a/pkg/kamailio/deb/stretch/changelog b/pkg/kamailio/deb/stretch/changelog
index b07aa09c42..b078c9f9a7 100644
--- a/pkg/kamailio/deb/stretch/changelog
+++ b/pkg/kamailio/deb/stretch/changelog
@@ -1,3 +1,9 @@
+kamailio (5.1.4) unstable; urgency=medium
+
+ * version set to 5.1.4
+
+ -- Victor Seva <vseva(a)debian.org> Tue, 05 Jun 2018 11:15:39 +0200
+
kamailio (5.1.3) unstable; urgency=medium
* version set to 5.1.3
diff --git a/pkg/kamailio/deb/trusty/changelog b/pkg/kamailio/deb/trusty/changelog
index b07aa09c42..b078c9f9a7 100644
--- a/pkg/kamailio/deb/trusty/changelog
+++ b/pkg/kamailio/deb/trusty/changelog
@@ -1,3 +1,9 @@
+kamailio (5.1.4) unstable; urgency=medium
+
+ * version set to 5.1.4
+
+ -- Victor Seva <vseva(a)debian.org> Tue, 05 Jun 2018 11:15:39 +0200
+
kamailio (5.1.3) unstable; urgency=medium
* version set to 5.1.3
diff --git a/pkg/kamailio/deb/wheezy/changelog b/pkg/kamailio/deb/wheezy/changelog
index b07aa09c42..b078c9f9a7 100644
--- a/pkg/kamailio/deb/wheezy/changelog
+++ b/pkg/kamailio/deb/wheezy/changelog
@@ -1,3 +1,9 @@
+kamailio (5.1.4) unstable; urgency=medium
+
+ * version set to 5.1.4
+
+ -- Victor Seva <vseva(a)debian.org> Tue, 05 Jun 2018 11:15:39 +0200
+
kamailio (5.1.3) unstable; urgency=medium
* version set to 5.1.3
diff --git a/pkg/kamailio/deb/xenial/changelog b/pkg/kamailio/deb/xenial/changelog
index b07aa09c42..b078c9f9a7 100644
--- a/pkg/kamailio/deb/xenial/changelog
+++ b/pkg/kamailio/deb/xenial/changelog
@@ -1,3 +1,9 @@
+kamailio (5.1.4) unstable; urgency=medium
+
+ * version set to 5.1.4
+
+ -- Victor Seva <vseva(a)debian.org> Tue, 05 Jun 2018 11:15:39 +0200
+
kamailio (5.1.3) unstable; urgency=medium
* version set to 5.1.3
<!-- Kamailio Pull Request Template -->
<!--
IMPORTANT:
- for detailed contributing guidelines, read:
https://github.com/kamailio/kamailio/blob/master/.github/CONTRIBUTING.md
- pull requests must be done to master branch, unless they are backports
of fixes from master branch to a stable branch
- backports to stable branches must be done with 'git cherry-pick -x ...'
- code is contributed under BSD for core and main components (tm, sl, auth, tls)
- code is contributed GPLv2 or a compatible license for the other components
- GPL code is contributed with OpenSSL licensing exception
-->
#### Pre-Submission Checklist
<!-- Go over all points below, and after creating the PR, tick all the checkboxes that apply -->
<!-- All points should be verified, otherwise, read the CONTRIBUTING guidelines from above-->
<!-- If you're unsure about any of these, don't hesitate to ask on sr-dev mailing list -->
- [ ] Commit message has the format required by CONTRIBUTING guide
- [ ] Commits are split per component (core, individual modules, libs, utils, ...)
- [ ] Each component has a single commit (if not, squash them into one commit)
- [ ] No commits to README files for modules (changes must be done to docbook files
in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change
- [ ] Small bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
<!-- Go over all points below, and after creating the PR, tick the checkboxes that apply -->
- [x] PR should be backported to stable branches
- [x] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
<!-- Describe your changes in detail -->
Diameter request MAR and corresponding response MAA both contain authentication vectors in binary form. Ims_diameter_server lacks functionality to convert binary arrays to json and back. This pr is a couple of minor fixes to rectify the issue:
* when converting Diameter binary vector to json use %02x in sprintf() to form a proper hexdump which is possible to decode on json side. The hexdump is sent in "data" key value pair as string.
* introduce new key value pair "hexdump" in json which will contain hex dump of binary vector formed on json side. ims_diameter_server converts it to Diameter AVP using hex dump to binary transcoding.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/1528
-- Commit Summary --
* use hexdump type of string to send binary data in json
* duplicate before giving it to cdp
* converting binary data to hex dump requires fixed width lenght in snprintf
-- File Changes --
M src/modules/ims_diameter_server/avp_helper.c (50)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/1528.patchhttps://github.com/kamailio/kamailio/pull/1528.diff
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/1528
<!--
Kamailio Project uses GitHub Issues only for bugs in the code or feature requests.
If you have questions about using Kamailio or related to its configuration file,
ask on sr-users mailing list:
* http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
If you have questions about developing extensions to Kamailio or its existing
C code, ask on sr-dev mailing list
* http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
Please try to fill this template as much as possible for any issue. It helps the
developers to troubleshoot the issue.
If you submit a feature request (or enhancement), you can delete the text of
the template and only add the description of what you would like to be added.
If there is no content to be filled in a section, the entire section can be removed.
You can delete the comments from the template sections when filling.
You can delete next line and everything above before submitting (it is a comment).
-->
### Description
cfgutils route_if_exists can leak when
1: using a $var or $avp
2: some functions are called within the called route
### Troubleshooting
#### Reproduction
Note the route is executed from `rtimer` in case this is part of the problem somehow.
```
modparam("rtimer", "timer", "name=tmetrics;interval=9;mode=1;")
modparam("rtimer", "exec", "timer=tmetrics;route=test")
```
example :
```
route[dummy] {
xinfo("[dummy]");
statsd_gauge("dummy_1xx", $stat(1xx_replies));
}
route[test] {
$var(route_name) = "dummy";
route_if_exists($var(route_name));
]
```
working alternative
```
route[dummy] {
xinfo("[dummy]");
statsd_gauge("dummy_1xx", $stat(1xx_replies));
}
route[test] {
$var(route_name) = "dummy";
if (check_route_exists($var(route_name))) {
route($var(route_name));
}
}
```
#### Debugging Data
```
kamcmd pkg.stats you can see the `real_used` of the timer process with leak every time the route is called
```
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/1503
Module: kamailio
Branch: 5.1
Commit: 942445c2c3844ae5d2692d7c734cb1375caed849
URL: https://github.com/kamailio/kamailio/commit/942445c2c3844ae5d2692d7c734cb13…
Author: valentin <christoph.valentin(a)kapsch.net>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2018-06-04T15:06:15+02:00
ims_isc: initial fix of issue #1168
Function isc_match_filter() got a new local variable firstflag in
order to handle the case where a FAILURE_ROUTE callback is
received before the first AS has been contacted.
The firstflag is also forwarded to function isc_forward() as
parameter.
---
Modified: src/modules/ims_isc/ims_isc_mod.c
Modified: src/modules/ims_isc/isc.c
Modified: src/modules/ims_isc/isc.h
---
Diff: https://github.com/kamailio/kamailio/commit/942445c2c3844ae5d2692d7c734cb13…
Patch: https://github.com/kamailio/kamailio/commit/942445c2c3844ae5d2692d7c734cb13…
---
diff --git a/src/modules/ims_isc/ims_isc_mod.c b/src/modules/ims_isc/ims_isc_mod.c
index e0f7b940ee..4618ca7db1 100644
--- a/src/modules/ims_isc/ims_isc_mod.c
+++ b/src/modules/ims_isc/ims_isc_mod.c
@@ -224,6 +224,8 @@ int isc_match_filter(struct sip_msg *msg, char *str1, udomain_t* d) {
//sometimes s is populated by an ims_getter method cscf_get_terminating_user that alloc memory that must be free-ed at the end
int free_s = 0;
+ //the callback from the Cx interface in case of unreg terminating initial message is a FAILURE_ROUTE. Hence we need an addl. flag
+ int firstflag = 0;
int ret = ISC_RETURN_FALSE;
isc_mark new_mark, old_mark;
@@ -245,9 +247,10 @@ int isc_match_filter(struct sip_msg *msg, char *str1, udomain_t* d) {
LM_DBG("Message returned s=%d;h=%d;d=%d;a=%.*s\n", old_mark.skip, old_mark.handling, old_mark.direction, old_mark.aor.len, old_mark.aor.s);
} else {
LM_DBG("Starting triggering\n");
+ firstflag = 1;
}
- if (is_route_type(FAILURE_ROUTE)) {
+ if (is_route_type(FAILURE_ROUTE) && !firstflag) {
/* need to find the handling for the failed trigger */
if (dir == DLG_MOBILE_ORIGINATING) {
k = cscf_get_originating_user(msg, &s);
@@ -345,7 +348,7 @@ int isc_match_filter(struct sip_msg *msg, char *str1, udomain_t* d) {
new_mark.skip = m->index + 1;
new_mark.handling = m->default_handling;
new_mark.aor = s;
- ret = isc_forward(msg, m, &new_mark);
+ ret = isc_forward(msg, m, &new_mark, firstflag);
isc_free_match(m);
goto done;
}
@@ -383,7 +386,7 @@ int isc_match_filter(struct sip_msg *msg, char *str1, udomain_t* d) {
new_mark.skip = m->index + 1;
new_mark.handling = m->default_handling;
new_mark.aor = s;
- ret = isc_forward(msg, m, &new_mark);
+ ret = isc_forward(msg, m, &new_mark, firstflag);
isc_free_match(m);
goto done;
}
diff --git a/src/modules/ims_isc/isc.c b/src/modules/ims_isc/isc.c
index 3d1fdf5c46..a095e054e7 100644
--- a/src/modules/ims_isc/isc.c
+++ b/src/modules/ims_isc/isc.c
@@ -56,7 +56,7 @@
* @param mark - the isc_mark that should be used to mark the message
* @returns #ISC_RETURN_TRUE if OK, #ISC_RETURN_ERROR if not
*/
-int isc_forward(struct sip_msg *msg, isc_match *m, isc_mark *mark) {
+int isc_forward(struct sip_msg *msg, isc_match *m, isc_mark *mark, int firstflag) {
struct cell *t;
unsigned int hash, label;
ticks_t fr_timeout, fr_inv_timeout;
@@ -75,7 +75,7 @@ int isc_forward(struct sip_msg *msg, isc_match *m, isc_mark *mark) {
memcpy(msg->dst_uri.s, m->server_name.s, m->server_name.len);
/* append branch if last trigger failed */
- if (is_route_type(FAILURE_ROUTE))
+ if (is_route_type(FAILURE_ROUTE) && !firstflag)
append_branch(msg, &(msg->first_line.u.request.uri), &(msg->dst_uri), 0, Q_UNSPECIFIED, 0, 0, 0, 0, 0, 0);
// Determines the tm transaction identifiers.
diff --git a/src/modules/ims_isc/isc.h b/src/modules/ims_isc/isc.h
index 8c3715e347..ac012162fd 100644
--- a/src/modules/ims_isc/isc.h
+++ b/src/modules/ims_isc/isc.h
@@ -66,7 +66,7 @@ extern int isc_fr_inv_timeout; /**< default ISC INVITE response timeout in ms *
/** SIP Status Code to send to client on Session Termination because AS did not respond */
-int isc_forward( struct sip_msg *msg, isc_match *m,isc_mark *mark);
+int isc_forward( struct sip_msg *msg, isc_match *m,isc_mark *mark, int firstflag);
#endif
Function isc_match_filter() got a new local variable firstflag in
order to handle the case where a FAILURE_ROUTE callback is
received before the first AS has been contacted.
The firstflag is also forwarded to function isc_forward() as
parameter.
<!-- Kamailio Pull Request Template -->
<!--
IMPORTANT:
- for detailed contributing guidelines, read:
https://github.com/kamailio/kamailio/blob/master/.github/CONTRIBUTING.md
- pull requests must be done to master branch, unless they are backports
of fixes from master branch to a stable branch
- backports to stable branches must be done with 'git cherry-pick -x ...'
- code is contributed under BSD for core and main components (tm, sl, auth, tls)
- code is contributed GPLv2 or a compatible license for the other components
- GPL code is contributed with OpenSSL licensing exception
-->
#### Pre-Submission Checklist
<!-- Go over all points below, and after creating the PR, tick all the checkboxes that apply -->
<!-- All points should be verified, otherwise, read the CONTRIBUTING guidelines from above-->
<!-- If you're unsure about any of these, don't hesitate to ask on sr-dev mailing list -->
- [x] Commit message has the format required by CONTRIBUTING guide
- [x] Commits are split per component (core, individual modules, libs, utils, ...)
- [x] Each component has a single commit (if not, squash them into one commit)
- [x] No commits to README files for modules (changes must be done to docbook files
in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change
- [x] Small bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
<!-- Go over all points below, and after creating the PR, tick the checkboxes that apply -->
- [x] PR should be backported to stable branches
- [x] Tested changes locally against Version 5.1.0
- [x] Related to issue #1168 (replace XXXX with an open issue number)
#### Description
<!-- Describe your changes in detail -->
This is the 5.1 pull request, which was created by cherry-pick from the master pull request
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/1553
-- Commit Summary --
* ims_isc: initial fix of issue #1168
-- File Changes --
M src/modules/ims_isc/ims_isc_mod.c (9)
M src/modules/ims_isc/isc.c (4)
M src/modules/ims_isc/isc.h (2)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/1553.patchhttps://github.com/kamailio/kamailio/pull/1553.diff
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/1553
Module: kamailio
Branch: master
Commit: 706a72f14362d4bfb609ec45856de6b4339c9563
URL: https://github.com/kamailio/kamailio/commit/706a72f14362d4bfb609ec45856de6b…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2018-06-04T08:24:29+02:00
corex: documentation for sendx() function
---
Modified: src/modules/corex/doc/corex_admin.xml
---
Diff: https://github.com/kamailio/kamailio/commit/706a72f14362d4bfb609ec45856de6b…
Patch: https://github.com/kamailio/kamailio/commit/706a72f14362d4bfb609ec45856de6b…
---
diff --git a/src/modules/corex/doc/corex_admin.xml b/src/modules/corex/doc/corex_admin.xml
index bada400b9f..bee0ec4791 100644
--- a/src/modules/corex/doc/corex_admin.xml
+++ b/src/modules/corex/doc/corex_admin.xml
@@ -272,7 +272,32 @@ modparam("corex", "msg_avp", "$avp(msg)")
</programlisting>
</example>
</section>
- <section id="corex.f.is_incoming">
+
+ <section id="corex.f.sendx">
+ <title>
+ <function moreinfo="none">sendx(uri, sock, data)</function>
+ </title>
+ <para>
+ Send the data to address specified by uri using a specific local
+ socket. All parameters can contain pseudo-variables. The uri
+ parameter has to be a valid SIP URI. The sock parameter has to be
+ a valid socket specifier (like values assigned to $fs). The data
+ parameter can by any arbitrary content.
+ </para>
+ <para>
+ This function can be used from ANY_ROUTE.
+ </para>
+ <example>
+ <title><function>sendx</function> usage</title>
+ <programlisting format="linespecific">
+...
+sendx("sip:example.com:5070;transport=sctp", "sctp:2.3.4.5:5060", "Message at $Ts");
+...
+</programlisting>
+ </example>
+ </section>
+
+ <section id="corex.f.is_incoming">
<title>
<function moreinfo="none">is_incoming()</function>
</title>