On Wednesday 11 August 2010, Jasmin Schnatterbeck wrote:
some months ago I reported a problem with
pua_dialoginfo:
Avps declared in request route are not available anymore in branch
route, if pua_dialoginfo module is loaded.
I do not know whether there are some experiences with this problem or
not, so I looked for the reason.
pua_dialoginfo uses pua for sending PUBLISH request
pua uses tm t_request for sending PUBLISH request
t_request() is located in uac.c (tm):
- in line 411 avp list is reset
- in line 276 build_cell() is called:
build_cell() is located in h_table.c, where lines 305-323 delete avps
If I comment out the mentioned lines, which delete avps, then avps set
in request route are also available in branch route.
But I do not know, what is also affected by this change.
So would it be reasonable, to add a parameter to build_cell() for not
changing the AVP list?
Hi Jasmin,
so this issue is just visible in the transaction on which the pua_dialoginfo
module acts on, or its affects also unrelated transactions?
According my understanding the build_cell method is used for example during
the creation of a new SIP transaction. This is probably necessary (in this
case) for t_request to work correctly. So changing it globally would be
probably not a good idea as it will probably have some side effects. But you
can add a parameter as you suggested, and just see if it works in your setup.
If its really harmless i can't confirm at the moment, as my insight into the
details of the TM module is limited. If you want to get some feedback about a
patch, Andrei as the maintainer of the module would be probably more qualified
to give a sound answer. :-)
Cheers,
Henning