Comment #5 on issue 1389 by [email protected]: ServerTransaction does not timeout
http://code.google.com/p/mobicents/issues/detail?id=1389

Suppose I have a Server that only responds to SUBSCRIBEs, PUBLISHs and OPTIONS.

If some client starts sending INFO requests to it within a SUBSCRIBE dialog, the JAIN SIP Provider will automatically create a transaction for it, and the Server will never respond to it
(as no SBB is listening for a SIP INFO).

This will eventually lead to a memory leak at the application even though it never had any bugs.

Going strictly by the spec, there is no timer defined in the "trying" state for non-INVITE
server transactions..nor in the "proceeding" state.

However, this is a gaping hole in the spec, which can be easily exploited to hijack a SIP
Server.

The reason for this gap is that Server transactions are supposed to absorb retransmissions and not generate them. Hence a timer is not required to audit responses sent on STs.

In the non-INVITE client transactions, we have a timer in every state for implementing retransmissions. A natural side-effect being, that transactions are audited and removed in case
of timeouts.


Reply via email to