aboutsummaryrefslogtreecommitdiffstats
path: root/lib/diameter/src/base/diameter_service.erl
AgeCommit message (Collapse)Author
2012-08-28Merge branch 'anders/diameter/service_info/OTP-10213' into maintAnders Svensson
* anders/diameter/service_info/OTP-10213: Include transport-specific service info Make service_info behave with nested item lists and non-atoms Add 'connections' and 'peers' service_info
2012-08-28Merge branch 'anders/diameter/watchdog_events/OTP-10212' into maintAnders Svensson
* anders/diameter/watchdog_events/OTP-10212: Minor spec fix Maintain watchdog states in service_info Add events for watchdog state transitions
2012-08-28Merge branch 'anders/diameter/statistics/OTP-9608' into maintAnders Svensson
* anders/diameter/statistics/OTP-9608: Improve statistics test cases Statistics fixes
2012-08-28Tweak info presentationAnders Svensson
2012-08-28Fix missing transport service_info when there are no watchdogsAnders Svensson
2012-08-27Include transport-specific service infoAnders Svensson
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-24Statistics fixesAnders Svensson
Statistics are deleted as a consequence of diameter:remove_transport/2.
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-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
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-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-05Move type definitions into diameter.erlAnders Svensson
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-11-29Fix transport restart bugAnders Svensson
This caused transport processes to be restarted even though diameter:remove_transport/2 had removed their configuration from table.
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-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.)