aboutsummaryrefslogtreecommitdiffstats
path: root/lib/snmp/test/snmp_manager_user_old.erl
diff options
context:
space:
mode:
authorErlang/OTP <[email protected]>2009-11-20 14:54:40 +0000
committerErlang/OTP <[email protected]>2009-11-20 14:54:40 +0000
commit84adefa331c4159d432d22840663c38f155cd4c1 (patch)
treebff9a9c66adda4df2106dfd0e5c053ab182a12bd /lib/snmp/test/snmp_manager_user_old.erl
downloadotp-84adefa331c4159d432d22840663c38f155cd4c1.tar.gz
otp-84adefa331c4159d432d22840663c38f155cd4c1.tar.bz2
otp-84adefa331c4159d432d22840663c38f155cd4c1.zip
The R13B03 release.OTP_R13B03
Diffstat (limited to 'lib/snmp/test/snmp_manager_user_old.erl')
-rwxr-xr-xlib/snmp/test/snmp_manager_user_old.erl264
1 files changed, 264 insertions, 0 deletions
diff --git a/lib/snmp/test/snmp_manager_user_old.erl b/lib/snmp/test/snmp_manager_user_old.erl
new file mode 100755
index 0000000000..b53514d699
--- /dev/null
+++ b/lib/snmp/test/snmp_manager_user_old.erl
@@ -0,0 +1,264 @@
+%%
+%% %CopyrightBegin%
+%%
+%% Copyright Ericsson AB 2009. 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
+%% compliance with the License. You should have received a copy of the
+%% Erlang Public License along with this software. If not, it can be
+%% retrieved online at http://www.erlang.org/.
+%%
+%% Software distributed under the License is distributed on an "AS IS"
+%% basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+%% the License for the specific language governing rights and limitations
+%% under the License.
+%%
+%% %CopyrightEnd%
+%%
+
+%%----------------------------------------------------------------------
+%% Purpose: Utility functions for the (snmp manager) user test(s).
+%%----------------------------------------------------------------------
+
+-module(snmp_manager_user_old).
+
+-behaviour(snmpm_user_old).
+
+
+%%----------------------------------------------------------------------
+%% Include files
+%%----------------------------------------------------------------------
+-include("test_server.hrl").
+-include("snmp_test_lib.hrl").
+
+
+%%----------------------------------------------------------------------
+%% External exports
+%%----------------------------------------------------------------------
+-export([
+ start/0, start/1,
+ stop/0,
+ register_agent/1, register_agent/2, register_agent/3,
+ unregister_agent/1, unregister_agent/2,
+ agent_info/3,
+ update_agent_info/4,
+ which_agents/0, which_users/0,
+ load_mib/1, unload_mib/1,
+ sync_get/2, sync_get/3,
+ async_get/2, async_get/3,
+ sync_get_next/2, sync_get_next/3,
+ async_get_next/2, async_get_next/3,
+ sync_set/2, sync_set/3,
+ async_set/2, async_set/3,
+ sync_get_bulk/4, sync_get_bulk/5,
+ async_get_bulk/4, async_get_bulk/5,
+ name_to_oid/1, oid_to_name/1,
+ purify_oid/1
+ ]).
+
+-export([
+ handle_error/3,
+ handle_agent/4,
+ handle_pdu/5,
+ handle_trap/4,
+ handle_inform/4,
+ handle_report/4
+ ]).
+
+
+%%----------------------------------------------------------------------
+%% Internal exports
+%%----------------------------------------------------------------------
+
+%% -define(SERVER, ?MODULE).
+-define(USER_ID, ?MODULE).
+
+%% -record(state, {parent, id, reqs = []}).
+%% -record(request, {from, ref, tmr, req_id, type}).
+
+
+%%----------------------------------------------------------------------
+%% The user API
+%%----------------------------------------------------------------------
+
+start() ->
+ start([]).
+
+start(DefaultAgentConfig) when is_list(DefaultAgentConfig) ->
+ snmpm:register_user(?USER_ID, ?MODULE, self(), DefaultAgentConfig).
+
+stop() ->
+ snmpm:unregister_user(?USER_ID).
+
+register_agent(Addr) ->
+ snmpm:register_agent(?USER_ID, Addr).
+
+register_agent(Addr, PortOrConfig) ->
+ snmpm:register_agent(?USER_ID, Addr, PortOrConfig).
+
+register_agent(Addr, Port, Config) ->
+ snmpm:register_agent(?USER_ID, Addr, Port, Config).
+
+unregister_agent(Addr) ->
+ snmpm:unregister_agent(?USER_ID, Addr).
+
+unregister_agent(Addr, Port) ->
+ snmpm:unregister_agent(?USER_ID, Addr, Port).
+
+agent_info(Addr, Port, Item) ->
+ snmpm:agent_info(?USER_ID, Addr, Port, Item).
+
+update_agent_info(Addr, Port, Item, Val) ->
+ snmpm:update_agent_info(?USER_ID, Addr, Port, Item, Val).
+
+which_agents() ->
+ snmpm:which_agents().
+
+which_users() ->
+ snmpm:which_users().
+
+load_mib(Mib) ->
+ snmpm:load_mib(?USER_ID, Mib).
+
+unload_mib(Mib) ->
+ snmpm:unload_mib(?USER_ID, Mib).
+
+
+%% --
+
+sync_get(Addr, Oids) ->
+ snmpm:g(?USER_ID, Addr, Oids).
+
+sync_get(Addr, Port, Oids) ->
+ snmpm:g(?USER_ID, Addr, Port, Oids).
+
+
+%% --
+
+async_get(Addr, Oids) ->
+ snmpm:ag(?USER_ID, Addr, Oids).
+
+async_get(Addr, Port, Oids) ->
+ snmpm:ag(?USER_ID, Addr, Port, Oids).
+
+
+%% --
+
+sync_get_next(Addr, Oids) ->
+ snmpm:gn(?USER_ID, Addr, Oids).
+
+sync_get_next(Addr, Port, Oids) ->
+ snmpm:gn(?USER_ID, Addr, Port, Oids).
+
+
+%% --
+
+async_get_next(Addr, Oids) ->
+ snmpm:agn(?USER_ID, Addr, Oids).
+
+async_get_next(Addr, Port, Oids) ->
+ snmpm:agn(?USER_ID, Addr, Port, Oids).
+
+
+%% --
+
+sync_set(Addr, VAV) ->
+ snmpm:s(?USER_ID, Addr, VAV).
+
+sync_set(Addr, Port, VAV) ->
+ snmpm:s(?USER_ID, Addr, Port, VAV).
+
+
+%% --
+
+async_set(Addr, VAV) ->
+ snmpm:as(?USER_ID, Addr, VAV).
+
+async_set(Addr, Port, VAV) ->
+ snmpm:as(?USER_ID, Addr, Port, VAV).
+
+
+%% --
+
+sync_get_bulk(Addr, NonRep, MaxRep, Oids) ->
+ snmpm:gb(?USER_ID, Addr, NonRep, MaxRep, Oids).
+
+sync_get_bulk(Addr, Port, NonRep, MaxRep, Oids) ->
+ snmpm:gb(?USER_ID, Addr, Port, NonRep, MaxRep, Oids).
+
+
+%% --
+
+async_get_bulk(Addr, NonRep, MaxRep, Oids) ->
+ snmpm:agb(?USER_ID, Addr, NonRep, MaxRep, Oids).
+
+async_get_bulk(Addr, Port, NonRep, MaxRep, Oids) ->
+ snmpm:agb(?USER_ID, Addr, Port, NonRep, MaxRep, Oids).
+
+
+%% --
+
+name_to_oid(Name) ->
+ snmpm:name_to_oid(Name).
+
+oid_to_name(Oid) ->
+ snmpm:oid_to_name(Oid).
+
+purify_oid(Oid) ->
+ snmpm:purify_oid(Oid).
+
+
+%%----------------------------------------------------------------------
+%% User callback functions:
+%%----------------------------------------------------------------------
+
+handle_error(ReqId, Reason, UserPid) ->
+ UserPid ! {handle_error, self(), ReqId, Reason},
+ ignore.
+
+
+handle_agent(Addr, Port, SnmpInfo, UserPid) ->
+ UserPid ! {handle_agent, self(), Addr, Port, SnmpInfo},
+ ignore.
+
+
+handle_pdu(Addr, Port, ReqId, SnmpResponse, UserPid) ->
+ UserPid ! {handle_pdu, self(), Addr, Port, ReqId, SnmpResponse},
+ ignore.
+
+
+handle_trap(Addr, Port, SnmpTrap, UserPid) ->
+ UserPid ! {handle_trap, self(), Addr, Port, SnmpTrap},
+ ok.
+
+
+handle_inform(Addr, Port, SnmpInform, UserPid) ->
+ UserPid ! {handle_inform, self(), Addr, Port, SnmpInform},
+ receive
+ {handle_inform_no_response, {Addr, Port}} ->
+ no_reply;
+ {handle_inform_response, {Addr, Port}} ->
+ ok
+ end.
+
+
+handle_report(Addr, Port, SnmpReport, UserPid) ->
+ UserPid ! {handle_report, self(), Addr, Port, SnmpReport},
+ ok.
+
+
+%%----------------------------------------------------------------------
+%% Debug
+%%----------------------------------------------------------------------
+
+%% d(F) ->
+%% d(F, []).
+
+%% d(F, A) ->
+%% d(get(debug), F, A).
+
+%% d(true, F, A) ->
+%% io:format("~w:" ++ F ++ "~n", [?SERVER|A]);
+%% d(_, _, _) ->
+%% ok.