Class: NETSNMP::V3Session

Inherits:
Session
  • Object
show all
Defined in:
lib/netsnmp/v3_session.rb

Overview

Abstraction for the v3 semantics.

Constant Summary

Constants inherited from Session

Session::TIMEOUT

Instance Method Summary collapse

Methods inherited from Session

#close

Constructor Details

#initialize(version: 3, context: "", **opts) ⇒ V3Session

Returns a new instance of V3Session.

Parameters:

  • version (String, Integer) (defaults to: 3)

    SNMP version (always 3)



7
8
9
10
11
# File 'lib/netsnmp/v3_session.rb', line 7

def initialize(version: 3, context: "", **opts)
  @context = context
  @security_parameters = opts.delete(:security_parameters)
  super
end

Instance Method Details

#build_pdu(type, *vars) ⇒ NETSNMP::ScopedPDU

Returns a pdu.

Returns:

See Also:

  • NETSNMP::V3Session.{NETSNMP{NETSNMP::Session{NETSNMP::Session#build_pdu}


16
17
18
19
# File 'lib/netsnmp/v3_session.rb', line 16

def build_pdu(type, *vars)
  engine_id = security_parameters.engine_id
  ScopedPDU.build(type, headers: [engine_id, @context], varbinds: vars)
end

#sendObject

See Also:

  • NETSNMP::V3Session.{NETSNMP{NETSNMP::Session{NETSNMP::Session#send}


22
23
24
25
# File 'lib/netsnmp/v3_session.rb', line 22

def send(*)
  pdu, = super
  pdu
end