aboutsummaryrefslogtreecommitdiffstats
path: root/lib/diameter/src
AgeCommit message (Collapse)Author
2012-08-26Minor spec fixAnders Svensson
2012-08-26Add realclean target to src/MakefileAnders Svensson
To clean everything out of ebin since $(TARGET_FILES) isn't constant.
2012-08-26Use gen_sctp:peeloff/2 to transfer association ownershipAnders Svensson
The transport process is now controlling process even in the accept case.
2012-08-26Don't let peer_up/peer_down take down the service processAnders Svensson
This would previously have resulted in all of a service's connections going down, especially bad for a server.
2012-08-26Turn last field of #diameter_app{} into an options listAnders Svensson
To make for easier adding of future options. The record is only passed into transport modules so the only compatibility issue is with these. (No issue for diameter_{tcp,sctp} and unlikely but theoretically possible for any other implementations, which probably don't exist at this point.)
2012-08-26Make service_info behave with nested item lists and non-atomsAnders Svensson
2012-08-26Add 'connections' and 'peers' service_infoAnders Svensson
These provide alternates to 'transport' that group information, and present statistics, per transport established transport connection and peer Origin-Host instead of per reference returned by diameter:add_transport/2.
2012-08-26Maintain watchdog states in service_infoAnders Svensson
2012-08-24Add events for watchdog state transitionsAnders Svensson
2012-08-24Improve statistics test casesAnders Svensson
2012-08-24Statistics fixesAnders Svensson
Statistics are deleted as a consequence of diameter:remove_transport/2.
2012-08-24Deal with the fact that capabilities config may be incompleteAnders Svensson
A transport can be configured before its service so handle insufficient configuration instead of crashing at CER/CEA encode.
2012-08-23Allow an answer to opt out of setting Result-Code/Failed-AVPAnders Svensson
By returning it in a length 1 list from a handle_request callback. This is the aforementioned roll your own.
2012-08-23Set Result-Code as an optional AVP in reply to request containing errorsAnders Svensson
Previously assumed it had arity 1, which is not necessarily the case. Whether or not we should do this is probably debatable. There should at least be a way for the user to roll their own.
2012-08-23Fix Destination-Host/Realm extraction for arbitrary dictionariesAnders Svensson
2012-08-23Add diameter_transport for transport start indirectionAnders Svensson
Module contains a transport start function that calls an a specified function, and more.
2012-08-23Allow multiple transport_module and transport_configAnders Svensson
Transports are started one after the other if a connection is not established with the timeout that can now be specified with transport_config. For example, try an SCTP connect first, a TCP connect if it doesn't succeed.
2012-08-22Fix result code statistics for arbitrary dictionariesAnders Svensson
The code assumed the common dictionary, which was just plain wrong.
2012-08-22Count incoming answers containing AVP decode errorsAnders Svensson
2012-08-22Fix counter typoAnders Svensson
2012-07-04Encode fixAnders Svensson
The header is used when incrementing counters. Sending answers in the list form was broken because of this.
2012-06-05Update to work with whitespace in exec pathLukas Larsson
OTP-10106 OTP-10107
2012-03-26appup for OTP-9824Anders Svensson
2011-12-20Merge branch 'anders/diameter/testsuites/OTP-9829' into maintAnders Svensson
* anders/diameter/testsuites/OTP-9829: (21 commits) Install example dictionaries Move example code to examples/code Move example dictionaries to examples/dict Set name/prefix at compilation, not in dictionaries Add RFC 4004 (MIP) dictionary Add RFC 4740 (SIP) dictionary Add RFC 4072 (EAP) dictionary Add RFC 4006 (CC) dictionary Add RFC 4005 (NAS) dictionary Add standards testcase to compiler suite Remove {init,end}_per_group workaround Use new syntax for specifying ct group properties Increase timetrap in compiler suite Minor capx suite tweaks Minor makefile tweak Remove trailing whitespace Update skip condition in gen_sctp suite Reintroduce gen_sctp suite Remove delay from connect in transport suite Add codec testcase for decode of unknown AVPs ...
2011-12-20Merge branch 'anders/diameter/compilation_options/OTP-9826' into maintAnders Svensson
* anders/diameter/compilation_options/OTP-9826: Allow module name mapping at dictionary compilation Fix blunder that broke name/prefix compilation options
2011-12-16Install example dictionariesAnders Svensson
2011-12-16Move example code to examples/codeAnders Svensson
2011-12-16Allow module name mapping at dictionary compilationAnders Svensson
This is to make the 'inherits' option usable with dictionaries that inherit specific AVPs. Something like "diameterc -inherts from/to" effectively replaces "@inherits from" in the source dictionary with "@inherits to".
2011-12-16Fix blunder that broke name/prefix compilation optionsAnders Svensson
2011-12-16Ensure capabilities exchange can't fail too earlyAnders Svensson
In particular, not before the service process has a monitor on the watchdog since the watchdog's exit reason is meaningful.
2011-12-09Merge branch 'anders/diameter/suites_and_dialyzer/OTP-9781'Anders Svensson
* anders/diameter/suites_and_dialyzer/OTP-9781: Tell dialyzer not to warn about unused functions Add compiler testcases for generation and compilation to beam Fix semantic checks on AVP qualifiers Minor codegen/debug fix Deal with crypto:start() failure in TLS suite Don't assume empty sndrcvinfo in diameter_sctp
2011-12-08Tell dialyzer not to warn about unused functionsAnders Svensson
Depending on the dictionary, generated dictionary modules may contain unused functions included from diameter_gen.hrl. There may still be warnings however since even used functions can contain code that isn't reached for a given dictionary. It would be useful for diameter to generate spec attributes for a dictionary's generated records but the format of these is currently undocumented.
2011-12-08Fix semantic checks on AVP qualifiersAnders Svensson
Didn't quite interpret '*' as RFC 3588 dictates. In particular, the interpretation depends on what's being qualified, a required, optional or fixed AVP.
2011-12-08Minor codegen/debug fixAnders Svensson
Writing a dictionary to file failed.
2011-12-07Merge branch 'anders/diameter/suites_and_dialyzer/OTP-9781'Anders Svensson
* anders/diameter/suites_and_dialyzer/OTP-9781: Minor diameter_dict_scanner fix Skip sctp tests on {error, esocktnosupport} Ensure that TLS will be available in TLS suite
2011-12-07Merge branch 'anders/diameter/callback_redirection/OTP-9777'Anders Svensson
* anders/diameter/callback_redirection/OTP-9777: Update documentation Use diameter_callback in relay and tls suites Use diameter_callback in failover suite Update app suite Smarter diameter_callback
2011-12-07Merge branch 'anders/diameter/dict_error_identification/OTP-9639'Anders Svensson
* anders/diameter/dict_error_identification/OTP-9639: (27 commits) Update documentation Improve base_rfc3588.dia formatting Make typo fix backwards compatible Fix base_rfc3588.dia typo Check compiler dependencies in app suite Move type definitions into diameter.erl Fix interpretation of vendor id in @grouped Add range checks on dictionary integers Don't explicitly load inherited modules Tweak diameter_make interface Add format testcase to compiler suite Add diameter_dict_util:format/1 for reconstructing a dictionary file Make diameter_types usable with @codecs Minor codegen tweaks Remove unnecessary includes Add compiler suite Update app suite Update codec suite Vendor id fixes No longer inherit common dictionary in relay dictionary ...
2011-12-07Don't assume empty sndrcvinfo in diameter_sctpAnders Svensson
It isn't always the case. The information isn't currently used in any case.
2011-12-06Minor diameter_dict_scanner fixAnders Svensson
Spec was wrong. Scanning a file that ended with $' or contained an empty $'-delimited string would have failed.
2011-12-06Smarter diameter_callbackAnders Svensson
The module was originally just intended as a minimal callback implementation that could be used as a template. Being able to order just a subset of callbacks (with reasonable defaults) makes for simpler code in many cases however so ready support for this can be useful.
2011-12-05Improve base_rfc3588.dia formattingAnders Svensson
2011-12-05Make typo fix backwards compatibleAnders Svensson
Also, add better definitions for Termination-Cause so as to avoid grotesquely long macro names in the generated hrl, and for consistency with other enums. That said, the names are still too long to be very practical.
2011-12-05Fix base_rfc3588.dia typoAnders Svensson
2011-12-05Move type definitions into diameter.erlAnders Svensson
2011-12-05Fix interpretation of vendor id in @groupedAnders Svensson
A value is required to be the same as any specified with @avp_vendor_id but otherwise the two locations are equivalent. Both possibilities are allowed since @avp_vendor_id is required for AVPs of types other than Grouped (modulo it not really needing to exist at all: see commit 943266c9) and since the grammar parsed in @grouped (from RFC 3588) allows it.
2011-12-05Add range checks on dictionary integersAnders Svensson
Check that values that should be Unsigned32 actually are.
2011-12-04Don't explicitly load inherited modulesAnders Svensson
Just use include options to add to the code path and expect that dependent modules will either already have been loaded or will be loaded dynamically, thereby avoiding having a module being left as both current and old code when compiling concurrently. Not a problem for a human user interactively compiling one module at a time but the compiler test suite for one will compile concurrently. In any case, leaving behind old code is probably not what someone would expect while relying on the code path probably is.
2011-12-04Tweak diameter_make interfaceAnders Svensson
2011-12-04Add diameter_dict_util:format/1 for reconstructing a dictionary fileAnders Svensson
2011-12-04Make diameter_types usable with @codecsAnders Svensson