.\" Automatically generated by Pod::Man 4.07 (Pod::Simple 3.32) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .if !\nF .nr F 0 .if \nF>0 \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} .\} .\" ======================================================================== .\" .IX Title "Info::Layer1::S3000 3pm" .TH Info::Layer1::S3000 3pm "2016-12-21" "perl v5.24.1" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SNMP::Info::Layer1::S3000 \- SNMP Interface to Synoptics / Nortel Hubs .SH "AUTHOR" .IX Header "AUTHOR" Eric Miller .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #Let SNMP::Info determine the correct subclass for you. \& \& my $s3000 = new SNMP::Info( \& AutoSpecify => 1, \& Debug => 1, \& DestHost => \*(Aqmyswitch\*(Aq, \& Community => \*(Aqpublic\*(Aq, \& Version => 2 \& ) \& \& or die "Can\*(Aqt connect to DestHost.\en"; \& \& my $class = $s3000\->class(); \& print "SNMP::Info determined this device to fall under subclass : $class\en"; .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" Provides abstraction to the configuration information obtainable from a Bay hub device through \s-1SNMP. \s0 Also provides device \s-1MAC\s0 to port mapping through the proprietary \s-1MIB.\s0 .PP For speed or debugging purposes you can call the subclass directly, but not after determining a more specific class using the method above. .PP my \f(CW$s3000\fR = new SNMP::Info::Layer1::S3000(...); .SS "Inherited Classes" .IX Subsection "Inherited Classes" .IP "SNMP::Info::Layer2" 4 .IX Item "SNMP::Info::Layer2" .SS "Required MIBs" .IX Subsection "Required MIBs" .PD 0 .IP "\fISYNOPTICS-COMMON-MIB\fR" 4 .IX Item "SYNOPTICS-COMMON-MIB" .IP "\fISYNOPTICS-ETHERNET-MIB\fR" 4 .IX Item "SYNOPTICS-ETHERNET-MIB" .PD .SS "Inherited MIBs" .IX Subsection "Inherited MIBs" See \*(L"Required MIBs\*(R" in SNMP::Info::Layer2 for its \s-1MIB\s0 requirements. .SH "GLOBALS" .IX Header "GLOBALS" These are methods that return scalar value from \s-1SNMP\s0 .ie n .IP "$s3000\->\fIvendor()\fR" 4 .el .IP "\f(CW$s3000\fR\->\fIvendor()\fR" 4 .IX Item "$s3000->vendor()" Returns 'nortel' .ie n .IP "$s3000\->\fIos()\fR" 4 .el .IP "\f(CW$s3000\fR\->\fIos()\fR" 4 .IX Item "$s3000->os()" Returns 'synoptics' .ie n .IP "$s3000\->\fImodel()\fR" 4 .el .IP "\f(CW$s3000\fR\->\fImodel()\fR" 4 .IX Item "$s3000->model()" Cross references \f(CW$s3000\fR\->\fIid()\fR to the \fISYNOPTICS-MIB\fR and returns the results. .Sp Removes \f(CW\*(C`sreg\-\*(C'\fR from the model name and returns only the numeric model identifier. .ie n .IP "$stack\->\fIos_ver()\fR" 4 .el .IP "\f(CW$stack\fR\->\fIos_ver()\fR" 4 .IX Item "$stack->os_ver()" Returns the software version specified as major.minor.maint. .Sp (\f(CW\*(C`s3AgentSwMajorVer\*(C'\fR).(\f(CW\*(C`s3AgentSwMinorVer\*(C'\fR).(\f(CW\*(C`s3AgentSwMaintVer\*(C'\fR) .ie n .IP "$stack\->\fIos_bin()\fR" 4 .el .IP "\f(CW$stack\fR\->\fIos_bin()\fR" 4 .IX Item "$stack->os_bin()" Returns the firmware version. (\f(CW\*(C`s3AgentFwVer\*(C'\fR) .ie n .IP "$s3000\->\fImac()\fR" 4 .el .IP "\f(CW$s3000\fR\->\fImac()\fR" 4 .IX Item "$s3000->mac()" Returns \s-1MAC\s0 of the advertised \s-1IP\s0 address of the device. .SS "Overrides" .IX Subsection "Overrides" .ie n .IP "$s3000\->\fIlayers()\fR" 4 .el .IP "\f(CW$s3000\fR\->\fIlayers()\fR" 4 .IX Item "$s3000->layers()" Returns 00000011. Class emulates Layer 2 functionality through proprietary MIBs. .SS "Globals imported from SNMP::Info::Layer2" .IX Subsection "Globals imported from SNMP::Info::Layer2" See \*(L"\s-1GLOBALS\*(R"\s0 in SNMP::Info::Layer2 for details. .SH "TABLE METHODS" .IX Header "TABLE METHODS" These are methods that return tables of information in the form of a reference to a hash. .SS "Overrides" .IX Subsection "Overrides" .ie n .IP "$s3000\->\fIi_index()\fR" 4 .el .IP "\f(CW$s3000\fR\->\fIi_index()\fR" 4 .IX Item "$s3000->i_index()" Returns reference to map of IIDs to Interface index. .Sp Since hubs do not support \f(CW\*(C`ifIndex\*(C'\fR, the interface index is created using the formula (board * 256 + port). This is required to support devices with more than one module. .ie n .IP "$s3000\->\fIinterfaces()\fR" 4 .el .IP "\f(CW$s3000\fR\->\fIinterfaces()\fR" 4 .IX Item "$s3000->interfaces()" Returns reference to map of IIDs to physical ports. .ie n .IP "$s3000\->\fIi_duplex()\fR" 4 .el .IP "\f(CW$s3000\fR\->\fIi_duplex()\fR" 4 .IX Item "$s3000->i_duplex()" Returns half, hubs do not support full duplex. .ie n .IP "$s3000\->\fIi_duplex_admin()\fR" 4 .el .IP "\f(CW$s3000\fR\->\fIi_duplex_admin()\fR" 4 .IX Item "$s3000->i_duplex_admin()" Returns half, hubs do not support full duplex. .ie n .IP "$s3000\->\fIi_speed()\fR" 4 .el .IP "\f(CW$s3000\fR\->\fIi_speed()\fR" 4 .IX Item "$s3000->i_speed()" Returns 10000000. The hubs only support 10 Mbs Ethernet. .ie n .IP "$s3000\->\fIi_up()\fR" 4 .el .IP "\f(CW$s3000\fR\->\fIi_up()\fR" 4 .IX Item "$s3000->i_up()" Returns (\f(CW\*(C`s3EnetPortLinkStatus\*(C'\fR) for each port. Translates on/off to up/down. .ie n .IP "$s3000\->\fIi_up_admin()\fR" 4 .el .IP "\f(CW$s3000\fR\->\fIi_up_admin()\fR" 4 .IX Item "$s3000->i_up_admin()" Returns (\f(CW\*(C`s3EnetPortPartStatus\*(C'\fR) for each port. .ie n .IP "$s3000\->set_i_up_admin(state, ifIndex)" 4 .el .IP "\f(CW$s3000\fR\->set_i_up_admin(state, ifIndex)" 4 .IX Item "$s3000->set_i_up_admin(state, ifIndex)" Sets port state, must be supplied with state and port \f(CW\*(C`ifIndex\*(C'\fR .Sp State choices are 'up' or 'down' .Sp Example: my \f(CW%if_map\fR = reverse %{$s3000\->\fIinterfaces()\fR}; \f(CW$s3000\fR\->set_i_up_admin('down', \f(CW$if_map\fR{'1.1'}) or die \*(L"Couldn't change port state. \*(R",$s3000\->\fIerror\fR\|(1); .ie n .IP "$s3000\->\fIbp_index()\fR" 4 .el .IP "\f(CW$s3000\fR\->\fIbp_index()\fR" 4 .IX Item "$s3000->bp_index()" Simulates bridge \s-1MIB\s0 by returning reference to a hash containing the index for both the keys and values. .ie n .IP "$s3000\->\fIfw_port()\fR" 4 .el .IP "\f(CW$s3000\fR\->\fIfw_port()\fR" 4 .IX Item "$s3000->fw_port()" Returns reference to map of IIDs of the \&\f(CW\*(C`SYNOPTICS\-ETHERNET\-MIB::s3EnetShowNodesTable\*(C'\fR to the Interface index. .ie n .IP "$s3000\->\fIfw_mac()\fR" 4 .el .IP "\f(CW$s3000\fR\->\fIfw_mac()\fR" 4 .IX Item "$s3000->fw_mac()" (\f(CW\*(C`s3EnetShowNodesMacAddress\*(C'\fR) .ie n .IP "$s3000\->\fIs3000_topo_port()\fR" 4 .el .IP "\f(CW$s3000\fR\->\fIs3000_topo_port()\fR" 4 .IX Item "$s3000->s3000_topo_port()" Returns reference to hash. Key: Table entry, Value:Port Number (interface iid) .Sp (\f(CW\*(C`s3EnetTopNmmPort\*(C'\fR) .ie n .IP "$s3000\->\fIs3000_topo_mac()\fR" 4 .el .IP "\f(CW$s3000\fR\->\fIs3000_topo_mac()\fR" 4 .IX Item "$s3000->s3000_topo_mac()" (\f(CW\*(C`s3EnetTopNmmMacAddr\*(C'\fR) .Sp Returns reference to hash. Key: Table entry, Value:Remote \s-1MAC\s0 address .SS "Table Methods imported from SNMP::Info::Layer2" .IX Subsection "Table Methods imported from SNMP::Info::Layer2" See \*(L"\s-1TABLE METHODS\*(R"\s0 in SNMP::Info::Layer2 for details.