[sr-dev] appending a new branch in route block
jh at tutpro.com
Fri May 21 15:39:45 CEST 2010
Andrei Pelinescu-Onciul writes:
> > that sounds too complicated and risky. would the change that i suggest
> > in above be more difficult to implement?
> It would be slightly more difficult (definitely not only 1 changed
> line). Basically we would need to remember if ruri is can be used for
> branches or not. On new message set ruri_is_new=1 (ruri_is_new being a
> new static var inside dset.c) and on clear_branches() set it to 0. Then
> change t_forward_non_ack() and use ruri_is_new instead of
> first_branch==0 for the first add_uac().
> For failure route ruri_is_new should be set to 0.
> Each time a new uri is set, ruri_is_new should also be set to 1.
> Probably the same should be done if dst_uri is changed.
sounds ok except the last point. i would think that every time
ruri_is_new is set to 1, dst_uri should be cleared. once new
request-uri is set, dst uri must be set too if it is going to be
some solution to this problem is needed since it is currently impossible
to make next_gw() and next_branches() work correctly and if the above is
the simplest one, then it would make sense to implement it.
More information about the sr-dev