Module: kamailio
Branch: 5.3
Commit: f35c7fe0016fea44bbfa4d686f985cf5db4a3372
URL: https://github.com/kamailio/kamailio/commit/f35c7fe0016fea44bbfa4d686f985cf…
Author: Victor Seva <vseva(a)sipwise.com>
Committer: Victor Seva <linuxmaniac(a)torreviejawireless.org>
Date: 2022-03-15T08:50:54+01:00
db_redis: clean previous connection before trying to reconnect
(cherry picked from commit 78c8d084e30373aacc456fd41062b68e6e82ea6f)
(cherry picked from commit 2e0537ba306219df0ce71605848e811027c69a57)
(cherry picked from commit 78506f7f2dfcdbf2bc9e21168929437516a368bd)
---
Modified: src/modules/db_redis/redis_connection.c
---
Diff: https://github.com/kamailio/kamailio/commit/f35c7fe0016fea44bbfa4d686f985cf…
Patch: https://github.com/kamailio/kamailio/commit/f35c7fe0016fea44bbfa4d686f985cf…
---
diff --git a/src/modules/db_redis/redis_connection.c b/src/modules/db_redis/redis_connection.c
index 5a5887d658..bb7423fcbd 100644
--- a/src/modules/db_redis/redis_connection.c
+++ b/src/modules/db_redis/redis_connection.c
@@ -111,6 +111,11 @@ int db_redis_connect(km_redis_con_t *con) {
db = atoi(con->id->database);
reply = NULL;
+ if(con->con) {
+ LM_DBG("free old connection first\n");
+ redisFree(con->con);
+ }
+
// TODO: introduce require_master mod-param and check if we're indeed master
// TODO: on carrier, if we have db fail-over, the currently connected
// redis server will become slave without dropping connections?
Module: kamailio
Branch: 5.4
Commit: 78506f7f2dfcdbf2bc9e21168929437516a368bd
URL: https://github.com/kamailio/kamailio/commit/78506f7f2dfcdbf2bc9e21168929437…
Author: Victor Seva <vseva(a)sipwise.com>
Committer: Victor Seva <linuxmaniac(a)torreviejawireless.org>
Date: 2022-03-15T08:50:01+01:00
db_redis: clean previous connection before trying to reconnect
(cherry picked from commit 78c8d084e30373aacc456fd41062b68e6e82ea6f)
(cherry picked from commit 2e0537ba306219df0ce71605848e811027c69a57)
---
Modified: src/modules/db_redis/redis_connection.c
---
Diff: https://github.com/kamailio/kamailio/commit/78506f7f2dfcdbf2bc9e21168929437…
Patch: https://github.com/kamailio/kamailio/commit/78506f7f2dfcdbf2bc9e21168929437…
---
diff --git a/src/modules/db_redis/redis_connection.c b/src/modules/db_redis/redis_connection.c
index dd421a7844..d6c24163b1 100644
--- a/src/modules/db_redis/redis_connection.c
+++ b/src/modules/db_redis/redis_connection.c
@@ -112,6 +112,11 @@ int db_redis_connect(km_redis_con_t *con) {
db = atoi(con->id->database);
reply = NULL;
+ if(con->con) {
+ LM_DBG("free old connection first\n");
+ redisFree(con->con);
+ }
+
// TODO: introduce require_master mod-param and check if we're indeed master
// TODO: on carrier, if we have db fail-over, the currently connected
// redis server will become slave without dropping connections?
Module: kamailio
Branch: 5.5
Commit: 2e0537ba306219df0ce71605848e811027c69a57
URL: https://github.com/kamailio/kamailio/commit/2e0537ba306219df0ce71605848e811…
Author: Victor Seva <vseva(a)sipwise.com>
Committer: Victor Seva <linuxmaniac(a)torreviejawireless.org>
Date: 2022-03-15T08:49:14+01:00
db_redis: clean previous connection before trying to reconnect
(cherry picked from commit 78c8d084e30373aacc456fd41062b68e6e82ea6f)
---
Modified: src/modules/db_redis/redis_connection.c
---
Diff: https://github.com/kamailio/kamailio/commit/2e0537ba306219df0ce71605848e811…
Patch: https://github.com/kamailio/kamailio/commit/2e0537ba306219df0ce71605848e811…
---
diff --git a/src/modules/db_redis/redis_connection.c b/src/modules/db_redis/redis_connection.c
index dd421a7844..d6c24163b1 100644
--- a/src/modules/db_redis/redis_connection.c
+++ b/src/modules/db_redis/redis_connection.c
@@ -112,6 +112,11 @@ int db_redis_connect(km_redis_con_t *con) {
db = atoi(con->id->database);
reply = NULL;
+ if(con->con) {
+ LM_DBG("free old connection first\n");
+ redisFree(con->con);
+ }
+
// TODO: introduce require_master mod-param and check if we're indeed master
// TODO: on carrier, if we have db fail-over, the currently connected
// redis server will become slave without dropping connections?
When running kamdbctl create, it fails. The error is as show below. Can someone with knowledge please help me solve this.
/usr/share/kamailio/mysql$ kamdbctl create
MySQL password for root:
-e database engine 'mysql' loaded
-e \E[37;33mINFO: test server charset
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 1682 (HY000) at line 1: Native table 'performance_schema'.'session_variables' has the wrong structure
mysql: [Warning] Using a password on the command line interface can be insecure.
Usage: grep [OPTION]... PATTERN [FILE]...
Try 'grep --help' for more information.
/usr/sbin/kamdbctl: 117: [: =: unexpected operator
-e \E[37;33mINFO: creating database kamailio ...
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 1064 (42000) at line 1: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
-e \E[37;31mERROR: Creatin
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3055
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3055(a)github.com>
### Description
The ds_reload() function in dispatcher.c always returns -1, even when successful.
### Possible Solutions
I think a patch like the following would resolve the issue.
```
diff --git a/src/modules/dispatcher/dispatcher.c b/src/modules/dispatcher/dispatcher.c
index 059df89123..83d6b45ee9 100644
--- a/src/modules/dispatcher/dispatcher.c
+++ b/src/modules/dispatcher/dispatcher.c
@@ -963,13 +963,15 @@ static int ds_reload(sip_msg_t *msg)
*ds_rpc_reload_time = time(NULL);
if(!ds_db_url.s) {
- if(ds_load_list(dslistfile) != 0)
+ if(ds_load_list(dslistfile) != 0) {
LM_ERR("Error reloading from list\n");
- return -1;
+ return -1;
+ }
} else {
- if(ds_reload_db() < 0)
+ if(ds_reload_db() < 0) {
LM_ERR("Error reloading from db\n");
- return -1;
+ return -1;
+ }
}
LM_DBG("reloaded dispatcher\n");
return 1;
```
### Additional Information
* **Kamailio Version** - output of `kamailio -v`
```
5.5.3
```
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3054
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3054(a)github.com>
### Description
Ka servers A(172.22.247.37) and B(172.22.247.232) use the keepalive module to check if each other's status is available. When one server such as B is down, server A will still send about 16 OPTIONS messages. When A sends the 14th or 15th OPTIONS, ka on A will change B's status to down. At this point, if B restarts, B will reply 200OK to A’s OPTIONS message, and A will change B's status to alive, but A will not send OPTIONS message to B any more. Even if B dies later, B's status will be alive on A forever.
ps: if B is restart at the 14th OPTIONS or earlier, A will correctly send heartbeat OPTIONS to B later. if B is restart at the 16th or later, A will not change B's status to alive, and certainly will not sends OPTIONS to B anymore, but this is correct isn't it?
question is obviously B’s status is alive on A, but A sends no OPTIONS to B.
### Troubleshooting


#### Reproduction
1. set keepalive config ant A
```
loadmodule "keepalive.so"
modparam("keepalive","ping_interval",3)
modparam("keepalive","destination","172.22.247.232")
```
use ka_is_alive function check B's status.
2. restart A server and confirm that the OPTIONS status is correct.
3. stop the B server until the number of retran messages reaches 15.
4. restart B server, and check OPTIONS
#### Log Messages

#### SIP Traffic

at the time that the arrow points to, 172.22.247.232's status is 1(refers to the log above). but notice that there is no OPTIONS message to 172.22.247.232 anymore.


### Possible Solutions
### Additional Information
* **Operating System**:
```
Linux localhost.localdomain 3.10.0-1127.el7.x86_64 #1 SMP Tue Mar 31 23:36:51 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
kamailio 5.5.2
```
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3028
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3028(a)github.com>
hello all
we have seen a segmentation fault on a kamailio 5.4.4
```
#0 0x00007feb664346ad in print_lists (dlg=0x7feaa5f65290) at dlg_var.c:277
277 varlist = varlist->next;
Missing separate debuginfos, use: debuginfo-install bzip2-libs-1.0.6-13.el7.x86_64 cyrus-sasl-lib-2.1.26-20.el7_2.x86_64 elfutils-libelf-0.166-2.el7.x86_64 elfutils-libs-0.166-2.el7.x86_64 glibc-2.17-157.el7_3.5.x86_64 jansson-2.10-1.el7.x86_64 keyutils-libs-1.5.8-3.el7.x86_64 krb5-libs-1.15.1-8.el7.x86_64 libattr-2.4.46-12.el7.x86_64 libcap-2.22-8.el7.x86_64 libcom_err-1.42.9-9.el7.x86_64 libcurl-7.29.0-35.el7.centos.x86_64 libev-4.15-7.el7.x86_64 libevent-2.0.21-4.el7.x86_64 libgcc-4.8.5-16.el7.x86_64 libidn-1.28-4.el7.x86_64 libselinux-2.5-6.el7.x86_64 libssh2-1.4.3-10.el7_2.1.x86_64 libuuid-2.23.2-33.el7_3.2.x86_64 libxml2-2.9.1-6.el7_2.3.x86_64 nspr-4.13.1-1.0.el7_3.x86_64 nss-3.28.4-1.2.el7_3.x86_64 nss-softokn-freebl-3.16.2.3-14.4.el7.x86_64 nss-util-3.28.4-1.0.el7_3.x86_64 openldap-2.4.40-13.el7.x86_64 openssl-libs-1.0.2k-19.el7.x86_64 pcre-8.32-15.el7_2.1.x86_64 systemd-libs-219-30.el7_3.9.x86_64 xz-libs-5.2.2-1.el7.x86_64 zlib-1.2.7-17.el7.x86_64
(gdb) bt
#0 0x00007feb664346ad in print_lists (dlg=0x7feaa5f65290) at dlg_var.c:277
#1 0x00007feb664367ff in pv_set_dlg_variable (msg=0x7feb6a881bd8, param=0x7feb6adc85a0, op=254, val=0x7ffea166a7a0) at dlg_var.c:443
#2 0x00000000004bbaf2 in lval_pvar_assign (h=0x7ffea166bbd0, msg=0x7feb6a881bd8, lv=0x7feb6adc8668, rv=0x7feb6adc87e8) at core/lvalue.c:352
#3 0x00000000004bc5f0 in lval_assign (h=0x7ffea166bbd0, msg=0x7feb6a881bd8, lv=0x7feb6adc8668, rve=0x7feb6adc87e0) at core/lvalue.c:400
#4 0x0000000000487ddf in do_action (h=0x7ffea166bbd0, a=0x7feb6adc8f80, msg=0x7feb6a881bd8) at core/action.c:1455
#5 0x0000000000489b1b in run_actions (h=0x7ffea166bbd0, a=0x7feb6adc8338, msg=0x7feb6a881bd8) at core/action.c:1581
#6 0x000000000047c6d7 in do_action (h=0x7ffea166bbd0, a=0x7feb6adce4c0, msg=0x7feb6a881bd8) at core/action.c:1067
#7 0x0000000000489b1b in run_actions (h=0x7ffea166bbd0, a=0x7feb6adc3190, msg=0x7feb6a881bd8) at core/action.c:1581
#8 0x000000000048a25f in run_top_route (a=0x7feb6adc3190, msg=0x7feb6a881bd8, c=0x7ffea166bbd0) at core/action.c:1666
#9 0x00007feb69eab0a2 in reply_received (p_msg=0x7feb6a881bd8) at t_reply.c:2543
#10 0x000000000059dc77 in do_forward_reply (msg=0x7feb6a881bd8, mode=0) at core/forward.c:764
#11 0x000000000059f949 in forward_reply (msg=0x7feb6a881bd8) at core/forward.c:865
#12 0x00000000005f095a in receive_msg (
buf=0xacec80 <buf.7134> "SIP/2.0 100 Trying\r\nVia: SIP/2.0/UDP 79.170.70.13;branch=z9hG4bK7837.ffc6315fbd54de1e6a00b32fa1cc0eda.1\r\nVia: SIP/2.0/UDP 79.170.66.28:5080;received=79.170.66.28;rport=5080;branch=z9hG4bK83ve3c7ty27QF"..., len=426, rcv_info=0x7ffea166c6c0) at core/receive.c:509
#13 0x00000000004e3cd7 in udp_rcv_loop () at core/udp_server.c:543
#14 0x0000000000429f56 in main_loop () at main.c:1689
#15 0x0000000000434034 in main (argc=15, argv=0x7ffea166cf58) at main.c:2876
```
[Uploading core_kamailio_mia_osp_feb18.log…]()
could you please take a look to the attached full backtrace?
thanks a lot and regards
david
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3040
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3040(a)github.com>
Fix issues where a non-zero terminated string would get passed to `parse_user_data`.
<!-- 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
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
<!-- Describe your changes in detail -->
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3050
-- Commit Summary --
* ims_registrar_scscf: use xmlParseMemory instead of xmlParseDoc
-- File Changes --
M src/modules/ims_registrar_scscf/userdata_parser.c (4)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3050.patchhttps://github.com/kamailio/kamailio/pull/3050.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3050
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3050(a)github.com>
Add the `deregistered` state to IMS_Registrar_events_enum_t, allowing the
registrar to distinguish between UE unregsitration, which do not require
a notification to be sent, and network-originated deregistration requests.
<!-- 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 -->
- [ ] 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 -->
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3051
-- Commit Summary --
* ims_registrar_scscf: add a new contact state for notifications
-- File Changes --
M src/modules/ims_registrar_scscf/registrar_notify.c (5)
M src/modules/ims_registrar_scscf/registrar_notify.h (3)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3051.patchhttps://github.com/kamailio/kamailio/pull/3051.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3051
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3051(a)github.com>
Module: kamailio
Branch: master
Commit: 07b19ef0604a48148f1bb14787516334820e5a3a
URL: https://github.com/kamailio/kamailio/commit/07b19ef0604a48148f1bb1478751633…
Author: Kristiyan Peychev <kristiyan.peychev(a)flolive.net>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2022-03-11T10:28:22+01:00
ims_registrar_scscf: add a new contact state for notifications
Add the `deregistered` state to IMS_Registrar_events_enum_t, allowing the
registrar to distinguish between UE unregsitration, which do not require
a notification to be sent, and network-originated deregistration requests.
---
Modified: src/modules/ims_registrar_scscf/registrar_notify.c
Modified: src/modules/ims_registrar_scscf/registrar_notify.h
---
Diff: https://github.com/kamailio/kamailio/commit/07b19ef0604a48148f1bb1478751633…
Patch: https://github.com/kamailio/kamailio/commit/07b19ef0604a48148f1bb1478751633…
---
diff --git a/src/modules/ims_registrar_scscf/registrar_notify.c b/src/modules/ims_registrar_scscf/registrar_notify.c
index 761b014624..4dd6223431 100644
--- a/src/modules/ims_registrar_scscf/registrar_notify.c
+++ b/src/modules/ims_registrar_scscf/registrar_notify.c
@@ -495,6 +495,7 @@ int event_reg(udomain_t* _d, impurecord_t* r_passed, ucontact_t* c_passed, int e
//richard: we only use reg unreg expired and refresh
case IMS_REGISTRAR_CONTACT_UNREGISTERED:
+ case IMS_REGISTRAR_CONTACT_DEREGISTERED:
case IMS_REGISTRAR_CONTACT_UNREGISTERED_IMPLICIT:
case IMS_REGISTRAR_CONTACT_REGISTERED:
case IMS_REGISTRAR_CONTACT_REFRESHED:
@@ -1967,7 +1968,8 @@ str get_reginfo_partial(impurecord_t *r, ucontact_t *c, int event_type, unsigned
if (//richard we only use expired and unregistered
(event_type == IMS_REGISTRAR_CONTACT_EXPIRED ||
- event_type == IMS_REGISTRAR_CONTACT_UNREGISTERED)
+ event_type == IMS_REGISTRAR_CONTACT_UNREGISTERED ||
+ event_type == IMS_REGISTRAR_CONTACT_DEREGISTERED)
) {
//check if impu record has any other active contacts - if not then set this to terminated - if so then keep this active
//check if asserted is present in any of the path headers
@@ -2011,6 +2013,7 @@ str get_reginfo_partial(impurecord_t *r, ucontact_t *c, int event_type, unsigned
event = r_expired;
expires = 0;
break;
+ case IMS_REGISTRAR_CONTACT_DEREGISTERED:
case IMS_REGISTRAR_CONTACT_UNREGISTERED:
state = r_terminated;
event = r_unregistered;
diff --git a/src/modules/ims_registrar_scscf/registrar_notify.h b/src/modules/ims_registrar_scscf/registrar_notify.h
index 6bfc6d3ce3..04d4958488 100644
--- a/src/modules/ims_registrar_scscf/registrar_notify.h
+++ b/src/modules/ims_registrar_scscf/registrar_notify.h
@@ -116,7 +116,8 @@ typedef enum {
IMS_REGISTRAR_CONTACT_EXPIRED, /**< A contact has expired and will be removed */
IMS_REGISTRAR_CONTACT_UNREGISTERED, /**< User unregistered with Expires 0 */
IMS_REGISTRAR_CONTACT_UNREGISTERED_IMPLICIT, /**< User unregistered implicitly, ie not via explicit deregister */
- IMS_REGISTRAR_SUBSEQUENT_SUBSCRIBE
+ IMS_REGISTRAR_SUBSEQUENT_SUBSCRIBE,
+ IMS_REGISTRAR_CONTACT_DEREGISTERED, /**< User's registration was terminated with RTR */
} IMS_Registrar_events_enum_t;
extern IMS_Registrar_events_enum_t IMS_Registrar_events;
Module: kamailio
Branch: master
Commit: 0e0bdbf83c7f20bf1814fb58232f8c25e29dd94d
URL: https://github.com/kamailio/kamailio/commit/0e0bdbf83c7f20bf1814fb58232f8c2…
Author: Kristiyan Peychev <kristiyan.peychev(a)flolive.net>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2022-03-11T10:27:56+01:00
ims_registrar_scscf: use xmlParseMemory instead of xmlParseDoc
Fix issues where a non-zero terminated string would get passed to `parse_user_data`.
---
Modified: src/modules/ims_registrar_scscf/userdata_parser.c
---
Diff: https://github.com/kamailio/kamailio/commit/0e0bdbf83c7f20bf1814fb58232f8c2…
Patch: https://github.com/kamailio/kamailio/commit/0e0bdbf83c7f20bf1814fb58232f8c2…
---
diff --git a/src/modules/ims_registrar_scscf/userdata_parser.c b/src/modules/ims_registrar_scscf/userdata_parser.c
index 4880f0289c..d8b08b5491 100644
--- a/src/modules/ims_registrar_scscf/userdata_parser.c
+++ b/src/modules/ims_registrar_scscf/userdata_parser.c
@@ -916,7 +916,7 @@ static ims_subscription* parse_ims_subscription(xmlDocPtr doc, xmlNodePtr root)
/**
* Parses the user data XML and copies data into a new ims_subscription structure.
- * @param xml - the input xml (NB must be null terminated)
+ * @param xml - the input xml
* @returns the ims_subscription* on success or NULL on error
*/
ims_subscription *parse_user_data(str xml)
@@ -927,7 +927,7 @@ ims_subscription *parse_user_data(str xml)
if (!ctxtInit) parser_init(scscf_user_data_dtd,scscf_user_data_xsd);
doc=0;
- doc = xmlParseDoc((unsigned char *)xml.s);
+ doc = xmlParseMemory((unsigned char *)xml.s, xml.len);
if (!doc){
LM_ERR("This is not a valid XML <%.*s>\n", xml.len,xml.s);
goto error;
…es over TCP
<!-- 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
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
<!-- Describe your changes in detail -->
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3048
-- Commit Summary --
* ims_ipsec_pcscf: fix sha1 algorithm and tcp connections for SIP Replies over TCP
-- File Changes --
M src/modules/ims_ipsec_pcscf/cmd.c (16)
M src/modules/ims_ipsec_pcscf/ipsec.c (2)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3048.patchhttps://github.com/kamailio/kamailio/pull/3048.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3048
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3048(a)github.com>
siptrace: add X-Siptrace headers when configured core callback mode and SIP URI traffic mirroring
- Added X-Siptrace headers in core callback mode for SIP URI traffic duplication,
headers also available in event route for filtering purporses.
<!-- 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
- [ ] 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 -->
- [ ] PR should be backported to stable branches
- [ ] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3049
-- Commit Summary --
* siptrace: add X-Siptrace headers when configured core callback mode and SIP URI traffic mirroring
-- File Changes --
M src/modules/siptrace/siptrace.c (5)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3049.patchhttps://github.com/kamailio/kamailio/pull/3049.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3049
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3049(a)github.com>
<!-- 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 -->
- [ ] 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 -->
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3043
-- Commit Summary --
* smsops: Fix ucs2-to-utf8 for Accent chars
-- File Changes --
M src/modules/smsops/smsops_impl.c (4)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3043.patchhttps://github.com/kamailio/kamailio/pull/3043.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3043
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3043(a)github.com>
<!-- 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
- [ ] Small bug fix (non-breaking change which fixes an issue)
- [X] 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 -->
- [ ] 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 -->
This PR adds 1 UAC module function and 1 TM module modparam. It enables "uac:reply" event route trigger on timeout or non-2xx replies. Basically it:
- adds TMCB_ON_FAILURE callback for UAC
- copies the TM uac content into uas; thus failure route will have the uas to work with. => this part of the code was already there, i just enabled it via (another) modparam.
So far, is basically tested on our side, without any apparent issues. More testing will follow.
Please have a look on this and tell me what you think about it.
Thank you,
Stefan
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3047
-- Commit Summary --
* uac: add new function uac_req_send_fr()
* tm: Add enable_uac_fr modparam
-- File Changes --
M src/modules/tm/config.c (5)
M src/modules/tm/config.h (1)
M src/modules/tm/doc/params.xml (16)
M src/modules/tm/tm.c (1)
M src/modules/tm/uac.c (2)
M src/modules/uac/api.h (2)
M src/modules/uac/doc/uac_admin.xml (27)
M src/modules/uac/uac.c (1)
M src/modules/uac/uac_send.c (23)
M src/modules/uac/uac_send.h (3)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3047.patchhttps://github.com/kamailio/kamailio/pull/3047.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3047
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3047(a)github.com>
Module: kamailio
Branch: master
Commit: b3c301e1c99eb90df1533724442aef7991cd36bc
URL: https://github.com/kamailio/kamailio/commit/b3c301e1c99eb90df1533724442aef7…
Author: Stefan Mititelu <stefan-cristian.mititelu(a)1and1.ro>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2022-03-10T10:46:04+01:00
uac: trigger event route for failure and timeout
...when $uac_req(evroute) = 2
---
Modified: src/modules/uac/doc/uac_admin.xml
Modified: src/modules/uac/uac_send.c
---
Diff: https://github.com/kamailio/kamailio/commit/b3c301e1c99eb90df1533724442aef7…
Patch: https://github.com/kamailio/kamailio/commit/b3c301e1c99eb90df1533724442aef7…
---
diff --git a/src/modules/uac/doc/uac_admin.xml b/src/modules/uac/doc/uac_admin.xml
index 188d1b913e..3ce59d3e11 100644
--- a/src/modules/uac/doc/uac_admin.xml
+++ b/src/modules/uac/doc/uac_admin.xml
@@ -1241,11 +1241,20 @@ failure_route[REMOTE_AUTH] {
<function moreinfo="none">event_route[uac:reply]</function>
</title>
<para>
- Event route executed for the final reply of the branch for the
- request sent with uac_req_send(). The associated $uac_req(evroute)
- has to be set to 1. If the request is challenged for authentication
+ The associated $uac_req(evroute) can have either of the following values:
+ <itemizedlist>
+ <listitem><para>
+ <emphasis>1</emphasis> : event route executed for the <emphasis>final reply</emphasis> of the branch for the
+ request sent with uac_req_send(). If the request is challenged for authentication
with 401/407, then the event_route is executed twice, first for
401/407 and second for final reply of the transaction.
+ </para></listitem>
+ <listitem><para>
+ <emphasis>2</emphasis> : event route executed for <emphasis>failure</emphasis> of the branch for the
+ request sent with uac_req_send(). event route will execute also for timeout.
+ In order for this to work, please also enable TM module "enable_uac_fr" modparam.
+ </para></listitem>
+ </itemizedlist>
</para>
<example>
<title><function>event_route[uac:reply]</function> usage</title>
diff --git a/src/modules/uac/uac_send.c b/src/modules/uac/uac_send.c
index 43767c7804..887dc1b4a4 100644
--- a/src/modules/uac/uac_send.c
+++ b/src/modules/uac/uac_send.c
@@ -886,9 +886,21 @@ int uac_req_send(void)
return -1;
}
- uac_r.cb_flags = TMCB_LOCAL_COMPLETED;
- /* Callback function */
- uac_r.cb = uac_send_tm_callback;
+ switch (_uac_req.evroute)
+ {
+
+ case 2:
+ uac_r.cb_flags = TMCB_ON_FAILURE;
+ /* Callback function */
+ uac_r.cb = uac_resend_tm_callback;
+ break;
+ case 1:
+ default:
+ uac_r.cb_flags = TMCB_LOCAL_COMPLETED;
+ /* Callback function */
+ uac_r.cb = uac_send_tm_callback;
+ break;
+ }
/* Callback parameter */
uac_r.cbp = (void*)tp;
}
…tional response sent by callee
(INVITE,180 and BYE from callee instead CANCEL)
<!-- 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
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
<!-- Describe your changes in detail -->
topos: handle BYE sent by callee during non connected call with provitional response sent by callee (INVITE,180 and BYE from callee instead CANCEL)
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3046
-- Commit Summary --
* topos: handle BYE sent by callee during non connected call with provitional response sent by callee
-- File Changes --
M src/modules/topos/tps_msg.c (5)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3046.patchhttps://github.com/kamailio/kamailio/pull/3046.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3046
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3046(a)github.com>
Hello,
Kamailio SIP Server v5.4.8 stable release is out.
This is a maintenance release of the latest stable branch, 5.4, that
includes fixes since the release of v5.4.7. There is no change to
database schema or configuration language structure that you have to do
on previous installations of v5.4.x. Deployments running previous v5.4.x
versions are strongly recommended to be upgraded to v5.4.8.
Note that 5.4 is the second last stable branch, still officially maintained
by Kamailio development team. The latest stable branch is 5.5, with
v5.5.4 being release out of it.
For more details about version 5.4.8 (including links and guidelines to
download the tarball or from GIT repository), visit:
* https://www.kamailio.org/w/2022/03/kamailio-v5-4-8-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.asipto.comwww.twitter.com/miconda -- www.linkedin.com/in/miconda
Kamailio Advanced Training - Online
March 28-31, 2022 (Europe Timezone)
* https://www.asipto.com/sw/kamailio-advanced-training-online/