diff options
author | Erlang/OTP <[email protected]> | 2012-01-27 11:34:41 +0100 |
---|---|---|
committer | Erlang/OTP <[email protected]> | 2012-01-27 11:34:41 +0100 |
commit | b16baad540d35b890c0c6baf9a1be2a90ea96239 (patch) | |
tree | 4b3249ae0822213e59d7bd371ebe09d6eda32246 /lib/snmp/src/agent/snmpa_mib.erl | |
parent | e0e862b42d508b5112395f41584bed90c74a8a92 (diff) | |
parent | 980c05769a4146197e5eb0175c6ffacbf4d5634c (diff) | |
download | otp-b16baad540d35b890c0c6baf9a1be2a90ea96239.tar.gz otp-b16baad540d35b890c0c6baf9a1be2a90ea96239.tar.bz2 otp-b16baad540d35b890c0c6baf9a1be2a90ea96239.zip |
Merge branch 'bmk/snmp/snmp4174_integration/r13' into maint-r13
* bmk/snmp/snmp4174_integration/r13:
[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
Diffstat (limited to 'lib/snmp/src/agent/snmpa_mib.erl')
-rw-r--r-- | lib/snmp/src/agent/snmpa_mib.erl | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/lib/snmp/src/agent/snmpa_mib.erl b/lib/snmp/src/agent/snmpa_mib.erl index ce90db18b3..574467d38f 100644 --- a/lib/snmp/src/agent/snmpa_mib.erl +++ b/lib/snmp/src/agent/snmpa_mib.erl @@ -1,7 +1,7 @@ %% %% %CopyrightBegin% %% -%% Copyright Ericsson AB 1996-2010. All Rights Reserved. +%% Copyright Ericsson AB 1996-2012. All Rights Reserved. %% %% The contents of this file are subject to the Erlang Public License, %% Version 1.1, (the "License"); you may not use this file except in @@ -552,8 +552,12 @@ handle_call({dump, File}, _From, #state{data = Data} = State) -> Reply = snmpa_mib_data:dump(Data, File), {reply, Reply, State}; -handle_call({backup, BackupDir}, From, #state{data = Data} = State) -> - ?vlog("backup to ~s",[BackupDir]), +%% This check (that there is no backup already in progress) is also +%% done in the master agent process, but just in case a user issues +%% a backup call to this process directly, we add a similar check here. +handle_call({backup, BackupDir}, From, + #state{backup = undefined, data = Data} = State) -> + ?vlog("backup to ~s", [BackupDir]), Pid = self(), V = get(verbosity), case file:read_file_info(BackupDir) of @@ -576,6 +580,10 @@ handle_call({backup, BackupDir}, From, #state{data = Data} = State) -> {reply, Error, State} end; +handle_call({backup, _BackupDir}, From, #state{backup = Backup} = S) -> + ?vinfo("backup already in progress: ~p", [Backup]), + {reply, {error, backup_in_progress}, S}; + handle_call(stop, _From, State) -> ?vlog("stop",[]), {stop, normal, ok, State}; |