SNMP Subagent Programmer's Guide
Writing Subagent Logic
SNMP Subagent Programmer’s Guide—119728 4-5
Management Functions
Management Functions
The management functions are used to initiate and terminate communications with the 
NonStop agent and managers and to process SNMP messages a subagent receives and 
sends. Management functions are summarized in Table 4-2 and then described 
individually in more detail afterward. Encode function names and the types of their 
arguments using the uppercase and lowercase conventions used in the syntax boxes.
Figure 4-1 illustrates the relationships among the management functions. Note that you 
always call mgmt_init_env() first and mgmt_term_env() last.  Use mgmt_new_instance() 
to initiate management of the MIB itself, then for each group, table, or table entry you 
want to make available for management. The optional mgmt_read_nowait() lets the 
subagent perform other activities until the NonStop agent sends a request to process.  To 
process an incoming request, use mgmt_poll().  You can optionally use mgmt_security() 
to determine whether to process a particular request based on information about the 
manager station from which it was sent. To generate a trap, use mgmt_trap(). The 
mgmt_del_instance() function terminates management of each object named in an 
earlier mgmt_new_instance() call.
Table 4-2. Management Functions
Function Use
mgmt_init_env() Initializes the management environment.
mgmt_new_instance() Establishes connection with the NonStop agent and initiates the 
management of a collection of MIB objects, a process known as 
“registration.” When initiating management of a tabular MIB object, 
you register either the entire table or every entry in the table. When 
registering the entire table, you provide next and locator callback 
functions that locate entries. When registering every entry, you omit 
next and locator functions and leave entry location to the run-time 
library.
mgmt_read_nowait() Lets the subagent communicate with other processes while 
maintaining connection with the NonStop agent.  This function 
initiates a nowaited read from the NonStop agent. You use Guardian 
procedure AWAITIO[X] to determine when the NonStop agent has a 
request to process.
mgmt_poll() Posts a waited read from the NonStop agent for an SNMP request, 
then processes the request and prepares a response.
mgmt_security() Makes available to the subagent the community string and IP 
address of the manager station from which the request is received; 
the subagent can use these values to determine whether to process 
the request.
mgmt_trap() Generates a trap.
mgmt_del_instance()  De-registers objects with the run-time library but not the NonStop 
agent, releasing memory associated with their management.
mgmt_term_env() De-registers MIB objects with the NonStop agent, and terminates 
connection with the agent.  Now the MIB objects are available for 
registration by other subagent processes using the agent.










