MCPcopy Create free account
hub / github.com/RangeNetworks/openbts / csl3HandleSipMsg

Method csl3HandleSipMsg

Control/L3StateMachine.cpp:652–678  ·  view source on GitHub ↗

Under GSM this could block as long as a downlink LAPDm message can block.

Source from the content-addressed store, hash-verified

650#if UNUSED
651// Under GSM this could block as long as a downlink LAPDm message can block.
652void 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

Callers

nothing calls this directly

Calls 7

ttFindByIdMethod · 0.80
deadOrRemovedMethod · 0.80
lockAndInvokeSipMsgMethod · 0.80
sipStatusCodeMethod · 0.80
tranIDMethod · 0.45
beginMethod · 0.45
endMethod · 0.45

Tested by

no test coverage detected