aboutsummaryrefslogtreecommitdiffstats
path: root/lib/diameter
AgeCommit message (Collapse)Author
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 format testcase to compiler suiteAnders Svensson
Plus additional parsing tests.
2011-12-04Add diameter_dict_util:format/1 for reconstructing a dictionary fileAnders Svensson
2011-12-04Make diameter_types usable with @codecsAnders Svensson
2011-12-04Minor codegen tweaksAnders Svensson
2011-12-02Remove unnecessary includesAnders Svensson
2011-12-02Add compiler suiteAnders Svensson
2011-12-02Update app suiteAnders Svensson
2011-12-02Update codec suiteAnders Svensson
2011-12-02Vendor id fixesAnders Svensson
@vendor is only required if the id is actually needed. That is, if there is a locally defined AVP whose V flag is set and which does not have a vendor id set by @avp_vendor_id. Also, in the case of an inherited AVP, fix avp_name/2 in a generated dictionary module defaulting vendor id from @vendor in the inheriting dictionary but avp_header/1 defaulting it from the inherited dictionary. In both cases the vendor id now defaults from @vendor in the inherited dictionary. Note that @avp_vendor_id from the inherited dictionary is ignored: any changes from @vendor have to be explicit in the inheriting dictionary. A better alternative to @avp_vendor_id is to simply inherit from dictionaries setting the appropriate @vendor but this was previously somewhat broken so @avp_vendor_id was needed to set the id of an AVP whose definition was copied from another source into a dictionary that only inherited from the common dictionary (which doesn't set V on any AVPs).
2011-12-02No longer inherit common dictionary in relay dictionaryAnders Svensson
Base AVPs used for relaying and statistics are always taken from the common dictionary. This is consistent with the way that Route-Record is handled for one, and statistics should not rely on the dictionary of any specific application.
2011-12-02Adapt diametercAnders Svensson
2011-12-02Adapt diameter_makeAnders Svensson
2011-12-02Always modify code with diameter_exprecsAnders Svensson
A dictionary need define neither messages nor grouped AVPs, in which case no record definitions are generated. However, the generated module still includes diameter_gen.hrl and this requires some functions diameter_exprecs would otherwise insert, even if the code that uses these will not be called.
2011-12-02Adapt diameter_codegenAnders Svensson
2011-12-02diameter_spec_util -> diameter_dict_util and adapt to parserAnders Svensson
Errors are now detected after the parse with format_error/1 providing understandable error messages, pointing to the offending line number(s) in the dictionary source.
2011-12-02Replace dictionary file parserAnders Svensson
The previous parse was very adhoc and simply crashed on any kind of input error, providing no identification of the objectionable input that caused the parse to fail. The new parser is generated from a yecc grammar, making it easier both to understand what it is that's being parsed and to provide useful diagnostics to the user in case of error.
2011-11-30Minor documentation fixesAnders Svensson
2011-11-16Merge branch 'anders/diameter/release_R15A'Anders Svensson
* anders/diameter/release_R15A: Version -> 0.11, update appup, minor app suite fix
2011-11-16Merge branch 'anders/diameter/app_suite_vs_sasl/OTP-9704'Anders Svensson
* anders/diameter/app_suite_vs_sasl/OTP-9704: Add sasl to app testcases to placate systools
2011-11-15Version -> 0.11, update appup, minor app suite fixAnders Svensson
2011-11-11Add sasl to app testcases to placate systoolsAnders Svensson
A recent sasl change results in a missing_sasl warning/error that causes the release and relup testcases to fail.
2011-11-11Merge branch 'anders/diameter/capabilities_cb/OTP-9654'Anders Svensson
* anders/diameter/capabilities_cb/OTP-9654: Update documentation Add capx suite Accept any 2xxx result code in CEA Rename some functions plus comment tweak Send events for connection establishment failure Use trivial capabilities callback in traffic suite Add capabilities_cb transport option Minor tls_ack simplification diameter_dbg:log -> diameter_lib:log
2011-11-11Merge branch 'anders/diameter/make/OTP-9638'Anders Svensson
* anders/diameter/make/OTP-9638: Fix comment typo Simplify handling of generated hrls in testsuites Minor dependency fix Target cleanup in test/Makefile
2011-11-10Update documentationAnders Svensson
2011-11-10Add capx suiteAnders Svensson
Tests error handling at capabilities exchange.
2011-11-10Accept any 2xxx result code in CEAAnders Svensson
2011-11-10Rename some functions plus comment tweakAnders Svensson
In diameter_service: make_packet -> make_request_packet make_header -> make_request_header make_reply_packet -> make_answer_packet
2011-11-10Send events for connection establishment failureAnders Svensson
If a peer fsm process exits then the exit reason is received by the service process in a 'DOWN' message. If the reason is the one generated by diameter_peer_fsm:close/2, which is called to signal a non-transport failure before the completion of capabilities exchange (eg. receiving an unsuccessful CEA), then an event is sent to any subscribers. Also, tweak capabilities_cb return values for more informative event data.
2011-11-10Use trivial capabilities callback in traffic suiteAnders Svensson
2011-11-10Add capabilities_cb transport optionAnders Svensson
Value is a function that's applied to the transport reference and capabilities record after capabilities exchange. If a callback returns anything but 'ok' then the connection is closed. In the case of an incoming CER, the callback can return a result code with which to answer. Multiple callbacks can be specified and are applied until either all return 'ok' or one doesn't. Also, include Origin-State-Id in answers where it was previously omitted.
2011-11-10Minor tls_ack simplificationAnders Svensson
We're already monitoring the transport process, no need to do so again.
2011-11-10diameter_dbg:log -> diameter_lib:logAnders Svensson
Should have been included in 5af64c7d57d83ce35bfd7b15ac3ce6ec7459fd73.
2011-11-10Fix comment typoAnders Svensson
2011-11-10Simplify handling of generated hrls in testsuitesAnders Svensson
Just morph include into include_lib when releasing. Not using include_lib here is due to generated hrls not residing in diameter/include until after release. See release.sed.
2011-11-09Minor dependency fixAnders Svensson
2011-11-09Target cleanup in test/MakefileAnders Svensson
all = opt is now default target and run executes testsuites. Note that parallel execution is unproblematic since each suite target starts a node with a suite-specific name.
2011-10-27doc Makefiles: Eliminate DOCSUPPORT ifdefsBjörn Gustavsson
Some applications still have support for an ancient documentation build system. Eliminate the DOCSUPPORT define in otp.mk.in and the not taken arm of the ifdefs in the Makefiles.
2011-10-19Dumb down release target to Solaris /usr/ucb/installAnders Svensson
2011-10-19Dumb down opt/release targets to make 3.80Anders Svensson
2011-10-19Minor tweaks and cleanupAnders Svensson
Tweak some comments and variable names, move things around a bit (default src target is now opt, not debug), only clean what's built, use +warn_export_vars.
2011-10-18Need absolute -pa for bootstrap buildAnders Svensson
Otherwise include_lib will fail.
2011-10-18Simpler release targets for src subdirectoriesAnders Svensson
2011-10-17Use secondary expansion for src subdirectory rulesAnders Svensson
Makes for a quieter rule with no recursion.
2011-10-17One makefile for src build instead of recursionAnders Svensson
Simpler, no duplication of similar makefiles and makes for better dependencies. (Aka, recursive make considered harmful.)
2011-10-17Remove app dependency on compiler to avoid forced recompilationAnders Svensson
2011-10-17Move diameter_exprecs to compiler directoryAnders Svensson