Hello,
it is the time to plan a bit the road to the next major release, to be
versioned 5.5.0.
The 5.4.0 was release by end of July 2020, therefore we are approaching
the end of our usual development cycle, also during the last online
devel meeting we considered the 2nd part of spring 2021 as a target time
frame for 5.5.
To narrow it down, I would propose to freeze the development at the end
of March 2021, test during April and maybe beginning of May, then
release v5.5.0.
So far we have a lot of development to existing components, by the
freeze date I expect 3-5 new modules to be in the repo as well.
If anyone wants a different time line towards 5.5.0, let's discuss and
choose the one that suits most of the developers.
Cheers,
Daniel
--
Daniel-Constantin Mierla -- www.asipto.comwww.twitter.com/miconda -- www.linkedin.com/in/miconda
Funding: https://www.paypal.me/dcmierla
Module: kamailio
Branch: master
Commit: 699d208adcae14565c1af289a9668aede5adaa72
URL: https://github.com/kamailio/kamailio/commit/699d208adcae14565c1af289a9668ae…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2021-03-15T12:29:08+01:00
core: global parameters to enable waiting for child one worker initialization
- new paramters:
- wait_child1_mode=[0|1] - set to wait or not
- wait_child1_time=1000000 (micro-seconds) - how long to wait over all
- wait_child1_usleep=100000 (micro-seconds) - step to wait before
checking if initialization completed
---
Modified: src/core/cfg.lex
Modified: src/core/cfg.y
Modified: src/core/globals.h
Modified: src/core/tcp_main.c
Modified: src/main.c
---
Diff: https://github.com/kamailio/kamailio/commit/699d208adcae14565c1af289a9668ae…
Patch: https://github.com/kamailio/kamailio/commit/699d208adcae14565c1af289a9668ae…
Module: kamailio
Branch: master
Commit: dc6d44b603b126c43757a53560d692e5f5f147a7
URL: https://github.com/kamailio/kamailio/commit/dc6d44b603b126c43757a53560d692e…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2021-03-12T18:15:34+01:00
core: execute event_route[core:worker-one-init] for sctp or tcp
- if no udp worker is started, the event route is executed by next
available transport, in the order: sctp, tcp (or tls)
---
Modified: src/core/tcp_init.h
Modified: src/core/tcp_main.c
Modified: src/main.c
---
Diff: https://github.com/kamailio/kamailio/commit/dc6d44b603b126c43757a53560d692e…
Patch: https://github.com/kamailio/kamailio/commit/dc6d44b603b126c43757a53560d692e…
---
diff --git a/src/core/tcp_init.h b/src/core/tcp_init.h
index ddabbc5fce..70a193a0e2 100644
--- a/src/core/tcp_init.h
+++ b/src/core/tcp_init.h
@@ -13,8 +13,8 @@
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
@@ -54,7 +54,7 @@ struct tcp_child{
int init_tcp(void);
void destroy_tcp(void);
int tcp_init(struct socket_info* sock_info);
-int tcp_init_children(void);
+int tcp_init_children(int *woneinit);
void tcp_main_loop(void);
void tcp_receive_loop(int unix_sock);
int tcp_fix_child_sockets(int* fd);
diff --git a/src/core/tcp_main.c b/src/core/tcp_main.c
index aecf3a88c1..1fda94ec27 100644
--- a/src/core/tcp_main.c
+++ b/src/core/tcp_main.c
@@ -5034,16 +5034,16 @@ int tcp_fix_child_sockets(int* fd)
/* starts the tcp processes */
-int tcp_init_children()
+int tcp_init_children(int *woneinit)
{
int r, i;
int reader_fd_1; /* for comm. with the tcp children read */
pid_t pid;
char si_desc[MAX_PT_DESC];
struct socket_info *si;
-
+
/* estimate max fd. no:
- * 1 tcp send unix socket/all_proc,
+ * 1 tcp send unix socket/all_proc,
* + 1 udp sock/udp proc + 1 tcp_child sock/tcp child*
* + no_listen_tcp */
for(r=0, si=tcp_listen; si; si=si->next, r++);
@@ -5051,12 +5051,12 @@ int tcp_init_children()
if (! tls_disable)
for (si=tls_listen; si; si=si->next, r++);
#endif
-
+
register_fds(r+tcp_max_connections+get_max_procs()-1 /* tcp main */);
#if 0
tcp_max_fd_no=get_max_procs()*2 +r-1 /* timer */ +3; /* stdin/out/err*/
/* max connections can be temporarily exceeded with estimated_process_count
- * - tcp_main (tcpconn_connect called simultaneously in all all the
+ * - tcp_main (tcpconn_connect called simultaneously in all all the
* processes) */
tcp_max_fd_no+=tcp_max_connections+get_max_procs()-1 /* tcp main */;
#endif
@@ -5095,7 +5095,7 @@ int tcp_init_children()
/* create the tcp sock_info structures */
/* copy the sockets --moved to main_loop*/
-
+
/* fork children & create the socket pairs*/
for(r=0; r<tcp_children_no; r++){
child_rank++;
@@ -5108,10 +5108,16 @@ int tcp_init_children()
goto error;
}else if (pid>0){
/* parent */
+ *woneinit = 1;
}else{
/* child */
bind_address=0; /* force a SEGFAULT if someone uses a non-init.
bind address on tcp */
+ if(*woneinit==0) {
+ if(run_child_one_init_route()<0)
+ goto error;
+ }
+
tcp_receive_loop(reader_fd_1);
}
}
diff --git a/src/main.c b/src/main.c
index 6f8b354d22..e9d66ed449 100644
--- a/src/main.c
+++ b/src/main.c
@@ -1720,8 +1720,14 @@ int main_loop(void)
/* child */
bind_address=si; /* shortcut */
+ if(woneinit==0) {
+ if(run_child_one_init_route()<0)
+ goto error;
+ }
+
return sctp_core_rcv_loop();
}
+ woneinit = 1;
}
/*parent*/
/*close(sctp_sock)*/; /*if closed=>sendto invalid fd errors?*/
@@ -1777,7 +1783,7 @@ int main_loop(void)
#ifdef USE_TCP
if (!tcp_disable){
/* start tcp & tls receivers */
- if (tcp_init_children()<0) goto error;
+ if (tcp_init_children(&woneinit)<0) goto error;
/* start tcp+tls main attendant proc */
pid = fork_process(PROC_TCP_MAIN, "tcp main process", 0);
if (pid<0){
<!--
Kamailio Project uses GitHub Issues only for bugs in the code or feature requests. Please use this template only for bug reports.
If you have questions about using Kamailio or related to its configuration file, ask on sr-users mailing list:
* http://lists.kamailio.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.kamailio.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 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
I've been trying the new in-memory only presence feature in 5.4.x but have run into an issue:
```
ERROR: presence [presence_dmq.c:109]: pres_dmq_init_proc(): dmq_worker_init: database not bound
kamailio[8404]: segfault at 0 ip 00007f4f8419c4d7 sp 00007ffd68ef0130 error 4 in presence.so[7f4f8418d000+fe000]
CRITICAL: <core> [core/pass_fd.c:277]: receive_fd(): EOF on 31
ALERT: <core> [main.c:777]: handle_sigs(): child process 8411 exited by a signal 11
```
I have this set `modparam("presence", "publ_cache", 2)` but had to comment it out in order to prevent kamailio from crashing. I have reverted back to using mysql for storing presentity records for now.
### Troubleshooting
#### Reproduction
Starting kamailio with these mod params can re-produce the issue.
```
#!ifdef WITH_PRESENCE
# ----- presence params -----
modparam("presence", "db_url", DBURL)
modparam("presence", "server_address", "sip:EXTERNAL_LISTEN_IP:EXTERNAL_UDP_PORT")
modparam("presence", "subs_db_mode", 0)
modparam("presence", "publ_cache", 2)
modparam("presence", "clean_period", 40)
modparam("presence", "max_expires", 3600010)
modparam("presence", "enable_dmq", 1)
# ----- presence_xml params -----
modparam("presence_xml", "db_url", DBURL)
modparam("presence_xml", "force_active", 1)
# ----- presence_dialoginfo params -----
modparam("presence_dialoginfo", "force_dummy_dialog", 1)
#!endif
```
#### Debugging Data
<!--
If you got a core dump, use gdb to extract troubleshooting data - full backtrace,
local variables and the list of the code at the issue location.
gdb /path/to/kamailio /path/to/corefile
bt full
info locals
list
If you are familiar with gdb, feel free to attach more of what you consider to
be relevant.
-->
```
(paste your debugging data here)
```
#### Log Messages
<!--
Check the syslog file and if there are relevant log messages printed by Kamailio, add them next, or attach to issue, or provide a link to download them (e.g., to a pastebin site).
-->
```
(paste your log messages here)
```
#### SIP Traffic
<!--
If the issue is exposed by processing specific SIP messages, grab them with ngrep or save in a pcap file, then add them next, or attach to issue, or provide a link to download them (e.g., to a pastebin site).
-->
```
(paste your sip traffic here)
```
### Possible Solutions
<!--
If you found a solution or workaround for the issue, describe it. Ideally, provide a pull request with a fix.
-->
### Additional Information
* **Kamailio Version** - output of `kamailio -v`
```
version: kamailio 5.4.3 (x86_64/linux) e19ae3
flags: USE_TCP, USE_TLS, USE_SCTP, TLS_HOOKS, USE_RAW_SOCKS, DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, SHM_MMAP, PKG_MALLOC, Q_MALLOC, F_MALLOC, TLSF_MALLOC, DBG_SR_MEMORY, USE_FUTEX, FAST_LOCK-ADAPTIVE_WAIT, USE_DNS_CACHE, USE_DNS_FAILOVER, USE_NAPTR, USE_DST_BLACKLIST, HAVE_RESOLV_RES
ADAPTIVE_WAIT_LOOPS 1024, MAX_RECV_BUFFER_SIZE 262144, MAX_URI_SIZE 1024, BUF_SIZE 65535, DEFAULT PKG_SIZE 8MB
poll method support: poll, epoll_lt, epoll_et, sigio_rt, select.
id: e19ae3
compiled on 18:17:25 Dec 14 2020 with gcc 4.8.5
```
* **Operating System**:
<!--
Details about the operating system, the type: Linux (e.g.,: Debian 8.4, Ubuntu 16.04, CentOS 7.1, ...), MacOS, xBSD, Solaris, ...;
Kernel details (output of `uname -a`)
-->
```
CentOS 7 - Linux hostname 3.10.0-1160.2.2.el7.x86_64 #1 SMP Tue Oct 20 16:53:08 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
```
--
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/2642
The function lookup_to_dset() is a config command implemented inside the registrar module.
https://github.com/kamailio/kamailio/blob/351efd29d332703e79104a106ade08c9d…
As you can see from the link above, It triggers w_lookup_to_dset() and it ends up calling lookup_helper() with the mode flag set to zero that causes lookup_helper() to not overwrite the request uri (and destination uri if it's the case).
For me it's worth documenting lookup_to_dset() inside modules/registrar/README file, this function it was very useful to me and I found out about it only digging into the code.
Thanks
--
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/2623
Hi all,
I have one question.
What softphones can I use when trying VoLTE (not VoIP) with Kamailio? I would like to verify VoLTE of private LTE with Open5GS and Kamailio.
I'm sorry to ask you a question without much understanding of Kamailio, VoIP and VoLTE.
Thank you very much in advance.
--Shigeru
--
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/2673
### Description
According to the documentation for the UAC module, the `uac_reg` command can accept an optional argument to use the pre-calculated HA1 format:
```
4.7. uac_auth([mode])
This function can be called only from failure route and will build the authentication response header and insert it into the request without sending anything.
If mode is set to 1, then the password has to be provided in HA1 format. The parameter can be a static integer or a variable holding an integer value
```
However, when I attempt to use this in my configuration file, Kamailio fails to start.
### Troubleshooting
#### Reproduction
The problem is reproducible in the 5.4, 5.4-nightly, and dev-nightly debian packages with the following config file:
```
#!KAMAILIO
loadmodule "tm"
loadmodule "sl"
loadmodule "pv"
loadmodule "uac"
loadmodule "rr"
modparam("uac","auth_username_avp","$avp(auser)")
modparam("uac","auth_password_avp","$avp(apass)")
modparam("uac","auth_realm_avp","$avp(arealm)")
request_route {
if( $rm == "INVITE" ) {
t_on_failure("TRUNKAUTH");
}
t_relay();
}
failure_route[TRUNKAUTH] {
$avp(auser) = "user";
$avp(arealm) = "realm";
$avp(apass) = "password";
if (uac_auth(1)) {
t_relay();
}
exit;
}
```
A check on syntax file syntax gives an error of:
```
$ sudo kamailio -eEc
0(18427) ERROR: <core> [core/cfg.y:3451]: yyparse(): cfg. parser: failed to find command uac_auth (params 1)
0(18427) CRITICAL: <core> [core/cfg.y:3592]: yyerror_at(): parse error in config file /etc/kamailio/kamailio.cfg, line 30, column 19: unknown command, missing loadmodule?
ERROR: bad config file (1 errors)
```
No failures are observed if the parameter is removed from line 30. Changed from `if (uac_auth(1)) {` to `if (uac_auth()) {`.
### Additional Information
* **Kamailio Version** - output of `kamailio -v`
```
version: kamailio 5.4.4 (x86_64/linux)
flags: USE_TCP, USE_TLS, USE_SCTP, TLS_HOOKS, USE_RAW_SOCKS, DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, SHM_MMAP, PKG_MALLOC, Q_MALLOC, F_MALLOC, TLSF_MALLOC, DBG_SR_MEMORY, USE_FUTEX, FAST_LOCK-ADAPTIVE_WAIT, USE_DNS_CACHE, USE_DNS_FAILOVER, USE_NAPTR, USE_DST_BLACKLIST, HAVE_RESOLV_RES, TLS_PTHREAD_MUTEX_SHARED
ADAPTIVE_WAIT_LOOPS 1024, MAX_RECV_BUFFER_SIZE 262144, MAX_URI_SIZE 1024, BUF_SIZE 65535, DEFAULT PKG_SIZE 8MB
poll method support: poll, epoll_lt, epoll_et, sigio_rt, select.
id: unknown
compiled with gcc 8.3.0
```
* **Operating System**:
<!--
Details about the operating system, the type: Linux (e.g.,: Debian 8.4, Ubuntu 16.04, CentOS 7.1, ...), MacOS, xBSD, Solaris, ...;
Kernel details (output of `uname -a`)
-->
```
Linux aarenet-sipdir2 4.19.0-14-cloud-amd64 #1 SMP Debian 4.19.171-2 (2021-01-30) x86_64 GNU/Linux
```
--
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/2672
Module: kamailio
Branch: 5.4
Commit: 0ddb019f3d80e4bef2d00a504dbe1baa6b982bba
URL: https://github.com/kamailio/kamailio/commit/0ddb019f3d80e4bef2d00a504dbe1ba…
Author: Victor Seva <vseva(a)sipwise.com>
Committer: Victor Seva <linuxmaniac(a)torreviejawireless.org>
Date: 2021-03-11T13:44:07+01:00
pv_headers: fix detection of split marker
If we set Diversion in split_headers and we get a header like
> "RULTEST, normalaa" <sip:0046341355354340@whatever.net;user=phone>;reason=unconditional
There was false detection of two Diversion headers.
Skip split marker between double quotes to avoid this
(cherry picked from commit c05c7133a5657a547a5b0ced0b0a05707b44bc06)
---
Modified: src/modules/pv_headers/pvh_func.c
Modified: src/modules/pv_headers/pvh_hash.c
Modified: src/modules/pv_headers/pvh_str.c
Modified: src/modules/pv_headers/pvh_str.h
---
Diff: https://github.com/kamailio/kamailio/commit/0ddb019f3d80e4bef2d00a504dbe1ba…
Patch: https://github.com/kamailio/kamailio/commit/0ddb019f3d80e4bef2d00a504dbe1ba…
Module: kamailio
Branch: master
Commit: c05c7133a5657a547a5b0ced0b0a05707b44bc06
URL: https://github.com/kamailio/kamailio/commit/c05c7133a5657a547a5b0ced0b0a057…
Author: Victor Seva <vseva(a)sipwise.com>
Committer: Victor Seva <linuxmaniac(a)torreviejawireless.org>
Date: 2021-03-11T13:41:41+01:00
pv_headers: fix detection of split marker
If we set Diversion in split_headers and we get a header like
> "RULTEST, normalaa" <sip:0046341355354340@whatever.net;user=phone>;reason=unconditional
There was false detection of two Diversion headers.
Skip split marker between double quotes to avoid this
---
Modified: src/modules/pv_headers/pvh_func.c
Modified: src/modules/pv_headers/pvh_hash.c
Modified: src/modules/pv_headers/pvh_str.c
Modified: src/modules/pv_headers/pvh_str.h
---
Diff: https://github.com/kamailio/kamailio/commit/c05c7133a5657a547a5b0ced0b0a057…
Patch: https://github.com/kamailio/kamailio/commit/c05c7133a5657a547a5b0ced0b0a057…
* default behavior of rtpengine is trust-address
* use SIP-source-address for nat_uac_test("8")
<!-- 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 -->
- [ ] PR should be backported to stable branches
- [ ] 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/2656
-- Commit Summary --
* kamailio.cfg: use SIP-source-address
-- File Changes --
M etc/kamailio.cfg (4)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/2656.patchhttps://github.com/kamailio/kamailio/pull/2656.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/2656
Module: kamailio
Branch: master
Commit: e19cb103fd16b186fed673aae2d04f1abe982110
URL: https://github.com/kamailio/kamailio/commit/e19cb103fd16b186fed673aae2d04f1…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2021-03-11T09:49:45+01:00
jwt: docs - updates for key_mode parameter
---
Modified: src/modules/jwt/doc/jwt_admin.xml
---
Diff: https://github.com/kamailio/kamailio/commit/e19cb103fd16b186fed673aae2d04f1…
Patch: https://github.com/kamailio/kamailio/commit/e19cb103fd16b186fed673aae2d04f1…
---
diff --git a/src/modules/jwt/doc/jwt_admin.xml b/src/modules/jwt/doc/jwt_admin.xml
index e222e81dc7..dba928b523 100644
--- a/src/modules/jwt/doc/jwt_admin.xml
+++ b/src/modules/jwt/doc/jwt_admin.xml
@@ -60,10 +60,9 @@
<section id="jwt.p.key_mode">
<title><varname>key_mode</varname> (int)</title>
<para>
- Mode to store the private and public keys.
- </para>
- <para>
- Work in progress.
+ Mode to use the private and public keys. If set to 0, they are read
+ always from the disk. If set to 1, they are cached in memory with
+ the first use (no reload support yet).
</para>
<para>
<emphasis>
@@ -74,7 +73,7 @@
<title>Set <varname>key_mode</varname> parameter</title>
<programlisting format="linespecific">
...
-modparam("jwt", "key_mode", 0)
+modparam("jwt", "key_mode", 1)
...
</programlisting>
</example>
- a permanently registered contact has an "expires" value of 0 in usrloc
when processing lookup, cplc module checks that contacts are not expired by
checking that the "expires" value of the contact is not lower than current
time
as a consequence, permanently registered contact are alsways skipped and
never targeted
<!-- 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/2665
-- Commit Summary --
* cplc: permanent contact not skipped by lookup anymore
-- File Changes --
M src/modules/cplc/cpl_run.c (2)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/2665.patchhttps://github.com/kamailio/kamailio/pull/2665.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/2665
Module: kamailio
Branch: master
Commit: 525ee139abcb45f71bda42b417b5f8e75c12a622
URL: https://github.com/kamailio/kamailio/commit/525ee139abcb45f71bda42b417b5f8e…
Author: easyrider14 <stephane.houssin(a)hotmail.fr>
Committer: easyrider14 <stephane.houssin(a)hotmail.fr>
Date: 2021-03-10T10:54:25+01:00
cplc: permanent contact not skipped by lookup anymore
- a permanently registered contact has an "expires" value of 0 in usrloc
when processing lookup, cplc module checks that contacts are not expired by
checking that the "expires" value of the contact is not lower than current
time
as a consequence, permanently registered contact are alsways skipped and
never targeted
---
Modified: src/modules/cplc/cpl_run.c
---
Diff: https://github.com/kamailio/kamailio/commit/525ee139abcb45f71bda42b417b5f8e…
Patch: https://github.com/kamailio/kamailio/commit/525ee139abcb45f71bda42b417b5f8e…
---
diff --git a/src/modules/cplc/cpl_run.c b/src/modules/cplc/cpl_run.c
index 768f6b3d4a..437e512667 100644
--- a/src/modules/cplc/cpl_run.c
+++ b/src/modules/cplc/cpl_run.c
@@ -283,7 +283,7 @@ static inline char *run_lookup( struct cpl_interpreter *intr )
} else {
contact = r->contacts;
/* skip expired contacts */
- while ((contact) && (contact->expires <= tc))
+ while ((contact) && (contact->expires > 0) && (contact->expires <= tc))
contact = contact->next;
/* any contacts left? */
if (contact) {
I was trying to install kamailio for the first time but I could not activate it.
I follow the steps of this installation https://powerpbx.org/content/kazoo-v4-single-server-install-guide-v1#detail…
The error given was

"Active: failed (Result: exit-code= since Mon 2021-03-08 15:44:55 (code=exited, status=255)"
The work around I found to solve this was to modify this archive vi /etc/kazoo/kamailio/local.cfg
More precisely you need to uncomment some lines and verify the information is right and similar to the one I post here.
In my case the hostname is ServerTest, the IP Address is 192.168.0.123.
################################################################################
## SERVER INFORMATION
################################################################################
## UNCOMMENT & CHANGE "somedomain.local" TO YOUR SERVERS HOSTNAME
**#!substdef "!MY_HOSTNAME!ServerTest.local!g"**
## UNCOMMENT & CHANGE "192.168.88.51" TO YOUR SERVERS IP ADDRESS
## Usually your public IP. If you need
## to listen on addtional ports or IPs
## add them in "BINDINGS" at the bottom.
**#!substdef "!MY_IP_ADDRESS!192.168.0.123!g"**
## CHANGE "kazoo://guest:guest@192.168.88.51:5672" TO THE AMQP URL
## This should be the primary RabbitMQ server
## in the zone that this server will service.
**#!substdef "!MY_AMQP_URL!amqp://guest:guest@192.168.88.51:5672!g"**
--
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/2670
Compiling the new `lrkproxy` module with clang throws the following warning:
```
CC (gcc) [M lrkproxy.so] lrkproxy.o
lrkproxy.c:1228:28: warning: address of array 'e->node->lrkp_n_c->internal_ip' will always evaluate to 'true' [-Wpointer-bool-conversion]
if (e->node->lrkp_n_c->internal_ip && flags) {
~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ ~~
1 warning generated.
```
Looks like something that needs to be sorted out, comparison with an array address.
--
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/2663