1-- ################################################################################
2
3EXTREME-CABLE-MIB DEFINITIONS ::= BEGIN
4
5    IMPORTS
6        MODULE-IDENTITY     FROM SNMPv2-SMI
7		OBJECT-TYPE         FROM SNMPv2-SMI
8        TruthValue          FROM SNMPv2-TC
9		extremeAgent        FROM EXTREME-BASE-MIB
10		extremeV2Traps		FROM EXTREME-BASE-MIB
11        extremenetworks		FROM EXTREME-BASE-MIB
12		DisplayString       FROM RFC1213-MIB
13		NOTIFICATION-TYPE	FROM SNMPv2-SMI;
14
15    extremeCable MODULE-IDENTITY
16                LAST-UPDATED "201310111700Z"
17                ORGANIZATION "Extreme Networks, Inc."
18                CONTACT-INFO "www.extremenetworks.com"
19                DESCRIPTION "Extreme-specific Cable objects"
20        ::= { extremeAgent 24 }
21
22        extremeDiagConfigGroup OBJECT IDENTIFIER
23	::= { extremeCable 1 }
24
25	extremeDiagConfigTime OBJECT-TYPE
26 		SYNTAX DisplayString  (SIZE(16))
27		MAX-ACCESS read-write
28		STATUS current
29		DESCRIPTION
30	        "Indicates the time at which the Diagnostics information
31		 will be collected for the ports which have
32		 Auto-Diagnostics configured. Time must be given in hh:mm:ss format
33		 where hh, mm and ss are in decimals"
34		::= { extremeDiagConfigGroup 1  }
35
36	extremeDiagConfigRoF OBJECT-TYPE
37		SYNTAX INTEGER {true (1), false (2)}
38		MAX-ACCESS read-write
39		STATUS current
40		DESCRIPTION
41	        "Indicates whether a port should return to INIT state on
42		 Diagnostics Failure. If TRUE the port will be restarted
43		 even if the Diagnostics indicate a Failure. If FALSE the
44		 port will be moved to DIAG_FAIL state"
45		::= { extremeDiagConfigGroup 2  }
46
47	extremeDiagPortConfigTable OBJECT-TYPE
48		SYNTAX SEQUENCE OF ExtremeDiagPortCfgEntry
49		MAX-ACCESS not-accessible
50		STATUS current
51		DESCRIPTION
52	        "Table, which contains the diagnostic configuration
53		 information for the ports"
54		::= { extremeCable 2  }
55
56	extremeDiagPortConfigEntry OBJECT-TYPE
57		SYNTAX ExtremeDiagPortCfgEntry
58		MAX-ACCESS not-accessible
59		STATUS current
60		DESCRIPTION
61	        "Each row represents port related diagnostics
62		 configuration"
63		INDEX { extremeDiagPortCfgPortIfIndex, extremeDiagPortCfgMode }
64		::= { extremeDiagPortConfigTable 1  }
65
66	ExtremeDiagPortCfgEntry ::=
67		SEQUENCE {
68				extremeDiagPortCfgPortIfIndex
69					INTEGER,
70				extremeDiagPortCfgMode
71					INTEGER,
72				extremeDiagPortCfgStatus
73					INTEGER
74			}
75
76	extremeDiagPortCfgPortIfIndex OBJECT-TYPE
77		SYNTAX INTEGER
78		MAX-ACCESS read-only
79		STATUS current
80		DESCRIPTION
81	        "IfIndex of the Port for which the information in this row applies"
82		::= { extremeDiagPortConfigEntry 1  }
83
84	extremeDiagPortCfgMode OBJECT-TYPE
85		SYNTAX INTEGER {auto (1), manual (2)}
86		MAX-ACCESS read-only
87		STATUS current
88		DESCRIPTION
89	        "The mode of operation. The port can be configured to have
90		 either manual diagnostics or auto-diagnostics collected."
91		::= { extremeDiagPortConfigEntry 2 }
92
93	extremeDiagPortCfgStatus OBJECT-TYPE
94		SYNTAX INTEGER {enable (1), disable (2), run (3), diagfail(4)}
95		MAX-ACCESS read-write
96		STATUS current
97		DESCRIPTION
98	        "Specifies whether Diagnostics are enabled or disabled for
99		 the port. In the manual mode, enable and disable will disable the
100		 corresponding bit in the manual Diag portmask. Once the run command is
101		 given the Manual Diagnostics starts running. <diagfail> indicates the
102		 diagnostics for the port has failed. <diagfail> is a read-only value and
103		 cannot be used for setting the status of the port"
104		::= { extremeDiagPortConfigEntry 3  }
105
106    extremeDiagPortDiagTable OBJECT-TYPE
107		SYNTAX SEQUENCE OF ExtremeDiagPortDiagEntry
108		MAX-ACCESS not-accessible
109		STATUS current
110		DESCRIPTION
111		 "Table contains the diagnostic information for the ports"
112		::= { extremeCable 3  }
113
114        extremeDiagPortDiagEntry OBJECT-TYPE
115		SYNTAX ExtremeDiagPortDiagEntry
116		MAX-ACCESS not-accessible
117		STATUS current
118		DESCRIPTION
119		 "Each row represents port related diagnostics information"
120		INDEX { extremeDiagPortDiagPortIfIndex, extremeDiagPortDiagMode }
121		::= { extremeDiagPortDiagTable 1 }
122
123        ExtremeDiagPortDiagEntry ::=
124		SEQUENCE {
125				extremeDiagPortDiagPortIfIndex
126					INTEGER,
127				extremeDiagPortDiagMode
128					INTEGER,
129				extremeDiagPortSpeed
130				    INTEGER,
131				extremeDiagPortSwapAB
132					INTEGER,
133				extremeDiagPortSwapCD
134					INTEGER,
135				extremeDiagPortPairAPol
136					INTEGER,
137				extremeDiagPortPairAFlen
138					INTEGER,
139				extremeDiagPortPairALen
140					INTEGER,
141				extremeDiagPortPairASkew
142					INTEGER,
143				extremeDiagPortPairAStatus
144					INTEGER,
145				extremeDiagPortPairBPol
146					INTEGER,
147				extremeDiagPortPairBFlen
148					INTEGER,
149				extremeDiagPortPairBLen
150					INTEGER,
151				extremeDiagPortPairBSkew
152					INTEGER,
153				extremeDiagPortPairBStatus
154					INTEGER,
155				extremeDiagPortPairCPol
156					INTEGER,
157				extremeDiagPortPairCFlen
158					INTEGER,
159				extremeDiagPortPairCLen
160					INTEGER,
161				extremeDiagPortPairCSkew
162					INTEGER,
163				extremeDiagPortPairCStatus
164					INTEGER,
165				extremeDiagPortPairDPol
166					INTEGER,
167				extremeDiagPortPairDFlen
168					INTEGER,
169				extremeDiagPortPairDLen
170					INTEGER,
171				extremeDiagPortPairDSkew
172					INTEGER,
173				extremeDiagPortPairDStatus
174					INTEGER,
175				extremeDiagPortDateTime
176				    DisplayString
177			}
178
179	extremeDiagPortDiagPortIfIndex OBJECT-TYPE
180		SYNTAX INTEGER
181		MAX-ACCESS read-only
182		STATUS current
183		DESCRIPTION
184	        "IfIndex of the Port for which the information in this row applies"
185		::= { extremeDiagPortDiagEntry 1  }
186
187	extremeDiagPortDiagMode OBJECT-TYPE
188		SYNTAX INTEGER {auto (1), manual (2)}
189		MAX-ACCESS read-only
190		STATUS current
191		DESCRIPTION
192	        "The mode of operation. The port can be configured to have
193		 either manual diagnostics or auto-diagnostics collected."
194		::= { extremeDiagPortDiagEntry 2 }
195
196	extremeDiagPortSpeed OBJECT-TYPE
197		SYNTAX INTEGER { speed10 (1), speed100 (2), speed1000 (3), unknown (4)}
198		MAX-ACCESS read-only
199		STATUS current
200		DESCRIPTION
201		"Specifies the speed of the port"
202		::= { extremeDiagPortDiagEntry 3  }
203
204	extremeDiagPortSwapAB OBJECT-TYPE
205		SYNTAX INTEGER {swap(1), noswap(2), unknown(3)}
206		MAX-ACCESS read-only
207		STATUS current
208		DESCRIPTION
209		"Specifies whether pairA pairB cables are swapped"
210		::= { extremeDiagPortDiagEntry 4  }
211
212	extremeDiagPortSwapCD OBJECT-TYPE
213		SYNTAX INTEGER {swap(1), noswap(2), unknown(3)}
214		MAX-ACCESS read-only
215		STATUS current
216		DESCRIPTION
217		"Specifies whether pairC and pairD cables are swapped"
218		::= { extremeDiagPortDiagEntry 5  }
219
220	extremeDiagPortPairAPol OBJECT-TYPE
221		SYNTAX INTEGER {positive(1), negative(2), unknown(3)}
222		MAX-ACCESS read-only
223		STATUS current
224		DESCRIPTION
225		"Specifies the polarity of pairA cables"
226		::= { extremeDiagPortDiagEntry 6  }
227
228	extremeDiagPortPairAFlen OBJECT-TYPE
229		SYNTAX INTEGER
230		MAX-ACCESS read-only
231		STATUS current
232		DESCRIPTION
233		"Specifies the distance of Fault in the pairA cables"
234		::= { extremeDiagPortDiagEntry 7  }
235
236	extremeDiagPortPairALen OBJECT-TYPE
237		SYNTAX INTEGER
238		MAX-ACCESS read-only
239		STATUS current
240		DESCRIPTION
241		"Specifies the length of the pairA cables"
242		::= { extremeDiagPortDiagEntry 8  }
243
244	extremeDiagPortPairASkew OBJECT-TYPE
245		SYNTAX INTEGER
246		MAX-ACCESS read-only
247		STATUS current
248		DESCRIPTION
249	        "Skew of pairA cables with respect to the fastest pair"
250		::= { extremeDiagPortDiagEntry 9  }
251
252	extremeDiagPortPairAStatus OBJECT-TYPE
253		SYNTAX INTEGER {open(1), short(2), terminated(3), imperror(4), unknown(5)}
254		MAX-ACCESS read-only
255		STATUS current
256		DESCRIPTION
257	        "Indicates whether pairA cables are properly terminated,
258		 short or open"
259		::= { extremeDiagPortDiagEntry 10  }
260
261	extremeDiagPortPairBPol OBJECT-TYPE
262		SYNTAX INTEGER {positive(1), negative(2), unknown(3)}
263		MAX-ACCESS read-only
264		STATUS current
265		DESCRIPTION
266		"Specifies the polarity of pairB cables"
267		::= { extremeDiagPortDiagEntry 11  }
268
269	extremeDiagPortPairBFlen OBJECT-TYPE
270		SYNTAX INTEGER
271		MAX-ACCESS read-only
272		STATUS current
273		DESCRIPTION
274		"Specifies the distance of Fault in the pairB cables"
275		::= { extremeDiagPortDiagEntry 12  }
276
277	extremeDiagPortPairBLen OBJECT-TYPE
278		SYNTAX INTEGER
279		MAX-ACCESS read-only
280		STATUS current
281		DESCRIPTION
282		"Specifies the length of the pairB cables"
283		::= { extremeDiagPortDiagEntry 13  }
284
285	extremeDiagPortPairBSkew OBJECT-TYPE
286		SYNTAX INTEGER
287		MAX-ACCESS read-only
288		STATUS current
289		DESCRIPTION
290		"Skew of pairB cables with respect to the fastest pair"
291		::= {  extremeDiagPortDiagEntry 14 }
292
293	extremeDiagPortPairBStatus OBJECT-TYPE
294		SYNTAX INTEGER {open(1), short(2), terminated(3), imperror(4), unknown(5)}
295		MAX-ACCESS read-only
296		STATUS current
297		DESCRIPTION
298	        "Indicates whether pairB cables are properly terminated,
299		 short or open"
300		::= { extremeDiagPortDiagEntry 15 }
301
302	extremeDiagPortPairCPol OBJECT-TYPE
303		SYNTAX INTEGER {positive(1), negative(2), unknown(3)}
304		MAX-ACCESS read-only
305		STATUS current
306		DESCRIPTION
307		"Specifies the polarity of pairC cables"
308		::= { extremeDiagPortDiagEntry 16  }
309
310	extremeDiagPortPairCFlen OBJECT-TYPE
311		SYNTAX INTEGER
312		MAX-ACCESS read-only
313		STATUS current
314		DESCRIPTION
315		"Specifies the distance of Fault in the pairC cables"
316		::= { extremeDiagPortDiagEntry 17  }
317
318	extremeDiagPortPairCLen OBJECT-TYPE
319		SYNTAX INTEGER
320		MAX-ACCESS read-only
321		STATUS current
322		DESCRIPTION
323		"Specifies the length of the pairC cables"
324		::= { extremeDiagPortDiagEntry 18 }
325
326	extremeDiagPortPairCSkew OBJECT-TYPE
327		SYNTAX INTEGER
328		MAX-ACCESS read-only
329		STATUS current
330		DESCRIPTION
331	        "Skew of pairC cables with respect to the fastest pair"
332		::= { extremeDiagPortDiagEntry 19 }
333
334	extremeDiagPortPairCStatus OBJECT-TYPE
335		SYNTAX INTEGER {open(1), short(2), terminated(3), imperror(4), unknown(5)}
336		MAX-ACCESS read-only
337		STATUS current
338		DESCRIPTION
339	        "Indicates whether pairC cables are properly terminated,
340		 short or open"
341		::= {  extremeDiagPortDiagEntry 20}
342
343	extremeDiagPortPairDPol OBJECT-TYPE
344		SYNTAX INTEGER {positive(1), negative(2), unknown(3)}
345		MAX-ACCESS read-only
346		STATUS current
347		DESCRIPTION
348		"Specifies the polarity of pairD cables"
349		::= { extremeDiagPortDiagEntry 21  }
350
351	extremeDiagPortPairDFlen OBJECT-TYPE
352		SYNTAX INTEGER
353		MAX-ACCESS read-only
354		STATUS current
355		DESCRIPTION
356		"Specifies the distance of Fault in the pairD cables"
357		::= { extremeDiagPortDiagEntry 22  }
358
359	extremeDiagPortPairDLen OBJECT-TYPE
360		SYNTAX INTEGER
361		MAX-ACCESS read-only
362		STATUS current
363		DESCRIPTION
364		"Specifies the length of the pairD cables"
365		::= { extremeDiagPortDiagEntry 23 }
366
367	extremeDiagPortPairDSkew OBJECT-TYPE
368		SYNTAX INTEGER
369		MAX-ACCESS read-only
370		STATUS current
371		DESCRIPTION
372	        "Skew of pairD cables with respect to the fastest pair"
373		::= { extremeDiagPortDiagEntry 24 }
374
375	extremeDiagPortPairDStatus OBJECT-TYPE
376		SYNTAX INTEGER {open(1), short(2), terminated(3), imperror(4), unknown(5)}
377		MAX-ACCESS read-only
378		STATUS current
379		DESCRIPTION
380	        "Indicates whether pairD cables are properly terminated,
381		 short or open"
382		::= { extremeDiagPortDiagEntry 25 }
383
384	extremeDiagPortDateTime OBJECT-TYPE
385 		SYNTAX DisplayString  (SIZE(64))
386		MAX-ACCESS read-only
387		STATUS current
388		DESCRIPTION
389	        "Date and time at which the Diagnostic information was
390		 collected"
391		::= { extremeDiagPortDiagEntry 26 }
392
393	extremeDiagPortStatsTable  OBJECT-TYPE
394		SYNTAX SEQUENCE OF ExtremeDiagPortStatsEntry
395		MAX-ACCESS not-accessible
396		STATUS current
397		DESCRIPTION
398	        "Table, which contains the diagnostic statistic information
399		 for the ports"
400		::= { extremeCable 4  }
401
402	extremeDiagPortStatsEntry OBJECT-TYPE
403		SYNTAX ExtremeDiagPortStatsEntry
404		MAX-ACCESS not-accessible
405		STATUS current
406		DESCRIPTION
407	        "Each row represents port related diagnostics statistics
408		 information"
409		INDEX { extremeDiagPortStatsPortIfIndex }
410		::= { extremeDiagPortStatsTable 1 }
411
412	ExtremeDiagPortStatsEntry ::=
413		SEQUENCE {
414				extremeDiagPortStatsPortIfIndex
415					INTEGER,
416				extremeDiagPortStatsNumDiag
417					INTEGER,
418				extremeDiagPortStatsNumSuccess
419					INTEGER,
420				extremeDiagPortStatsNumFail
421					INTEGER,
422				extremeDiagPortStatsNumChange
423					INTEGER,
424				extremeDiagPortStatsNumAbort
425					INTEGER
426			}
427
428	extremeDiagPortStatsPortIfIndex OBJECT-TYPE
429		SYNTAX INTEGER
430		MAX-ACCESS read-only
431		STATUS current
432		DESCRIPTION
433	        "IfIndex of the Port for which the information in this row applies"
434		::= { extremeDiagPortStatsEntry 1  }
435
436	extremeDiagPortStatsNumDiag OBJECT-TYPE
437		SYNTAX INTEGER
438		MAX-ACCESS read-only
439		STATUS current
440		DESCRIPTION
441	        "Number of times Diagnostics information collected for this
442		 port"
443		::= {   extremeDiagPortStatsEntry 2 }
444
445	extremeDiagPortStatsNumSuccess OBJECT-TYPE
446		SYNTAX INTEGER
447		MAX-ACCESS read-only
448		STATUS current
449		DESCRIPTION
450	        "Number of times Diagnostics for this port completed
451		 successfully without any errors"
452		::= {   extremeDiagPortStatsEntry 3 }
453
454	extremeDiagPortStatsNumFail OBJECT-TYPE
455		SYNTAX INTEGER
456		MAX-ACCESS read-only
457		STATUS current
458		DESCRIPTION
459	        "Number of times Diagnostics for this port Failed due to
460		 errors in the cable pairs"
461		::= {   extremeDiagPortStatsEntry 4 }
462
463	extremeDiagPortStatsNumChange OBJECT-TYPE
464		SYNTAX INTEGER
465		MAX-ACCESS read-only
466		STATUS current
467		DESCRIPTION
468	        "Number of times Diagnostics Changed for this port"
469		::= {   extremeDiagPortStatsEntry 5 }
470
471	extremeDiagPortStatsNumAbort OBJECT-TYPE
472		SYNTAX INTEGER
473		MAX-ACCESS read-only
474		STATUS current
475		DESCRIPTION
476	        "Number of times Diagnostics was aborted by the user for this port"
477		::= {   extremeDiagPortStatsEntry 6 }
478
479--TRAPS MIB Definitions for CDM
480
481--   extremeTrapDiagPortDiagnostics	TRAP-TYPE
482--   ENTERPRISE  extremenetworks
483--   VARIABLES   {extremeDiagPortCfgPortIfIndex, extremeDiagPortCfgMode, extremeDiagPortCfgStatus}
484--   DESCRIPTION
485--   	  "Indicates the status of Diagnostics for a port. The status indicates
486--   	  whether Diagnostics for a particular port failed"
487--   ::= 22
488
489   extremeCableTraps 	OBJECT IDENTIFIER
490	::= { extremeCable 5 }
491
492   extremeCableTrapsPrefix   OBJECT IDENTIFIER
493	::= { extremeCableTraps 0 }
494
495   extremeTrapDiagPortDiagnostics	NOTIFICATION-TYPE
496   	OBJECTS   {extremeDiagPortCfgPortIfIndex, extremeDiagPortCfgMode, extremeDiagPortCfgStatus}
497      STATUS current
498      DESCRIPTION
499   	  "Indicates the status of Diagnostics for a port. The status indicates
500   	  whether Diagnostics for a particular port failed"
501      ::= { extremeCableTrapsPrefix 1 }
502
503END
504