aboutsummaryrefslogtreecommitdiffstats
path: root/lib/diameter/doc/src/diameter_app.xml
AgeCommit message (Collapse)Author
2013-12-02Merge branch 'maint'Anders Svensson
2013-11-29Fix documentation typosAnders Svensson
2013-06-02Merge branch 'maint'Anders Svensson
2013-06-02Fix setting of Failed-AVP on {answer_message, 5xxx} from handle_requestAnders Svensson
RFC 6733 says that certain 5xxx result codes must be accompanied by Failed-AVP, and decode populates #diameter_packet.errors with Result-Code/AVP pairs for errors it detects. However, Failed-AVP was not set in the outgoing answer if the handle_request callback returned {answer_message, 5xxx}. It is now set with the AVP from the first pair with the specified Result-Code, if found. Note that {answer_message, 5xxx} doesn't handle all cases in which a 5xxx answer is required, only that in which the setting above is appropriate. If it isn't then handle_request should construct its answer and return {reply, Ans}.
2013-04-19Convert XML files to UTF-8Hans Bolinder
2013-03-17More flexible distribution configAnders Svensson
Allow both share_peers and use_shared_peers to be a list of nodes, or a function that returns a list of nodes.
2013-03-17Document distribution configAnders Svensson
2013-02-17Answer 5xxx errors with application_opt() request_errors = answerAnders Svensson
RFC 3588 allowed only 3xxx result codes in an answer-message (that is, an answer that sets the E-bit) while RFC 6733 also allows 5xxx result codes. Setting request_errors = answer tells diameter to answer 5xxx errors itself. Returning {answer_message, integer()} from a handle_request callback allows both 3xxx and 5xxx result codes to be set. {protocol_error, integer()} is retained for 3xxx result codes.
2013-02-16Be less brutal in setting Result-Code/Failed-AVPAnders Svensson
When receiving a request for which errors have been detected during decode, diameter previously used the errors list in the decoded diameter_packet record to unconditionally set Result-Code and Failed-AVP in the outgoing answer. It wasn't particularly delicate in doing so however and would happily set a 5xxx Result-Code even if a handle_request callback returned an answer-message, leading to an encode error. This behaviour became even less endearing as of commit ac452e28, which made it possible to handle_request to take place even for protocol errors. (ie. When a callback typically should return an answer-message.) This commit fixes the behaviour by only setting a value that's appropriate for the answer in question, either a 3xxx or a 5xxx, depending on if the answer's an answer-message or not. It also allows handle_request to prevent diameter from setting anything by setting errors = false in a returned diameter_packet. Ideally it should have been errors = [] but the empty list is the default value for the errors field and changing the default (ideally there shouldn't have been one) would require recompilation of all modules including diameter.hrl: choose the less attractive 'false' to avoid such backwards incompatibility. The request reception is also refactored somewhat to shorten some call chains.
2012-11-22Update doc for RFC 6733Anders Svensson
2012-11-22Add content to diameter_codec(3) and diameter_make(3)Anders Svensson
2012-11-18Generate intra-document referencesAnders Svensson
2012-11-18Remove superfluous function markersAnders Svensson
2012-11-18Use entities for cross referencesAnders Svensson
2012-11-18<code> -> <pre> in documentationAnders Svensson
The former doesn't allow seealso content, which erl_docgen doesn't enforce, resulting in mangled PDF.
2012-11-15Allow a handle_request callback to return a #diameter_packet{}Anders Svensson
This allows it to set transport_data and header, inappropriately so even.
2012-11-15Fix broken doc linkAnders Svensson
Broken in commit e28ced7b.
2012-10-09Improve other diameter_app docAnders Svensson
2012-10-09Document eval_packetAnders Svensson
2012-08-30Fix broken referencesAnders Svensson
2012-08-30Correct doc on AVP P flag and add warning about its deprecationAnders Svensson
2012-08-29Assorted doc improvementsAnders Svensson
2012-08-29Terminology and other clarifications, more referencesAnders Svensson
Diameter node/peer having been the most vicious terminology blunder.
2012-08-29Clarify documentation on application stateAnders Svensson
2011-09-27Merge branch 'anders/diameter/relay_behaviour/OTP-9583' into devAnders Svensson
* anders/diameter/relay_behaviour/OTP-9583: Fix and clarify relay behaviour
2011-09-26Fix and clarify relay behaviourAnders Svensson
Leave it up to a handle_request callback to decide whether or not to filter the peer from which the incoming request was sent. Reply with 3002 (DIAMETER_UNABLE_TO_DELIVER) on anything but an answer from the peer.
2011-09-26Fix and clarify semantics of peer filtersAnders Svensson
An eval filter returning a non-true value caused the call process to fail and the doc was vague on how an exception was treated. Clarify that the non-tuple host/realm filters assume messages of a certain form. Various minor corrections to align code and doc.
2011-05-20Various documentation fixes and improvements.Anders Svensson
Added an introductory chapter to the User's Guide as well as more detailed release notes.
2011-05-19Fix broken doc links.Anders Svensson
2011-05-18Initial commit of the diameter application.Anders Svensson
The application provides an implementation of the Diameter protocol as defined in RFC 3588.