aboutsummaryrefslogtreecommitdiffstats
path: root/lib/diameter/doc/src
AgeCommit message (Collapse)Author
2013-06-11Merge branch 'anders/diameter/request_spawn/OTP-11060' into maintAnders Svensson
* anders/diameter/request_spawn/OTP-11060: Make spawn options for request processes configurable
2013-06-10Make spawn options for request processes configurableAnders Svensson
That is, for the process that's spawned for each incoming Diameter request message.
2013-06-10Let diameter_{tcp,sctp} be configured with permissible remote addressesAnders Svensson
Option 'accept' allows remote addresses to be configured as tuples or regular expressions. The remote addresses for any incoming (aka accepted) connection/association are matched against the configured values, any non-matching address causing the connection/association to be aborted.
2013-06-02Merge branch 'anders/diameter/5xxx_failed_avp/OTP-11092' into maintAnders Svensson
* anders/diameter/5xxx_failed_avp/OTP-11092: Fix setting of Failed-AVP on {answer_message, 5xxx} from handle_request
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-06-02Respect Host-IP-Address configurationAnders Svensson
Addresses returned from a transport module were always used to populate Host-IP-Address AVP's in an outgoing CER/CEA, which precluded the sending of a VIP address. Transport addresses are now only used if Host-IP-Address is unspecified. In other words, respect any configured Host-IP-Address, regardless of the physical addresses returned by the transport. To use the physical addresses, don't configure Host-IP-Address.
2013-04-12Merge branch 'anders/diameter/watchdog_leak/OTP-11019' into maintAnders Svensson
* anders/diameter/watchdog_leak/OTP-11019: Minor doc fix Add testcase to exercise reconnect behaviour Fix watchdog table leak
2013-04-11Minor doc fixAnders Svensson
2013-04-11Make explicit local address to diameter_tcp:start/3 optionalAnders Svensson
Use the default address address (as selected by gen_tcp) if none is configured, passing it in the new 'connected' message introduced by the previous commit. The corresponding update to diameter_sctp has to wait until problems with inet:sockname/1 are resolved: the function currently only returns one address, and sometimes {0,0,0,0}. See OTP-11018.
2013-04-11Add transport interface 'connected' message with local address listAnders Svensson
A transport module can return a local address list from its start/3 function in order to specify addresses to be used as Host-IP-Address during capabilities exchange. Now allow addresses to be communicated in a 'connected' message in the case of a connecting transport, so that diameter_tcp (in particular) can make local address configuration optional, communicating the gen_tcp default after connection establishment instead.
2013-04-06Fix faulty capitalization in generated release notesAnders Svensson
Diameter = the protocol diameter = the Erlang application
2013-03-27Merge branch 'anders/diameter/app_not_configured/OTP-10972' into maintAnders Svensson
* anders/diameter/app_not_configured/OTP-10972: Fix faulty sequence validation Add config suite Deal with config errors detected at transport start less brutally Move most transport_opt() validation into diameter_config Minor doc/spec fix Minor diameter_lib cleanup
2013-03-26Minor doc/spec fixAnders Svensson
'infinity' is a valid transport_config timeout.
2013-03-24Documentation fixesAnders Svensson
Fix errors and omissions related to dictionary compilation.
2013-03-19Merge branch 'maint-r16' into maintAnders Svensson
2013-03-19Prepare releaseErlang/OTP
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-03-12Tweak okay -> suspect configAnders Svensson
Make it just a number of timeouts, without a new DWR being sent.
2013-03-04Add transport_opt() watchdog_configAnders Svensson
To make the number of watchdogs sent before the transitions REOPEN -> OKAY and OKAY -> SUSPECT configurable. Using anything other then the default config is non-standard and should only be used for test.
2013-02-25Prepare releaseOTP_R16BErlang/OTP
2013-02-22Add RFC 6733 commentary to SoC chapterAnders Svensson
The commentary is not yet complete. It currently stops at chapter 4 of the RFC.
2013-02-20Remove cruft from doc MakefileAnders 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.
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 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