The problem is that you mess the xavps that are reserved for internal use of tm for
serializing contacts. Note that internally an xavp can have more types of values than
config interpreter supports (which are int/long and string). When a module asks for names
of xavp or avps via modparams, the config file actions must not change them (or if it
does, it must do it as expected by the c code, which sometime is impossible to due to
expected value type).
I have actually just added a safety check for this case, but there are many places where
config actions can crash kamailio if not done as per documentation and it will not be
feasible (also sometime not desired) to do it everywhere, because then the processing is
"lost" in safety checks, decreasing performance significantly.
So, if dispatcher, lcr or tm (or other modules) reserves some xavp/avp names, changing
them from config actions opens the door for unexpected behaviour/crashes.
From the other point of view, what you want to achieve does not work as you tried, you
cannot assign an xavp that contains other xavps to another xavp. You have to do it item by
item. There are copy functions in pv module that can help, or those for implode/explode.
But again, only if the xavps don't have special types for their values.
From what I understood, I think lookup() and lookup_to_dset() should offer all that is
needed. Anyhow, if anything else is needed to discuss about using kamailio and
implementing a specific feature in the config, use sr-users mailing list.
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/4063#issuecomment-2538186172
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/4063/2538186172(a)github.com>