Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

506 lines
21 KiB

  1. RFC1229-MIB DEFINITIONS ::= BEGIN
  2. -- Extensions to MIB-II's Generic Interface Table
  3. IMPORTS
  4. experimental, Counter FROM RFC1155-SMI
  5. DisplayString, PhysAddress FROM RFC1213-MIB
  6. OBJECT-TYPE FROM RFC-1212;
  7. ifExtensions OBJECT IDENTIFIER ::= { experimental 6 }
  8. -- Generic Interface Extension Table
  9. --
  10. -- This group of objects is mandatory for all types of
  11. -- subnetwork interface.
  12. ifExtnsTable OBJECT-TYPE
  13. SYNTAX SEQUENCE OF IfExtnsEntry
  14. ACCESS not-accessible
  15. STATUS mandatory
  16. DESCRIPTION
  17. "A list of interfaces extension entries.
  18. The number of entries is given by the value
  19. of ifNumber, defined in [4,6]."
  20. ::= { ifExtensions 1 }
  21. ifExtnsEntry OBJECT-TYPE
  22. SYNTAX IfExtnsEntry
  23. ACCESS not-accessible
  24. STATUS mandatory
  25. DESCRIPTION
  26. "An extension to the interfaces entry,
  27. defined in [4,6], containing additional
  28. objects at the subnetwork layer and below
  29. for a particular interface."
  30. INDEX { ifExtnsIfIndex }
  31. ::= { ifExtnsTable 1 }
  32. IfExtnsEntry ::=
  33. SEQUENCE {
  34. ifExtnsIfIndex
  35. INTEGER,
  36. ifExtnsChipSet
  37. OBJECT IDENTIFIER,
  38. ifExtnsRevWare
  39. DisplayString,
  40. ifExtnsMulticastsTransmittedOks
  41. Counter,
  42. ifExtnsBroadcastsTransmittedOks
  43. Counter,
  44. ifExtnsMulticastsReceivedOks
  45. Counter,
  46. ifExtnsBroadcastsReceivedOks
  47. Counter,
  48. ifExtnsPromiscuous
  49. INTEGER
  50. }
  51. ifExtnsIfIndex OBJECT-TYPE
  52. SYNTAX INTEGER
  53. ACCESS read-only
  54. STATUS mandatory
  55. DESCRIPTION
  56. "The value of this object identifies the
  57. interface for which this entry contains
  58. extended management information. The value
  59. of this object for a particular interface
  60. has the same value as the ifIndex object,
  61. defined in [4,6], for the same interface."
  62. ::= { ifExtnsEntry 1 }
  63. ifExtnsChipSet OBJECT-TYPE
  64. SYNTAX OBJECT IDENTIFIER
  65. ACCESS read-only
  66. STATUS mandatory
  67. DESCRIPTION
  68. "This object identifies the hardware chip
  69. set being used in the interface. The
  70. assignment of OBJECT IDENTIFIERs to various
  71. types of hardware chip sets is managed
  72. by the IANA. If the hardware chip set is
  73. unknown, the object identifier
  74. unknownChipSet OBJECT IDENTIFIER ::= { 0 0 }
  75. is returned. Note that unknownChipSet is a
  76. syntactically valid object identifier, and
  77. any conformant implementation of ASN.1 and
  78. the BER must be able to generate and
  79. recognize this value."
  80. ::= { ifExtnsEntry 2 }
  81. ifExtnsRevWare OBJECT-TYPE
  82. SYNTAX DisplayString (SIZE (0..255))
  83. ACCESS read-only
  84. STATUS mandatory
  85. DESCRIPTION
  86. "An arbitrary octet string that describes
  87. the firmware version of this interface.
  88. It is intended that this should be human
  89. readable. It must only contain ASCII
  90. printable characters. Typically this
  91. will be the firmware version of the main
  92. interface software."
  93. ::= { ifExtnsEntry 3 }
  94. ifExtnsMulticastsTransmittedOks OBJECT-TYPE
  95. SYNTAX Counter
  96. ACCESS read-only
  97. STATUS mandatory
  98. DESCRIPTION
  99. "The count of frames successfully
  100. transmitted to a subnetwork or link-layer
  101. multicast destination address other than a
  102. broadcast address. For a MAC layer protocol,
  103. this includes both Group and Functional
  104. addresses."
  105. ::= { ifExtnsEntry 4 }
  106. ifExtnsBroadcastsTransmittedOks OBJECT-TYPE
  107. SYNTAX Counter
  108. ACCESS read-only
  109. STATUS mandatory
  110. DESCRIPTION
  111. "The count of frames successfully
  112. transmitted to a subnetwork or link-layer
  113. broadcast addresses. It does not include
  114. frames sent to a multicast address."
  115. ::= { ifExtnsEntry 5 }
  116. ifExtnsMulticastsReceivedOks OBJECT-TYPE
  117. SYNTAX Counter
  118. ACCESS read-only
  119. STATUS mandatory
  120. DESCRIPTION
  121. "The count of frames successfully received
  122. that are directed to an active subnetwork
  123. or link-layer multicast address (for a MAC
  124. layer protocol, this includes both Group and
  125. Functional addresses). This does not include
  126. frames directed to a broadcast address, nor
  127. frames received with errors."
  128. ::= { ifExtnsEntry 6 }
  129. ifExtnsBroadcastsReceivedOks OBJECT-TYPE
  130. SYNTAX Counter
  131. ACCESS read-only
  132. STATUS mandatory
  133. DESCRIPTION
  134. "The count of frames successfully received
  135. that are directed to a subnetwork or
  136. link-layer broadcast address. This does not
  137. include frames received with errors."
  138. ::= { ifExtnsEntry 7 }
  139. ifExtnsPromiscuous OBJECT-TYPE
  140. SYNTAX INTEGER {
  141. true(1),
  142. false(2)
  143. }
  144. ACCESS read-only -- Note: agent implementors are
  145. -- encouraged to extend this
  146. -- access to read-write if that
  147. -- makes sense in their agent.
  148. STATUS mandatory
  149. DESCRIPTION
  150. "This object has a value of false(2) if
  151. this interface only accepts packets/frames
  152. that are addressed to this station. This
  153. object has a value of true(1) when the
  154. station accepts all packets/frames
  155. transmitted on the media. The value
  156. true(1) is only legal on certain types of
  157. media. If legal, setting this object to a
  158. value of true(1) may require the interface
  159. to be reset before becoming effective."
  160. ::= { ifExtnsEntry 8 }
  161. --
  162. -- Generic Interface Test Table
  163. --
  164. -- This group of objects is optional, but if the table is
  165. -- implemented, all objects in the table must be implemented.
  166. ifExtnsTestTable OBJECT-TYPE
  167. SYNTAX SEQUENCE OF IfExtnsTestEntry
  168. ACCESS not-accessible
  169. STATUS mandatory
  170. DESCRIPTION
  171. "This table contains one entry per interface."
  172. ::= { ifExtensions 2 }
  173. ifExtnsTestEntry OBJECT-TYPE
  174. SYNTAX IfExtnsTestEntry
  175. ACCESS not-accessible
  176. STATUS mandatory
  177. DESCRIPTION
  178. "An entry containing objects for invoking
  179. tests on an interface."
  180. INDEX { ifExtnsTestIfIndex }
  181. ::= { ifExtnsTestTable 1 }
  182. IfExtnsTestEntry ::=
  183. SEQUENCE {
  184. ifExtnsTestIfIndex
  185. INTEGER,
  186. ifExtnsTestCommunity
  187. OCTET STRING,
  188. ifExtnsTestRequestId
  189. INTEGER,
  190. ifExtnsTestType
  191. OBJECT IDENTIFIER,
  192. ifExtnsTestResult
  193. INTEGER,
  194. ifExtnsTestCode
  195. OBJECT IDENTIFIER
  196. }
  197. ifExtnsTestIfIndex OBJECT-TYPE
  198. SYNTAX INTEGER
  199. ACCESS read-only
  200. STATUS mandatory
  201. DESCRIPTION
  202. "The value of this object identifies the
  203. interface for which this entry contains
  204. information on interface tests. The value
  205. of this object for a particular interface
  206. has the same value as the ifIndex object,
  207. defined in [4,6], for the same interface."
  208. ::= { ifExtnsTestEntry 1 }
  209. ifExtnsTestCommunity OBJECT-TYPE
  210. SYNTAX OCTET STRING
  211. ACCESS read-only
  212. STATUS mandatory
  213. DESCRIPTION
  214. "This object contains the name of the SNMP
  215. authentication community [5] which was used
  216. to authenticate the SNMP Message which invoked
  217. the current or most recent test on this
  218. interface. If the authentication community
  219. is unknown or undefined, this value contains
  220. the zero-length string."
  221. ::= { ifExtnsTestEntry 2 }
  222. ifExtnsTestRequestId OBJECT-TYPE
  223. SYNTAX INTEGER
  224. ACCESS read-only
  225. STATUS mandatory
  226. DESCRIPTION
  227. "This object contains the value of the
  228. request-id field in the SNMP PDU [5] which
  229. invoked the current or most recent test on
  230. this interface. If the request-id is
  231. unknown or undefined, this value contains
  232. the value zero."
  233. ::= { ifExtnsTestEntry 3 }
  234. ifExtnsTestType OBJECT-TYPE
  235. SYNTAX OBJECT IDENTIFIER
  236. ACCESS read-write
  237. STATUS mandatory
  238. DESCRIPTION
  239. "A control variable used to start and stop
  240. operator-initiated interface tests.
  241. Most OBJECT IDENTIFIER values assigned
  242. to tests are defined elsewhere, in associ-
  243. ation with specific types of interface.
  244. However, this document assigns a value for
  245. a full-duplex loopback test, and defines the
  246. special meanings of the subject identifier:
  247. noTest OBJECT IDENTIFIER ::= { 0 0 }
  248. When the value noTest is written to this
  249. object, no action is taken unless a test is
  250. in progress, in which case the test is
  251. aborted. Writing any other value to this
  252. object is only valid when no test is
  253. currently in progress, in which case the
  254. indicated test is initiated.
  255. Note that noTest is a syntactically valid
  256. object identifier, and any conformant
  257. implementation of ASN.1 and BER must be able
  258. to generate and recognize this value.
  259. When read, this object always returns
  260. the most recent value that ifExtnsTestType
  261. was set to. If it has not been set since
  262. the last initialization of the network
  263. management subsystem on the agent, a value
  264. of noTest is returned."
  265. ::= { ifExtnsTestEntry 4 }
  266. wellKnownTests OBJECT IDENTIFIER ::= { ifExtensions 4 }
  267. -- full-duplex loopback test
  268. testFullDuplexLoopBack OBJECT IDENTIFIER ::=
  269. { wellKnownTests 1 }
  270. ifExtnsTestResult OBJECT-TYPE
  271. SYNTAX INTEGER {
  272. none(1), -- no test yet requested
  273. success(2),
  274. inProgress(3),
  275. notSupported(4),
  276. unAbleToRun(5), -- due to state of system
  277. aborted(6),
  278. failed(7)
  279. }
  280. ACCESS read-only
  281. STATUS mandatory
  282. DESCRIPTION
  283. "This object contains the result of the most
  284. recently requested test, or the value
  285. none(1) if no tests have been requested since
  286. the last reset. Note that this facility
  287. provides no provision for saving the results
  288. of one test when starting another, as could
  289. be required if used by multiple managers
  290. concurrently."
  291. ::= { ifExtnsTestEntry 5 }
  292. ifExtnsTestCode OBJECT-TYPE
  293. SYNTAX OBJECT IDENTIFIER
  294. ACCESS read-only
  295. STATUS mandatory
  296. DESCRIPTION
  297. "This object contains a code which contains
  298. more specific information on the test result,
  299. for example an error-code after a failed
  300. test. Error codes and other values this
  301. object may take are specific to the type of
  302. interface and/or test. However, one subject
  303. identifier:
  304. testCodeUnknown OBJECT IDENTIFIER ::= { 0 0 }
  305. for use if no additional result code is
  306. available.
  307. Note that testCodeUnknown is a
  308. syntactically valid object identifier, and
  309. any conformant implementation of ASN.1 and
  310. the BER must be able to generate and
  311. recognize this value."
  312. ::= { ifExtnsTestEntry 6 }
  313. -- Generic Receive Address Table
  314. --
  315. -- This group of objects is mandatory for all types of
  316. -- interfaces which can receive packets/frames addressed to
  317. -- more than one address.
  318. ifExtnsRcvAddrTable OBJECT-TYPE
  319. SYNTAX SEQUENCE OF IfExtnsRcvAddrEntry
  320. ACCESS not-accessible
  321. STATUS mandatory
  322. DESCRIPTION
  323. "This table contains an entry for each
  324. address (broadcast, multicast, or uni-cast)
  325. for which the system will receive packets/
  326. frames on a particular interface. When an
  327. interface is operating in promiscuous mode,
  328. entries are only required for those addresses
  329. for which the system would receive frames
  330. were it not operating in promiscuous mode."
  331. ::= { ifExtensions 3 }
  332. ifExtnsRcvAddrEntry OBJECT-TYPE
  333. SYNTAX IfExtnsRcvAddrEntry
  334. ACCESS not-accessible
  335. STATUS mandatory
  336. DESCRIPTION
  337. "A list of objects identifying an address
  338. for which the system will accept packets/
  339. frames on a particular interface."
  340. INDEX { ifExtnsRcvAddrIfIndex, ifExtnsRcvAddress }
  341. ::= { ifExtnsRcvAddrTable 1 }
  342. IfExtnsRcvAddrEntry ::=
  343. SEQUENCE {
  344. ifExtnsRcvAddrIfIndex
  345. INTEGER,
  346. ifExtnsRcvAddress
  347. PhysAddress,
  348. ifExtnsRcvAddrStatus
  349. INTEGER
  350. }
  351. ifExtnsRcvAddrIfIndex OBJECT-TYPE
  352. SYNTAX INTEGER
  353. ACCESS read-only
  354. STATUS mandatory
  355. DESCRIPTION
  356. "The value of ifIndex, defined in [4,6], of an
  357. interface which recognizes this entry's
  358. address."
  359. ::= { ifExtnsRcvAddrEntry 1 }
  360. ifExtnsRcvAddress OBJECT-TYPE
  361. SYNTAX PhysAddress
  362. ACCESS read-only
  363. STATUS mandatory
  364. DESCRIPTION
  365. "An address for which the system will accept
  366. packets/frames on this entry's interface."
  367. ::= { ifExtnsRcvAddrEntry 2 }
  368. ifExtnsRcvAddrStatus OBJECT-TYPE
  369. SYNTAX INTEGER {
  370. other(1),
  371. invalid(2),
  372. volatile(3),
  373. nonVolatile(4)
  374. }
  375. ACCESS read-write
  376. STATUS mandatory
  377. DESCRIPTION
  378. "This object has the value nonVolatile(4)
  379. for those entries in the table which are
  380. valid and will not be deleted by the next
  381. restart of the managed system. Entries
  382. having the value volatile(3) are valid
  383. and exist, but have not been saved, so
  384. that will not exist after the next
  385. restart of the managed system. Entries
  386. having the value other(1) are valid and
  387. exist but are not classified as to whether
  388. they will continue to exist after the next
  389. restart. Entries having the value invalid(2)
  390. are invalid and do not represent an address
  391. for which an interface accepts frames.
  392. Setting an object instance to one of
  393. the values other(1), volatile(3), or
  394. nonVolatile(4) causes the corresponding
  395. entry to exist or continue to exist, and
  396. to take on the respective status as regards
  397. the next restart of the managed system.
  398. Setting an object instance to the value
  399. invalid(2) causes the corresponding entry
  400. to become invalid or cease to exist.
  401. It is an implementation-specific matter
  402. as to whether the agent removes an
  403. invalidated entry from the table.
  404. Accordingly, management stations must be
  405. prepared to receive tabular information
  406. from agents that corresponds to entries not
  407. currently in use. Proper interpretation of
  408. such entries requires examination of the
  409. relevant ifExtnsRcvAddrStatus object
  410. instance."
  411. DEFVAL { volatile }
  412. ::= { ifExtnsRcvAddrEntry 3 }
  413. END