blob: 2256f5b7a2c5fbe31f79572c58e6bb2112ef7193 [file] [log] [blame]
Harald Welte61276c42019-08-10 22:14:50 +02001-module(server_cb).
2
3
4-include_lib("diameter/include/diameter.hrl").
5-include_lib("diameter/include/diameter_gen_base_rfc6733.hrl").
6-include_lib("diameter_3gpp_ts29_272.hrl").
7%-include_lib("diameter_settings.hrl").
8
9
10%% diameter callbacks
11-export([peer_up/3, peer_down/3, pick_peer/4, prepare_request/3, prepare_retransmit/3,
12 handle_answer/4, handle_error/4, handle_request/3]).
13
14-define(UNEXPECTED, erlang:error({unexpected, ?MODULE, ?LINE})).
15
16peer_up(_SvcName, {PeerRef, Caps}, State) ->
17 lager:info("Peer up ~p - ~p~n", [PeerRef, lager:pr(Caps, ?MODULE)]),
18 State.
19
20peer_down(_SvcName, {PeerRef, Caps}, State) ->
21 lager:info("Peer down ~p - ~p~n", [PeerRef, lager:pr(Caps, ?MODULE)]),
22 State.
23
24pick_peer(_, _, _SvcName, _State) ->
25 ?UNEXPECTED.
26
27prepare_request(_, _SvcName, _Peer) ->
28 ?UNEXPECTED.
29
30prepare_retransmit(_Packet, _SvcName, _Peer) ->
31 ?UNEXPECTED.
32
33handle_answer(_Packet, _Request, _SvcName, _Peer) ->
34 ?UNEXPECTED.
35
36handle_error(_Reason, _Request, _SvcName, _Peer) ->
37 lager:error("Request error: ~p~n", [_Reason]),
38 ?UNEXPECTED.
39
40handle_request(#diameter_packet{}, _SvcName, {_,_}) ->
41 lager:error("Unsuppoerted message.~n"),
42 discard.