aboutsummaryrefslogtreecommitdiffstats
path: root/lib/snmp/src/agent/snmpa_agent.erl
diff options
context:
space:
mode:
authorBjörn Gustavsson <[email protected]>2012-02-02 15:27:02 +0100
committerBjörn Gustavsson <[email protected]>2012-02-02 15:27:02 +0100
commit94da0412ba37e62567e3e377c1c6063c379c0fe1 (patch)
tree58f49deaf3c65cdefeffe88a00443cf3b64753ca /lib/snmp/src/agent/snmpa_agent.erl
parent61fa5c03369e9ae6de2b4ae24438c236df93d7cb (diff)
parent8929e4d94620c109d31387e6fadfa83b71121a6a (diff)
downloadotp-94da0412ba37e62567e3e377c1c6063c379c0fe1.tar.gz
otp-94da0412ba37e62567e3e377c1c6063c379c0fe1.tar.bz2
otp-94da0412ba37e62567e3e377c1c6063c379c0fe1.zip
Merge branch 'maint-r14' into maint-r15
* maint-r14: Prepare release [snmp/agent] Add proper release notes [snmp/agent] Wrong OID used for error message reply [snmp/agent] Added backup check for local_db [snmp/agent] Simultaneous snmpa:backup/1,2 calls interfere Conflicts: erts/doc/src/notes.xml erts/vsn.mk
Diffstat (limited to 'lib/snmp/src/agent/snmpa_agent.erl')
-rw-r--r--lib/snmp/src/agent/snmpa_agent.erl9
1 files changed, 7 insertions, 2 deletions
diff --git a/lib/snmp/src/agent/snmpa_agent.erl b/lib/snmp/src/agent/snmpa_agent.erl
index 17cb9c9fe3..9cc986cf47 100644
--- a/lib/snmp/src/agent/snmpa_agent.erl
+++ b/lib/snmp/src/agent/snmpa_agent.erl
@@ -1262,7 +1262,8 @@ handle_call(info, _From, S) ->
handle_call(get_net_if, _From, S) ->
{reply, get(net_if), S};
-handle_call({backup, BackupDir}, From, S) ->
+%% Only accept a backup request if there is none already in progress
+handle_call({backup, BackupDir}, From, #state{backup = undefined} = S) ->
?vlog("backup: ~p", [BackupDir]),
Pid = self(),
V = get(verbosity),
@@ -1279,7 +1280,11 @@ handle_call({backup, BackupDir}, From, S) ->
end),
?vtrace("backup server: ~p", [BackupServer]),
{noreply, S#state{backup = {BackupServer, From}}};
-
+
+handle_call({backup, _BackupDir}, From, #state{backup = Backup} = S) ->
+ ?vinfo("backup already in progress: ~p", [Backup]),
+ {reply, {error, backup_in_progress}, S};
+
handle_call(dump_mibs, _From, S) ->
Reply = snmpa_mib:dump(get(mibserver)),
{reply, Reply, S};