### Description
Currently, the `geoip2` module loads the IP database at startup and keeps it in cache and there is no way to tell Kamailio to reload the database without a full restart.
### Possible Solutions
To keep this module inline with other modules that use external datasources, I would suggest to implement a new RPC command and a new geoip2 function to reload the database defined in the `path` geoip2 modparam without the need of a restart.
I'm not aware of the effort required for implementing either of them, but only having an RPC command would effectively solve this issue as you can call RPC commands from within Kamailio conf, thus, the reload function would not be something strictly required but more of a nice-to-have.
### Examples:
Function:
```
geoip2_reload()
```
RPC command:
```
kamctl rpc gip2.reload / kamctl rpc geoip2.reload
```
Kamcmd command:
```
kamcmd geoip2.reload
```
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/2029
- To be used with headers containing values separated by commas
- pvh_header_param_exists() check if the value is present to a given header
- pvh_remove_header_param() remove the value from the given header or the entire header if no other value is present
<!-- 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 -->
Previously, to remove a parameter from a header it was needed to create a complex method on the configuration file for each header/parameter. This modification moves this complexity to the 'pv_headers' module.
Two new functions:
* pvh_header_param_exists
* pvh_remove_header_param
Both functions take as parameters the name of the header and the name of the parameter.
It returns '-1' if the combination header/parameter:
- is not found (pvh_header_param_exists)
- couldn't be removed (pvh_remove_header_param).
Examples (proxy configuration):
if (pvh_header_param_exists("Supported", "100rel"))
{
// "100rel" is present on the "Supported" header
}
if (pvh_remove_header_param("Supported", "100rel"))
{
// "100rel" removed from header "Supported"
}
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3070
-- Commit Summary --
* pv_headers: Add support to remove a specific value from a header
-- File Changes --
M src/modules/pv_headers/doc/functions.xml (35)
M src/modules/pv_headers/doc/pv_headers.xml (6)
M src/modules/pv_headers/pv_headers.c (61)
M src/modules/pv_headers/pvh_func.c (87)
M src/modules/pv_headers/pvh_func.h (2)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3070.patchhttps://github.com/kamailio/kamailio/pull/3070.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3070
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3070(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 mqueue parameter to control the mq_add() mode.
0 - default, no changes in behavior
1 - add unique keys, keep oldest
2 - add unique keys, keep newest
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3053
-- Commit Summary --
* mqueue: add mqueue_mode modparam
-- File Changes --
M src/modules/mqueue/doc/mqueue_admin.xml (40)
M src/modules/mqueue/mqueue_api.c (44)
M src/modules/mqueue/mqueue_mod.c (2)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3053.patchhttps://github.com/kamailio/kamailio/pull/3053.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3053
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3053(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 -->
Setup: uac_req_send() with evroute=2 and tm module enable_uac_fr=1
Noticed following shm errors while intensively testing uac_req_send(), happening quite soon after a fresh restart (e.g. 10 min):
```
kamailio[5384]: ERROR: <core> [core/mem/q_malloc.c:297]: qm_find_free(): qm_find_free(0x7fe8943bc000, 40632); Free fragment not found!
kamailio[5384]: ERROR: <core> [core/mem/q_malloc.c:430]: qm_malloc(): qm_malloc(0x7fe8943bc000, 40632) called from uac: uac_send.c: uac_send_info_clone(105), module: uac; Free fragment not found!
kamailio[5384]: ERROR: uac [uac_send.c:108]: uac_send_info_clone(): no more shm memory
kamailio[5384]: ERROR: uac [uac_send.c:837]: uac_req_send(): cannot clone the uac structure
```
I tried monitoring system memory using `free` tool and noticed that the "used" memory didn't grow alot. However, I noticed the "buff/cached" memory had a steep growth when 200OK(s) started to come, for my setup.
Noticed that, for my setup, when 200OK come, event_route[uac:reply] is not called, so the tm callback set by UAC module is not called. => the "tp" callback parameter shm allocated by UAC module is not freed.
By analogy, when using uac_req_send() with evroute=1 and timeout happens (e.g. no reply comes), event_route[uac:reply] won't be called and same leak should happen => *i didn;t tested that*, was just an analogy.
I updated the code to call the callback on TMCB_DESTROY, and make sure tp parameter is freed, *one time*.
Let me know what you think of this... in my setup/tests I got no kamailio shm logs anymore. Also "buff/cached" memory didn't have that steep growth anymore.
Thank you,
Stefan
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3065
-- Commit Summary --
* uac: fix shm leak
-- File Changes --
M src/modules/uac/uac_send.c (14)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3065.patchhttps://github.com/kamailio/kamailio/pull/3065.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3065
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3065(a)github.com>
- Added new parameters: af_signaling_ip6, component_media_type,
flow_protocol, omit_flow_ports, rs_default_bandwidth,
rr_default_bandwidth. Check doc for details.
<!-- 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 -->
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3066
-- Commit Summary --
* ims_qos: Added new parameters for AAR,AVP517
-- File Changes --
M src/modules/ims_qos/doc/ims_qos_admin.xml (134)
M src/modules/ims_qos/ims_qos_mod.c (13)
M src/modules/ims_qos/rx_aar.c (29)
M src/modules/ims_qos/rx_avp.c (67)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3066.patchhttps://github.com/kamailio/kamailio/pull/3066.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3066
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3066(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)
- [ ] 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
Seems I managed to submit a corrupted doc file with my last PR. Tested it plenty this time and fixed a typo while I was at it.
Also I see this is showing my previous PR as well. I'm not sure how to make it not do that. Any tips would be appreciated.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3067
-- Commit Summary --
* stirshaken: Add PVs to allow access to x509 subject and ppt grants
* Merge branch 'kamailio:master' into master
* stirshaken: fix doc typos
-- File Changes --
M src/modules/stirshaken/doc/stirshaken_admin.xml (5)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3067.patchhttps://github.com/kamailio/kamailio/pull/3067.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3067
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3067(a)github.com>
My cfg file is written like this :
$du = "sip:"+$rd+":"+$rp+";transport=tcp";

when i use
$du = "sip:"+$rd+":"+$rp+";transport=udp";
the sip message will be normal

excuse me, can you tell me the reason ?
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3069
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3069(a)github.com>