siptrace: add X-Siptrace headers when configured core callback mode and SIP URI traffic mirroring
- Added X-Siptrace headers in core callback mode for SIP URI traffic duplication,
headers also available in event route for filtering purporses.
<!-- Kamailio Pull Request Template -->
<!--
IMPORTANT:
- for detailed contributing guidelines, read:
https://github.com/kamailio/kamailio/blob/master/.github/CONTRIBUTING.md
- pull requests must be done to master branch, unless they are backports
of fixes from master branch to a stable branch
- backports to stable branches must be done with 'git cherry-pick -x ...'
- code is contributed under BSD for core and main components (tm, sl, auth, tls)
- code is contributed GPLv2 or a compatible license for the other components
- GPL code is contributed with OpenSSL licensing exception
-->
#### Pre-Submission Checklist
<!-- Go over all points below, and after creating the PR, tick all the checkboxes that apply -->
<!-- All points should be verified, otherwise, read the CONTRIBUTING guidelines from above-->
<!-- If you're unsure about any of these, don't hesitate to ask on sr-dev mailing list -->
- [x] Commit message has the format required by CONTRIBUTING guide
- [ ] Commits are split per component (core, individual modules, libs, utils, ...)
- [ ] Each component has a single commit (if not, squash them into one commit)
- [ ] No commits to README files for modules (changes must be done to docbook files
in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change
- [ ] Small bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
<!-- Go over all points below, and after creating the PR, tick the checkboxes that apply -->
- [ ] PR should be backported to stable branches
- [ ] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3049
-- Commit Summary --
* siptrace: add X-Siptrace headers when configured core callback mode and SIP URI traffic mirroring
-- File Changes --
M src/modules/siptrace/siptrace.c (5)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3049.patchhttps://github.com/kamailio/kamailio/pull/3049.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3049
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3049(a)github.com>
<!-- Kamailio Pull Request Template -->
<!--
IMPORTANT:
- for detailed contributing guidelines, read:
https://github.com/kamailio/kamailio/blob/master/.github/CONTRIBUTING.md
- pull requests must be done to master branch, unless they are backports
of fixes from master branch to a stable branch
- backports to stable branches must be done with 'git cherry-pick -x ...'
- code is contributed under BSD for core and main components (tm, sl, auth, tls)
- code is contributed GPLv2 or a compatible license for the other components
- GPL code is contributed with OpenSSL licensing exception
-->
#### Pre-Submission Checklist
<!-- Go over all points below, and after creating the PR, tick all the checkboxes that apply -->
<!-- All points should be verified, otherwise, read the CONTRIBUTING guidelines from above-->
<!-- If you're unsure about any of these, don't hesitate to ask on sr-dev mailing list -->
- [x] Commit message has the format required by CONTRIBUTING guide
- [x] Commits are split per component (core, individual modules, libs, utils, ...)
- [x] Each component has a single commit (if not, squash them into one commit)
- [x] No commits to README files for modules (changes must be done to docbook files
in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change
- [x] Small bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
<!-- Go over all points below, and after creating the PR, tick the checkboxes that apply -->
- [ ] PR should be backported to stable branches
- [x] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
<!-- Describe your changes in detail -->
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3043
-- Commit Summary --
* smsops: Fix ucs2-to-utf8 for Accent chars
-- File Changes --
M src/modules/smsops/smsops_impl.c (4)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3043.patchhttps://github.com/kamailio/kamailio/pull/3043.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3043
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3043(a)github.com>
<!-- Kamailio Pull Request Template -->
<!--
IMPORTANT:
- for detailed contributing guidelines, read:
https://github.com/kamailio/kamailio/blob/master/.github/CONTRIBUTING.md
- pull requests must be done to master branch, unless they are backports
of fixes from master branch to a stable branch
- backports to stable branches must be done with 'git cherry-pick -x ...'
- code is contributed under BSD for core and main components (tm, sl, auth, tls)
- code is contributed GPLv2 or a compatible license for the other components
- GPL code is contributed with OpenSSL licensing exception
-->
#### Pre-Submission Checklist
<!-- Go over all points below, and after creating the PR, tick all the checkboxes that apply -->
<!-- All points should be verified, otherwise, read the CONTRIBUTING guidelines from above-->
<!-- If you're unsure about any of these, don't hesitate to ask on sr-dev mailing list -->
- [X] Commit message has the format required by CONTRIBUTING guide
- [X] Commits are split per component (core, individual modules, libs, utils, ...)
- [X] Each component has a single commit (if not, squash them into one commit)
- [X] No commits to README files for modules (changes must be done to docbook files
in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change
- [ ] Small bug fix (non-breaking change which fixes an issue)
- [X] New feature (non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
<!-- Go over all points below, and after creating the PR, tick the checkboxes that apply -->
- [ ] PR should be backported to stable branches
- [X] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
<!-- Describe your changes in detail -->
This PR adds 1 UAC module function and 1 TM module modparam. It enables "uac:reply" event route trigger on timeout or non-2xx replies. Basically it:
- adds TMCB_ON_FAILURE callback for UAC
- copies the TM uac content into uas; thus failure route will have the uas to work with. => this part of the code was already there, i just enabled it via (another) modparam.
So far, is basically tested on our side, without any apparent issues. More testing will follow.
Please have a look on this and tell me what you think about it.
Thank you,
Stefan
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3047
-- Commit Summary --
* uac: add new function uac_req_send_fr()
* tm: Add enable_uac_fr modparam
-- File Changes --
M src/modules/tm/config.c (5)
M src/modules/tm/config.h (1)
M src/modules/tm/doc/params.xml (16)
M src/modules/tm/tm.c (1)
M src/modules/tm/uac.c (2)
M src/modules/uac/api.h (2)
M src/modules/uac/doc/uac_admin.xml (27)
M src/modules/uac/uac.c (1)
M src/modules/uac/uac_send.c (23)
M src/modules/uac/uac_send.h (3)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3047.patchhttps://github.com/kamailio/kamailio/pull/3047.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3047
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3047(a)github.com>
Module: kamailio
Branch: master
Commit: b3c301e1c99eb90df1533724442aef7991cd36bc
URL: https://github.com/kamailio/kamailio/commit/b3c301e1c99eb90df1533724442aef7…
Author: Stefan Mititelu <stefan-cristian.mititelu(a)1and1.ro>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2022-03-10T10:46:04+01:00
uac: trigger event route for failure and timeout
...when $uac_req(evroute) = 2
---
Modified: src/modules/uac/doc/uac_admin.xml
Modified: src/modules/uac/uac_send.c
---
Diff: https://github.com/kamailio/kamailio/commit/b3c301e1c99eb90df1533724442aef7…
Patch: https://github.com/kamailio/kamailio/commit/b3c301e1c99eb90df1533724442aef7…
---
diff --git a/src/modules/uac/doc/uac_admin.xml b/src/modules/uac/doc/uac_admin.xml
index 188d1b913e..3ce59d3e11 100644
--- a/src/modules/uac/doc/uac_admin.xml
+++ b/src/modules/uac/doc/uac_admin.xml
@@ -1241,11 +1241,20 @@ failure_route[REMOTE_AUTH] {
<function moreinfo="none">event_route[uac:reply]</function>
</title>
<para>
- Event route executed for the final reply of the branch for the
- request sent with uac_req_send(). The associated $uac_req(evroute)
- has to be set to 1. If the request is challenged for authentication
+ The associated $uac_req(evroute) can have either of the following values:
+ <itemizedlist>
+ <listitem><para>
+ <emphasis>1</emphasis> : event route executed for the <emphasis>final reply</emphasis> of the branch for the
+ request sent with uac_req_send(). If the request is challenged for authentication
with 401/407, then the event_route is executed twice, first for
401/407 and second for final reply of the transaction.
+ </para></listitem>
+ <listitem><para>
+ <emphasis>2</emphasis> : event route executed for <emphasis>failure</emphasis> of the branch for the
+ request sent with uac_req_send(). event route will execute also for timeout.
+ In order for this to work, please also enable TM module "enable_uac_fr" modparam.
+ </para></listitem>
+ </itemizedlist>
</para>
<example>
<title><function>event_route[uac:reply]</function> usage</title>
diff --git a/src/modules/uac/uac_send.c b/src/modules/uac/uac_send.c
index 43767c7804..887dc1b4a4 100644
--- a/src/modules/uac/uac_send.c
+++ b/src/modules/uac/uac_send.c
@@ -886,9 +886,21 @@ int uac_req_send(void)
return -1;
}
- uac_r.cb_flags = TMCB_LOCAL_COMPLETED;
- /* Callback function */
- uac_r.cb = uac_send_tm_callback;
+ switch (_uac_req.evroute)
+ {
+
+ case 2:
+ uac_r.cb_flags = TMCB_ON_FAILURE;
+ /* Callback function */
+ uac_r.cb = uac_resend_tm_callback;
+ break;
+ case 1:
+ default:
+ uac_r.cb_flags = TMCB_LOCAL_COMPLETED;
+ /* Callback function */
+ uac_r.cb = uac_send_tm_callback;
+ break;
+ }
/* Callback parameter */
uac_r.cbp = (void*)tp;
}