X-Git-Url: https://git.teslayout.com/public/public/public/?a=blobdiff_plain;f=source%2Fdiameter%2Fcodec%2FMessage.cpp;h=0b4d8020c35975069de180a998a3dfa1b24fbd23;hb=5a83889abd106f92def9a9f76a8e6eb81fb943ae;hp=28a1d4587d27f6618c5170be15fe1bd390ec0fc0;hpb=ceba20e0efab1bc4e564c18fe05a9a0047983653;p=anna.git diff --git a/source/diameter/codec/Message.cpp b/source/diameter/codec/Message.cpp index 28a1d45..0b4d802 100644 --- a/source/diameter/codec/Message.cpp +++ b/source/diameter/codec/Message.cpp @@ -150,7 +150,9 @@ bool Message::flagsOK(int &rc) const throw() { const stack::Command *stackCommand = getStackCommand(); if(!stackCommand) { - anna::Logger::error("Impossible to decide if flags are correct because stack command is not identified. Assume flags ok", ANNA_FILE_LOCATION); + std::string msg = "Impossible to decide if flags are correct because stack command is not identified. Assume flags ok for Message "; + msg += anna::diameter::functions::commandIdAsPairString(a_id); + anna::Logger::error(msg, ANNA_FILE_LOCATION); //rc = helpers::base::AVPVALUES__Result_Code::?????; return true; }; @@ -165,12 +167,16 @@ bool Message::flagsOK(int &rc) const throw() { if(stackCommand->isRequest() != isRequest()) ok = false; // en teoria es imposible salir por aqui: blindado en la dtd if(isRequest() && errorBit()) { - anna::Logger::error("E(rror) bit is not allowed at diameter requests", ANNA_FILE_LOCATION); + std::string msg = "E(rror) bit is not allowed at diameter requests as "; + msg += stackCommand->getName(); + anna::Logger::error(msg, ANNA_FILE_LOCATION); ok = false; } if(isAnswer() && potentiallyReTransmittedMessageBit()) { - anna::Logger::error("T(Potentially re-transmitted message) bit is not allowed at diameter answers", ANNA_FILE_LOCATION); + std::string msg = "T(Potentially re-transmitted message) bit is not allowed at diameter answers as "; + msg += stackCommand->getName(); + anna::Logger::error(msg, ANNA_FILE_LOCATION); ok = false; } @@ -185,7 +191,9 @@ bool Message::flagsOK(int &rc) const throw() { // is set to one (1) or the bits in the Diameter header are set // incorrectly. if((a_flags & 0x0f) != 0x00) { - anna::Logger::error("Any (or more than one) of the reserved message flags bit has been activated. Reserved bits must be null", ANNA_FILE_LOCATION); + std::string msg = "Any (or more than one) of the reserved message flags bit has been activated. Reserved bits must be null. Message is "; + msg += stackCommand->getName(); + anna::Logger::error(msg, ANNA_FILE_LOCATION); rc = helpers::base::AVPVALUES__Result_Code::DIAMETER_INVALID_BIT_IN_HEADER; return false; } @@ -764,7 +772,7 @@ void Message::loadXML(const std::string &xmlPathFile) throw(anna::RuntimeExcepti //----------------------------------------------------------- Message::fromXML() //------------------------------------------------------------------------------ void Message::fromXML(const anna::xml::Node* messageNode) throw(anna::RuntimeException) { - // + // const anna::xml::Attribute *version, *name, *code, *flags, *pbit, *ebit, *tbit, *appid, *hbh, *ete; version = messageNode->getAttribute("version", false /* no exception */); name = messageNode->getAttribute("name", false /* no exception */); @@ -775,7 +783,7 @@ void Message::fromXML(const anna::xml::Node* messageNode) throw(anna::RuntimeExc tbit = messageNode->getAttribute("t-bit", false /* no exception */); appid = messageNode->getAttribute("application-id"); // required hbh = messageNode->getAttribute("hop-by-hop-id", false /* no exception */); - ete = messageNode->getAttribute("end-by-end-id", false /* no exception */); + ete = messageNode->getAttribute("end-to-end-id", false /* no exception */); int i_aux; unsigned int u_aux; @@ -942,7 +950,7 @@ void Message::fromXML(const anna::xml::Node* messageNode) throw(anna::RuntimeExc //------------------------------------------------------------- Message::asXML() //------------------------------------------------------------------------------ anna::xml::Node* Message::asXML(anna::xml::Node* parent) const throw() { - // + // anna::xml::Node* result = parent->createChild("message"); // Dictionary stack command: const stack::Command *stackCommand = getStackCommand(); @@ -964,7 +972,7 @@ anna::xml::Node* Message::asXML(anna::xml::Node* parent) const throw() { result->createAttribute("application-id", anna::functions::asString(a_applicationId)); result->createAttribute("hop-by-hop-id", anna::functions::asString(a_hopByHop)); - result->createAttribute("end-by-end-id", anna::functions::asString(a_endToEnd)); + result->createAttribute("end-to-end-id", anna::functions::asString(a_endToEnd)); // Avps: for(const_avp_iterator it = avp_begin(); it != avp_end(); it++) {