Fixed #40 in public. We now handle CMServiceAbort correctly.

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@3973 19bc5d8c-e614-43d4-8b26-e1612bc8e597
This commit is contained in:
Kurtis Heimerl 2012-07-31 23:07:04 +00:00
parent e27757e1b6
commit 6344347af0
2 changed files with 18 additions and 0 deletions

View file

@ -714,6 +714,16 @@ void Control::MOCStarter(const GSM::L3CMServiceRequest* req, GSM::LogicalChannel
// Get the Setup message.
// GSM 04.08 5.2.1.2
GSM::L3Message* msg_setup = getMessage(LCH);
// Check for abort, if so close and cancel
if (const GSM::L3CMServiceAbort *cmsab = dynamic_cast<const GSM::L3CMServiceAbort*>(msg_setup)) {
LOG(INFO) << "received CMServiceAbort, closing channel and clearing";
//SIP Engine not started, just close the channel and exit
LCH->send(GSM::L3ChannelRelease());
delete cmsab;
return;
}
const GSM::L3Setup *setup = dynamic_cast<const GSM::L3Setup*>(msg_setup);
if (!setup) {
if (msg_setup) {