thanks for the response Jan.
Consequently if I allow more than one contact for each username, there is no way to assure that my access control policy will be applied to all contacts?
However I was thinking to another scenario where I don't permit that two clients are registered with the same username.
When I need to use the forking I create a special user and I explicitly define the set of contacts associated to it.
All the components of these sets will have the same domain administrated by the proxy, so all the INVITEs generated in forking mode came back to the proxy and the entire config script is executed for each contact.
sip:special_user@proxy_domain ----> sip:user1@proxy_domain ---> user1@ip_address1
----> sip:user2@proxy_domain ---> user2@ip_address2
In this situation, when I need to avoid to contact only one of the two users, I can't send an error message.
What do you think about this use of the recursive elaboration?
I think that there is the risk to lost the control, and I'm still evaluating all the situations that could become dangerous.
Daniele
-----Messaggio originale-----
Da: Jan Janak [mailto:jan@iptel.org]
Inviato: lunedi 12 luglio 2004 9.50
A: Zappasodi Daniele
Cc: serusers@lists.iptel.org
Oggetto: Re: [Serusers] Parallel forking and reply error
This is not possible because the config script will be executed for the
first branch only, thus you couldn't implement any per-branch policy.
Jan.
On 30-06 10:16, Zappasodi Daniele wrote:
> Hi, all
> I'm implementing a black list, the control access to the gateway and other
> control policies and I have a problem with the call forking.
> In case of a call that generates a parallel forking I want the capability to
> select if accept or refuse the call for each single contact, but if the
> first reply that I send to the caller is an error message 4xx, the UA caller
> shuts down the call.
> What would I have to do to add my reject (caused by my access control
> policy) to the call forking administration and so reply an error only if all
> contacts can not be reachable?
> I'm trying to implement a solution to reply an error only if all the
> contacts can not be reachable.
> To do this thing I need to know the number of contacts that the lookup
> function has found for the request-uri that is arrived ( Is it possible to
> know if I have a single contact or a parallel forking?) and, if there are
> more than one contact associated to the sip uri, how can I go to serve the
> next contact in list without sending a reply for the destinations that I
> have to block?
> Any suggestion?
>
> Thanks
> Daniele
> _______________________________________________
> Serusers mailing list
> serusers@lists.iptel.org
> http://lists.iptel.org/mailman/listinfo/serusers