File 0959-Always-renew-active-once-after-a-discovery-response.patch of Package erlang

From 2a3b7f1fa271c5d9d6028add1fc7ae0e70133aec Mon Sep 17 00:00:00 2001
From: Raimo Niskanen <raimo@erlang.org>
Date: Mon, 17 Aug 2020 10:45:21 +0200
Subject: [PATCH] Always renew active,once after a discovery response

Since we got a message we had active,once before it was received,
so restore active,once regardless of if the discovery response
was good or not.
---
 lib/snmp/src/agent/snmpa_net_if.erl | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/lib/snmp/src/agent/snmpa_net_if.erl b/lib/snmp/src/agent/snmpa_net_if.erl
index c1f7c6b424..4ecf833963 100644
--- a/lib/snmp/src/agent/snmpa_net_if.erl
+++ b/lib/snmp/src/agent/snmpa_net_if.erl
@@ -1,7 +1,7 @@
 %%
 %% %CopyrightBegin%
 %% 
-%% Copyright Ericsson AB 2004-2019. All Rights Reserved.
+%% Copyright Ericsson AB 2004-2020. All Rights Reserved.
 %% 
 %% Licensed under the Apache License, Version 2.0 (the "License");
 %% you may not use this file except in compliance with the License.
@@ -729,9 +729,9 @@ handle_discovery_response(
   _From,
   #pdu{request_id = ReqId} = Pdu,
   ManagerEngineId) ->
+    active_once(Socket),
     case lists:keyfind(ReqId, 1, S#state.reqs) of
 	{ReqId, Pid} ->
-	    active_once(Socket),
 	    Pid ! {snmp_discovery_response_received, Pdu, ManagerEngineId},
 	    %% XXX Strange... Reqs from this Pid should be reaped
 	    %% at process exit by clear_reqs/2 so the following
@@ -748,7 +748,6 @@ handle_discovery_response(
             case (length(DiscoReqs) =:= 2) of
                 true ->
                     [{_, Pid}, _] = DiscoReqs,
-                    active_once(Socket),
                     Pid ! {snmp_discovery_response_received, Pdu,
                            ManagerEngineId},
                     NReqs = S#state.reqs -- DiscoReqs,
-- 
2.26.2

openSUSE Build Service is sponsored by