[Kamailio-Users] Accounting: How to avoid a fraudulent BYE with lower CSeq?
miconda at gmail.com
Thu Dec 18 20:34:22 CET 2008
On 12/18/08 17:09, Andreas Granig wrote:
> Iñaki Baz Castillo wrote:
>> Well, failure_route will not be called when receiving a 200 OK in this
>> BYE transaction.
>> failure_route is only invoked for XX responses. 200 can only be
>> handled in on_reply_route, but I don't know if acc flag can be set in
> Ah, yeah, you're right :)
> I think I was discussing this with Daniel some time ago, and as far as I
AFAIK, we discussed about what happens if BYE comes in, proxy is
restarted and then 200OK. BYE transaction was not accounted. So I
suggested the usage of the acc_db_request(). A failed transaction (e.g.,
BYE with a negative reply) can be accounted.
But this one is a case that cannot be solved by using different flags
from acc module. For INVITE, using the t_check_trans() for reply in
onreply_route with latest kamailio version gives the possibility to drop
the reply if there is no ongoing transaction, therefore you can force
the call to fail.
For BYE is different, as you can lost the STOP event, while the call was
> he thought it was save to do so (although it's not enabled for
> reply route, so you could call a route block from within your reply
> route to get around this instead of using failure route, but no
> guarantees for that)...
The problem with this approach is that acc_*_request() is looking at
first line to get the method type. However, this can be extended to take
it from CSeq if it is reply not request.
More information about the Users