Open StellaTeam opened 11 months ago
Any updates here? No progress has been made in the last 15 days, marking as stale. Will close this issue if no further updates are made in the next 30 days.
Marking as closed due to lack of progress for more than 30 days. If this issue is still relevant, please re-open it with additional details.
Hello,
The issue has been automatically closed because of inactivity.
Just for me to know, what's the OpenSIPS team position about this feature?
Don't hesitate if you need any additionnal information about the requirements.
Thank you
Hello @StellaTeam!
It's interesting to see the differences between the ATIS spec (which prioritizes PAI -> From) and the MAN spec (which prefers From -> PAI). The implementation suggestion is also sensible, there are plenty of ways to tackle it -- maybe a modparam (some kind of "mode"?) would be an intuitive choice.
Using fn parameter from auth/check STIR/SHAKEN functions in script, but much less efficient.
Still, why do you consider that the simple orig function parameter is much less efficient? On the contrary, by setting it you completely skip the get_orig_tn_from_msg()
part, so the provided number immediately jumps to the next step, of checking validity.
To me, providing $fU or $fn (whichever is the E.164) as the auth/validate function parameter seems like an optimal solution for implementing MAN STIR/SHAKEN, without even having to change the code.
Hello @liviuchircu
Thank you for your reply.
Using fn parameter and script functions actually do works, and i use it as i had no other alternatives. But i use to think compiled functions are much more optimized than scripts actions... that's what i mean with "much less efficient". Maybe i'm wrong..
I only suggested to alter stir/shaken code in order to keep OpenSIPS performance at its best :)
If you consider using script actions to make the check and validation is as efficient as using stir/shaken compiled function, that's good for me, and we can forget this issue ;)
Thank you
Any updates here? No progress has been made in the last 15 days, marking as stale. Will close this issue if no further updates are made in the next 30 days.
Is your feature request related to a problem? Please describe.
On the contrary of STIR/SHAKEN original (ATIS) version, the french STIR/SHAKEN version (MAN : Mécanisme d'Authentification des Numéros) populate ORIG value from "From" header, then, if invalid or unavailable, from "PAI" header.
So, because of the order change, in order to comply with these differences, we have to use script statements and function arguments, which are probably much less efficient that when done from module internals.
Describe the solution you'd like
Being able to set a stir_shaken module parameter to change "orig" derivation from SIP order. Something like "orig_derivationOrder_reverse" : false (default - pai then from) / true (from then pai)
Implementation
stir_shaken.c
adding the "reverse order" parameter as a definition of the module
then changing get_orig_tn_from_msg function to reflect both alternatives
This might look like something like that (probably partially false, and certainly suboptimal)
The code is quite bigger and more ugly because:
Describe alternatives you've considered
Using fn parameter from auth/check STIR/SHAKEN functions in script, but much less efficient.
Thank you