<!-- 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 -->
- [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 -->
This PR adds media forking support to the rtpengine module by exposing three functions:
rtpengine_copy_offer_f(): Sends a subscribe request to RTPEngine.
rtpengine_copy_answer_f(): Sends a subscribe answer to RTPEngine.
rtpengine_copy_delete_f(): Sends an unsubscribe request to RTPEngine.
These functions enable interaction with RTPEngine for managing media subscriptions, allowing for scenarios like media duplication or forking. This feature is based on the OpenSIPS RTPEngine module and provides similar functionality for handling media operations.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/4071
-- Commit Summary --
* export subscribe operation functions
-- File Changes --
M src/modules/rtpengine/api.h (20)
M src/modules/rtpengine/rtpengine.c (217)
M src/modules/rtpengine/rtpengine.h (17)
A src/modules/rtpengine/rtpengine_common.h (28)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/4071.patchhttps://github.com/kamailio/kamailio/pull/4071.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/4071
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/4071(a)github.com>
Yes, i tried that everything that is generated from `CMake` to be inside the `CMAKE_BINARY_DIR` aka build folder and it's respective subfolders and not pollute the src tree in any way.
Picking that they are the same is actually a good sign, that it produced identical output! But I also believe they shouldn't exist in source tree, for whatever reason. If you want or need them, use them from the build directory.
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/commit/da629accb2c2095e3255f4aa3389a0a…
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/commit/da629accb2c2095e3255f4aa3389a0af02272980/150488267(a)github.com>
Pushed another commit (05bb67d91c8c7ffc0b68513d46e1de5f68124800) to remove these files from glob result over core source folder -- the ones generated by cmake are in bin folder not in src, but I guess they were detected as being the same and thus the warnings.
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/commit/da629accb2c2095e3255f4aa3389a0a…
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/commit/da629accb2c2095e3255f4aa3389a0af02272980/150487722(a)github.com>
Yeah probably they exist in your source tree under `src/core/` as well by invociking the old Makefiles? So, they are picked up by the `GLOB` as well.
These generated files should not be in the source tree but in the build tree instead. Some also argue they shouldn't even be tracked, since they can offer different things with different options and therefore should be generated everytime when options change.
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/commit/da629accb2c2095e3255f4aa3389a0a…
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/commit/da629accb2c2095e3255f4aa3389a0af02272980/150487124(a)github.com>
I reverted the commit since it was reported to break on some OSes.
On macos with cmake version 3.29.5 I get this warnings. I have to investigate further, it might be my local dev setup.
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/commit/da629accb2c2095e3255f4aa3389a0a…
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/commit/da629accb2c2095e3255f4aa3389a0af02272980/150487013(a)github.com>
Hey @miconda,
These files are generated from other files and do not exist in the source tree, when configuring. They are produced during the build step and therefore I needed to find a way to list them at sources so they don't produce the errors above.
If you search `CMakeLists.txt`, you can see the `custom_commands` that generate them and `CMake` knows not to error if not found because they are `OUTPUT` of these commands and instead built them.
I haven't seen these warning before.
```
- warnings shown before:
Warning: Source file ".../src/core/lex.yy.c" is listed multiple times for target "kamailio".
Warning: Source file ".../src/core/cfg.tab.c" is listed multiple times for target "kamailio"
```
Did you make any change before that might included this? There is only one place that list this source files as source and its here
```
target_sources(
kamailio
PRIVATE ${kamailio_SRC_FILES} ${CMAKE_CURRENT_BINARY_DIR}/core/lex.yy.c
${CMAKE_CURRENT_BINARY_DIR}/core/cfg.tab.c
)
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/commit/da629accb2c2095e3255f4aa3389a0a…
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/commit/da629accb2c2095e3255f4aa3389a0af02272980/150486656(a)github.com>
What is the operating system and the cmake version you have?
I tested on macos with cmake version 3.29.5. and on debian 11 (32b) with cmake version 3.18.4.
Also, do you have the latest kamailio from git master branch?
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/commit/da629accb2c2095e3255f4aa3389a0a…
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/commit/da629accb2c2095e3255f4aa3389a0af02272980/150486180(a)github.com>
This commit seems to have broken the build: I am seeing the same error as CI/CD
```
/usr/bin/ld: CMakeFiles/kamailio.dir/main.c.o: in function `main':
/home/centos/src/kamailio-5.8/build/src/main.c:2509: undefined reference to `pp_define_set_type'
/usr/bin/ld: /home/centos/src/kamailio-5.8/build/src/main.c:2510: undefined reference to `pp_define'
/usr/bin/ld: /home/centos/src/kamailio-5.8/build/src/main.c:2516: undefined reference to `pp_define_set'
/usr/bin/ld: /home/centos/src/kamailio-5.8/build/src/main.c:2745: undefined reference to `yyin'
/usr/bin/ld: /home/centos/src/kamailio-5.8/build/src/main.c:2747: undefined reference to `ksr_cfg_print_initial_state'
/usr/bin/ld: /home/centos/src/kamailio-5.8/build/src/main.c:2748: undefined reference to `yyparse'
/usr/bin/ld: CMakeFiles/kamailio.dir/core/core_cmd.c.o: in function `core_ppdefines':
/home/centos/src/kamailio-5.8/build/src/core/core_cmd.c:1008: undefined reference to `pp_get_define_name'
/usr/bin/ld: CMakeFiles/kamailio.dir/core/core_cmd.c.o: in function `core_ppdefines_full':
/home/centos/src/kamailio-5.8/build/src/core/core_cmd.c:1033: undefined reference to `pp_get_define'
/usr/bin/ld: CMakeFiles/kamailio.dir/core/ppcfg.c.o: in function `pp_substdef_add':
/home/centos/src/kamailio-5.8/build/src/core/ppcfg.c:171: undefined reference to `pp_define_set_type'
/usr/bin/ld: /home/centos/src/kamailio-5.8/build/src/core/ppcfg.c:172: undefined reference to `pp_define'
/usr/bin/ld: /home/centos/src/kamailio-5.8/build/src/core/ppcfg.c:199: undefined reference to `pp_define_set'
/usr/bin/ld: CMakeFiles/kamailio.dir/core/ppcfg.c.o: in function `pp_define_core':
/home/centos/src/kamailio-5.8/build/src/core/ppcfg.c:312: undefined reference to `pp_define_set_type'
/usr/bin/ld: /home/centos/src/kamailio-5.8/build/src/core/ppcfg.c:313: undefined reference to `pp_define'
/usr/bin/ld: /home/centos/src/kamailio-5.8/build/src/core/ppcfg.c:324: undefined reference to `pp_define_set_type'
/usr/bin/ld: /home/centos/src/kamailio-5.8/build/src/core/ppcfg.c:325: undefined reference to `pp_define'
/usr/bin/ld: /home/centos/src/kamailio-5.8/build/src/core/ppcfg.c:337: undefined reference to `pp_define_set_type'
/usr/bin/ld: /home/centos/src/kamailio-5.8/build/src/core/ppcfg.c:338: undefined reference to `pp_define'
/usr/bin/ld: /home/centos/src/kamailio-5.8/build/src/core/ppcfg.c:344: undefined reference to `pp_define_set_type'
/usr/bin/ld: /home/centos/src/kamailio-5.8/build/src/core/ppcfg.c:345: undefined reference to `pp_define'
/usr/bin/ld: /home/centos/src/kamailio-5.8/build/src/core/ppcfg.c:360: undefined reference to `pp_define_set'
/usr/bin/ld: /home/centos/src/kamailio-5.8/build/src/core/ppcfg.c:365: undefined reference to `pp_define'
/usr/bin/ld: /home/centos/src/kamailio-5.8/build/src/core/ppcfg.c:369: undefined reference to `pp_define_set'
/usr/bin/ld: CMakeFiles/kamailio.dir/core/ppcfg.c.o: in function `pp_snexpr_defval':
/home/centos/src/kamailio-5.8/build/src/core/ppcfg.c:384: undefined reference to `pp_lookup'
/usr/bin/ld: /home/centos/src/kamailio-5.8/build/src/core/ppcfg.c:389: undefined reference to `pp_get_define'
/usr/bin/ld: CMakeFiles/kamailio.dir/core/ppcfg.c.o: in function `pp_ifexp_eval':
/home/centos/src/kamailio-5.8/build/src/core/ppcfg.c:434: undefined reference to `pp_ifexp_state'
/usr/bin/ld: /home/centos/src/kamailio-5.8/build/src/core/ppcfg.c:442: undefined reference to `pp_ifexp_state'
/usr/bin/ld: /home/centos/src/kamailio-5.8/build/src/core/ppcfg.c:468: undefined reference to `pp_ifexp_state'
/usr/bin/ld: CMakeFiles/kamailio.dir/core/pv_core.c.o: in function `pv_get_def':
/home/centos/src/kamailio-5.8/build/src/core/pv_core.c:136: undefined reference to `pp_define_get'
/usr/bin/ld: CMakeFiles/kamailio.dir/core/pv_core.c.o: in function `pv_get_defn':
/home/centos/src/kamailio-5.8/build/src/core/pv_core.c:160: undefined reference to `pp_define_get'
/usr/bin/ld: CMakeFiles/kamailio.dir/core/sr_module.c.o: in function `register_module':
/home/centos/src/kamailio-5.8/build/src/core/sr_module.c:332: undefined reference to `pp_define_set_type'
/usr/bin/ld: /home/centos/src/kamailio-5.8/build/src/core/sr_module.c:333: undefined reference to `pp_define'
```
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/commit/da629accb2c2095e3255f4aa3389a0a…
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/commit/da629accb2c2095e3255f4aa3389a0af02272980/150485816(a)github.com>
### Introduction
First, I apologize for the lack of detail here. I am unable to get a core dump and as a production box, I was unable to run in debug mode.
### Description
Using Kamailio 5.8.4 on Debian 12, every 60-80 minutes, the software would crash, blaming tls_wolfssl, such as:
```
2024-12-16T14:58:27.554497+00:00 ip-172-16-0-52 /usr/local/sbin/kamailio[9084]: CRITICAL: <core> [core/mem/q_malloc.c:535]: qm_free(): BUG: bad pointer 0x1 (out of memory block!) called from tls_wolfssl: tls_init.c: ser_free(240) - ignoring
2024-12-16T14:58:27.554555+00:00 ip-172-16-0-52 /usr/local/sbin/kamailio[9084]: CRITICAL: <core> [core/mem/q_malloc.c:126]: qm_debug_check_frag(): BUG: qm: fragm. 0x7f3440ba7560 (address 0x7f3440ba75a0) beginning overwritten (23)! Memory allocator was called from tls_wolfssl: tls_init.c:240. Fragment marked by :29. Exec from core/mem/q_malloc.c:546.
2024-12-16T14:58:27.616558+00:00 ip-172-16-0-52 /usr/local/sbin/kamailio[9089]: CRITICAL: <core> [core/pass_fd.c:281]: receive_fd(): EOF on 103
2024-12-16T14:58:27.617684+00:00 ip-172-16-0-52 /usr/local/sbin/kamailio[8992]: ALERT: <core> [main.c:805]: handle_sigs(): child process 9084 exited by a signal 6
2024-12-16T14:58:27.618339+00:00 ip-172-16-0-52 /usr/local/sbin/kamailio[8992]: ALERT: <core> [main.c:809]: handle_sigs(): core was not generated
2024-12-16T14:58:27.618477+00:00 ip-172-16-0-52 /usr/local/sbin/kamailio[8992]: INFO: <core> [main.c:832]: handle_sigs(): terminating due to SIGCHLD
2024-12-16T14:58:27.618589+00:00 ip-172-16-0-52 /usr/local/sbin/kamailio[9088]: INFO: <core> [main.c:888]: sig_usr(): signal 15 received
```
```
2024-12-16T14:57:52.029277+00:00 ip-172-16-0-73 /usr/local/sbin/kamailio[21605]: CRITICAL: <core> [core/mem/q_malloc.c:535]: qm_free(): BUG: bad pointer 0x1 (out of memory block!) called from tls_wolfssl: tls_init.c: ser_free(240) - ignoring
2024-12-16T14:57:52.029347+00:00 ip-172-16-0-73 /usr/local/sbin/kamailio[21605]: CRITICAL: <core> [core/mem/q_malloc.c:126]: qm_debug_check_frag(): BUG: qm: fragm. 0x7f085996b500 (address 0x7f085996b540) beginning overwritten (0)! Memory allocator was called from tls_wolfssl: tls_init.c:240. Fragment marked by (null):0. Exec from core/mem/q_malloc.c:546.
2024-12-16T14:57:52.048597+00:00 ip-172-16-0-73 /usr/local/sbin/kamailio[21611]: CRITICAL: <core> [core/pass_fd.c:281]: receive_fd(): EOF on 101
2024-12-16T14:57:52.048921+00:00 ip-172-16-0-73 /usr/local/sbin/kamailio[21512]: ALERT: <core> [main.c:805]: handle_sigs(): child process 21605 exited by a signal 6
2024-12-16T14:57:52.048953+00:00 ip-172-16-0-73 /usr/local/sbin/kamailio[21512]: ALERT: <core> [main.c:809]: handle_sigs(): core was not generated
2024-12-16T14:57:52.048975+00:00 ip-172-16-0-73 /usr/local/sbin/kamailio[21512]: INFO: <core> [main.c:832]: handle_sigs(): terminating due to SIGCHLD
2024-12-16T14:57:52.048997+00:00 ip-172-16-0-73 /usr/local/sbin/kamailio[21609]: INFO: <core> [main.c:888]: sig_usr(): signal 15 received
```
```
2024-12-16T16:21:35.967576+00:00 ip-172-16-0-52 /usr/local/sbin/kamailio[10591]: CRITICAL: <core> [core/mem/q_malloc.c:126]: qm_debug_check_frag(): BUG: qm: fragm. 0x7f442778d110 (address 0x7f442778d150) beginning overwritten (0)! Memory allocator was called from tls_wolfssl: tls_init.c:240. Fragment marked by (null):0. Exec from core/mem/q_malloc.c:546.
```
```
2024-12-16T13:31:55.995222+00:00 ip-172-16-0-52 /usr/local/sbin/kamailio[7602]: CRITICAL: <core> [core/mem/q_malloc.c:555]: qm_free(): BUG: freeing already freed pointer (0x7f8e55830a70), called from tls_wolfssl: tls_init.c: ser_free(240), first free tls_wolfssl: tls_init.c: ser_malloc(228) - ignoring
2024-12-16T13:32:40.093954+00:00 ip-172-16-0-52 /usr/local/sbin/kamailio[7603]: CRITICAL: <core> [core/mem/q_malloc.c:535]: qm_free(): BUG: bad pointer 0x7a100000000 (out of memory block!) called from tls_wolfssl: tls_init.c: ser_free(240) - ignoring
2024-12-16T13:32:40.094047+00:00 ip-172-16-0-52 /usr/local/sbin/kamailio[7603]: CRITICAL: <core> [core/mem/q_malloc.c:126]: qm_debug_check_frag(): BUG: qm: fragm. 0x7f8e55762720 (address 0x7f8e55762760) beginning overwritten (0)! Memory allocator was called from tls_wolfssl: tls_init.c:240. Fragment marked by (null):0. Exec from core/mem/q_malloc.c:546.
2024-12-16T13:32:40.260913+00:00 ip-172-16-0-52 /usr/local/sbin/kamailio[7504]: CRITICAL: <core> [core/mem/q_malloc.c:555]: qm_free(): BUG: freeing already freed pointer (0x7f8e55761a70), called from core: core/tcp_main.c: _tcpconn_free(1666), first free tls_wolfssl: tls_init.c: ser_free(240) - ignoring
2024-12-16T13:32:40.263520+00:00 ip-172-16-0-52 /usr/local/sbin/kamailio[7504]: CRITICAL: <core> [core/mem/q_malloc.c:126]: qm_debug_check_frag(): BUG: qm: fragm. 0x7f8e55762720 (address 0x7f8e55762760) beginning overwritten (0)! Memory allocator was called from tls_wolfssl: tls_init.c:240. Fragment marked by (null):0. Exec from core/mem/q_malloc.c:546.
```
The system was handling ~900 TLS registrations with ~2700 presence SUBSCRIBE events.
**Running the same config with `tls.so` does not result in crash.**
### Additional Information
* **Kamailio Version** - 5.8.4
```
version: kamailio 5.8.4 (x86_64/linux) 598105-dirty
flags: USE_TCP, USE_TLS, USE_SCTP, TLS_HOOKS, USE_RAW_SOCKS, DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, SHM_MMAP, PKG_MALLOC, MEM_JOIN_FREE, 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_BLOCKLIST, HAVE_RESOLV_RES, TLS_PTHREAD_MUTEX_SHARED
ADAPTIVE_WAIT_LOOPS 1024, MAX_RECV_BUFFER_SIZE 262144, MAX_SEND_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: 598105 -dirty
compiled on 04:31:34 Dec 16 2024 with gcc 12.2.0
```
* **Operating System**:
```
Distributor ID: Debian
Description: Debian GNU/Linux 12 (bookworm)
Release: 12
Codename: bookworm
Linux ip-172-16-0-52 6.1.0-28-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.119-1 (2024-11-22) x86_64 GNU/Linux
```
* TCP Settings
```
children=16
disable_tcp=no
tcp_connection_lifetime=3605
tcp_accept_no_cl=yes
tcp_max_connections=8192
tcp_defer_accept=yes
tcp_accept_unique=0
tcp_connection_lifetime=3605
tcp_connection_match=1
tcp_connect_timeout=10
tcp_crlf_ping=yes
tcp_linger2=1
tcp_keepalive=yes
tcp_reuse_port=yes
tcp_keepidle=20
tcp_keepintvl=15
tcp_rd_buf_size=65536
tcp_msg_data_timeout=40
tcp_msg_read_timeout=40
tcp_check_timer=20
tls_threads_mode=2
tls_max_connections=8192
```
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/4074
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/4074(a)github.com>
### Description
Ping @xkaraman
cmake error on installation; it seems to be looking for various xxxxx.txt files
```
cmake --install .
-- Install configuration: "Debug"
-- Installing: /home/centos/src/CHROOT/usr/local/kamailio/sbin/kamailio
-- kamailio.cfg already exists in /home/centos/src/CHROOT/usr/local/kamailio/etc/kamailio/kamailio.cfg Installing as kamailio.sample
-- Up-to-date: /home/centos/src/CHROOT/usr/local/kamailio/etc/kamailio/kamailio.cfg.sample
-- Installing: /home/centos/src/CHROOT/usr/local/kamailio/lib64/kamailio/modules/async.so
-- Set runtime path of "/home/centos/src/CHROOT/usr/local/kamailio/lib64/kamailio/modules/async.so" to "/usr/local/kamailio/lib64/kamailio"
-- Installing: /home/centos/src/CHROOT/usr/local/kamailio/share/doc/kamailio/modules/README.async
-- Installing: /home/centos/src/CHROOT/usr/local/kamailio/lib64/kamailio/modules/auth.so
-- Set runtime path of "/home/centos/src/CHROOT/usr/local/kamailio/lib64/kamailio/modules/auth.so" to "/usr/local/kamailio/lib64/kamailio"
CMake Error at src/modules/cmake_install.cmake:96 (file):
file INSTALL cannot find
"/home/centos/src/kamailio-5.8/src/modules/auth/auth.txt": No such file or
directory.
Call Stack (most recent call first):
src/cmake_install.cmake:85 (include)
cmake_install.cmake:47 (include)
```
### Troubleshooting
#### Reproduction
```
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/kamailio .
cmake --build .
DESTDIR=~/temp/INSTALLROOT cmake --install .
```
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/4076
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/4076(a)github.com>
Module: kamailio
Branch: master
Commit: 763d3622fdb2cdd7916963b6d3f4d532525a5fcc
URL: https://github.com/kamailio/kamailio/commit/763d3622fdb2cdd7916963b6d3f4d53…
Author: Xenofon Karamanos <xk(a)gilawa.com>
Committer: Xenofon Karamanos <xk(a)gilawa.com>
Date: 2024-12-17T13:31:59Z
cmake: Make docs install optional
---
Modified: cmake/modules-docs.cmake
---
Diff: https://github.com/kamailio/kamailio/commit/763d3622fdb2cdd7916963b6d3f4d53…
Patch: https://github.com/kamailio/kamailio/commit/763d3622fdb2cdd7916963b6d3f4d53…
---
diff --git a/cmake/modules-docs.cmake b/cmake/modules-docs.cmake
index f4ac35d3ba6..53beeae6fb9 100644
--- a/cmake/modules-docs.cmake
+++ b/cmake/modules-docs.cmake
@@ -140,6 +140,9 @@ else()
RENAME README.${MODULE_NAME}
DESTINATION ${CMAKE_INSTALL_DOCDIR}/modules
COMPONENT kamailio_docs
+ # Since the depepndencies might not have been build as they are not in the default target
+ # and required to build explicitly using `make kamailio_docs`, allow them to be optional.
+ OPTIONAL
)
endif()
Hello,
the formal notification that the development for the next major version
6.0.0 is now frozen. The focus has to be on testing the master branch.
Also, the master branch should not get commits with new features till
the branch 6.0 is created, expected to happen in 2-4 weeks, a matter of
how testing goes on. Meanwhile, the commits with new features in the C
code can be pushed to personal branches, new pull requests can still be
done, but they will be merged after branching 6.0.
Can still be done commits with documentation improvements, enhancements
to related tools (e.g., kamctl, kamcmd), merging exiting pull requests
at this moment, exporting missing KEMI functions and completing the
functionality of the new modules added for 6.0.
Once the branch 6.0 is created, new features can be pushed again to
master branch as usual. From that moment, the v6.0.0 should be out very
soon, time used for further testing but also preparing the release of
packages.
If someone is not sure if a commit brings a new feature, just make a
pull request and it can be discussed there on github portal or via
sr-dev mailing list.
A summary of what is new in upcoming 6.0 is going to be built at:
* https://www.kamailio.org/wikidocs/features/new-in-6.0.x/
Upgrade guidelines will be collected at:
* https://www.kamailio.org/wikidocs/install/upgrade/5.8.x-to-6.0.0/
Everyone is more than welcome to contribute to the above wiki pages,
especially to the upgrade guidelines, to help everyone else during the
migration process from v5.8.x to 6.0.x.
Cheers,
Daniel
--
Daniel-Constantin Mierla (@ asipto.com)
twitter.com/miconda -- linkedin.com/in/miconda
Kamailio Consultancy, Training and Development Services -- asipto.com
### Description
I don't know if this is a bug, or if I missing some config requirements. I mentioned the issue on the sr-user but did not get any comment.
In case serial (or combined serial/parallel) branching is wished, the q value from the registered contact is considered to define the order in which a call is serial branched.
If a CPE registers without q value, the value can be defined by:
modparam("registrar", "default_q", 500)
If a CPE registers with a q value, the client provided value is not being overridden by the default_q setting.
In order to force the order there is a need to override the q value provided by a CPE.
According to the Manual this is possible:
modparam("registrar", "xavp_cfg", "reg")
https://www.kamailio.org/docs/modules/devel/modules/registrar.html#registra…
q - q value of contact (integer 0-1000). It overrides q value given in contact header and default_q parameter. Used in save().
#### Reproduction
Actual config:
```
modparam("registrar", "method_filtering", 1)
modparam("registrar", "max_contacts", 10)
modparam("registrar", "max_expires", 3600)
modparam("registrar", "gruu_enabled", 0)
modparam("registrar", "retry_after", 30)
modparam("registrar", "xavp_cfg", "reg")
modparam("registrar", "default_q", 600)
modparam("registrar", "use_path", 1)
modparam("registrar", "path_mode", 1)
modparam("registrar", "path_check_local", 0)
```
```
route[REGISTRAR] {
# Create an AOR based on the auth_username for the location service.
$var(saveuri) = "sip:" + $aU + "@" + $rd;
$xavp(reg=>q) = 450;
$var(result) = save("location","0x00","$var(saveuri)");
if ($var(result) == -2) {
xlog("L_ERR", "$cfg(route): Too many contacts for $var(saveuri)\n");
sl_reply_error();
}
if ($var(result) == -1) {
xlog("L_ERR", "$cfg(route): Error saving location $var(saveuri)\n");
sl_reply_error();
}
if ($var(result) == 1) {
xlog("L_INFO", "$cfg(route): Contact $var(saveuri) inserted\n");
}
if ($var(result) == 2) {
if ($avp(debug) > 0) {
xlog("L_INFO", "$cfg(route): Contact $var(saveuri) updated\n");
}
}
if ($var(result) == 3) {
xlog("L_INFO", "$cfg(route): Contact $var(saveuri) deleted\n");
}
if ($var(result) == 4) {
xlog("L_INFO", "$cfg(route): Contact $var(saveuri) returned\n");
}
}
```
#### Debugging Data
```
# kamctl ul show | json_pp | grep "Q"
"Q" : 0.6,
"Q" : 0.6,
"Q" : 0.6,
"Q" : 0.5,
"Q" : 0.6,
"Q" : 0.6,
"Q" : 0.6,
```
CPE providing a q value (0.5 in this case for CPE 4) are not overriden.
CPE providing no q value are inserted with default_q value.
Expectation: $xavp(reg=>q) = 450 should cause all CPE to register with Q: 0.45
#### Log Messages
No errors logged while saving contact.
#### SIP Traffic
I could show the Register messages of CPE with q= attribute and without, but I don't think this contributes to solving the issue.
### Possible Solutions
I attempted some other notations like:
$xavp(reg>q)
or
$xavp(reg[0]=>q)
none worked.
I also noted some time ago that setting: $xavp(reg=>max_contacts) also does not work
### Additional Information
```
# kamailio -v
version: kamailio 5.7.6 (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, MEM_JOIN_FREE, 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_BLOCKLIST, 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 11.4.0
```
```
Distributor ID: Ubuntu
Description: Ubuntu 22.04.4 LTS
Release: 22.04
Codename: jammy
```
Any help / hints appreciated!
-Benoît-
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/4068
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/4068(a)github.com>
Hello,
I propose to aim freezing the development for 6.0.x series at the end of
the 16th of December 2024 (Monday).
New features that one wants to get in this release series have to be
pushed to git repository or pull requests made for them. Afterwards
usually follows a 4-6 weeks of testing till the first release 6.0.0.
Unfreezing will happen earlier, after the first weeks of testing when
the 6.0 branch will be created.
Cheers,
Daniel
--
Daniel-Constantin Mierla (@ asipto.com)
twitter.com/miconda -- linkedin.com/in/miconda
Kamailio Consultancy, Training and Development Services -- asipto.com
- allows custom tags to be added to prometheus metrics
- Addresses GH issue #4021
<!-- 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 -->
- [X] PR should be backported to stable branches
- [X] Tested changes locally
- [X] Related to issue #4021
#### Description
<!-- Describe your changes in detail -->
This change adds a new parameter `xhttp_prom_tags`. It allows the user to append tags to the prometheus metrics. This makes those metrics a lot more useful when having multiple kamailio instances running on a single host.
This is done by 2 shared memory helper variables which contain the parameter in different formats. This way it is easy to print them out with minimal changes.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/4072
-- Commit Summary --
* xhttp_prom: new xhttp_prom_tags parameter
* Fixed formating
-- File Changes --
M src/modules/xhttp_prom/doc/xhttp_prom_admin.xml (25)
M src/modules/xhttp_prom/prom.c (30)
M src/modules/xhttp_prom/xhttp_prom.c (50)
M src/modules/xhttp_prom/xhttp_prom.h (15)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/4072.patchhttps://github.com/kamailio/kamailio/pull/4072.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/4072
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/4072(a)github.com>
### Description
When I rewrite from native to Lua syntax, I find that `pv_www_authenticate` has no corresponding implementation, can we add it?
### Expected behavior
#### Actual observed behavior
#### Debugging Data
```
(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 improvement.
-->
### Additional Information
* **Kamailio Version** - output of `kamailio -v`
```
(paste your output here)
```
* **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`)
-->
```
Kamailio 5.8.2
Lua 5.1.4
```
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/4067
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/4067(a)github.com>
- allows custom tags to be added to prometheus metrics
- Addresses GH issue #4021
<!-- 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 -->
- [X] PR should be backported to stable branches
- [X] Tested changes locally
- [X] Related to issue #4021
#### Description
<!-- Describe your changes in detail -->
This change adds a new parameter `xhttp_prom_tags`. It allows the user to append tags to the prometheus metrics. This makes those metrics a lot more useful when having multiple kamailio instances running on a single host.
This is done by 2 shared memory helper variables which contain the parameter in different formats. This way it is easy to print them out with minimal changes.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/4070
-- Commit Summary --
* xhttp_prom: new xhttp_prom_tags parameter
-- File Changes --
M src/modules/xhttp_prom/doc/xhttp_prom_admin.xml (25)
M src/modules/xhttp_prom/prom.c (25)
M src/modules/xhttp_prom/xhttp_prom.c (45)
M src/modules/xhttp_prom/xhttp_prom.h (15)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/4070.patchhttps://github.com/kamailio/kamailio/pull/4070.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/4070
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/4070(a)github.com>
Discuss and track updates to default kamailio.cfg for v6.0.x series.
If you want to add something new to or remove from kamailio.cfg, post a comment in this thread.
Commits to kamailio.cfg can also reference this tracker item.
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/4034
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/4034(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)
- [ ] 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
- [ ] Tested changes locally
#### Description
kamailio module for handling as-feature-event presence messages
This module provide support for 'Device FeatureKey Synchronization', as described in
http://community.polycom.com/polycom/attachments/polycom/VoIP/2233/1/Device…
This 'protocol' was developed at Broadsoft, and is used in Linksys/Cisco and Polycom phones and probably some other too.
It allows to set up features like dnd (No Not Disturb) and call forwarding using phone interface and have that status
updated on aplication server/ proxy or otherway, set those features on aplication server using some gui, and have this data
provisioned on phone.
For Shared Line Appreance application this let You share status on all phones.
[original source](https://github.com/majastanislawska/sip-router-presence_dfks-module…
[sipwise](https://github.com/sipwise/kamailio/blob/master/debian/patches/sip…
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/4065
-- Commit Summary --
* presence_dfks: [WIP]
* pua: support as-feature-event
* Makefile.groups: add presence_dfks to mod_list_presence
* cmake: add presence_dfks to MOD_LIST_PRESENCE
-- File Changes --
M cmake/groups.cmake (1)
M src/Makefile.groups (2)
A src/modules/presence_dfks/CMakeLists.txt (6)
A src/modules/presence_dfks/Makefile (27)
A src/modules/presence_dfks/README.md (32)
A src/modules/presence_dfks/add_events.c (316)
A src/modules/presence_dfks/add_events.h (7)
A src/modules/presence_dfks/presence_dfks.c (131)
A src/modules/presence_dfks/presence_dfks.h (18)
M src/modules/pua/add_events.c (13)
M src/modules/pua/add_events.h (2)
M src/modules/pua/hash.h (6)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/4065.patchhttps://github.com/kamailio/kamailio/pull/4065.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/4065
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/4065(a)github.com>
#### 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
- [ ] Tested changes locally
- [x] Related to issue https://lists.kamailio.org/mailman3/hyperkitty/list/sr-users@lists.kamailio…
#### Description
``current_msg_id_repl is only`` changed if ``$diameter_reponse`` is changed by via ``pv_set_response()``. The event_route is executed with a ``fake_msg`` so it will not match if is setted outside anyways.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/4069
-- Commit Summary --
* ims_diameter_server: fix retrieval ``$diameter_response`` value
-- File Changes --
M src/modules/ims_diameter_server/avp_helper.c (4)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/4069.patchhttps://github.com/kamailio/kamailio/pull/4069.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/4069
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/4069(a)github.com>