X-Git-Url: https://git.teslayout.com/public/public/public/?a=blobdiff_plain;f=source%2Fdiameter.comm%2FEntity.cpp;h=17c1ebf9cff2066b076cb1de96c3e00d79e5deb6;hb=ceba20e0efab1bc4e564c18fe05a9a0047983653;hp=67916c7ff09fb6d114d523c2a8f40a3646ce58a2;hpb=93366a0bda79e6fd6e7dad6316bfcf8cc82f5731;p=anna.git diff --git a/source/diameter.comm/Entity.cpp b/source/diameter.comm/Entity.cpp index 67916c7..17c1ebf 100644 --- a/source/diameter.comm/Entity.cpp +++ b/source/diameter.comm/Entity.cpp @@ -90,10 +90,11 @@ int Entity::readSocketId(const Message* message, int maxClientSessions) const th anna::diameter::helpers::base::functions::decodeSessionId(sid, diameterIdentity, high, low /* context-teid */, optional); return (low % maxClientSessions); } - //case anna::diameter::helpers::dcca::ChargingContext::SMS: - //case anna::diameter::helpers::dcca::ChargingContext::MMS: - //default: - // return -1; // IEC model and Unknown traffic types + case anna::diameter::helpers::dcca::ChargingContext::SMS: + case anna::diameter::helpers::dcca::ChargingContext::MMS: + case anna::diameter::helpers::dcca::ChargingContext::Unknown: + default: + return -1; // IEC model and Unknown traffic types } } catch(anna::RuntimeException &ex) { LOGDEBUG( @@ -320,6 +321,18 @@ void Entity::eventPeerShutdown(const ClientSession* clientSession) throw() { ); } +void Entity::eventRequestRetransmission(const ClientSession* clientSession, Message *request) throw() { + LOGWARNING( + std::string msg(clientSession->asString()); + + HopByHop hopByHop = codec::functions::getHopByHop(request->getBody()); // context identification + int retries = request->getRetries(); + + msg += anna::functions::asString(" | eventRequestRetransmission: request with application HopByHop: %u; remaining %d retries", hopByHop, retries); + anna::Logger::warning(msg, ANNA_FILE_LOCATION); + ); +} + std::string Entity::asString() const throw() { std::string result("diameter::comm::Entity { "); std::string realm = a_engine->getRealm();