Under GSM this could block as long as a downlink LAPDm message can block.
| 650 | #if UNUSED |
| 651 | // Under GSM this could block as long as a downlink LAPDm message can block. |
| 652 | void CSL3StateMachine::csl3HandleSipMsg(SIP::DialogMessage *sipmsg) |
| 653 | { |
| 654 | bool found = false; |
| 655 | TranEntry *tran = gNewTransactionTable.ttFindById(sipmsg->mTranId); |
| 656 | if (tran && ! tran->deadOrRemoved()) { |
| 657 | found = true; |
| 658 | LOG(DEBUG) << "sip message code="<<sipmsg->mSIPStatusCode <<" handled by trans "<<tran->tranID(); |
| 659 | // Call deletes it |
| 660 | tran->lockAndInvokeSipMsg(sipmsg); |
| 661 | } |
| 662 | #if 0 |
| 663 | ScopedLock lock(gNewTransactionTable.mLock,__FILE__,__LINE__); |
| 664 | int code = sipmsg->sipStatusCode(); |
| 665 | LOG(DEBUG) << "Received Dialog message "<<LOGVAR(callid)<<LOGVAR(sipmsg); |
| 666 | // TODO: We should have a back pointer from sip so we dont have to search for this. It might go in the as yet non-existent mobility management layer. |
| 667 | for (TransactionMap::iterator itr = gNewTransactionTable.mTable.begin(); itr!=gNewTransactionTable.mTable.end(); ++itr) { |
| 668 | TranEntry *tran = itr->second; |
| 669 | if (tran->deadOrRemoved()) continue; |
| 670 | if (tran->SIPCallID() == callid) { |
| 671 | found = true; |
| 672 | LOG(DEBUG) << "sip message code="<<code <<" handled by trans "<<tran->tranID(); |
| 673 | tran->lockAndInvokeSipMsg(sipmsg); |
| 674 | } |
| 675 | } |
| 676 | #endif |
| 677 | if (!found) { LOG(DEBUG) << "sip message code="<<sipmsg->mSIPStatusCode <<" no matching transaction found."; } |
| 678 | } |
| 679 | #endif |
| 680 | |
| 681 | #if UNUSED |
nothing calls this directly
no test coverage detected