.\" Automatically generated by Pod::Man 4.10 (Pod::Simple 3.35) .\" .\" 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 .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SNMP::Info::Layer1::Cyclades 3pm" .TH SNMP::Info::Layer1::Cyclades 3pm "2019-02-25" "perl v5.28.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::Cyclades \- SNMP Interface to Cyclades/Avocent terminal servers .SH "AUTHOR" .IX Header "AUTHOR" Eric Miller .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #Let SNMP::Info determine the correct subclass for you. \& \& my $cyclades = new SNMP::Info( \& AutoSpecify => 1, \& Debug => 1, \& # These arguments are passed directly to SNMP::Session \& DestHost => \*(Aqmyswitch\*(Aq, \& Community => \*(Aqpublic\*(Aq, \& Version => 2 \& ) \& \& or die "Can\*(Aqt connect to DestHost.\en"; \& \& my $class = $cyclades\->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 Cyclades/Avocent device through \s-1SNMP.\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$cyclades\fR = new SNMP::Info::Layer1::Cyclades(...); .SS "Inherited Classes" .IX Subsection "Inherited Classes" .IP "SNMP::Info::Layer1" 4 .IX Item "SNMP::Info::Layer1" .SS "Required MIBs" .IX Subsection "Required MIBs" .PD 0 .IP "\fICYCLADES-ACS-SYS-MIB\fR" 4 .IX Item "CYCLADES-ACS-SYS-MIB" .IP "\fICYCLADES-ACS-CONF-MIB\fR" 4 .IX Item "CYCLADES-ACS-CONF-MIB" .IP "\fICYCLADES-ACS-INFO-MIB\fR" 4 .IX Item "CYCLADES-ACS-INFO-MIB" .IP "\fI\s-1CYCLADES\-ACS5K\-SYS\-MIB\s0\fR" 4 .IX Item "CYCLADES-ACS5K-SYS-MIB" .IP "\fI\s-1CYCLADES\-ACS5K\-CONF\-MIB\s0\fR" 4 .IX Item "CYCLADES-ACS5K-CONF-MIB" .IP "\fI\s-1CYCLADES\-ACS5K\-INFO\-MIB\s0\fR" 4 .IX Item "CYCLADES-ACS5K-INFO-MIB" .IP "\fI\s-1ACS6000\-MIB\s0\fR" 4 .IX Item "ACS6000-MIB" .PD .SS "Inherited MIBs" .IX Subsection "Inherited MIBs" See \*(L"Required MIBs\*(R" in SNMP::Info::Layer1 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 "$cyclades\->\fBos_ver()\fR" 4 .el .IP "\f(CW$cyclades\fR\->\fBos_ver()\fR" 4 .IX Item "$cyclades->os_ver()" (\f(CW\*(C`acsFirmwareVersion\*(C'\fR), (\f(CW\*(C`cyACS5Kversion\*(C'\fR), or (\f(CW\*(C`cyACSversion\*(C'\fR) .ie n .IP "$cyclades\->\fBserial()\fR" 4 .el .IP "\f(CW$cyclades\fR\->\fBserial()\fR" 4 .IX Item "$cyclades->serial()" (\f(CW\*(C`acsSerialNumber\*(C'\fR), (\f(CW\*(C`cyACS5KDevId\*(C'\fR), or (\f(CW\*(C`cyACSDevId\*(C'\fR) .ie n .IP "$cyclades\->\fBroot_ip()\fR" 4 .el .IP "\f(CW$cyclades\fR\->\fBroot_ip()\fR" 4 .IX Item "$cyclades->root_ip()" (\f(CW\*(C`cyEthIPaddr\*(C'\fR) .ie n .IP "$cyclades\->\fBps1_status()\fR" 4 .el .IP "\f(CW$cyclades\fR\->\fBps1_status()\fR" 4 .IX Item "$cyclades->ps1_status()" (\f(CW\*(C`acsPowerSupplyStatePw1\*(C'\fR), (\f(CW\*(C`cyACS5KPw1\*(C'\fR), or (\f(CW\*(C`cyACSPw1\*(C'\fR) .ie n .IP "$cyclades\->\fBps2_status()\fR" 4 .el .IP "\f(CW$cyclades\fR\->\fBps2_status()\fR" 4 .IX Item "$cyclades->ps2_status()" (\f(CW\*(C`acsPowerSupplyStatePw2\*(C'\fR), (\f(CW\*(C`cyACS5KPw2\*(C'\fR), or (\f(CW\*(C`cyACSPw2\*(C'\fR) .SS "Overrides" .IX Subsection "Overrides" .ie n .IP "$cyclades\->\fBlayers()\fR" 4 .el .IP "\f(CW$cyclades\fR\->\fBlayers()\fR" 4 .IX Item "$cyclades->layers()" Returns 01000001. These devices don't have a \s-1FDB\s0 and we probably don't want to poll for an \s-1ARP\s0 cache so turn off reported Layer 2 and Layer 3. .ie n .IP "$cyclades\->\fBvendor()\fR" 4 .el .IP "\f(CW$cyclades\fR\->\fBvendor()\fR" 4 .IX Item "$cyclades->vendor()" Returns 'vertiv' .ie n .IP "$cyclades\->\fBos()\fR" 4 .el .IP "\f(CW$cyclades\fR\->\fBos()\fR" 4 .IX Item "$cyclades->os()" Returns 'avocent' .ie n .IP "$cyclades\->\fBmodel()\fR" 4 .el .IP "\f(CW$cyclades\fR\->\fBmodel()\fR" 4 .IX Item "$cyclades->model()" Returns lower case (\f(CW\*(C`cyACSpname\*(C'\fR) or (\f(CW\*(C`acsProductModel\*(C'\fR) if it exists otherwise tries to reference \f(CW$cyclades\fR\->\fBid()\fR to one of the MIBs listed above .SS "Globals imported from SNMP::Info::Layer1" .IX Subsection "Globals imported from SNMP::Info::Layer1" See \*(L"\s-1GLOBALS\*(R"\s0 in SNMP::Info::Layer1 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 "$cyclades\->\fBi_index()\fR" 4 .el .IP "\f(CW$cyclades\fR\->\fBi_index()\fR" 4 .IX Item "$cyclades->i_index()" Returns reference to map of IIDs to Interface index. .Sp Extended to include serial ports. Serial ports are indexed with the alternative labeling system for the serial port, either the listening socket port \f(CW\*(C`cySPortSocketPort\*(C'\fR or \f(CW\*(C`acsSerialPortTableDeviceName\*(C'\fR name to avoid conflicts with \f(CW\*(C`ifIndex\*(C'\fR. .ie n .IP "$cyclades\->\fBinterfaces()\fR" 4 .el .IP "\f(CW$cyclades\fR\->\fBinterfaces()\fR" 4 .IX Item "$cyclades->interfaces()" Returns reference to map of IIDs to physical ports. Extended to include serial ports, \f(CW\*(C`acsSerialPortTableDeviceName\*(C'\fR or \f(CW\*(C`cyISPortTty\*(C'\fR. .ie n .IP "$cyclades\->\fBi_speed()\fR" 4 .el .IP "\f(CW$cyclades\fR\->\fBi_speed()\fR" 4 .IX Item "$cyclades->i_speed()" Returns interface speed. Extended to include serial ports, \&\f(CW\*(C`acsSerialPortTableComSpeed\*(C'\fR or \f(CW\*(C`cyISPortSpeed\*(C'\fR. .ie n .IP "$cyclades\->\fBi_up()\fR" 4 .el .IP "\f(CW$cyclades\fR\->\fBi_up()\fR" 4 .IX Item "$cyclades->i_up()" Returns link status for each port. Extended to include serial ports, \&\f(CW\*(C`acsSerialPortTableSignalStateDCD\*(C'\fR or \f(CW\*(C`cyISPortSigCD\*(C'\fR. .ie n .IP "$cyclades\->\fBi_description()\fR" 4 .el .IP "\f(CW$cyclades\fR\->\fBi_description()\fR" 4 .IX Item "$cyclades->i_description()" Returns description of each port. Extended to include serial ports, \&\f(CW\*(C`acsSerialPortTableName\*(C'\fR or \f(CW\*(C`cyISPortName\*(C'\fR. .ie n .IP "$cyclades\->\fBi_name()\fR" 4 .el .IP "\f(CW$cyclades\fR\->\fBi_name()\fR" 4 .IX Item "$cyclades->i_name()" Returns name of each port. Extended to include serial ports, \&\f(CW\*(C`acsSerialPortTableName\*(C'\fR or \f(CW\*(C`cyISPortName\*(C'\fR. .SS "Table Methods imported from SNMP::Info::Layer1" .IX Subsection "Table Methods imported from SNMP::Info::Layer1" See \*(L"\s-1TABLE METHODS\*(R"\s0 in SNMP::Info::Layer1 for details.