aboutsummaryrefslogtreecommitdiffstats
path: root/lib/diameter/doc
AgeCommit message (Collapse)Author
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.
2013-02-16Add application_opt() request_errorsAnders Svensson
Configuring the value 'callback' all errors detected in incoming requests to result in a handle_request callback. The default value 'answer_3xxx' is the previous behaviour in which diameter answers protocol errors without a callback.
2013-02-11Add transport_opt() length_errorsAnders Svensson
The value determines whether or not an unexpected message length in the header of an incoming messages causes the peer process to exit, the message to be discarded or handled as usual. The latter may only be appropriate for message-oriented transport (eg. SCTP) since stream-oriented transport (eg. TCP) may not be able to recover the message boundary once a length error has occurred.
2013-02-10Simplify and document diameter_tcp fragment timerAnders Svensson
Don't start a new timer with each incoming message. Instead, start a timer at timeout and flush after two successive timeouts with no message reception.
2013-02-08Document the existence of the RFC 6733 dictionariesAnders Svensson
2013-01-29Prepare releaseOTP_R16A_RELEASE_CANDIDATEErlang/OTP
2013-01-25Update copyright yearsBjörn-Egil Dahlberg
2013-01-23Warn about applications/capabilities mismatches in docAnders Svensson
2013-01-23Minor documentation fixesAnders Svensson
2013-01-18Merge branch 'nox/enable-silent-rules/OTP-10726'Björn-Egil Dahlberg
* nox/enable-silent-rules/OTP-10726: Implement ./otp_build configure --enable-silent-rules
2013-01-15Implement ./otp_build configure --enable-silent-rulesAnthony Ramine
With silent rules, the output of make is less verbose and compilation warnings are easier to spot. Silent rules are disabled by default and can be disabled or enabled at will by make V=0 and make V=1.
2013-01-15Update release notesErlang/OTP
2012-11-26Prepare releaseOTP_R15B03Erlang/OTP
2012-11-23Merge branch 'anders/diameter/doc/OTP-10568' into maintAnders Svensson
* anders/diameter/doc/OTP-10568: Update doc for RFC 6733 Add copies of RFC's 6733 and 6737
2012-11-23Add missing diameter_codec(3) contentAnders Svensson
2012-11-22Update doc for RFC 6733Anders Svensson
2012-11-22Add copies of RFC's 6733 and 6737Anders Svensson
6733 deprecates 3588.
2012-11-22Add content to diameter_codec(3) and diameter_make(3)Anders Svensson
2012-11-22Add reference pages diameter_codec(3) and diameter_make(3)Anders Svensson
Not yet any content to speak of.
2012-11-19Insert missing 1.1 release notesAnders Svensson
2012-11-18Fix broken doc linksAnders 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-18Add entities file for cross-references (mostly)Anders Svensson
Saves typing, more readable, less error prone.
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-18Merge branch 'anders/diameter/CEA_timeout/OTP-10554' into maintAnders Svensson
* anders/diameter/CEA_timeout/OTP-10554: Implement transport_opt() capx_timeout Document transport_opt() capx_timeout Minor doc fixes
2012-11-18Merge branch 'anders/diameter/transport_data/OTP-10566' into maintAnders Svensson
* anders/diameter/transport_data/OTP-10566: Add a testcase Allow a handle_request callback to return a #diameter_packet{}
2012-11-18Merge branch 'anders/diameter/transport_shutdown/OTP-10493' into maintAnders Svensson
* anders/diameter/transport_shutdown/OTP-10493: Add simple DPR suite Correct diameter:remove_transport/2 doc Fix broken doc link Ensure watchdog dies with transport if DPR was sent Remove dead clause Implement transport_opt() disconnect_cb Document transport_opt() disconnect_cb
2012-11-16Add start/stop service_event()Anders Svensson
2012-11-15Document transport_opt() capx_timeoutAnders Svensson
2012-11-15Minor doc fixesAnders Svensson
Presentation (order, cross-references), not content.
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-15Correct diameter:remove_transport/2 docAnders Svensson
Error can be returned if the service process goes down while remove_transport is ongoing.
2012-11-15Fix broken doc linkAnders Svensson
Broken in commit e28ced7b.
2012-11-15Document transport_opt() disconnect_cbAnders Svensson
Callback makes sending of DPR configurable.
2012-11-05Document peer_ref() service_infoAnders Svensson
2012-11-05Document service_opt() restrict_connectionsAnders Svensson
Configuration will allow relaxation of the guard against multiple transport connections to the same peer.
2012-11-05Clarify diameter_transport docAnders Svensson
2012-11-05Remove pre-OTP configure supportAnders Svensson
It's neither used nor maintained.
2012-11-05Document sequence masksAnders Svensson
Allow 32-bit Hop-by-Hop and End-to-End identifiers to be modified by replacing the topmost bits with a constant value. This allow services on different nodes to generate globally unique identifiers by having each node mask in its own constant.
2012-10-09Improve other diameter_app docAnders Svensson
2012-10-09Document eval_packetAnders Svensson
2012-09-03Prepare releaseOTP_R15B02Erlang/OTP
2012-08-31Update copyright yearsBjörn-Egil Dahlberg
2012-08-30Fix broken referencesAnders Svensson
2012-08-30Correct doc on AVP P flag and add warning about its deprecationAnders Svensson
2012-08-30Fix/tweak references to other applicationsAnders Svensson
2012-08-30Minor formatting fixesAnders Svensson
Type references enclosed in <c></c>.