aboutsummaryrefslogtreecommitdiffstats
path: root/lib/snmp/src
diff options
context:
space:
mode:
authorMicael Karlberg <[email protected]>2013-07-03 09:39:40 +0200
committerMicael Karlberg <[email protected]>2013-07-03 09:39:40 +0200
commit7147e7a36b8a22ba6345356aa786029bab66f4e6 (patch)
treef476b8caf670119ecb96535b63ee743bd1194d55 /lib/snmp/src
parent8cece79b77952c991e62ae595bcf71cde016a052 (diff)
downloadotp-7147e7a36b8a22ba6345356aa786029bab66f4e6.tar.gz
otp-7147e7a36b8a22ba6345356aa786029bab66f4e6.tar.bz2
otp-7147e7a36b8a22ba6345356aa786029bab66f4e6.zip
[snmp/agent] Local DB counter increment wrap error
The counter increment function in the local-db was incorrect. It did not handle counter wrap correctly. OTP-11192
Diffstat (limited to 'lib/snmp/src')
-rw-r--r--lib/snmp/src/agent/snmpa_local_db.erl2
-rw-r--r--lib/snmp/src/app/snmp.appup.src20
2 files changed, 21 insertions, 1 deletions
diff --git a/lib/snmp/src/agent/snmpa_local_db.erl b/lib/snmp/src/agent/snmpa_local_db.erl
index 2c0cad807a..5198c6ec4e 100644
--- a/lib/snmp/src/agent/snmpa_local_db.erl
+++ b/lib/snmp/src/agent/snmpa_local_db.erl
@@ -583,7 +583,7 @@ handle_cast({variable_inc, Name, Db, N}, State) ->
{value, Val} -> Val;
_ -> 0
end,
- insert(Db, Name, M+N rem 4294967296, State),
+ insert(Db, Name, (M+N) rem 4294967296, State),
{noreply, State};
handle_cast({verbosity,Verbosity}, State) ->
diff --git a/lib/snmp/src/app/snmp.appup.src b/lib/snmp/src/app/snmp.appup.src
index 7ffa4a725d..53de57efd3 100644
--- a/lib/snmp/src/app/snmp.appup.src
+++ b/lib/snmp/src/app/snmp.appup.src
@@ -17,18 +17,38 @@
%% %CopyrightEnd%
%%
+
{"%VSN%",
%% ----- U p g r a d e -------------------------------------------------------
+%% Instruction examples:
+%% {restart_application, snmp}
+%% {load_module, snmp_pdus, soft_purge, soft_purge, []}
+%% {update, snmpa_local_db, soft, soft_purge, soft_purge, []}
+%% {add_module, snmpm_net_if_mt}
+
[
+ {"4.24",
+ [
+ {update, snmpa_local_db, soft, soft_purge, soft_purge, []}
+ ]
+ },
{"4.23.1", [{restart_application, snmp}]},
{"4.23", [{restart_application, snmp}]}
],
%% ------D o w n g r a d e ---------------------------------------------------
+%% Instruction examples:
+%% {remove, {snmpm_net_if_mt, soft_purge, soft_purge}}
+
[
+ {"4.24",
+ [
+ {update, snmpa_local_db, soft, soft_purge, soft_purge, []}
+ ]
+ },
{"4.23.1", [{restart_application, snmp}]},
{"4.23", [{restart_application, snmp}]}
]