update for 1.07
This commit is contained in:
171
README
171
README
@@ -5,7 +5,7 @@ NAME
|
|||||||
|
|
||||||
VERSION
|
VERSION
|
||||||
|
|
||||||
SNMP::Info - Version 1.04
|
SNMP::Info - Version 1.07
|
||||||
|
|
||||||
AUTHOR
|
AUTHOR
|
||||||
|
|
||||||
@@ -130,8 +130,11 @@ REQUIREMENTS
|
|||||||
Various version 4's and 5.0 and 5.1 series will work. 5.0.1 is kinda
|
Various version 4's and 5.0 and 5.1 series will work. 5.0.1 is kinda
|
||||||
flaky on the Perl side.
|
flaky on the Perl side.
|
||||||
|
|
||||||
Redhat Users: Certain versions that comes with certain versions of
|
Versions 5.0301 and 5.0203 have issues with bulkwalk, turn off
|
||||||
Redhat/Fedora doesn't have the Perl library installed. Uninstall the
|
bulkwalk.
|
||||||
|
|
||||||
|
Redhat Users: Some versions that come with certain versions of
|
||||||
|
Redhat/Fedora don't have the Perl library installed. Uninstall the
|
||||||
RPM and install by hand.
|
RPM and install by hand.
|
||||||
|
|
||||||
2. MIBS
|
2. MIBS
|
||||||
@@ -199,10 +202,17 @@ SUBCLASSES
|
|||||||
CISCO-CDP-MIB. Cisco Discovery Protocol (CDP) Support. Inherited by
|
CISCO-CDP-MIB. Cisco Discovery Protocol (CDP) Support. Inherited by
|
||||||
Cisco and HP devices.
|
Cisco and HP devices.
|
||||||
|
|
||||||
|
SNMP::Info::CiscoConfig
|
||||||
|
CISCO-CONFIG-COPY-MIB, CISCO-FLASH-MIB, and OLD-CISCO-SYS-MIB. These
|
||||||
|
OIDs facilitate the writing of configuration files.
|
||||||
|
|
||||||
SNMP::Info::CiscoImage
|
SNMP::Info::CiscoImage
|
||||||
CISCO-IMAGE-MIB. A collection of OIDs providing IOS image
|
CISCO-IMAGE-MIB. A collection of OIDs providing IOS image
|
||||||
characteristics.
|
characteristics.
|
||||||
|
|
||||||
|
SNMP::Info::CiscoPortSecurity
|
||||||
|
CISCO-PORT-SECURITY-MIB.
|
||||||
|
|
||||||
SNMP::Info::CiscoQOS
|
SNMP::Info::CiscoQOS
|
||||||
CISCO-CLASS-BASED-QOS-MIB. A collection of OIDs providing
|
CISCO-CLASS-BASED-QOS-MIB. A collection of OIDs providing
|
||||||
information about a Cisco device's QOS config.
|
information about a Cisco device's QOS config.
|
||||||
@@ -212,12 +222,12 @@ SUBCLASSES
|
|||||||
Cisco device's RTT values.
|
Cisco device's RTT values.
|
||||||
|
|
||||||
SNMP::Info::CiscoStack
|
SNMP::Info::CiscoStack
|
||||||
CISCO-STACK-MIB and CISCO-PORT-SECURITY-MIB
|
CISCO-STACK-MIB.
|
||||||
|
|
||||||
SNMP::Info::CiscoStats
|
SNMP::Info::CiscoStats
|
||||||
|
OLD-CISCO-CPU-MIB, CISCO-PROCESS-MIB, and CISCO-MEMORY-POOL-MIB.
|
||||||
Provides common interfaces for memory, cpu, and os statistics for
|
Provides common interfaces for memory, cpu, and os statistics for
|
||||||
Cisco devices. Provides methods for information in :
|
Cisco devices.
|
||||||
OLD-CISCO-CPU-MIB, CISCO-PROCESS-MIB and CISCO-MEMORY-POOL-MIB
|
|
||||||
|
|
||||||
SNMP::Info::CiscoVTP
|
SNMP::Info::CiscoVTP
|
||||||
CISCO-VTP-MIB, CISCO-VLAN-MEMBERSHIP-MIB,
|
CISCO-VTP-MIB, CISCO-VLAN-MEMBERSHIP-MIB,
|
||||||
@@ -233,6 +243,14 @@ SUBCLASSES
|
|||||||
SNMP::Info::FDP
|
SNMP::Info::FDP
|
||||||
Foundry Discovery Protocol. FOUNDRY-SN-SWITCH-GROUP-MIB
|
Foundry Discovery Protocol. FOUNDRY-SN-SWITCH-GROUP-MIB
|
||||||
|
|
||||||
|
SNMP::Info::IEEE802dot11
|
||||||
|
IEEE802dot11-MIB. A collection of OIDs providing information about
|
||||||
|
standards based 802.11 wireless devices.
|
||||||
|
|
||||||
|
SNMP::Info::LLDP
|
||||||
|
LLDP-MIB, LLDP-EXT-DOT1-MIB, and LLDP-EXT-DOT3-MIB. Link Layer
|
||||||
|
Discovery Protocol (LLDP) Support.
|
||||||
|
|
||||||
SNMP::Info::MAU
|
SNMP::Info::MAU
|
||||||
MAU-MIB (RFC2668). Some Layer2 devices use this for extended
|
MAU-MIB (RFC2668). Some Layer2 devices use this for extended
|
||||||
Ethernet (Media Access Unit) interface information.
|
Ethernet (Media Access Unit) interface information.
|
||||||
@@ -274,6 +292,9 @@ SUBCLASSES
|
|||||||
Subclass for Nortel/Bay hubs. This includes System 5000, 100
|
Subclass for Nortel/Bay hubs. This includes System 5000, 100
|
||||||
series, 200 series, and probably more.
|
series, 200 series, and probably more.
|
||||||
|
|
||||||
|
SNMP::Info::Layer1::Cyclades
|
||||||
|
Subclass for Cyclades terminal servers.
|
||||||
|
|
||||||
SNMP::Info::Layer1::S3000
|
SNMP::Info::Layer1::S3000
|
||||||
Subclass for Bay/Synoptics hubs. This includes System 3000,
|
Subclass for Bay/Synoptics hubs. This includes System 3000,
|
||||||
281X, and probably more.
|
281X, and probably more.
|
||||||
@@ -281,6 +302,9 @@ SUBCLASSES
|
|||||||
SNMP::Info::Layer2
|
SNMP::Info::Layer2
|
||||||
Generic Layer2 Device subclass.
|
Generic Layer2 Device subclass.
|
||||||
|
|
||||||
|
SNMP::Info::Layer2::Airespace
|
||||||
|
Subclass for Cisco (Airespace) wireless controllers.
|
||||||
|
|
||||||
SNMP::Info::Layer2::Aironet
|
SNMP::Info::Layer2::Aironet
|
||||||
Class for Cisco Aironet wireless devices that run IOS. See also
|
Class for Cisco Aironet wireless devices that run IOS. See also
|
||||||
Layer3::Aironet for Aironet devices that don't run IOS.
|
Layer3::Aironet for Aironet devices that don't run IOS.
|
||||||
@@ -321,7 +345,7 @@ SUBCLASSES
|
|||||||
supported in more specific subclasses.
|
supported in more specific subclasses.
|
||||||
|
|
||||||
SNMP::Info::Layer2::Foundry
|
SNMP::Info::Layer2::Foundry
|
||||||
Subclass for Foundry Switches. Tested on EdgeIron 24G.
|
Depreciated. Use SNMP::Info::Layer3::Foundry.
|
||||||
|
|
||||||
SNMP::Info::Layer2::HP
|
SNMP::Info::Layer2::HP
|
||||||
Subclass for HP Procurve Switches
|
Subclass for HP Procurve Switches
|
||||||
@@ -370,7 +394,7 @@ SUBCLASSES
|
|||||||
|
|
||||||
SNMP::Info::Layer3::C6500
|
SNMP::Info::Layer3::C6500
|
||||||
This class covers Catalyst 6500s in native mode, hybrid mode.
|
This class covers Catalyst 6500s in native mode, hybrid mode.
|
||||||
Catalyst 4000's, 3750's, 2970's and probably others.
|
Catalyst 3750's, 2970's and probably others.
|
||||||
|
|
||||||
SNMP::Info::Layer3::Cisco
|
SNMP::Info::Layer3::Cisco
|
||||||
This is a simple wrapper around Layer3 for IOS devices. It adds
|
This is a simple wrapper around Layer3 for IOS devices. It adds
|
||||||
@@ -379,29 +403,45 @@ SUBCLASSES
|
|||||||
SNMP::Info::Layer3::Contivity
|
SNMP::Info::Layer3::Contivity
|
||||||
Subclass for Nortel Contivity/VPN Routers.
|
Subclass for Nortel Contivity/VPN Routers.
|
||||||
|
|
||||||
|
SNMP::Info::Layer3::Dell
|
||||||
|
Subclass for Dell PowerConnect switches.
|
||||||
|
|
||||||
|
SNMP::Info::Layer3::Enterasys
|
||||||
|
Subclass for Enterasys devices.
|
||||||
|
|
||||||
SNMP::Info::Layer3::Extreme
|
SNMP::Info::Layer3::Extreme
|
||||||
Subclass for Extreme Networks switches.
|
Subclass for Extreme Networks switches.
|
||||||
|
|
||||||
See SNMP::Info::Layer3::Extreme for more info.
|
See SNMP::Info::Layer3::Extreme for more info.
|
||||||
|
|
||||||
SNMP::Info::Layer3::Foundry
|
SNMP::Info::Layer3::Foundry
|
||||||
Subclass for older Foundry Network devices. Outdated, but being
|
Subclass for Foundry Network devices.
|
||||||
updated for newer devices.
|
|
||||||
|
|
||||||
Requires FOUNDRY-SN-ROOT-MIB.
|
|
||||||
|
|
||||||
See SNMP::Info::Layer3::Foundry for more info.
|
See SNMP::Info::Layer3::Foundry for more info.
|
||||||
|
|
||||||
SNMP::Info::Layer3::Juniper
|
SNMP::Info::Layer3::Juniper
|
||||||
Subclass for Juniper devices.
|
Subclass for Juniper devices
|
||||||
|
|
||||||
|
SNMP::Info::Layer3::Microsoft
|
||||||
|
Subclass for Generic Microsoft Routers running Microsoft Windows
|
||||||
|
OS.
|
||||||
|
|
||||||
SNMP::Info::Layer3::N1600
|
SNMP::Info::Layer3::N1600
|
||||||
Subclass for Nortel Ethernet Routing Switch 1600 series.
|
Subclass for Nortel Ethernet Routing Switch 1600 series.
|
||||||
|
|
||||||
|
SNMP::Info::Layer3::NetSNMP
|
||||||
|
Subclass for host systems running Net-SNMP.
|
||||||
|
|
||||||
|
SNMP::Info::Layer3::Netscreen
|
||||||
|
Subclass for Juniper NetScreen.
|
||||||
|
|
||||||
SNMP::Info::Layer3::Passport
|
SNMP::Info::Layer3::Passport
|
||||||
Subclass for Nortel Ethernet Routing Switch/Passport 8000 series
|
Subclass for Nortel Ethernet Routing Switch/Passport 8000 series
|
||||||
and Accelar series switches.
|
and Accelar series switches.
|
||||||
|
|
||||||
|
SNMP::Info::Layer3::Sun
|
||||||
|
Subclass for Generic Sun Routers running SunOS.
|
||||||
|
|
||||||
Thanks
|
Thanks
|
||||||
|
|
||||||
Thanks for testing and coding help (in no particular order) to : Andy
|
Thanks for testing and coding help (in no particular order) to : Andy
|
||||||
@@ -421,6 +461,7 @@ USAGE
|
|||||||
'BigInt' => 1,
|
'BigInt' => 1,
|
||||||
'BulkWalk' => 1,
|
'BulkWalk' => 1,
|
||||||
'BulkRepeaters' => 20,
|
'BulkRepeaters' => 20,
|
||||||
|
'LoopDetect' => 1,
|
||||||
'DestHost' => 'myrouter',
|
'DestHost' => 'myrouter',
|
||||||
'Community' => 'public',
|
'Community' => 'public',
|
||||||
'Version' => 2,
|
'Version' => 2,
|
||||||
@@ -454,8 +495,20 @@ USAGE
|
|||||||
|
|
||||||
(default 20)
|
(default 20)
|
||||||
|
|
||||||
|
LoopDetect
|
||||||
|
Detects looping during getnext table column walks by comparing
|
||||||
|
IIDs for each instance. A loop is detected if the same IID is
|
||||||
|
seen more than once and the walk is aborted. Note: This will not
|
||||||
|
detect loops during a bulkwalk operation, Net-SNMP's internal
|
||||||
|
bulkwalk function must detect the loop.
|
||||||
|
|
||||||
|
Set to 0 to turn off loop detection.
|
||||||
|
|
||||||
|
(default on)
|
||||||
|
|
||||||
Debug
|
Debug
|
||||||
Prints Lots of debugging messages
|
Prints Lots of debugging messages. Pass 2 to print even more
|
||||||
|
debugging messages.
|
||||||
|
|
||||||
(default off)
|
(default off)
|
||||||
|
|
||||||
@@ -514,7 +567,7 @@ USAGE
|
|||||||
data once, and then return cached versions of that data.
|
data once, and then return cached versions of that data.
|
||||||
|
|
||||||
Run $info->load_METHOD() where method is something like 'i_name' to
|
Run $info->load_METHOD() where method is something like 'i_name' to
|
||||||
reload data from a table method.
|
reload data from a method.
|
||||||
|
|
||||||
Run $info->clear_cache() to clear the cache to allow reload of both
|
Run $info->clear_cache() to clear the cache to allow reload of both
|
||||||
globals and table methods.
|
globals and table methods.
|
||||||
@@ -536,12 +589,17 @@ USAGE
|
|||||||
|
|
||||||
Optionally sets the bulkwalk parameter.
|
Optionally sets the bulkwalk parameter.
|
||||||
|
|
||||||
|
$info->loopdetect([1|0])
|
||||||
|
Returns if loopdetect is currently turned on for this object.
|
||||||
|
|
||||||
|
Optionally sets the loopdetect parameter.
|
||||||
|
|
||||||
$info->device_type()
|
$info->device_type()
|
||||||
Returns the Subclass name for this device. "SNMP::Info" is returned
|
Returns the Subclass name for this device. "SNMP::Info" is returned
|
||||||
if no more specific class is available.
|
if no more specific class is available.
|
||||||
|
|
||||||
First the device is checked for Layer 3 support and a specific
|
First the device is checked for Layer 3 support and a specific
|
||||||
subclass, then Layer 2 support and subclasses are checked for.
|
subclass, then Layer 2 support and subclasses are checked.
|
||||||
|
|
||||||
This means that Layer 2 / 3 switches and routers will fall under the
|
This means that Layer 2 / 3 switches and routers will fall under the
|
||||||
SNMP::Info::Layer3 subclasses.
|
SNMP::Info::Layer3 subclasses.
|
||||||
@@ -558,14 +616,20 @@ USAGE
|
|||||||
Catalyst 4000,4500 -> SNMP::Info::Layer3::C4000
|
Catalyst 4000,4500 -> SNMP::Info::Layer3::C4000
|
||||||
Catalyst 6500,3750 -> SNMP::Info::Layer3::C6500
|
Catalyst 6500,3750 -> SNMP::Info::Layer3::C6500
|
||||||
Cisco Generic L3 IOS device -> SNMP::Info::Layer3::Cisco
|
Cisco Generic L3 IOS device -> SNMP::Info::Layer3::Cisco
|
||||||
|
Cyclades terminal server -> SNMP::Info::Layer1::Cyclades
|
||||||
|
Dell PowerConnect -> SNMP::Info::Layer3::Dell
|
||||||
|
Enterasys -> SNMP::Info::Layer3::Enterasys
|
||||||
Extreme -> SNMP::Info::Layer3::Extreme
|
Extreme -> SNMP::Info::Layer3::Extreme
|
||||||
Foundry -> SNMP::Info::Layer3::Foundry
|
Foundry -> SNMP::Info::Layer3::Foundry
|
||||||
Juniper -> SNMP::Info::Layer3::Juniper
|
Juniper -> SNMP::Info::Layer3::Juniper
|
||||||
|
Microsoft -> SNMP::Info::Layer3::Microsoft
|
||||||
|
Net-SNMP -> SNMP::Info::Layer3::NetSNMP
|
||||||
Nortel Passport/Accelar LAN -> SNMP::Info::Layer3::Passport
|
Nortel Passport/Accelar LAN -> SNMP::Info::Layer3::Passport
|
||||||
Nortel/Bay Baystack -> SNMP::Info::Layer2::Baystack
|
Nortel/Bay Baystack -> SNMP::Info::Layer2::Baystack
|
||||||
Alteon Ace Director -> SNMP::Info::Layer3::AlteonAD
|
Alteon Ace Director -> SNMP::Info::Layer3::AlteonAD
|
||||||
Nortel Contivity -> SNMP::Info::Layer3::Contivity
|
Nortel Contivity -> SNMP::Info::Layer3::Contivity
|
||||||
Nortel BayRS Router -> SNMP::Info::Layer3::BayRS
|
Nortel BayRS Router -> SNMP::Info::Layer3::BayRS
|
||||||
|
Sun Router -> SNMP::Info::Layer3::Sun
|
||||||
Elsif Layer2 (no Layer3) -> SNMP::Info::Layer2
|
Elsif Layer2 (no Layer3) -> SNMP::Info::Layer2
|
||||||
Aironet - IOS Devices -> SNMP::Info::Layer2::Aironet
|
Aironet - IOS Devices -> SNMP::Info::Layer2::Aironet
|
||||||
Catalyst 1900 -> SNMP::Info::Layer2::C1900
|
Catalyst 1900 -> SNMP::Info::Layer2::C1900
|
||||||
@@ -575,12 +639,17 @@ USAGE
|
|||||||
Catalyst 3550/3548 -> SNMP::Info::Layer3::C3550
|
Catalyst 3550/3548 -> SNMP::Info::Layer3::C3550
|
||||||
Cisco 3400 w/ MetroBase -> SNMP::Info::Layer3::C3550
|
Cisco 3400 w/ MetroBase -> SNMP::Info::Layer3::C3550
|
||||||
Catalyst WS-C 2926,5xxx -> SNMP::Info::Layer2::Catalyst
|
Catalyst WS-C 2926,5xxx -> SNMP::Info::Layer2::Catalyst
|
||||||
|
Cisco (Airespace) Wireless -> SNMP::Info::Layer2::Airespace
|
||||||
Cisco (not covered by above) -> SNMP::Info::Layer2::Cisco
|
Cisco (not covered by above) -> SNMP::Info::Layer2::Cisco
|
||||||
|
Cyclades terminal server -> SNMP::Info::Layer1::Cyclades
|
||||||
|
Dell PowerConnect -> SNMP::Info::Layer3::Dell
|
||||||
|
Enterasys -> SNMP::Info::Layer3::Enterasys
|
||||||
Extreme -> SNMP::Info::Layer3::Extreme
|
Extreme -> SNMP::Info::Layer3::Extreme
|
||||||
Foundry (EdgeIron,????) -> SNMP::Info::Layer2::Foundry
|
Foundry -> SNMP::Info::Layer3::Foundry
|
||||||
HP Procurve -> SNMP::Info::Layer2::HP
|
HP Procurve -> SNMP::Info::Layer2::HP
|
||||||
Nortel/Bay Centillion ATM -> SNMP::Info::Layer2::Centillion
|
Nortel/Bay Centillion ATM -> SNMP::Info::Layer2::Centillion
|
||||||
Nortel/Bay Baystack -> SNMP::Info::Layer2::Baystack
|
Nortel/Bay Baystack -> SNMP::Info::Layer2::Baystack
|
||||||
|
Nortel Business Ethernet Switch-> SNMP::Info::Layer2::Baystack
|
||||||
Nortel Passport/Accelar 8100 -> SNMP::Info::Layer3::Passport
|
Nortel Passport/Accelar 8100 -> SNMP::Info::Layer3::Passport
|
||||||
Nortel AP 222x -> SNMP::Info::Layer2::NAP222x
|
Nortel AP 222x -> SNMP::Info::Layer2::NAP222x
|
||||||
Orinco AP -> SNMP::Info::Layer2::Orinoco
|
Orinco AP -> SNMP::Info::Layer2::Orinoco
|
||||||
@@ -593,6 +662,7 @@ USAGE
|
|||||||
Else -> SNMP::Info
|
Else -> SNMP::Info
|
||||||
ZyXEL_DSLAM -> SNMP::Info::Layer2::ZyXEL_DSLAM
|
ZyXEL_DSLAM -> SNMP::Info::Layer2::ZyXEL_DSLAM
|
||||||
Aruba wireless -> SNMP::Info::Layer2::Aruba
|
Aruba wireless -> SNMP::Info::Layer2::Aruba
|
||||||
|
Juniper NetScreen -> SNMP::Info::Layer3::Netscreen
|
||||||
|
|
||||||
$info->error(no_clear)
|
$info->error(no_clear)
|
||||||
Returns Error message if there is an error, or undef if there is
|
Returns Error message if there is an error, or undef if there is
|
||||||
@@ -698,8 +768,9 @@ USAGE
|
|||||||
|
|
||||||
Partial Table Fetches
|
Partial Table Fetches
|
||||||
|
|
||||||
If you want to get only a part of an SNMP table and you know the IID for
|
If you want to get only a part of an SNMP table or a single instance
|
||||||
the part of the table that you want, you can specify it in the call:
|
from the table and you know the IID for the part of the table that you
|
||||||
|
want, you can specify it in the call:
|
||||||
|
|
||||||
$local_routes = $info->ipr_route('192.168.0');
|
$local_routes = $info->ipr_route('192.168.0');
|
||||||
|
|
||||||
@@ -852,6 +923,36 @@ USAGE
|
|||||||
(ifInBroadcastPkts) (ifOutBroadcastPkts) (ifHCInBroadcastPkts)
|
(ifInBroadcastPkts) (ifOutBroadcastPkts) (ifHCInBroadcastPkts)
|
||||||
(ifHCOutBroadcastPkts)
|
(ifHCOutBroadcastPkts)
|
||||||
|
|
||||||
|
$info->i_discards_in() $info->i_discards_out()
|
||||||
|
"The number of inbound packets which were chosen to be discarded
|
||||||
|
even though no errors had been detected to prevent their being
|
||||||
|
deliverable to a higher-layer protocol. One possible reason for
|
||||||
|
discarding such a packet could be to free up buffer space." (IF-MIB)
|
||||||
|
|
||||||
|
(ifInDiscards) (ifOutDiscards)
|
||||||
|
|
||||||
|
$info->i_bad_proto_in()
|
||||||
|
"For packet-oriented interfaces, the number of packets received via
|
||||||
|
the interface which were discarded because of an unknown or
|
||||||
|
unsupported protocol. For character-oriented or fixed-length
|
||||||
|
interfaces that support protocol multiplexing the number of
|
||||||
|
transmission units received via the interface which were discarded
|
||||||
|
because of an unknown or unsupported protocol. For any interface
|
||||||
|
that does not support protocol multiplexing, this counter will
|
||||||
|
always be 0."
|
||||||
|
|
||||||
|
(ifInUnknownProtos)
|
||||||
|
|
||||||
|
$info->i_qlen_out()
|
||||||
|
"The length of the output packet queue (in packets)."
|
||||||
|
|
||||||
|
(ifOutQLen)
|
||||||
|
|
||||||
|
$info->i_specific()
|
||||||
|
See IF-MIB for full description
|
||||||
|
|
||||||
|
(ifSpecific)
|
||||||
|
|
||||||
IP Address Table
|
IP Address Table
|
||||||
|
|
||||||
Each entry in this table is an IP address in use on this device. Usually
|
Each entry in this table is an IP address in use on this device. Usually
|
||||||
@@ -1249,6 +1350,7 @@ SNMP::INFO INTERNALS
|
|||||||
'622000000' => 'OC-12',
|
'622000000' => 'OC-12',
|
||||||
'622080000' => 'OC-12',
|
'622080000' => 'OC-12',
|
||||||
'1000000000' => '1.0 Gbps',
|
'1000000000' => '1.0 Gbps',
|
||||||
|
'2488000000' => 'OC-48',
|
||||||
)
|
)
|
||||||
|
|
||||||
munge_highspeed()
|
munge_highspeed()
|
||||||
@@ -1332,7 +1434,8 @@ SNMP::INFO INTERNALS
|
|||||||
|
|
||||||
$info->_set(attr,val,iid)
|
$info->_set(attr,val,iid)
|
||||||
Used internally by AUTOLOAD to run an SNMP set command for dynamic
|
Used internally by AUTOLOAD to run an SNMP set command for dynamic
|
||||||
methods listed in either %GLOBALS or %FUNCS.
|
methods listed in either %GLOBALS or %FUNCS or a valid mib leaf from
|
||||||
|
a loaded MIB. Clears attr cache on sucessful set.
|
||||||
|
|
||||||
Example: $info->set_name('dog',3) uses autoload to resolve to
|
Example: $info->set_name('dog',3) uses autoload to resolve to
|
||||||
$info->_set('name','dog',3);
|
$info->_set('name','dog',3);
|
||||||
@@ -1356,7 +1459,10 @@ SNMP::INFO INTERNALS
|
|||||||
|
|
||||||
$info->_load_attr()
|
$info->_load_attr()
|
||||||
Used internally by AUTOLOAD to fetch data called from methods listed
|
Used internally by AUTOLOAD to fetch data called from methods listed
|
||||||
in %FUNCS.
|
in %FUNCS or a MIB Leaf node name.
|
||||||
|
|
||||||
|
Supports partial table fetches and single instance table fetches.
|
||||||
|
See "Partial Table Fetches" in SNMP::Info.
|
||||||
|
|
||||||
Called from $info->load_METHOD();
|
Called from $info->load_METHOD();
|
||||||
|
|
||||||
@@ -1374,20 +1480,27 @@ SNMP::INFO INTERNALS
|
|||||||
|
|
||||||
AUTOLOAD
|
AUTOLOAD
|
||||||
|
|
||||||
Each entry in either %FUNCS or %GLOBALS is used by AUTOLOAD() to create
|
Each entry in either %FUNCS, %GLOBALS, or MIB Leaf node names present in
|
||||||
dynamic methods.
|
loaded MIBs are used by AUTOLOAD() to create dynamic methods.
|
||||||
|
|
||||||
Note that this AUTOLOAD is going to be run for all the classes listed in
|
Note that this AUTOLOAD is going to be run for all the classes listed in
|
||||||
the @ISA array in a subclass, so will be called with a variety of
|
the @ISA array in a subclass, so will be called with a variety of
|
||||||
package names. We check the %FUNCS and %GLOBALS of the package that is
|
package names. We check the %FUNCS and %GLOBALS of the package that is
|
||||||
doing the calling at this given instant.
|
doing the calling at this given instant.
|
||||||
|
|
||||||
1. Returns unless method is listed in %FUNCS or %GLOBALS for given class
|
1. Returns unless method is listed in %FUNCS, %GLOBALS, or is MIB Leaf
|
||||||
2. If the method exists in %GLOBALS it runs $info->_global(method)
|
node name in a loaded MIB for given class.
|
||||||
unless already cached.
|
2. Checks for load_ prefix and if present runs $info->_global(method)
|
||||||
3. Method is in %FUNCS
|
for methods which exist in %GLOBALS or are a single instance MIB Leaf
|
||||||
4. Run $info->_load_attr(method) if not cached
|
node name, otherwise runs $info->_load_attr(method) for methods which
|
||||||
5. Return $info->_show_attr(method).
|
exist in %FUNCS or are MIB Leaf node name contained within a table. This
|
||||||
|
always forces reloading and does not use cached data.
|
||||||
|
3. Check for set_ prefix and if present runs $info->_set(method).
|
||||||
|
4. If the method exists in %GLOBALS or is a single instance MIB Leaf
|
||||||
|
node name it runs $info->_global(method) unless already cached.
|
||||||
|
5. If the method exists in %FUNCS or is MIB Leaf node name contained
|
||||||
|
within a table it runs $info->_load_attr(method) if not cached.
|
||||||
|
6. Otherwise return $info->_show_attr(method).
|
||||||
|
|
||||||
Override any dynamic method listed in one of these hashes by creating a
|
Override any dynamic method listed in one of these hashes by creating a
|
||||||
subroutine with the same name.
|
subroutine with the same name.
|
||||||
|
|||||||
Reference in New Issue
Block a user