X-Git-Url: https://git.teslayout.com/public/public/public/?a=blobdiff_plain;f=include%2Fanna%2Fdiameter%2Fcodec%2FEngineImpl.hpp;h=1884083e6d3b1518683c6b2dd4d9039d4a628a36;hb=431d322261ecfd6ef354abb392edbf8987e2407a;hp=bb7c6f56b1f474564cf7e951a11f1501f5ca8410;hpb=a8cde75abebb30020be4d9cb10d898f8986e124c;p=anna.git diff --git a/include/anna/diameter/codec/EngineImpl.hpp b/include/anna/diameter/codec/EngineImpl.hpp index bb7c6f5..1884083 100644 --- a/include/anna/diameter/codec/EngineImpl.hpp +++ b/include/anna/diameter/codec/EngineImpl.hpp @@ -178,6 +178,7 @@ private: anna::xml::DTDMemory a_dtd; ValidationDepth::_v a_validationDepth; ValidationMode::_v a_validationMode; + bool a_singleFailedAVP; bool a_ignoreFlags; FixMode::_v a_fixMode; bool a_selectStackWithApplicationId; // default behaviour: let the user switch the stack (false for this boolean) @@ -322,7 +323,20 @@ public: */ FixMode::_v getFixMode() const throw() { return a_fixMode; } + /** + * Sets single FailedAVP. True by default. If false, and more than one wrong avp are found during message + * decoding and or validation, a new Failed-AVP will be added to the dynamic answer provided. The standard + * talks about only one but it is open to do this. + * + * \param single Single Failed-AVP boolean. + */ + void setSingleFailedAVP(bool single = true) throw() { a_singleFailedAVP = single; } + /** + * Returns single Failed-AVP boolean. + * \return Failed-AVP could be one (true) or more (false) in answer message. + */ + bool getSingleFailedAVP() const throw() { return a_singleFailedAVP; } /** DTD document for xml message parsing