The following scenario disclouse an issue with "ngcp_clean" lua
function in case of callee peer:
- A is a local subscriber with Peer_auth set and
force_outbound_call_to_peer set;
- B is a local subscriber with Peer_auth set and
force_outbound_call_to_peer set;
A calls B.
We clean and load callee preferences of B.
Call is detected as forced to PSTN.
We clean and load peer preferences.
When we set outbound peer_auth* values, the $xavp(callee_prefs)
still contains values from B (instead of peering preferences).
When we clean preferences for the callee peer, we only
clean "callee_peer_prefs" and not "callee_prefs".
"callee_prefs" are clean only in case of 'usr' or 'dom'
preferences.
This patch try to fix this problem in order to fix this
scenario with outbound user authentication.
Change-Id: I76dfa6f9e074b3d83ac67bd818e59233ca50492c
(cherry picked from commit 8cdd63731b)
* we are checking that the variable is not nil but on
start we were setting the value to an empty metatable
Change-Id: Ib5b409b5c6e837baef38c35c7e619a46f44d51b9
(cherry picked from commit 3a008159b2)
The new function behaves like NGCPDlgCounters:is_in_set but
it uses a regex match to see if the key is contained in the list
Additionally added the helper function 'contains_regex' in the
utils.lua
* ignore vscode files
Change-Id: Iee89f5298ced10c2a9cdf7ebc19a4c0945b8cc9d
(cherry picked from commit 51454fd2b5)
* final value is fetched from provisioning using pref value as id
* config: list of preferences needed to be loaded by kamailio
so we wont load unnecessary data into shared memory
Change-Id: I92e4bbfbe7ba55a06e79384aaa0d792556a39e22
The 'duration' variable is a string but it was written as int,
causing kamailio to write error lines
Change-Id: I2df1524d331e9b1d54bb0bdb84c06f4280e14fae
> ngcp/fp.lua:30:121: line is too long (126 > 120)
> ngcp/pprof.lua:28:121: line is too long (158 > 120)
Change-Id: Icf87f29049b2cc4ce29e7c1f5c78d9f2a53572c0
https://www.lua.org/manual/5.2/manual.html#8.3
> (Modules are not expected to set global variables anymore.)
EXPORT_ASSERT_TO_GLOBALS was just there for backwards compatibility
Change-Id: I11ac6d24746ca3c965b16ad523efff1f12ef0e9a
We are going to use both modules app_lua and app_lua_sr until we
solve the missing pieces on KEMI:
* KSR.pvx.xavp_get() returns a string like '<<xavp:%p>>' not a table like
sr.xavp.get()
* KEMI lacks of something like sr.xavp.get_keys() funtion
So, migrate everything that we can to KEMI and keep using sr approach
for just that two cases
- mocks/sr.lua: use same objects for same behaviour
Change-Id: I475ff8f820586cdc94c75bff7466238215e05673
The script collects all the callID from redis, then, one by one
it checks if callID exist in kamailo. At this time a call existing
in redis before may be destroyed in kamailio dlg.list. And so
script believe it's a stuck call.
Solution: collect CallID from REDIS and kamailio.dlg at the same
time, and compare afterwards.
Change-Id: I233a498e42bf5113b5b11ea688487e1840cd84a6
We also need to switch from python-xmlrunner to python3-pytest, as
the former is not present in Debian unstable/testing anymore (see
<https://bugs.debian.org/935688>), and does not provide python3
support in Debian buster anyway.
Change-Id: I8af9ead2755af2e24f5bedf53d8cd20c4ed63b85
Merge two file stanzas for Sipwise copyright, and use the one with the
canonical Sipwise copyright entity.
Change-Id: Iae16419b8d7d6af0555968e109a777b7951c121c