Despite the automatic mode for "From" header restore is
defined (modparam("uac","from_restore_mode","auto")),
it is still necessary to change header FROM in the
script for the CANCEL requests.
I'm using the from.c and from.h files of the uac module in a custom module and ran into the same problem. I've sort of fixed this by registering a new TM callback for type TMCB_REQUEST_IN when I call replace from. This callback is registered for the transaction, not the message and therefore is called when the CANCEL is received. I pass the new URI as a parameter to the callback and do another replace_from if this callback is called for a CANCEL. Although I wouldn't consider this approach very nice it does work.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I specially left aside this item because it will be automatically solved by another fixup. According the RFC, the CANCEL (in stateful mode) must hop-by-hop generated and not relayed. As the function generating a local CANCEL already works, the problem will be fixed ;)
regards,
bogdan
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Logged In: YES
user_id=1488991
Originator: NO
Just a thought i has this morning:
Couldn't we make TM create the CANCEL-Messages, like it does for forked requests?
Logged In: YES
user_id=1744253
Originator: NO
I'm using the from.c and from.h files of the uac module in a custom module and ran into the same problem. I've sort of fixed this by registering a new TM callback for type TMCB_REQUEST_IN when I call replace from. This callback is registered for the transaction, not the message and therefore is called when the CANCEL is received. I pass the new URI as a parameter to the callback and do another replace_from if this callback is called for a CANCEL. Although I wouldn't consider this approach very nice it does work.
Logged In: YES
user_id=1275325
Originator: NO
Hi Ardjan,
I specially left aside this item because it will be automatically solved by another fixup. According the RFC, the CANCEL (in stateful mode) must hop-by-hop generated and not relayed. As the function generating a local CANCEL already works, the problem will be fixed ;)
regards,
bogdan
Logged In: YES
user_id=1744253
Originator: NO
Hi Bogdan,
That's good news, any idea on when this fixup will be released? Or is it already fixed in the current SVN version?
Kind regards,
Ardjan Zwartjes.
Logged In: YES
user_id=1275325
Originator: NO
Ardjan,
This fix is not yet done - still on my TODO list, but it will done asap and for sure for the next release.
regards,
bogdan
Logged In: YES
user_id=1275325
Originator: NO
OK - DONE.
Regards,
Bogdan