On Fri, 1 Jun 2018 14:19:30 +0100 David wrote:
DA> My first goal is just to process setting a simple scalar value,
DA> but eventually I will want to look at row creation so I'd like
DA> to understand the bigger picture.
DA> 
DA> The example handler
DA> 
<http://search.cpan.org/~hardaker/NetSNMP-agent-5.0401/agent.pm#Sub-agent_example>
DA> shows
DA> process a SET_ACTION request, but it doesn't indicate what if,
DA> anything I am required to do.
DA> 
DA>  } elsif ($request_info->getMode() == MODE_SET_ACTION) {
DA>            # ... (or use the value)
DA>            $value = $request->getValue();
DA>  }
DA> 
DA> First, processing relating to the value. I guess that I do
DA> whatever the value means (eg. adjust a setting in the system
DA> that the MIB represents) and perhaps adjust any cached values
DA> in my agent. I'm not clear whether I also need to call
DA> request->setValue() or whether a subsequent GET just picks up
DA> the new state.

No need to call request->setValue since you can't change the value
returned in the request and your internal value should have just
been set.

DA> Then the other aspect is to return something to my caller.
DA> Studying the C code examples it looks like maybe all I need to
DA> do is call request->setError() if there's a problem, and
DA> possibly setDelegated() if there is deferred work. Seem like I
DA> then see the remaining SET stages occur until we reach Commit.

Yep. This simple example doesn't cover all of set processing. There
is a state diagram here:

  http://www.net-snmp.org/tutorial/tutorial-5/toolkit/mib_module/set-actions.jpg

And a more complete description of the various states here:

  http://net-snmp.sourceforge.net/wiki/index.php/Agent_Modes#Set_processing


Robert

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Net-snmp-users mailing list
Net-snmp-users@lists.sourceforge.net
Please see the following page to unsubscribe or change other options:
https://lists.sourceforge.net/lists/listinfo/net-snmp-users
  • SET David Artus
    • Re: SET Robert Story

Reply via email to