<feed xmlns='http://www.w3.org/2005/Atom'>
<title>otp.git/lib/diameter/src/base, branch OTP-21.1.3</title>
<subtitle>Mirror of Erlang/OTP repository.
</subtitle>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/'/>
<entry>
<title>Fix function_clause when sending a request after an outgoing DPA</title>
<updated>2018-07-18T14:23:28+00:00</updated>
<author>
<name>Anders Svensson</name>
<email>anders@erlang.org</email>
</author>
<published>2018-07-18T14:23:28+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=f66f12e2d0014ad14d663fb1a0dafaa665bff303'/>
<id>f66f12e2d0014ad14d663fb1a0dafaa665bff303</id>
<content type='text'>
After DPR, the intention is that outgoing answers are sent and outgoing
requests are discarded. This was the case when the DPR was outgoing, but
if it was incoming then a subsequent outgoing request resulted in a
function_clause, bringing down the diameter_peer_fsm gen_server
associated with the transport connection in question.

With diameter_tcp/sctp, the failure can result in the connection being
reset before the peer closes it in response to DPA, but is otherwise
harmless since DPR means that the connection is already on its way down.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
After DPR, the intention is that outgoing answers are sent and outgoing
requests are discarded. This was the case when the DPR was outgoing, but
if it was incoming then a subsequent outgoing request resulted in a
function_clause, bringing down the diameter_peer_fsm gen_server
associated with the transport connection in question.

With diameter_tcp/sctp, the failure can result in the connection being
reset before the peer closes it in response to DPA, but is otherwise
harmless since DPR means that the connection is already on its way down.
</pre>
</div>
</content>
</entry>
<entry>
<title>Update copyright year</title>
<updated>2018-06-18T12:51:18+00:00</updated>
<author>
<name>Henrik Nord</name>
<email>henrik@erlang.org</email>
</author>
<published>2018-06-18T12:51:18+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=5ca92e2eac1e84fd22f60e7abc3aa2b0ff1cb42b'/>
<id>5ca92e2eac1e84fd22f60e7abc3aa2b0ff1cb42b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Don't use deprecated erlang:get_stacktrace/0</title>
<updated>2018-06-07T09:16:32+00:00</updated>
<author>
<name>Anders Svensson</name>
<email>anders@erlang.org</email>
</author>
<published>2018-06-06T15:39:06+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=928eca9c694f098d65873f4ac6ceb19b6ba13d6b'/>
<id>928eca9c694f098d65873f4ac6ceb19b6ba13d6b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'anders/diameter/20.3/OTP-14946' into maint</title>
<updated>2018-03-06T08:31:37+00:00</updated>
<author>
<name>Anders Svensson</name>
<email>anders@erlang.org</email>
</author>
<published>2018-03-06T08:31:37+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=84a2ed39f035dd1a569dca370dc11876993c6ecf'/>
<id>84a2ed39f035dd1a569dca370dc11876993c6ecf</id>
<content type='text'>
* anders/diameter/20.3/OTP-14946:
  vsn -&gt; 2.1.4
  Update appup for 20.3
  Update service_info examples in doc
  Fix inaccurate comment
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* anders/diameter/20.3/OTP-14946:
  vsn -&gt; 2.1.4
  Update appup for 20.3
  Update service_info examples in doc
  Fix inaccurate comment
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'anders/diameter/terminate/ERIERL-124' into maint</title>
<updated>2018-03-05T10:33:53+00:00</updated>
<author>
<name>Anders Svensson</name>
<email>anders@erlang.org</email>
</author>
<published>2018-03-05T10:33:53+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=5ac73d785185d857000f4ba72dc6fa5266ff80d1'/>
<id>5ac73d785185d857000f4ba72dc6fa5266ff80d1</id>
<content type='text'>
* anders/diameter/terminate/ERIERL-124:
  Fix handling of SUSPECT connections at service termination
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* anders/diameter/terminate/ERIERL-124:
  Fix handling of SUSPECT connections at service termination
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix inaccurate comment</title>
<updated>2018-03-05T10:30:23+00:00</updated>
<author>
<name>Anders Svensson</name>
<email>anders@erlang.org</email>
</author>
<published>2017-12-18T10:42:26+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=fac8186f85695516ee49ddefbdf71294113a50d9'/>
<id>fac8186f85695516ee49ddefbdf71294113a50d9</id>
<content type='text'>
A peer_fsm process can be started long before a connection is
established in the listening case. The time reported in a 'peer' tuple
in service_info is of connection establishment.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
A peer_fsm process can be started long before a connection is
established in the listening case. The time reported in a 'peer' tuple
in service_info is of connection establishment.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix handling of SUSPECT connections at service termination</title>
<updated>2018-02-01T10:36:43+00:00</updated>
<author>
<name>Anders Svensson</name>
<email>anders@erlang.org</email>
</author>
<published>2018-02-01T10:11:55+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=d73df2f7850184a8e1f44fdc82217935c25e867b'/>
<id>d73df2f7850184a8e1f44fdc82217935c25e867b</id>
<content type='text'>
A peer connection in watchdog state SUSPECT is represented by a peer
table entry in diameter_service, but not by a request table entry in
diameter_peer, so diameter_service:terminate/2 could result in failures
like this:

exception error: no match of right hand side value []
  in function diameter_traffic:peer_down/1 (base/diameter_traffic.erl, line 141)
  in call from lists:foldl/3 (lists.erl, line 1263)
  in call from ets:do_foldl/4 (ets.erl, line 611)
  in call from ets:foldl/3 (ets.erl, line 600)
  in call from diameter_service:terminate/2 (base/diameter_service.erl, line 557)
  in call from gen_server:try_terminate/3 (gen_server.erl, line 648)
  in call from gen_server:terminate/10 (gen_server.erl, line 833)
  in call from gen_server:handle_msg/6 (gen_server.erl, line 679)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
A peer connection in watchdog state SUSPECT is represented by a peer
table entry in diameter_service, but not by a request table entry in
diameter_peer, so diameter_service:terminate/2 could result in failures
like this:

exception error: no match of right hand side value []
  in function diameter_traffic:peer_down/1 (base/diameter_traffic.erl, line 141)
  in call from lists:foldl/3 (lists.erl, line 1263)
  in call from ets:do_foldl/4 (ets.erl, line 611)
  in call from ets:foldl/3 (ets.erl, line 600)
  in call from diameter_service:terminate/2 (base/diameter_service.erl, line 557)
  in call from gen_server:try_terminate/3 (gen_server.erl, line 648)
  in call from gen_server:terminate/10 (gen_server.erl, line 833)
  in call from gen_server:handle_msg/6 (gen_server.erl, line 679)
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix diameter_reg:subscribe/2 remove notification</title>
<updated>2017-12-15T15:55:22+00:00</updated>
<author>
<name>Anders Svensson</name>
<email>anders@erlang.org</email>
</author>
<published>2017-12-15T12:07:24+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=cbbc2588a1f9acea502b0fde0fcac507b02ba1ea'/>
<id>cbbc2588a1f9acea502b0fde0fcac507b02ba1ea</id>
<content type='text'>
Commit fae8ca0c broke notification by removing table elements before
matching for them, causing diameter_tcp/sctp listening processes to
live on after diameter:remove_transport/2.

Commit 58091992 added diameter_reg:subscribe/2, and commit 5ca5fb71
started using it for listener exit.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Commit fae8ca0c broke notification by removing table elements before
matching for them, causing diameter_tcp/sctp listening processes to
live on after diameter:remove_transport/2.

Commit 58091992 added diameter_reg:subscribe/2, and commit 5ca5fb71
started using it for listener exit.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix error handling when decoding an AVP with an alternate dictionary</title>
<updated>2017-10-14T11:31:23+00:00</updated>
<author>
<name>Anders Svensson</name>
<email>anders@erlang.org</email>
</author>
<published>2017-10-14T10:56:45+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=db59b2076a49ae31c7ba03dd0e4f248a48c7e9b1'/>
<id>db59b2076a49ae31c7ba03dd0e4f248a48c7e9b1</id>
<content type='text'>
The options map wasn't updated after the AVP was identified, with
the resulting consequences for M-bit interpretation.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The options map wasn't updated after the AVP was identified, with
the resulting consequences for M-bit interpretation.
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove unused function arguments</title>
<updated>2017-10-13T15:09:56+00:00</updated>
<author>
<name>Anders Svensson</name>
<email>anders@erlang.org</email>
</author>
<published>2017-10-13T14:49:33+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=f9dab31aa65ee08d5d550d09bdf81d0c5744eb8d'/>
<id>f9dab31aa65ee08d5d550d09bdf81d0c5744eb8d</id>
<content type='text'>
Which may have been used in the past, but aren't now.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Which may have been used in the past, but aren't now.
</pre>
</div>
</content>
</entry>
</feed>
