Thanks for merging the PR. It seems that the referenced PR is wrong.
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/commit/3d002d561e82b8bb71b225da708bdfd…
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/commit/3d002d561e82b8bb71b225da708bdfd9ce504335/145516854(a)github.com>
- All `secfilter` functions are now accessible in KEMI. For example, you can use KSR.secf_check_ip() directly by importing the KSR module in Python.
<!-- 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 -->
* Exporting all secfilter functions to KEMI.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3940
-- Commit Summary --
* secfilter is fully KEMIized
-- File Changes --
M src/modules/secfilter/secfilter.c (99)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3940.patchhttps://github.com/kamailio/kamailio/pull/3940.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3940
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3940(a)github.com>
- Added `cdp_has_app` function:
- Accepts a single parameter: - `application`: The Application ID.
- Added `cdp_has_app2` function:
- Accepts two parameters: - `vendorid`: The Vendor ID associated with the application. - `application`: The Application ID.
- Added cdp_check_peer function:
- Accepts one parameter: - `fqdn`: the Fully qualified domain name of the peer, that should be checked. The parameter may contain pseudovariables.
NOTE: All parameters are passed as standard strings.
<!-- 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
- [ ] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
<!-- Describe your changes in detail -->
* Exporting all cdp functions to KEMI
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3943
-- Commit Summary --
* cdp: export all functions in KEMI module
-- File Changes --
M src/modules/cdp/cdp_mod.c (34)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3943.patchhttps://github.com/kamailio/kamailio/pull/3943.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3943
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3943(a)github.com>
<!--
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:
* https://lists.kamailio.org/mailman3/postorius/lists/sr-users.lists.kamailio…
If you have questions about developing extensions to Kamailio or its existing C code, ask on sr-dev mailing list:
* https://lists.kamailio.org/mailman3/postorius/lists/sr-dev.lists.kamailio.o…
Please try to fill this template as much as possible for any issue. It helps the developers to troubleshoot the issue.
Note that an issue report may be closed automatically after about 2 months
if there is no interest from developers or community users on pursuing it, being
considered expired. In such case, it can be reopened by writing a comment that includes
the token `/notexpired`. About two weeks before considered expired, the issue is
marked with the label `stale`, trying to notify the submitter and everyone else
that might be interested in it. To remove the label `stale`, write a comment that
includes the token `/notstale`. Also, any comment postpone the `expire` timeline,
being considered that there is interest in pursuing 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
<!--
Explain what you did, what you expected to happen, and what actually happened.
-->
Hello, when I was testing the SMSC SMS business, I found that the SMS could not be forwarded by the SMSC when the characters were too long, approximately 117 characters. The issue was traced back to the smsops module, which has a limit on the length of the SMS, but it seems that it does not handle SMS segmentation. The error message returned is as follows. Could you please provide some suggestions and help?
### Troubleshooting
#### Reproduction
<!--
If the issue can be reproduced, describe how it can be done.
-->
#### 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
```
2024-04-24T05:59:01.837950514Z 3(24) ERROR: <script>: SMS for "" (Valid: 0 )
2024-04-24T05:59:14.466167796Z 2(23) ERROR: <script>: 3GPP-SMS: MESSAGE (sip:+8618107550088@ims.mnc011.mcc460.3gppnetwork.org (172.22.0.20:6060) to tel:+8613800138000, bnecb4LQJ(a)10.46.2.1)
2024-04-24T05:59:14.466173859Z 2(23) ERROR: smsops [smsops_impl.c:1055]: decode_3gpp_sms(): Length of TP-User-Data payload exceeds maximum length!
2024-04-24T05:59:14.466175929Z 2(23) ERROR: smsops [smsops_impl.c:1320]: pv_get_sms(): Error getting/decoding RP-Data from request!
2024-04-24T05:59:14.466191554Z 2(23) ERROR: smsops [smsops_impl.c:1055]: decode_3gpp_sms(): Length of TP-User-Data payload exceeds maximum length!
2024-04-24T05:59:14.466194545Z 2(23) ERROR: smsops [smsops_impl.c:1320]: pv_get_sms(): Error getting/decoding RP-Data from request!
2024-04-24T05:59:14.466196517Z 2(23) ERROR: smsops [smsops_impl.c:1055]: decode_3gpp_sms(): Length of TP-User-Data payload exceeds maximum length!
2024-04-24T05:59:14.466198406Z 2(23) ERROR: smsops [smsops_impl.c:1320]: pv_get_sms(): Error getting/decoding RP-Data from request!
2024-04-24T05:59:14.466200311Z 2(23) ERROR: <script>: SMS for "" (Valid: )
2024-04-24T05:59:14.466255812Z 2(23) ERROR: smsops [smsops_impl.c:1055]: decode_3gpp_sms(): Length of TP-User-Data payload exceeds maximum length!
2024-04-24T05:59:14.466276249Z 2(23) ERROR: smsops [smsops_impl.c:1903]: isRPDATA(): Error getting/decoding RP-Data from request!
```
#### 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).
-->
```
```

### 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`
poll method support: poll, epoll_lt, epoll_et, sigio_rt, select.
id: 4fb8ac -dirty
compiled on 03:11:49 Apr 24 2024 with gcc 9.4.0
```
version: kamailio 5.9.0-dev0 (x86_64/linux) 4fb8ac-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
```
* **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 `lsb_release -a` and `uname -a`)
-->
```
Linux sder 4.15.0-128-generic #131-Ubuntu SMP Wed Dec 9 06:57:35 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
```
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3822
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3822(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 -->
- [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 -->
* All functions are exported to kemi
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3945
-- Commit Summary --
* secfilter is fully KEMIized
* secfilter: fix the failed format check
-- File Changes --
M src/modules/secfilter/secfilter.c (88)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3945.patchhttps://github.com/kamailio/kamailio/pull/3945.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3945
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3945(a)github.com>
- Added `cdp_has_app` function:
- Accepts a single parameter: - `application`: The Application ID.
- Added `cdp_has_app2` function:
- Accepts two parameters: - `vendorid`: The Vendor ID associated with the application. - `application`: The Application ID.
- Added cdp_check_peer function:
- Accepts one parameter: - `fqdn`: the Fully qualified domain name of the peer, that should be checked. The parameter may contain pseudovariables.
NOTE: All parameters are passed as standard strings.
<!-- 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
- [ ] 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/3942
-- Commit Summary --
* cdp: export all functions in KEMI module
-- File Changes --
M src/modules/cdp/cdp_mod.c (34)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3942.patchhttps://github.com/kamailio/kamailio/pull/3942.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3942
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3942(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 -->
- [x] 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 -->
* Exporting all cdp functions to KEMI
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3941
-- Commit Summary --
* secfilter: all functions are exported in KEMI
* cdp: ki_cdp_check_peer() KEMIized
* cdp: export all functions in KEMI module
-- File Changes --
M src/modules/cdp/cdp_mod.c (34)
M src/modules/secfilter/secfilter.c (88)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3941.patchhttps://github.com/kamailio/kamailio/pull/3941.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3941
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3941(a)github.com>
Necesito solventar para las instancias de synapsis estos dos vulnerabilidades que comparto a continuación.


Gracias
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3938
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3938(a)github.com>
<!--
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:
* https://lists.kamailio.org/mailman3/postorius/lists/sr-users.lists.kamailio…
If you have questions about developing extensions to Kamailio or its existing C code, ask on sr-dev mailing list:
* https://lists.kamailio.org/mailman3/postorius/lists/sr-dev.lists.kamailio.o…
Please try to fill this template as much as possible for any issue. It helps the developers to troubleshoot the issue.
Note that an issue report may be closed automatically after about 2 months
if there is no interest from developers or community users on pursuing it, being
considered expired. In such case, it can be reopened by writing a comment that includes
the token `/notexpired`. About two weeks before considered expired, the issue is
marked with the label `stale`, trying to notify the submitter and everyone else
that might be interested in it. To remove the label `stale`, write a comment that
includes the token `/notstale`. Also, any comment postpone the `expire` timeline,
being considered that there is interest in pursuing 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
<!--
Explain what you did, what you expected to happen, and what actually happened.
-->
<img width="486" alt="企业微信截图_17231113172455" src="https://github.com/user-attachments/assets/2a055290-b200-4954-b902-20997760…">
change this to "rpc"
### Troubleshooting
#### Reproduction
<!--
If the issue can be reproduced, describe how it can be done.
-->
#### 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.8.2 (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_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:
compiled on 09:04:36 Aug 8 2024 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 `lsb_release -a` and `uname -a`)
-->
```
```
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3937
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3937(a)github.com>
r2val(): converting STRING [test]
8(18) DEBUG: permissions [address.c:179]: reload_address_db_table(): Number of rows in address table: 3
8(18) DEBUG: permissions [address.c:191]: reload_address_db_table(): failure during checks of database value 1 (group) in address table
8(18) ERROR: permissions [address.c:233]: reload_address_db_table(): database problem - invalid record
mysql> desc ka_address;
+---------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| id | double | NO | | 0 | |
| grp | bigint | NO | | 0 | |
| ip_addr | varchar(64) | YES | | NULL | |
| mask | bigint | NO | | 0 | |
| port | bigint | NO | | 0 | |
| tag | varchar(4) | NO | | | |
+---------+-------------+------+-----+---------+-------+
when address table use bigint for grp,error happened when load address data
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3922
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3922(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 -->
- [ ] 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/3923
-- Commit Summary --
* allow address 'grd' 'mask' 'port' fields to be a mysql BIGINT
-- File Changes --
M src/modules/permissions/address.c (6)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3923.patchhttps://github.com/kamailio/kamailio/pull/3923.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3923
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3923(a)github.com>
#### Pre-Submission Checklist
- [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)
- [ ] New feature (non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
- [ ] PR should be backported to stable branches
- [ ] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
Adding support for converting unsigned integers from database tables into kamailio pseudo variables usable in the routing config.
This is quite useful when pulling `int unsigned` fields from a database, in modules that support "extra fields" in their module parameters.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3828
-- Commit Summary --
* permissions: fixup uint support in address table reload
* htable: add uint support when packing an htable
* lib/srdb1: add uint support for db->pv conversions
-- File Changes --
M src/lib/srdb1/db_ut.c (4)
M src/modules/htable/ht_db.c (6)
M src/modules/permissions/address.c (35)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3828.patchhttps://github.com/kamailio/kamailio/pull/3828.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3828
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3828(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 -->
Add a new forward function to the MSRP module that adds the ability to perform MSRP proxying.
The forward function allows frame replaying without multi-path. The frame can be relayed unmodified, or with a custom To/From-Path. If a replacement To-Path is provided, then the From-Path is replace either by the original To-Path or the replacement From-Path. Either the destination must be set prior or a replacement To-Path must be provided.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3934
-- Commit Summary --
* msrp: add forward support with path replacement
-- File Changes --
M src/modules/msrp/doc/msrp_admin.xml (38)
M src/modules/msrp/msrp_mod.c (72)
M src/modules/msrp/msrp_netio.c (129)
M src/modules/msrp/msrp_netio.h (2)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3934.patchhttps://github.com/kamailio/kamailio/pull/3934.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3934
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3934(a)github.com>
Module: kamailio
Branch: master
Commit: 629a518991ab204a45f625d82fbe8a0ccd247cd6
URL: https://github.com/kamailio/kamailio/commit/629a518991ab204a45f625d82fbe8a0…
Author: Kamailio Dev <kamailio.dev(a)kamailio.org>
Committer: Kamailio Dev <kamailio.dev(a)kamailio.org>
Date: 2024-07-31T07:46:11+02:00
modules: readme files regenerated - corex ... [skip ci]
---
Modified: src/modules/corex/README
---
Diff: https://github.com/kamailio/kamailio/commit/629a518991ab204a45f625d82fbe8a0…
Patch: https://github.com/kamailio/kamailio/commit/629a518991ab204a45f625d82fbe8a0…
---
diff --git a/src/modules/corex/README b/src/modules/corex/README
index 6a5e0663bdf..8986ee4df23 100644
--- a/src/modules/corex/README
+++ b/src/modules/corex/README
@@ -503,12 +503,14 @@ event_route[network:msg] {
4.7. msg_iflag_set(flagname)
Set internal SIP message flag. The parameter flagname can be:
- USE_UAC_FROM, USE_UAC_TO or UAC_AUTH.
+ USE_UAC_FROM, USE_UAC_TO, UAC_AUTH or a number from 0 to 64 (the
+ meaning of each value can be found in source code).
This functions should not be used in configuration file for (re)setting
the internal flags, those are done by various functions internally,
however, in very particular cases they might be useful (e.g., changing
- From/To via textops functions).
+ From/To via textops functions, or during testing of C code
+ development).
This function can be used from ANY_ROUTE.
Module: kamailio
Branch: master
Commit: 37e971f72c1783266ee29c02434361aaf2c819ed
URL: https://github.com/kamailio/kamailio/commit/37e971f72c1783266ee29c02434361a…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-07-31T07:41:43+02:00
corex: docs updated for msg_iflag_set()
---
Modified: src/modules/corex/doc/corex_admin.xml
---
Diff: https://github.com/kamailio/kamailio/commit/37e971f72c1783266ee29c02434361a…
Patch: https://github.com/kamailio/kamailio/commit/37e971f72c1783266ee29c02434361a…
---
diff --git a/src/modules/corex/doc/corex_admin.xml b/src/modules/corex/doc/corex_admin.xml
index 3cdad0aa2a5..3d6ff893808 100644
--- a/src/modules/corex/doc/corex_admin.xml
+++ b/src/modules/corex/doc/corex_admin.xml
@@ -469,13 +469,15 @@ event_route[network:msg] {
</title>
<para>
Set internal SIP message flag. The parameter flagname can be:
- USE_UAC_FROM, USE_UAC_TO or UAC_AUTH.
+ USE_UAC_FROM, USE_UAC_TO, UAC_AUTH or a number from 0 to 64
+ (the meaning of each value can be found in source code).
</para>
<para>
This functions should not be used in configuration file for
(re)setting the internal flags, those are done by various
functions internally, however, in very particular cases they
- might be useful (e.g., changing From/To via textops functions).
+ might be useful (e.g., changing From/To via textops functions,
+ or during testing of C code development).
</para>
<para>
This function can be used from ANY_ROUTE.
Hi! it seems the pua module in send_subscribe ( ) is leaking some memory because the hentity is not released.
According to memory allocations the shmem allocated for hentity is not cleaned.
```
1454582 file = 0x70e59fd30209 "usrloc: ../../core/ut.h", func = 0x70e59fd326c8 <__func__.16> "shm_str_dup", mname = 0x70e59fd2fdf0 "usrloc", line = 722
698090 file = 0x604218f2fcd5 "core: core/xavp.c", func = 0x604218f31988 <__func__.9> "xavp_new_value", mname = 0x604218f2fcd0 "core", line = 100
360187 file = 0x70e59fd30663 "usrloc: ucontact.c", func = 0x70e59fd326b8 <__func__.17> "new_ucontact", mname = 0x70e59fd2fdf0 "usrloc", line = 94
34208 file = 0x70e59fc91ae9 "pua: send_subscribe.c", func = 0x70e59fc94c80 <__func__.2> "subscribe_cbparam", mname = 0x70e59fc917e0 "pua", line = 773
5569 file = 0x70e59fc91ae9 "pua: send_subscribe.c", func = 0x70e59fc94ca0 <__func__.1> "subs_cbparam_indlg", mname = 0x70e59fc917e0 "pua", line = 861
64 file = 0x70e5a231f424 "tmx: tmx_pretran.c", func = 0x70e5a2320230 <__func__.0> "tmx_check_pretran", mname = 0x70e5a231f420 "tmx", line = 271
64 file = 0x70e5a231f424 "tmx: tmx_pretran.c", func = 0x70e5a2320230 <__func__.0> "tmx_check_pretran", mname = 0x70e5a231f420 "tmx", line = 250
7 file = 0x70e59fc86854 "pua: event_list.c", func = 0x70e59fc86ad0 <__func__.1> "add_pua_event", mname = 0x70e59fc86850 "pua", line = 72
3 file = 0x70e5a297c249 "license: ../../core/ut.h", func = 0x70e5a297d4f8 <__func__.3> "shm_str_dup", mname = 0x70e5a297c000 "license", line = 722
3 file = 0x70e59fd329d4 "usrloc: udomain.c", func = 0x70e59fd35660 <__func__.22> "build_stat_name", mname = 0x70e59fd328a0 "usrloc", line = 56
```
According to mod_stats for shmem over RPC the pua module was taking double as much memory as usrloc on the busy system.
I have tried to address the issue shown on lines 773 and 861 and added clearing of hentity at the end of send_subscribe () :
but it had caused the subscribe_200 outside of dialog to crash kamailio because of running the tm callback that accesses the hentity which is already free'd
So I thought perhaps another approach is required and the tm callback should clean it, while I must say i do not 100% clear understand why this needs to be so complicated compared to other modules. Perhaps i have missed another bug and overcomplicated things because the uac_r seems to be cleaned just fine.
The issue around the hentity does not seem to be solved in the latest releases while this is 5.3-something custom build.
Anyway my last resort that could help is convert to use tm to clear memory once it is done, in tm/uac.c : t_uac_prepare() is registering a callback with release function
```
if(uac_r->cb && insert_tmcb(&(new_cell->tmcb_hl), uac_r->cb_flags,
*(uac_r->cb), uac_r->cbp, NULL)!=1){
ret=E_OUT_OF_MEM;
LM_ERR("short of tmcb shmem\n");
goto error1;
}
int insert_tmcb(struct tmcb_head_list *cb_list, int types,
transaction_cb f, void *param,
release_tmcb_param rel_func)
{
```
is there any example of using such a relfunc in the other modules? Or anyone else has see the pua causing a mem leak when it is subscribed to reginfo from the config? I would appreciate some ideas what could be the issue and the solution.
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3928
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3928(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 -->
- [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 aims to allow multiple kamailio instances with different configs to be managed by systemd.
The new `kamailio@.service` is the systemd template file, where one can provide an instance name after `systemctl start kamailio@dev`, to start a new kamailio instance with name `kamailio-dev` and use config file found in `/etc/kamailio/kamailio-dev.cfg`.
I tested that this file and its content can work by placing the file in `/etc/systemd/system/kamailio@.service` and using the above `dev` instance name as an example. Kamailio loads and handles any new messages along with the default kamailio service.
My question right now, as I am not really familiar with the packaging workflow, is this an appropriate way to accomplish it. If yes what should be modified to install this alongside the normal `kamailio.service`.
Any feedback and review is appreciated and greatly needed!
Thanks!
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3904
-- Commit Summary --
* pkg: Add systemd template for starting multiple kamailio services
-- File Changes --
A pkg/kamailio/deb/debian/kamailio@.service (26)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3904.patchhttps://github.com/kamailio/kamailio/pull/3904.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3904
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3904(a)github.com>
Dear Sirs,
I have adopted an orphaned AUR package and tried to fine tune it to be used with Your great Kamailio open source project.
I can continue to maintain it in the AUR space. If anything needs to be modified in the package please let me know.
Link to the package:
https://aur.archlinux.org/packages/kamailio
or web search !aur kamailio
Regards,
Nikos
If the traction is set to auto drop,
the memory will be freed and with it the next pointer.
<!-- 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 -->
The use after free caused on a Load tested system crashes.
Now the next pointer is saved before executing the callback and handle the auto drop.
Then the stored next pointer is used to continue the iteration over the callbacks.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3931
-- Commit Summary --
* cdp: fix use after free in transaction call backs
-- File Changes --
M src/modules/cdp/transaction.c (3)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3931.patchhttps://github.com/kamailio/kamailio/pull/3931.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3931
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3931(a)github.com>
Module: kamailio
Branch: master
Commit: a71bd9d9424456ef1167468c5bbbfd38b1099e89
URL: https://github.com/kamailio/kamailio/commit/a71bd9d9424456ef1167468c5bbbfd3…
Author: Rick Barenthin <rick(a)ng-voice.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-07-25T12:20:59+02:00
cdp: fix use after free in transaction call backs
If the traction is set to auto drop,
the memory will be freed and with it the next pointer.
---
Modified: src/modules/cdp/transaction.c
---
Diff: https://github.com/kamailio/kamailio/commit/a71bd9d9424456ef1167468c5bbbfd3…
Patch: https://github.com/kamailio/kamailio/commit/a71bd9d9424456ef1167468c5bbbfd3…
---
diff --git a/src/modules/cdp/transaction.c b/src/modules/cdp/transaction.c
index f1445ff15be..a2b97654dd0 100644
--- a/src/modules/cdp/transaction.c
+++ b/src/modules/cdp/transaction.c
@@ -256,10 +256,11 @@ int cdp_trans_timer(time_t now, void *ptr)
/* do all queued callbacks */
x = cb_queue->head;
while(x) {
+ n = x->next;
(x->cb)(1, *(x->ptr), 0, (now - x->expires));
if(x->auto_drop)
cdp_free_trans(x);
- x = x->next;
+ x = n;
}
pkg_free(cb_queue);
<!-- 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
- [ ] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
<!-- Describe your changes in detail -->
Fixing issues discovered by Coverity
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3926
-- Commit Summary --
* ims_qos_npn: fixed issues discovered by coverity
-- File Changes --
M src/modules/ims_qos_npn/rx_aar.c (12)
M src/modules/ims_qos_npn/rx_avp.c (5)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3926.patchhttps://github.com/kamailio/kamailio/pull/3926.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3926
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3926(a)github.com>
Hi
there is an issue with the SIP parser for the t_uac_send function
https://www.kamailio.org/docs/modules/devel/modules/tm.html#tm.f.t_uac_send
If I call this function for example:
t_uac_send("INVITE", "sip:test@123.123.123.123:5060", "", "" ,"Content-Type: text/plain\r\nContact: <sip:85951b3d-096c-95d6-5f05-4f38095aca9f@172.17.64.120:5060;transport=tcp>;+u.sip!devicename.ccm.cisco.com=\"SEP5486BC7F2BBC\"", "Testbody")
Then the resulting request is broken - it's probably due to a character (exclamation mark?) in the Contact header.... I tested it with a call from kemi, but it probably also occurs when you run it with a normal kamailio -script tests
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3682
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3682(a)github.com>
### Description
I am doing some experiments with NGHTTP2 Module to make use of it in some scenarios, where Kamailio receives HTTP2 requests and has t react on them, unfortunately the module is causing Kamailio to crash upon receiving a request and need to be restarted.
Also the Docs for the module need some correction :
https://www.kamailio.org/docs/modules/5.9.x/modules/nghttp2.html
Missing required Parameters :
modparam("nghttp2", "tls_private_key", "key_in_PEM_Format")
modparam("nghttp2", "tls_public_key", "certificate_in_PEM_Format")
also $nghttp2(url) is wrong, $nghttp2(path) or $nghttp2(pathfull) is the correct ones.
its also annoying to have it only working in TLS, would it possible to make it also works without TLS ?
#### Reproduction
the fastest way it to connect to NGHTTP2 server with curl :
curl --http2-prior-knowledge -v -k https://server_ip:port/
#### Debugging Data
```
92(132) DEBUG: nghttp2 [nghttp2_server.c:717]: eventcb(): 172.22.0.1 connected
92(132) DEBUG: nghttp2 [nghttp2_server.c:507]: on_request_recv(): 172.22.0.1 GET /
92(132) DEBUG: nghttp2 [nghttp2_mod.c:522]: ksr_event_route(): executing event_route[nghttp2:request] (1)
free(): invalid pointer
102(142) CRITICAL: <core> [core/pass_fd.c:281]: receive_fd(): EOF on 7
102(142) DEBUG: <core> [core/tcp_main.c:3984]: handle_ser_child(): dead child 92, pid 132 (shutting down?)
102(142) DEBUG: <core> [core/io_wait.h:599]: io_watch_del(): DBG: io_watch_del (0x5b85ddc10ae0, 7, -1, 0x0) fd_no=130 called
0(40) ALERT: <core> [main.c:806]: handle_sigs(): child process 132 exited by a signal 6
0(40) ALERT: <core> [main.c:810]: handle_sigs(): core was generated
```
#### 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).
-->
```
https://pastebin.com/MQe4F5sv
```
### Additional Information
* **Kamailio Version** 5.8
* **Operating System**:
Ubuntu 24.04
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3917
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3917(a)github.com>
### Description
Calling functions from the `dialplan` module in 5.8 (`dp_translate()`, `dp_match()`) results in the following line being logged:
```
WARNING: <core> [core/mem/q_malloc.c:520]: qm_free(): WARNING: free(0) called from dialplan: dp_db.c: pcre2_free(206)
```
Is this a functional problem, or just a case of overly aggressive logging?
### Troubleshooting
#### Reproduction
Reproducible with the following kamailio config:
```
#!KAMAILIO
loadmodule "pv"
loadmodule "db_sqlite"
loadmodule "xlog"
loadmodule "dialplan"
disable_tcp = true
force_rport = true
!!define DBFILE /etc/kamailio/kamailio.sqlite
modparamx("db_sqlite","db_set_readonly", "$def(DBFILE)")
modparamx("dialplan","db_url", "sqlite:///$def(DBFILE)")
modparam("dialplan", "attrs_pvar", "$avp(dp_attrs)")
request_route {
if ( $rm == "ACK" ) {
exit;
}
xinfo("$ci New request\n");
dp_match("1", "$rU");
exit;
}
```
The warning log is issued in 5.8 but not 5.7. Reproduced by sending a request with SIPp:
```
sipp -sn uac -m 1 -s 15554445555 localhost
```
### Possible Solutions
Not sure if this is just a case of logging being overly aggressive, or an issue with the module's memory management.
### Additional Information
* **Kamailio Version** - output of `kamailio -v`
```
version: kamailio 5.8.1 (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_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: unknown
compiled with gcc 12.2.0
```
Tested using docker `debian:12-slim` using the official packages from `http://deb.kamailio.org/kamailio58`
* **Operating System**:
Docker debian:12-slim, but also observed in Alpine Linux/
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3851
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3851(a)github.com>
From https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1075961
```
kamailio currently FTBFS on s390x, but built there before.
The same problem can be observed on ppc64:
https://buildd.debian.org/status/fetch.php?pkg=kamailio&arch=s390x&ver=5.8.…
hep.c: In function ‘hepv3_get_chunk’:
hep.c:985:41: error: implicit declaration of function ‘inet_ntop’ [-Werror=implicit-function-declaration]
985 | inet_ntop(AF_INET, &(hg->hep_src_ip4->data), ipstr,
| ^~~~~~~~~
gcc -fPIC -DPIC -pthread -DKSR_PTHREAD_MUTEX_SHARED -Wall -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -DVERSION_NODATE -DNAME='"kamailio"' -DVERSION='"5.8.2"' -DARCH='"s390x"' -DOS='linux_' -DOS_QUOTED='"linux"' -DCOMPILER='"gcc 13.3.0"' -D__CPU_s390x -D__OS_linux -DVERSIONVAL=5008002 -DCFG_DIR='"/etc/kamailio/"' -DSHARE_DIR='"/usr/share/kamailio/"' -DRUN_DIR='"/var/run/kamailio/"' -DPKG_MALLOC -DSHM_MMAP -DDNS_IP_HACK -DUSE_MCAST -DUSE_TCP -DDISABLE_NAGLE -DHAVE_RESOLV_RES -DUSE_DNS_CACHE -DUSE_DNS_FAILOVER -DUSE_DST_BLOCKLIST -DUSE_NAPTR -DMEM_JOIN_FREE -DF_MALLOC -DQ_MALLOC -DTLSF_MALLOC -DDBG_SR_MEMORY -DUSE_TLS -DTLS_HOOKS -DUSE_CORE_STATS -DSTATISTICS -DMALLOC_STATS -DUSE_SCTP -DHAVE_GETHOSTBYNAME2 -DHAVE_UNION_SEMUN -DHAVE_SCHED_YIELD -DHAVE_MSG_NOSIGNAL -DHAVE_MSGHDR_MSG_CONTROL -DHAVE_ALLOCA_H -DHAVE_TIMEGM -DHAVE_SCHED_SETSCHEDULER -DHAVE_IP_MREQN -DUSE_RAW_SOCKS -DUSE_PTHREAD_MUTEX -DHAVE_EPOLL -DHAVE_SIGIO_RT -DSIGINFO64_WORKAROUND -DUSE_FUTEX -DHAVE_SELECT -DMOD_NAME='"sipcapture"' -DMOD_NAMEID='sipcapture' -c sipcapture.c -o sipcapture.o -MMD -MP
In file included from ../../core/atomic_ops.h:180,
from ../../core/locking.h:72,
from ../../core/rpc.h:34,
from ../../core/sr_module.h:36,
from sipcapture.c:54:
...
make[4]: *** [../../Makefile.rules:100: hep.o] Error 1
```
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3927
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3927(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 -->
- [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 Fixes a bug where logging shows a truncated command instead of the original one.
Original query in .cfg: `sql_query("ca", "UPDATE dialog SET timeout = timeout + 1 WHERE callid = '$ci' AND timeout > 0;`
logged error before fix:
sql_do_query(): cannot do the query [UPDATE dialog SET timeout = timeout + 1 WHERE callid = 'al@there]
logged error after fix:
sql_do_query(): cannot do the query [UPDATE dialog SET timeout = timeout + 1 WHERE callid = 'al(a)there.com AND timeout > 0;]
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3903
-- Commit Summary --
* sqlops: Don't truncated sql command when logging.
-- File Changes --
M src/modules/sqlops/sql_api.c (3)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3903.patchhttps://github.com/kamailio/kamailio/pull/3903.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3903
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3903(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
- [ ] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
<!-- Describe your changes in detail -->
Reference counter to tcp session not decremented after use $tcp(conid), so shm for session never free.
Can be releated to: https://www.mail-archive.com/sr-users@lists.kamailio.org/msg21294.html
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3924
-- Commit Summary --
* tcpops: fix memory leak in $tcp(conid)
-- File Changes --
M src/modules/tcpops/tcpops_mod.c (3)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3924.patchhttps://github.com/kamailio/kamailio/pull/3924.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3924
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3924(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 -->
- [ ] 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)
- [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 -->
The `ims_qos` module had a few limitations. This fork of that module adds:
- AAR for the registration (signaling path monitoring)
- subsequent AARs in calls
- support for STR
- extra event_routes on Rx authorization session events
- extra AVPs decoding and use
The dependency and use of the `ims_dialog` was removed. We think that the respective module has fallen behind `dialog` (although it should've replaced it? don't know...). Cleaning/upgrading that module too might be too much effort.
Since these changes might be breaking things for other folks using IMS, we are pushing these as an alternative module. We hope that we'll find though consensus in the future and either remove or merge with the older `ims_qos` module. Same would be valid for `ims_dialog` and `dialog`, yet those also might need some upgrades.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3921
-- Commit Summary --
* ims_qos_npn: imported modified module
* src: added ims_qos_npn to Makefile.groups
-- File Changes --
M src/Makefile.groups (2)
A src/modules/ims_qos_npn/Makefile (19)
A src/modules/ims_qos_npn/README (781)
A src/modules/ims_qos_npn/cdpeventprocessor.c (382)
A src/modules/ims_qos_npn/cdpeventprocessor.h (87)
A src/modules/ims_qos_npn/doc/Makefile (4)
A src/modules/ims_qos_npn/doc/ims_qos.xml (113)
A src/modules/ims_qos_npn/doc/ims_qos_admin.xml (882)
A src/modules/ims_qos_npn/ims_qos_mod.c (2173)
A src/modules/ims_qos_npn/ims_qos_mod.h (85)
A src/modules/ims_qos_npn/ims_qos_stats.c (156)
A src/modules/ims_qos_npn/ims_qos_stats.h (38)
A src/modules/ims_qos_npn/rx_aar.c (1296)
A src/modules/ims_qos_npn/rx_aar.h (131)
A src/modules/ims_qos_npn/rx_asr.c (124)
A src/modules/ims_qos_npn/rx_asr.h (59)
A src/modules/ims_qos_npn/rx_authdata.c (494)
A src/modules/ims_qos_npn/rx_authdata.h (125)
A src/modules/ims_qos_npn/rx_avp.c (2144)
A src/modules/ims_qos_npn/rx_avp.h (118)
A src/modules/ims_qos_npn/rx_rar.c (160)
A src/modules/ims_qos_npn/rx_rar.h (34)
A src/modules/ims_qos_npn/rx_str.c (184)
A src/modules/ims_qos_npn/rx_str.h (61)
A src/modules/ims_qos_npn/sem.h (90)
A src/modules/ims_qos_npn/stats.c (79)
A src/modules/ims_qos_npn/stats.h (61)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3921.patchhttps://github.com/kamailio/kamailio/pull/3921.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3921
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3921(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 -->
- [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/3919
-- Commit Summary --
* siprepo: fix int params and wrong copy data in siprepo_msg_async_pull
-- File Changes --
M src/modules/siprepo/siprepo_data.c (6)
M src/modules/siprepo/siprepo_mod.c (19)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3919.patchhttps://github.com/kamailio/kamailio/pull/3919.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3919
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3919(a)github.com>
Module: kamailio
Branch: master
Commit: 8c3b5ab3818c86b90b02e20aa4631654e0b51745
URL: https://github.com/kamailio/kamailio/commit/8c3b5ab3818c86b90b02e20aa463165…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-07-18T09:09:01+02:00
dispatcher: remove reference to MI in comments
---
Modified: src/modules/dispatcher/dispatch.c
---
Diff: https://github.com/kamailio/kamailio/commit/8c3b5ab3818c86b90b02e20aa463165…
Patch: https://github.com/kamailio/kamailio/commit/8c3b5ab3818c86b90b02e20aa463165…
---
diff --git a/src/modules/dispatcher/dispatch.c b/src/modules/dispatcher/dispatch.c
index 287164f829d..bdb615ad3ea 100644
--- a/src/modules/dispatcher/dispatch.c
+++ b/src/modules/dispatcher/dispatch.c
@@ -3982,14 +3982,14 @@ static void ds_options_callback(
}
}
- /* Check if in the meantime someone disabled probing of the target through RPC, MI or reload */
+ /* Check if in the meantime someone disabled probing of the target
+ * through RPC or reload */
if(ds_probing_mode == DS_PROBE_ONLYFLAGGED
&& !(ds_get_state(group, &uri) & DS_PROBING_DST)) {
return;
}
/* ps->code contains the result-code of the request.
- *
* We accept both a "200 OK" or the configured reply as a valid response */
if((ps->code >= 200 && ps->code <= 299)
|| ds_ping_check_rplcode(ps->code)) {
@@ -4000,7 +4000,7 @@ static void ds_options_callback(
&& (ds_get_state(group, &uri) & DS_PROBING_DST)))
state |= DS_PROBING_DST;
- /* Check if in the meantime someone disabled the target through RPC or MI */
+ /* Check if in the meantime someone disabled the target through RPC */
if(!(ds_get_state(group, &uri) & DS_DISABLED_DST)
&& ds_update_state(fmsg, group, &uri, state, &rctx) != 0) {
LM_ERR("Setting the state failed (%.*s, group %d)\n", uri.len,
@@ -4010,7 +4010,7 @@ static void ds_options_callback(
state = DS_TRYING_DST;
if(ds_probing_mode != DS_PROBE_NONE)
state |= DS_PROBING_DST;
- /* Check if in the meantime someone disabled the target through RPC or MI */
+ /* Check if in the meantime someone disabled the target through RPC */
if(!(ds_get_state(group, &uri) & DS_DISABLED_DST)
&& ds_update_state(fmsg, group, &uri, state, &rctx) != 0) {
LM_ERR("Setting the probing state failed (%.*s, group %d)\n",
Situation: Two Kamailio nodes syncing dialog profiles via DMQ
Observation: When a dialog timeout is encountered, about half of the time, the timeout is triggered on the peer node not handling the dialog preventing the call to be correctly terminated and also leaving entries in the dialog database which never get deleted.
https://kamailio.org/docs/modules/5.7.x/modules/dialog.html#dialog.p.enable…
Makes clear, that only the node which is handling the dialog in question, can make changes not related to the dialog profiles. So when a dialog times out, it is this node which has to trigger the timeout, not any other one.
When looking at the source code, it is clear, that the 'lifetime' is transmitted via DMQ dialog message to the peer nodes, which in turn arm a timer. So it is obvious, this time will trigger, sometimes before the instance handling the dialog itself triggers that timer.
With some assistance of @oej I found a way to alter the JSON payload to extend the lifetime on the peer nodes:
```
route[DMQ_CAPTURE]
{
if(is_method("KDMQ"))
{
if(has_body("application/json") && $fU == 'dialog')
{
if (jansson_get("lifetime", $rb, "$var(lifetime)"))
{
$var(new_lifetime) = $var(lifetime) + 60; # Add 60 seconds on DMQ peer to make sure it expires AFTER main node.
$var(newrb) = $rb;
jansson_set("integer", "lifetime", $var(new_lifetime), "$var(newrb)");
set_body("$var(newrb)","application/json");
msg_apply_changes();
}
}
dmq_handle_message();
exit;
}
}
```
Testing with this config fixed the issue of the timeout firing on a peer node instead of the node handling the dialog.
Issue is present in 5.5, 5.6 and after looking at the code, I assume also on 5.7
-Benoît
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3656
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3656(a)github.com>
Module: kamailio
Branch: master
Commit: ba31a0065af34490650a205738328f52b95a784b
URL: https://github.com/kamailio/kamailio/commit/ba31a0065af34490650a205738328f5…
Author: Kamailio Dev <kamailio.dev(a)kamailio.org>
Committer: Kamailio Dev <kamailio.dev(a)kamailio.org>
Date: 2024-07-16T10:31:11+02:00
modules: readme files regenerated - dispatcher ... [skip ci]
---
Modified: src/modules/dispatcher/README
---
Diff: https://github.com/kamailio/kamailio/commit/ba31a0065af34490650a205738328f5…
Patch: https://github.com/kamailio/kamailio/commit/ba31a0065af34490650a205738328f5…
---
diff --git a/src/modules/dispatcher/README b/src/modules/dispatcher/README
index 41f9d7bb812..16c10332df7 100644
--- a/src/modules/dispatcher/README
+++ b/src/modules/dispatcher/README
@@ -1883,6 +1883,7 @@ kamctl rpc dispatcher.hash 4 bob server.com
startup, useful when the hostname of the destination address
is a NAPTR or SRV record only. Such addresses cannot be
matched anymore with ds_is_from_list(...).
+ + 32 (bit at index 5 - 1 <<5) - no ping to destination
* priority: sets the priority in destination list (based on it is
done the initial ordering inside the set)
* attributes: extra fields in form of name1=value1;...;nameN=valueN.
Module: kamailio
Branch: master
Commit: abdd0bfaf6a2e50fb96e2f522f03a65f331b57b5
URL: https://github.com/kamailio/kamailio/commit/abdd0bfaf6a2e50fb96e2f522f03a65…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-07-16T10:10:06+02:00
dispatcher: new flag 32 to not send ping to destination
---
Modified: src/modules/dispatcher/dispatch.c
Modified: src/modules/dispatcher/dispatch.h
---
Diff: https://github.com/kamailio/kamailio/commit/abdd0bfaf6a2e50fb96e2f522f03a65…
Patch: https://github.com/kamailio/kamailio/commit/abdd0bfaf6a2e50fb96e2f522f03a65…
---
diff --git a/src/modules/dispatcher/dispatch.c b/src/modules/dispatcher/dispatch.c
index d36141bbafd..287164f829d 100644
--- a/src/modules/dispatcher/dispatch.c
+++ b/src/modules/dispatcher/dispatch.c
@@ -4069,6 +4069,9 @@ void ds_ping_set(ds_set_t *node)
/* skip addresses set in disabled state by admin */
if((node->dlist[j].flags & DS_DISABLED_DST) != 0)
continue;
+ /* skip addresses with no-ping flag */
+ if((node->dlist[j].flags & DS_NOPING_DST) != 0)
+ continue;
/* If the Flag of the entry has "Probing set, send a probe: */
if(ds_ping_result_helper(node, j)) {
LM_DBG("probing set #%d, URI %.*s\n", node->id,
diff --git a/src/modules/dispatcher/dispatch.h b/src/modules/dispatcher/dispatch.h
index 06410225a62..cf1842aeb47 100644
--- a/src/modules/dispatcher/dispatch.h
+++ b/src/modules/dispatcher/dispatch.h
@@ -46,7 +46,8 @@
#define DS_DISABLED_DST 4 /*!< admin disabled destination */
#define DS_PROBING_DST 8 /*!< checking destination */
#define DS_NODNSARES_DST 16 /*!< no DNS A/AAAA resolve for host in uri */
-#define DS_STATES_ALL 31 /*!< all bits for the states of destination */
+#define DS_NOPING_DST 32 /*!< no ping to destination */
+#define DS_STATES_ALL 63 /*!< all bits for the states of destination */
#define ds_skip_dst(flags) ((flags) & (DS_INACTIVE_DST|DS_DISABLED_DST))
<!-- 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 -->
`handle_ruri_alias()` wasn't handling correctly the IP address in the alias, in case it was an IPv6. This adds `[` and `]` around the IP if v6 when composing a destination SIP URI, such that the downstream functions will handle it correctly and not be confused by the `:` before the port.
Arguably, nathelper is not needed in IPv6. Yet I have discovered a scenario where it could be quite helpful as a way to force some UE routing through an intermediary proxy.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3913
-- Commit Summary --
* nathelper: fixed handle_ruri_alias() for alias being an IPv6
-- File Changes --
M src/modules/nathelper/nathelper.c (34)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3913.patchhttps://github.com/kamailio/kamailio/pull/3913.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3913
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3913(a)github.com>
Hi,
I think there is an issue with writing CDRs on failover scenarios.
I have two servers with Kamailio. Both server running Debian 11 (bulleye) and latest Kamailio 5.6.1 from git.
I'm using DMQ to sync dialogs and htable between these servers, so both servers have the same knowledge of dialog state. Both Kamailio uses nobind option, so I can switch a VIP from one server to the other one. This is managed with keepalived. Switching the VIP from one server the other one works fine an while a call is running I can switch the VIP. I can see that the BYE Message is handled OK after I made a switch. I can see that acc is triggered but what is missing is acc_cdr in this case.
I'm using htable to fill all necessary variables to complete the CDR an I can see that all values are synced correctly.
The acc_cdr is created fine if there is no failover so i think it can't be an configuration issue.
Both server holds the same Kamailio configuration except the IP.
`version: kamailio 5.6.1 (x86_64/linux) bfc5c2-dirty
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_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: bfc5c2 -dirty
compiled with gcc 10.2.1`
`root@voip-lab-proxy01:~# lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 11 (bullseye)
Release: 11
Codename: bullseye`
`root@voip-lab-proxy01:~# lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
Address sizes: 38 bits physical, 48 bits virtual
CPU(s): 4
On-line CPU(s) list: 0-3
Thread(s) per core: 1
Core(s) per socket: 4
Socket(s): 1
NUMA node(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 23
Model name: Intel(R) Xeon(R) CPU E5420 @ 2.50GHz
Stepping: 10
CPU MHz: 2500.088
BogoMIPS: 5000.17
Virtualization: VT-x
Hypervisor vendor: KVM
Virtualization type: full
L1d cache: 128 KiB
L1i cache: 128 KiB
L2 cache: 16 MiB
L3 cache: 16 MiB
NUMA node0 CPU(s): 0-3
Vulnerability Itlb multihit: Not affected
Vulnerability L1tf: Mitigation; PTE Inversion; VMX EPT disabled
Vulnerability Mds: Vulnerable: Clear CPU buffers attempted, no microcode; SMT Host state unknown
Vulnerability Meltdown: Mitigation; PTI
Vulnerability Mmio stale data: Unknown: No mitigations
Vulnerability Retbleed: Not affected
Vulnerability Spec store bypass: Vulnerable
Vulnerability Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization
Vulnerability Spectre v2: Mitigation; Retpolines, STIBP disabled, RSB filling, PBRSB-eIBRS Not affected
Vulnerability Srbds: Not affected
Vulnerability Tsx async abort: Not affected
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx pdpe1gb lm constant_tsc arch_perfmon rep_good nopl xtopology cpuid
tsc_known_freq pni vmx ssse3 cx16 pdcm sse4_1 x2apic tsc_deadline_timer xsave hypervisor lahf_lm cpuid_fault pti tpr_shadow vnmi flexpriority vpid tsc_adjust arat arch_capabilit
ies`
If you need more information, please let me know. As I'm running this on a test system I can reproduce the issue at any time.
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3254
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3254(a)github.com>
test posting issue
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3918
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3918(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)
- [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 -->
Diameter requests could contain Application-Ids in multiple AVPs. This fix iterates through them, instead of giving up if the first one does not match. This solves some issues when peers don't always declare support for vendor-specific/non-specific application ids, so routing should be easier.
Also fixed:
- auth state machine being too verbose on regular messages being received or sent while in the Open state
- add Destination-Host from auth state to requests (next-hop immediate routing)
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3914
-- Commit Summary --
* cdp: improved routing and removed useless warning/errors in authstatemachine
-- File Changes --
M src/modules/cdp/authstatemachine.c (42)
M src/modules/cdp/routing.c (176)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3914.patchhttps://github.com/kamailio/kamailio/pull/3914.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3914
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3914(a)github.com>
### Description
The master branch of the Kamailio project contains unpatched sources from OpenSIPS, in which [CVE-2023-28098](https://github.com/OpenSIPS/opensips/security/advisories/GH… was reported. The function `parse_param_name()` from `kamailio/src/core/parser/digest/param_parser.c` does not include security patches and updates available in newer versions of OpenSIPS. The fix for CVE can be found in this commit: [OpenSIPS Commit dd9141b6](https://github.com/OpenSIPS/opensips/commit/dd9141b6f67d7df4072f3…
### Possible Solutions
I strongly recommend updating the sources from OpenSIPS to the latest version available.
### Report Origin
The bug is detected by a tool developed at [CAST](https://castech.am/).
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3911
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3911(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 -->
On Mobile-Terminating, if the P-Called-Party-ID header is missing, getting the host (should also be an IP) from the Request-URI can help the P-CSCF when doing AAR for QoS.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3912
-- Commit Summary --
* lib/ims: added cscf_get_host_from_requri
-- File Changes --
M src/lib/ims/ims_getters.c (15)
M src/lib/ims/ims_getters.h (6)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3912.patchhttps://github.com/kamailio/kamailio/pull/3912.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3912
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3912(a)github.com>
Module: kamailio
Branch: master
Commit: 70fd27174952fe6a67f01fca4fdc941b9fdc045a
URL: https://github.com/kamailio/kamailio/commit/70fd27174952fe6a67f01fca4fdc941…
Author: Dragos Vingarzan <vingarzan(a)gmail.com>
Committer: Dragos Vingarzan <vingarzan(a)gmail.com>
Date: 2024-07-12T13:27:21+02:00
lib/ims: added cscf_get_host_from_requri
---
Modified: src/lib/ims/ims_getters.c
Modified: src/lib/ims/ims_getters.h
---
Diff: https://github.com/kamailio/kamailio/commit/70fd27174952fe6a67f01fca4fdc941…
Patch: https://github.com/kamailio/kamailio/commit/70fd27174952fe6a67f01fca4fdc941…
---
diff --git a/src/lib/ims/ims_getters.c b/src/lib/ims/ims_getters.c
index cf2f618d0de..35dbdca405f 100644
--- a/src/lib/ims/ims_getters.c
+++ b/src/lib/ims/ims_getters.c
@@ -539,6 +539,21 @@ str cscf_get_contact_from_requri(struct sip_msg *msg)
return pu;
}
+/**
+ * Get the host from the Request URI of the message.
+ * Useful for example on MT, to get the destination from the Request URI, if P-Called-Party-ID is not present.
+ */
+str cscf_get_host_from_requri(struct sip_msg *msg)
+{
+ if(msg->first_line.type != SIP_REQUEST || parse_sip_msg_uri(msg) < 0
+ || msg->parsed_uri.type == TEL_URI_T) {
+ str empty = {0};
+ return empty;
+ }
+ return msg->parsed_uri.host;
+}
+
+
/**
* Finds if the message contains the orig parameter in the first Route header
* @param msg - the SIP message
diff --git a/src/lib/ims/ims_getters.h b/src/lib/ims/ims_getters.h
index 77a55a6695b..03ad4bef82b 100644
--- a/src/lib/ims/ims_getters.h
+++ b/src/lib/ims/ims_getters.h
@@ -206,6 +206,12 @@ str cscf_get_public_identity_from_requri(struct sip_msg *msg);
*/
str cscf_get_contact_from_requri(struct sip_msg *msg);
+/**
+ * Get the host from the Request URI of the message.
+ * Useful for example on MT, to get the destination from the Request URI, if P-Called-Party-ID is not present.
+ */
+str cscf_get_host_from_requri(struct sip_msg *msg);
+
/**
* Looks for the Call-ID header
* @param msg - the sip message
Module: kamailio
Branch: master
Commit: c97145862119e9001874cd07de9b20ad8e96ff54
URL: https://github.com/kamailio/kamailio/commit/c97145862119e9001874cd07de9b20a…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-07-12T11:49:10+02:00
rls: remove unnecessary assignment
---
Modified: src/modules/rls/resource_notify.c
---
Diff: https://github.com/kamailio/kamailio/commit/c97145862119e9001874cd07de9b20a…
Patch: https://github.com/kamailio/kamailio/commit/c97145862119e9001874cd07de9b20a…
---
diff --git a/src/modules/rls/resource_notify.c b/src/modules/rls/resource_notify.c
index c0b308a76d2..8fd388e463c 100644
--- a/src/modules/rls/resource_notify.c
+++ b/src/modules/rls/resource_notify.c
@@ -179,8 +179,8 @@ static void send_notifies(db1_res_t *result, int did_col, int resource_uri_col,
str bstr = {0, 0};
subs_t *dialog = NULL;
int len_est = 0;
- int resource_added =
- 0; /* Flag to indicate that we have added at least one resource */
+ /* Flag to indicate that we have added at least one resource */
+ int resource_added = 0;
/* generate the boundary string */
boundary_string = generate_string(BOUNDARY_STRING_LEN);
@@ -245,7 +245,6 @@ static void send_notifies(db1_res_t *result, int did_col, int resource_uri_col,
len_est += 2 * strlen(boundary_string) + 4 + 102 + 2 + 50
+ strlen(resource_uri) + 20;
buf_len = 0;
- resource_added = 0;
/* !!!! for now I will include the auth state without checking if
* it has changed - > in future check if it works */
### Description
"ims_registrar_scscf" cannot be compiled on Fedora 40 dist.
```
CC (gcc) [M ims_registrar_scscf.so] reply.o
CC (gcc) [M ims_registrar_scscf.so] rerrno.o
CC (gcc) [M ims_registrar_scscf.so] save.o
CC (gcc) [M ims_registrar_scscf.so] server_assignment.o
CC (gcc) [M ims_registrar_scscf.so] sip_msg.o
CC (gcc) [M ims_registrar_scscf.so] stats.o
CC (gcc) [M ims_registrar_scscf.so] userdata_parser.o
userdata_parser.c: In function ‘ifc_tDefaultHandling2char’:
userdata_parser.c:126:13: error: implicit declaration of function ‘strtol’; did you mean ‘strtok’? [-Wimplicit-function-declaration]
126 | r = strtol((char *)x, (char **)NULL, 10);
| ^~~~~~
| strtok
userdata_parser.c: In function ‘parse_spt_extension’:
userdata_parser.c:411:32: error: implicit declaration of function ‘atoi’ [-Wimplicit-function-declaration]
411 | switch(atoi((char *)x)) {
| ^~~~
make[2]: *** [../../Makefile.rules:100: userdata_parser.o] Error 1
make[1]: *** [Makefile:508: modules] Error 1
make[1]: Leaving directory '/root/rpmbuild/BUILD/kamailio-5.8.1/src'
make: *** [Makefile:34: every-module] Error 2
error: Bad exit status from /var/tmp/rpm-tmp.tyeQgK (%build)
RPM build errors:
Bad exit status from /var/tmp/rpm-tmp.tyeQgK (%build)
```
### Additional Information
* **Kamailio Version** - output of `kamailio -v`
```
used modified 5.8.1 version
```
* **Operating System**:
```
[root@sbc-stage-a0 SPECS]# cat /etc/os-release
NAME="Fedora Linux"
VERSION="40 (Container Image)"
ID=fedora
VERSION_ID=40
VERSION_CODENAME=""
PLATFORM_ID="platform:f40"
PRETTY_NAME="Fedora Linux 40 (Container Image)"
ANSI_COLOR="0;38;2;60;110;180"
LOGO=fedora-logo-icon
CPE_NAME="cpe:/o:fedoraproject:fedora:40"
DEFAULT_HOSTNAME="fedora"
HOME_URL="https://fedoraproject.org/"
DOCUMENTATION_URL="https://docs.fedoraproject.org/en-US/fedora/f40/system-administrators-guide/"
SUPPORT_URL="https://ask.fedoraproject.org/"
BUG_REPORT_URL="https://bugzilla.redhat.com/"
REDHAT_BUGZILLA_PRODUCT="Fedora"
REDHAT_BUGZILLA_PRODUCT_VERSION=40
REDHAT_SUPPORT_PRODUCT="Fedora"
REDHAT_SUPPORT_PRODUCT_VERSION=40
SUPPORT_END=2025-05-13
VARIANT="Container Image"
VARIANT_ID=container
```
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3855
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3855(a)github.com>
#### Pre-Submission Checklist
- [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:
- [ ] PR should be backported to stable branches
- [x] Tested changes locally
- [x] Related to issue #3667
#### Description
Allow creating Record-Route and Via header using destination address and port in the haproxy protocol header.
PR created behalf @ivanuschak
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3731
-- Commit Summary --
* core: extented haproxy protocol parser
* rr: extented haproxy protocol suppport
* path: extented haproxy protocol suppport
* websocket: extented haproxy protocol suppport
* siptrace: extented haproxy protocol suppport
-- File Changes --
M src/core/forward.h (4)
M src/core/msg_translator.c (137)
M src/core/parser/msg_parser.h (1)
M src/core/receive.c (6)
M src/core/receive.h (3)
M src/core/tcp_conn.h (1)
M src/core/tcp_main.c (22)
M src/core/tcp_read.c (20)
M src/modules/path/path.c (2)
M src/modules/rr/loose.c (4)
M src/modules/rr/record.c (6)
M src/modules/siptrace/siptrace.c (89)
M src/modules/websocket/ws_frame.c (9)
M src/modules/websocket/ws_handshake.c (3)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3731.patchhttps://github.com/kamailio/kamailio/pull/3731.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3731
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3731(a)github.com>
Module: kamailio
Branch: master
Commit: fffe7aaecc41b8986eae342ce693bde87cdc20bc
URL: https://github.com/kamailio/kamailio/commit/fffe7aaecc41b8986eae342ce693bde…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-07-11T15:50:48+02:00
core: counters - declare global cnts_no as unsigned short
- it is used for counters h.id which is unsigned short
---
Modified: src/core/counters.c
---
Diff: https://github.com/kamailio/kamailio/commit/fffe7aaecc41b8986eae342ce693bde…
Patch: https://github.com/kamailio/kamailio/commit/fffe7aaecc41b8986eae342ce693bde…
---
diff --git a/src/core/counters.c b/src/core/counters.c
index 5d9f26e5bce..dcf7ab7895e 100644
--- a/src/core/counters.c
+++ b/src/core/counters.c
@@ -83,9 +83,9 @@ static int grp_no = 0; /* number of groups */
/** counters array. a[proc_no][counter_id] =>
_cnst_vals[proc_no*cnts_no+counter_id] */
counter_array_t *_cnts_vals = 0;
-int _cnts_row_len = 0; /* number of elements per row */
-static int cnts_no = 0; /* number of registered counters */
-static int cnts_max_rows = 0; /* set to 0 if not yet fully init */
+int _cnts_row_len = 0; /* number of elements per row */
+static unsigned short cnts_no = 0; /* number of registered counters */
+static int cnts_max_rows = 0; /* set to 0 if not yet fully init */
char *ksr_stats_namesep = KSR_STATS_NAMESEP;
Module: kamailio
Branch: master
Commit: d7466474bdc86b2b0d0872c5fd41d743ec1c7d66
URL: https://github.com/kamailio/kamailio/commit/d7466474bdc86b2b0d0872c5fd41d74…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-07-11T15:44:07+02:00
core: counters - init local global variables
---
Modified: src/core/counters.c
---
Diff: https://github.com/kamailio/kamailio/commit/d7466474bdc86b2b0d0872c5fd41d74…
Patch: https://github.com/kamailio/kamailio/commit/d7466474bdc86b2b0d0872c5fd41d74…
---
diff --git a/src/core/counters.c b/src/core/counters.c
index 1a7d6637c17..5d9f26e5bce 100644
--- a/src/core/counters.c
+++ b/src/core/counters.c
@@ -70,22 +70,22 @@ struct grp_record
/** hash table mapping a counter name to an id */
static struct str_hash_table cnts_hash_table;
/** array mapping id 2 record */
-struct counter_record **cnt_id2record;
-static int cnt_id2record_size;
+struct counter_record **cnt_id2record = NULL;
+static int cnt_id2record_size = 0;
/** hash table for groups (maps a group name to a counter list) */
static struct str_hash_table grp_hash_table;
/** array of groups, sorted */
-static struct grp_record **grp_sorted;
-static int grp_sorted_max_size;
-static int grp_sorted_crt_size;
-static int grp_no; /* number of groups */
+static struct grp_record **grp_sorted = NULL;
+static int grp_sorted_max_size = 0;
+static int grp_sorted_crt_size = 0;
+static int grp_no = 0; /* number of groups */
/** counters array. a[proc_no][counter_id] =>
_cnst_vals[proc_no*cnts_no+counter_id] */
counter_array_t *_cnts_vals = 0;
-int _cnts_row_len; /* number of elements per row */
-static int cnts_no; /* number of registered counters */
-static int cnts_max_rows; /* set to 0 if not yet fully init */
+int _cnts_row_len = 0; /* number of elements per row */
+static int cnts_no = 0; /* number of registered counters */
+static int cnts_max_rows = 0; /* set to 0 if not yet fully init */
char *ksr_stats_namesep = KSR_STATS_NAMESEP;
<!-- 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 -->
Improved URN parsing according to [RFC8141](https://datatracker.ietf.org/doc/html/rfc8141#section-2) that allows an arbitrary number of colons to be present in the URN value. Entire URN NID and NSS parts (except for `urn:` scheme) are stored in the `uri.host` struct field. `rq-components` are not supported.
Example of the parse error when parsing "urn:emergency:service:sos"
```
parse_uri(): bad char ':' in state 3 parsed: urn:emergency:service (21) / urn:emergency:service:sos (25)
```
URN values that have been tested to work:
- `urn:emergency:service:sos`
- `urn:emergency:responder.fire`
- `urn:emergency:media-feature`
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3909
-- Commit Summary --
* core: Improved URN parsing according to RFC8141
-- File Changes --
M src/core/parser/parse_uri.c (48)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3909.patchhttps://github.com/kamailio/kamailio/pull/3909.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3909
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3909(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
Not for merging yet.
Package tls_wolfssl as an alternative to OpenSSL 3.x.
Depends on PR https://github.com/kamailio/kamailio/pull/3590
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3592
-- Commit Summary --
* pkg: RPM packaging add kamailio-tls_wolfssl subpackage
-- File Changes --
M pkg/kamailio/obs/kamailio.spec (18)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3592.patchhttps://github.com/kamailio/kamailio/pull/3592.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3592
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3592(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
- [x] Related to PR https://github.com/kamailio/kamailio/pull/3891
#### Description
<!-- Describe your changes in detail -->
Normally, the IMS P-CSCF should identify the clients (UEs) by the received IP address and ports on Rx. The current code is using a mix of that, plus using Contact and Via headers, with arguable potential security issues.
This patch adds a new parameter to `ims_registrar_pcscf` and `ims_qos` modules, allowing for an optional outsource of the IPsec functionality to another element, which is also in charge of checking/enforcing correct UE Via header. The existing code is allowed to work as before, with the default value of the flag being towards that.
List of functional changes:
- `ims_qos`
- added `trust_bottom_via` parameter
- used it on `w_rx_aar_register()`
- `ims_registrar_pcscf`
- added `trust_bottom_via` parameter
- used it on `update_contacts()`, `save_pending()`, `check_contact()`, `getContactP()`, `check_service_routes()`, `enforce_service_routes()`
- made `ims_ipsec_pcscf` dependency optional, with checks when used
- skipped checks of `port-uc` in `checkcontact()` if the `ims_ipsec_pcscf` module was not loaded
- added `ignore_contact_rxproto_check` parameter - IMS devices open IPsec Security Associations just between IPs and ports, with both UDP and TCP protocols allowed. The default then was set here to always ignore protocol checks. Before, the `ignore_contact_rxport_check` was used to skip this and still make it work, but that seemed like a typo/mistake with hidden effects.
List of indirect changes:
- `core/ut.h`: added a `str2ushort()` macro, since code was using some dangerous casting and macros with a larger type
- `ims_registrar_pcscf`: added `Route` headers in `SUBSCRIBE` to `reginfo`, with values from `Service-Route`s, as per 3GPP specs.
- `ims_usrloc_pcscf`: small log fixes
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3901
-- Commit Summary --
* core: added str2ushort() to avoid some questionable casting in ims_qos
* lib/ims: fixed a typo in a log message
* ims_usrloc_pcscf: small log fixes
* ims_qos: added trust_bottom_via parameter
* ims_registrar_pcscf: added trust_bottom_via parameter, added ignore_contact_rxproto_check, fixes for logging, fixes for SUBSCRIBE to reginfo for including Service-Route, allow use without ims_ipsec_pcscf
-- File Changes --
M src/core/ut.h (8)
M src/lib/ims/ims_getters.c (2)
M src/modules/ims_qos/doc/ims_qos.xml (6)
M src/modules/ims_qos/doc/ims_qos_admin.xml (41)
M src/modules/ims_qos/ims_qos_mod.c (27)
M src/modules/ims_qos/rx_aar.h (4)
M src/modules/ims_qos/rx_authdata.h (2)
M src/modules/ims_qos/rx_avp.c (2)
M src/modules/ims_registrar_pcscf/doc/ims_registrar_pcscf.xml (6)
M src/modules/ims_registrar_pcscf/doc/ims_registrar_pcscf_admin.xml (73)
M src/modules/ims_registrar_pcscf/ims_registrar_pcscf_mod.c (26)
M src/modules/ims_registrar_pcscf/notify.c (2)
M src/modules/ims_registrar_pcscf/save.c (80)
M src/modules/ims_registrar_pcscf/service_routes.c (136)
M src/modules/ims_registrar_pcscf/subscribe.c (74)
M src/modules/ims_registrar_pcscf/subscribe.h (4)
M src/modules/ims_usrloc_pcscf/udomain.c (4)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3901.patchhttps://github.com/kamailio/kamailio/pull/3901.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3901
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3901(a)github.com>
### Description
Recent commit
```
d53843c75da src/modules/db_mysql/km_my_con.c (Sergey Safarov 2024-05-11 17:45:08 +0300 182) #ifdef MYSQL_OPT_SSL_CA
```
breaks db_mysql on 5.8.2
```
Jul 09 08:40:31 voip-ssl3.voip.test /usr/local/kamailio/sbin/kamailio[10982]: WARNING: db_mysql [km_my_con.c:187]: db_mysql_new_connection(): opt_ssl_ca option not supported by mysql version (value /etc/pki/tls/certs/ca-cert.pem) - ignoring
Jul 09 08:40:31 voip-ssl3.voip.test /usr/local/kamailio/sbin/kamailio[10982]: ERROR: db_mysql [km_my_con.c:217]: db_mysql_new_connection(): driver error: SSL connection error: CA certificate is required if ssl-mode is VERIFY_CA or VERIFY_IDENTITY
```
Ping @sergey-safarov
### Troubleshooting
#### Reproduction
* use 5.8.2
* configure `db_mysql` to use TLS with verification
#### Debugging Data
#### Log Messages
```
Jul 09 08:40:31 voip-ssl3.voip.test /usr/local/kamailio/sbin/kamailio[10982]: WARNING: db_mysql [km_my_con.c:187]: db_mysql_new_connection(): opt_ssl_ca option not supported by mysql version (value /etc/pki/tls/certs/ca-cert.pem) - ignoring
Jul 09 08:40:31 voip-ssl3.voip.test /usr/local/kamailio/sbin/kamailio[10982]: ERROR: db_mysql [km_my_con.c:217]: db_mysql_new_connection(): driver error: SSL connection error: CA certificate is required if ssl-mode is VERIFY_CA or VERIFY_IDENTITY
```
### Additional Information
* **Kamailio Version** - 5.8.2
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3910
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3910(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 -->
- [ ] Commit message has the format required by CONTRIBUTING guide
- [ ] Commits are split per component (core, individual modules, libs, utils, ...)
- Not yet - first let's see if the work is valid, then I'll recompose the whole work to satisfy this. Otherwise... if I need to fix something, it's too hard to work like this...
- [ ] Each component has a single commit (if not, squash them into one commit)
- ditto
- [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 -->
Normally, the IMS P-CSCF should identify the clients (UEs) by the received IP address and ports on Rx. The current code is using a mix of that, plus using Contact and Via headers, with arguable potential security issues.
This patch adds a new parameter to `ims_registrar_pcscf` and `ims_qos` modules, allowing for an optional outsource of the IPsec functionality to another element, which is also in charge of checking/enforcing correct UE Via header. The existing code is allowed to work as before, with the default value of the flag being towards that.
List of functional changes:
- `ims_qos`
- added `trust_bottom_via` parameter
-
List of indirect changes:
- default I-CSCF config example contained a questionable line which adds a `+` as a prefix in Request-URI. After way too much time wasted to figure out why the Diameter LIR has bogus SIP or TEL URI values in UserName AVP, I have discovered this. Seems like someone had just tel-URIs in their network, but otherwise the blind addition of this prefix makes no sense to me.
- added a `str2ushort()` macro, since code was using some dangerous casting and macros with a larger type
-
List of non-functional fixes:
- spelling in comments
- comments at the end of line moved above the line they refer to; with just 80 columns code-formatting, commenting on the same line provides for some super weird and hard to read code, so IMHO should not be allowed (or ... much harder now... increase to 120 columns)
-
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3891
-- Commit Summary --
* squashed work
-- File Changes --
M misc/examples/ims/icscf/kamailio.cfg (4)
M src/core/ut.h (36)
M src/lib/ims/ims_getters.c (2)
M src/modules/ims_icscf/location.c (10)
M src/modules/ims_qos/ims_qos_mod.c (27)
M src/modules/ims_qos/ims_qos_mod.h (1)
M src/modules/ims_qos/rx_aar.h (4)
M src/modules/ims_qos/rx_authdata.h (2)
M src/modules/ims_qos/rx_avp.c (2)
M src/modules/ims_qos/rx_avp.h (1)
M src/modules/ims_registrar_pcscf/doc/ims_registrar_pcscf_admin.xml (39)
M src/modules/ims_registrar_pcscf/ims_registrar_pcscf_mod.c (18)
M src/modules/ims_registrar_pcscf/notify.c (2)
M src/modules/ims_registrar_pcscf/save.c (78)
M src/modules/ims_registrar_pcscf/service_routes.c (125)
M src/modules/ims_registrar_pcscf/subscribe.c (75)
M src/modules/ims_registrar_pcscf/subscribe.h (4)
M src/modules/ims_usrloc_pcscf/udomain.c (4)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3891.patchhttps://github.com/kamailio/kamailio/pull/3891.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3891
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3891(a)github.com>
### Description
When doing base58 encoding and decoding there is some issue with the decoded string.
Here is my code to ilustrate the issue :
$var(Test) = "test_string";
$var(Test) = $(var(Test){s.encode.base58});
xerr("Test String encoded = STRING_BEGIN$var(Test)STRING_END");
$var(Test) = $(var(Test){s.decode.base58});
xerr("Test String decoded = STRING_BEGIN$var(Test)STRING_END");
It has the following output :

I've inserted STRING_BEGIN and STRING_END in the log to be able to know when string ends.
After this i've tried to user {s.trim} method with no success. I've noticed that despite not printing correctly, the string's length is calculated correctly, so i did a manual substring and was able to fix it.
xerr("Test Base58");
$var(Test) = "test_string";
$var(Test) = $(var(Test){s.encode.base58});
xerr("Test String encoded = STRING_BEGIN$var(Test)STRING_END");
$var(Test) = $(var(Test){s.decode.base58});
xerr("Test String decoded = STRING_BEGIN$var(Test)STRING_END");
$var(Test) = $(var(Test){s.trim});
xerr("Test String decoded and trimmed = STRING_BEGIN$var(Test)STRING_END");
$var(substring_length) = $(var(Test){s.len}) - 1;
$var(Test) = $(var(Test){s.substr,0,$var(substring_length)});
xerr("Test String decoded and fixed = STRING_BEGIN$var(Test)STRING_END");
Output :

All of this doesn't happen with method for base64 for example
### Additional Information
version: kamailio 5.7.1 (x86_64/linux) 4238e4
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: 4238e4
compiled on 12:39:30 Jun 29 2023 with gcc 4.8.5
* **Operating System**:
CentOS 7
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3907
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3907(a)github.com>
Hello,
Upgraded the kamailio version from 5.7.5 to 5.7.6 and after restart the service got the follow WARNING,
WARNING: db_mysql [km_my_con.c:179]: db_mysql_new_connection(): opt_ssl_ca option not supported by mysql version (value (null)) - ignoring,
when downgrade to 5.7.5 dindt happend.
Thanks
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3908
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3908(a)github.com>
### Description
On systems with a high number of TCP sessions there can be a significant performance regression observed, probably related to the newly added TCP connection tracking feature.
### Troubleshooting
#### Reproduction
No special configuration is necessary, just install the latest 5.7.x release, e.g. 5.7.3 on a production system with a lot of clients connected over TCP or TLS. You need to have a large number of clients connected to be able to observe the regression. For a high number of connections (e.g. more then 20.000 up to 30.000 connections) the Kamailio servers uses about 30% to 50% more CPU as with the old version.
#### Debugging Data
Two graphs were attached to this issue. The first shows the CPU load before (less load) and after the upgrade (increased load). The second is a flamegraph that shows that over 80% of the CPU time is spent in the newly added function tcp_connection_limit_srcip().
<img width="372" alt="cpu-load-before-after" src="https://github.com/kamailio/kamailio/assets/6481937/ec92c41b-25e2-4847-a4bc…">

Most of the CPU time is spend in the TCP main process, as expected.
#### Log Messages
No special log messages could be observed.
#### SIP Traffic
### Possible Solutions
The TCP limit feature should probably be optimized to not cause such a large performance regression. It should be also possible to deactivate it completly and therefore getting a comparable performance as before the feature addition.
### Additional Information
Kamailio 5.7.3 and probably also git master version.
* **Operating System**:
Debian 11, Debian 12
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3759
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3759(a)github.com>
After a period of use, this warning occurs continuously and affects the performance of the system. Is this the bug of the system?
Currently, I am using version 5.6 and MariaDB 10.5.25 + Galera Cluster.
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3906
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3906(a)github.com>
### Description
Currently secsipid has a method to sign arbitrary (json) data (`secsipid_sign`), however it has no converse method to check the signature. Currently, an attempt to check a `div` signature for example will yield a `-303` error (`SIPHdrInfo`). Rather than trying to have full parsing for every possible type of Identity header (which are likely to increase in variety), it would be good to simply check "is this signature valid by trusted key", possibly validating the `iat` timestamp as well, but without any other opinions on the header values.
### Expected behavior
A feature to check only the signature of an identity header.
#### Actual observed behavior
Currently the `secsipid_check_` family of functions fails for non- `shaken` passport types.
#### Debugging Data
The following DIV identity header was generated by secsipid's `secsipid_sign()` function, so it should be possible to reverse this to validate the signature:
```
Identity: eyJhbGciOiJFUzI1NiIsInBwdCI6ImRpdiIsInR5cCI6InBhc3Nwb3J0IiwieDV1IjoiaHR0cHM6Ly9kLm10c2VjLm1lL2QzYTkvQmZUeGJVTlozS1FMLnBlbSJ9.eyJkZXN0Ijp7InRuIjpbIjE2MTI1NTU0MzIxIl19LCJpYXQiOiIxNzEwMTY5MzQ1Iiwib3JpZyI6eyJ0biI6IjE1NTU3MzU5MzA5In0sImRpdiI6eyJ0biI6IjE5NTI1NTU5ODc2In19.-0QF6-u6zgAQNoAhdiETuhAu7FuRDzxmFch_cTdhcbeWvUZ60NQXxdPM-JucpOtFaEdn9wnFreAZ_6vZoc_Phg;info=<https://d.mtsec.me/d3a9/BfTxbUNZ3KQL.pem>;alg=ES256;ppt=div
```
### Possible Solutions
Because it's fairly straight forward to investigate the JWT, it's not necessary to try to account for every possible passport type, etc. The act of validating the signature is the complicated part, so a function that does only that would be convenient.
### Additional Information
* **Kamailio Version** - output of `kamailio -v`
```
version: kamailio 5.7.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, 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 12.2.0
```
* **Operating System**:
Currently alpine linux 3.19 in a docker container, but it should be pretty reproducible everywhere.
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3784
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3784(a)github.com>
Module: kamailio
Branch: master
Commit: d13e103ad047405e410d22046d354442b5a566f3
URL: https://github.com/kamailio/kamailio/commit/d13e103ad047405e410d22046d35444…
Author: Kamailio Dev <kamailio.dev(a)kamailio.org>
Committer: Kamailio Dev <kamailio.dev(a)kamailio.org>
Date: 2024-07-04T16:31:11+02:00
modules: readme files regenerated - tls ... [skip ci]
---
Modified: src/modules/tls/README
---
Diff: https://github.com/kamailio/kamailio/commit/d13e103ad047405e410d22046d35444…
Patch: https://github.com/kamailio/kamailio/commit/d13e103ad047405e410d22046d35444…
---
diff --git a/src/modules/tls/README b/src/modules/tls/README
index 7fe63fc3b20..0ebecec8801 100644
--- a/src/modules/tls/README
+++ b/src/modules/tls/README
@@ -245,6 +245,9 @@ Chapter 1. Admin Guide
module that uses libssl (OpenSSL library). A safe option is to have the
tls module loaded first (be in the first "loadmodule" in Kamailio.cfg).
+ IMPORTANT: For libssl v3.x, the core parameter "tls_threads_mode" has
+ to be set, see the Core Cookbook for possible values.
+
IMPORTANT: using this module compiled with newer versions of libssl
(e.g., v1.1+) may require Kamailio to be started with --atexit=no
command line parameters to avoid calling C atexit callbacks inside the
Module: kamailio
Branch: master
Commit: 91d6a131ab9d3e58a1560c6305af542c92c2b19f
URL: https://github.com/kamailio/kamailio/commit/91d6a131ab9d3e58a1560c6305af542…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-07-04T16:23:39+02:00
etc/kamailio.cfg: set tls_threads_mode to 2
- recommended value for libssl 3.x, which is the library shipped with
latest stable popular Linux distros
---
Modified: etc/kamailio.cfg
---
Diff: https://github.com/kamailio/kamailio/commit/91d6a131ab9d3e58a1560c6305af542…
Patch: https://github.com/kamailio/kamailio/commit/91d6a131ab9d3e58a1560c6305af542…
---
diff --git a/etc/kamailio.cfg b/etc/kamailio.cfg
index cd2ecd0109f..94c97f86628 100644
--- a/etc/kamailio.cfg
+++ b/etc/kamailio.cfg
@@ -230,7 +230,7 @@ tls_max_connections=2048
* 1: use thread executors for process#0 only
* 2: no thread executors, but use atfork handler to reset thread-locals to NULL
* 3: use thread executors for all processes */
-tls_threads_mode=1
+tls_threads_mode=2
#!endif
/* set it to yes to enable sctp and load sctp.so module */
Module: kamailio
Branch: master
Commit: 234f2ae07a26af8948a176d10358a0b7039ad1a2
URL: https://github.com/kamailio/kamailio/commit/234f2ae07a26af8948a176d10358a0b…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-07-04T16:20:47+02:00
tls: docs - note about tls_threads_mode core parameter
---
Modified: src/modules/tls/doc/tls.xml
---
Diff: https://github.com/kamailio/kamailio/commit/234f2ae07a26af8948a176d10358a0b…
Patch: https://github.com/kamailio/kamailio/commit/234f2ae07a26af8948a176d10358a0b…
---
diff --git a/src/modules/tls/doc/tls.xml b/src/modules/tls/doc/tls.xml
index 5697792655a..3a0416fed61 100644
--- a/src/modules/tls/doc/tls.xml
+++ b/src/modules/tls/doc/tls.xml
@@ -64,6 +64,10 @@
that uses libssl (OpenSSL library). A safe option is to have the tls module
loaded first (be in the first "loadmodule" in &kamailio;.cfg).
</para>
+ <para>
+ IMPORTANT: For libssl v3.x, the core parameter "tls_threads_mode"
+ has to be set, see the Core Cookbook for possible values.
+ </para>
<para>
IMPORTANT: using this module compiled with newer versions of libssl
(e.g., v1.1+) may require &kamailio; to be started with
Hello all,
I've started working on integrating CMake as a build system for the Kamailio. This is an initial step towards potentially offering CMake as an alternative to the current build system across the entire Kamailio project.
Right now, the CMake configuration is quite basic and covers only the core module. It offers limited options described in Makefile.defs that are required to build the core module.
Some notes regarding the definitions can be found also in the CMakelists.notes<https://github.com/kamailio/kamailio/compare/master...cmake#diff-4e8ba0f2d5…> that made the build failed and maybe it's good to remove from current Makefiles as well, if i am not wrong.
Before we consider extending it to other modules and components, i would like some feedback whether you find it useful at all.
You can find the initial CMake files in the cmake branch. Please take a look and feel free to share any feedback or suggestions. Your input will be much appreciated and nessecary if we want CMake as a build system.
For anyone wanting to try and compile using cmake, here are some basic instructions on how to get you started.
Checkout the cmake branch of kamailio repo.
Create a new folder, let's call it build.
mkdir build && cd build
Then run CMake for the configuration
cmake .. (you can also then use ccmake . for a visual of the offered options)
Build and install using make
make -j4
make install
OR
Build and install using cmake
cmake --build .
cmake --install .
You can of course use the CMake variable CMAKE_INSTALL_PREFIX to change the installation paths as follows and of course other preprocessor defintions:
cmake -DCMAKE_INSTALL_PREFIX=./kamailio-cmake -DUSE_TCP=0 ..
This will install it in the build/kamailio-cmake folder but fails to build because USE_TCP is required for kamailio to build (Check CMakelists.notes).
Thank you all for your continuous contributions and support. Looking forward to hearing your thoughts and insights.
Best regards,
Xenofon
https://github.com/kamailio/kamailio/tree/cmake
[https://repository-images.githubusercontent.com/15101579/2d895000-e695-11e9…]<https://github.com/kamailio/kamailio/tree/cmake>
GitHub - kamailio/kamailio at cmake<https://github.com/kamailio/kamailio/tree/cmake>
Kamailio - The Open Source SIP Server for large VoIP and real-time communication platforms - - GitHub - kamailio/kamailio at cmake
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)
- [ ] 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/3888
-- Commit Summary --
* usrloc: refactor some db queries using global usrloc_columns variable
-- File Changes --
M src/modules/usrloc/udomain.c (260)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3888.patchhttps://github.com/kamailio/kamailio/pull/3888.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3888
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3888(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 -->
Issue: when using usrloc with db_redis, I get constant WARNING logs for 'delete' via usrloc timer. The real WARNING, in my opinion, is when doing full table scans(which is already logged as so).
Make logs less important when performing table scans using a match key.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3892
-- Commit Summary --
* db_redis: change logs on delete
-- File Changes --
M src/modules/db_redis/redis_dbase.c (4)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3892.patchhttps://github.com/kamailio/kamailio/pull/3892.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3892
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3892(a)github.com>
Hello,
Kamailio SIP Server v5.6.6 stable release is out.
This is a maintenance release of the latest stable branch, 5.6, that
includes fixes since the release of v5.6.5. There is no change to
database schema or configuration language structure that you have to do
on previous installations of v5.6.x. Deployments running previous v5.6.x
versions are strongly recommended to be upgraded to v5.6.6.
Note that 5.6 is now the third last stable branch, v5.6.6 being the last
planned released in 5.5.x series. The latest two stable branch are 5.7
and 5.8, with v5.8.2 being released a while ago.
For more details about version 5.6.6 (including links and guidelines to
download the tarball or from GIT repository), visit:
* https://www.kamailio.org/w/2024/07/kamailio-v5-6-6-released/
RPM, Debian/Ubuntu packages will be available soon as well.
Many thanks to all contributing and using Kamailio!
Cheers,
Daniel
--
Daniel-Constantin Mierla (@ asipto.com)
twitter.com/miconda -- linkedin.com/in/miconda
Kamailio Consultancy and Development Services
Kamailio Advanced Training -- asipto.com
Hello,
I am considering to release Kamailio v5.6.6 (out of branch 5.6) later
this week (likely on Wednesday, July 3, 2024). If anyone is aware of
issues not yet on the bug tracker, report them there asap in order to
have a better chance to be fixed.
This is going to be the last release out of branch 5.6 to mark the end
of official/packaging maintenance.
Cheers,
Daniel
--
Daniel-Constantin Mierla (@ asipto.com)
twitter.com/miconda -- linkedin.com/in/miconda
Kamailio Consultancy, Training and Development Services -- asipto.com
#### Pre-Submission Checklist
- [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:
- [x] PR should be backported to stable branches
- [x] Tested changes locally
- [ ] Related to issue
#### Description
In `send_rtpp_command()` if socket operations fail with an error other than `EINTR` or `ENOBUFS`, the actual error is not reported - we just get a generic "Can't send command to/read reply from RTPEngine".
Other places in the module report `errno` and `strerror(errno)` using the log format "`(%s:%d)`" so added that to the error log.
Also fixed `bind_force_send_ip()` error log to use the same semantic as the other places.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3899
-- Commit Summary --
* rtpengine: show errno and error string in more places where it is useful
-- File Changes --
M src/modules/rtpengine/rtpengine.c (14)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3899.patchhttps://github.com/kamailio/kamailio/pull/3899.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3899
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3899(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
- [x] Related to PR https://github.com/kamailio/kamailio/pull/3891 - splitting by components
#### Description
<!-- Describe your changes in detail -->
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3900
-- Commit Summary --
* misc/examples/ims/icscf: removed always adding a plus as a prefix on requests arriving to the I-CSCF
-- File Changes --
M misc/examples/ims/icscf/kamailio.cfg (4)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3900.patchhttps://github.com/kamailio/kamailio/pull/3900.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3900
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3900(a)github.com>
Hello,
Kamailio SIP Server v5.7.6 stable release is out.
This is a maintenance release of the latest stable branch, 5.7, that
includes fixes since the release of v5.7.5. There is no change to
database schema or configuration language structure that you have to do
on previous installations of v5.7.x. Deployments running previous v5.7.x
versions are strongly recommended to be upgraded to v5.7.6.
For more details about version 5.7.6 (including links and guidelines to
download the tarball or from GIT repository), visit:
* https://www.kamailio.org/w/2024/07/kamailio-v5-7-6-released/
RPM, Debian/Ubuntu packages will be available soon as well.
Note that 5.7.x is currently the previous stable release series, the
latest is 5.8.x and v5.8.2 was released on June 12, 2024.
Many thanks to all contributing and using Kamailio!
Cheers,
Daniel
--
Daniel-Constantin Mierla (@ asipto.com)
twitter.com/miconda -- linkedin.com/in/miconda
Kamailio Consultancy, Training and Development Services -- asipto.com