aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorEvgeniy Khramtsov <ekhramtsov@process-one.net>2014-07-16 10:33:34 +0400
committerEvgeniy Khramtsov <ekhramtsov@process-one.net>2014-07-16 10:33:49 +0400
commit64205426bf651c3fb46587eb8eb5f6fd1c1ea64d (patch)
tree5679be7d0f078370cd261845636fe148e160dd76 /src
parentFix blocklist get (diff)
Fix returned types
Diffstat (limited to 'src')
-rw-r--r--src/mod_sip_registrar.erl11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/mod_sip_registrar.erl b/src/mod_sip_registrar.erl
index 9aeb058d6..298c7108b 100644
--- a/src/mod_sip_registrar.erl
+++ b/src/mod_sip_registrar.erl
@@ -539,7 +539,7 @@ delete_session(#sip_session{reg_tref = RegTRef,
mnesia:dirty_delete_object(Session).
process_ping(SIPSocket) ->
- ErrResponse = if SIPSocket#sip_socket.type == udp -> error;
+ ErrResponse = if SIPSocket#sip_socket.type == udp -> pang;
true -> drop
end,
Sessions = mnesia:dirty_index_read(
@@ -552,8 +552,13 @@ process_ping(SIPSocket) ->
mnesia:dirty_delete_object(Session),
Timeout = get_flow_timeout(LServer, SIPSocket),
NewTRef = set_timer(Session, Timeout),
- mnesia:dirty_write(
- Session#sip_session{flow_tref = NewTRef});
+ case mnesia:dirty_write(
+ Session#sip_session{flow_tref = NewTRef}) of
+ ok ->
+ pong;
+ _Err ->
+ pang
+ end;
(_, Acc) ->
Acc
end, ErrResponse, Sessions).