home *** CD-ROM | disk | FTP | other *** search
/ Source Code 1994 March / Source_Code_CD-ROM_Walnut_Creek_March_1994.iso / compsrcs / misc / volume40 / nocol / part07 < prev    next >
Encoding:
Text File  |  1993-11-22  |  76.9 KB  |  2,678 lines

  1. Newsgroups: comp.sources.misc
  2. From: vikas@jvnc.net (Vikas Aggarwal)
  3. Subject: v40i137:  nocol - Network Monitoring System, Part07/26
  4. Message-ID: <1993Nov23.034742.5666@sparky.sterling.com>
  5. X-Md4-Signature: 2a883d3045f290b19f154bc96391c49e
  6. Sender: kent@sparky.sterling.com (Kent Landfield)
  7. Organization: Sterling Software
  8. Date: Tue, 23 Nov 1993 03:47:42 GMT
  9. Approved: kent@sparky.sterling.com
  10.  
  11. Submitted-by: vikas@jvnc.net (Vikas Aggarwal)
  12. Posting-number: Volume 40, Issue 137
  13. Archive-name: nocol/part07
  14. Environment: INET, UNIX
  15.  
  16. #! /bin/sh
  17. # This is a shell archive.  Remove anything before this line, then feed it
  18. # into a shell via "sh file" or similar.  To overwrite existing files,
  19. # type "sh file -c".
  20. # Contents:  nocol-3.0/src/cmu-snmp/README.JVNC
  21. #   nocol-3.0/src/cmu-snmp/mib.txt.B
  22. #   nocol-3.0/src/cmu-snmp/snmplib/asn1.c
  23. # Wrapped by kent@sparky on Tue Nov  9 22:22:15 1993
  24. PATH=/bin:/usr/bin:/usr/ucb:/usr/local/bin:/usr/lbin:$PATH ; export PATH
  25. echo If this archive is complete, you will see the following message:
  26. echo '          "shar: End of archive 7 (of 26)."'
  27. if test -f 'nocol-3.0/src/cmu-snmp/README.JVNC' -a "${1}" != "-c" ; then 
  28.   echo shar: Will not clobber existing file \"'nocol-3.0/src/cmu-snmp/README.JVNC'\"
  29. else
  30.   echo shar: Extracting \"'nocol-3.0/src/cmu-snmp/README.JVNC'\" \(561 characters\)
  31.   sed "s/^X//" >'nocol-3.0/src/cmu-snmp/README.JVNC' <<'END_OF_FILE'
  32. X1. Fixed bug in cmu/snmplib/asn1.c in a routine called asn_parse_int as 
  33. X   discussed in the cisco mailing list.
  34. X
  35. X2. Changed the define for HAVE_FDMACROS  in snmp_client.c and snmp_api.c
  36. X
  37. X3. Appended the cisco mib91 file with the mib.txt file. and deleted the
  38. X   DESCRIPTIONS which existed in the cisco mib file. To test, try:
  39. X
  40. XTIPS
  41. X----
  42. X   snmpwalk ringo cid .iso.org.dod.internet.private.enterprises.cisco.local
  43. X
  44. XFor terminal servers:
  45. X
  46. X    cisco.local.lts.ltsLineTable
  47. X
  48. XFor routes:
  49. X
  50. X .iso.org.dod.internet.mgmt.mib.ip.ipRoutingTable.iprouteentry.iproutemetric1
  51. X
  52. END_OF_FILE
  53.   if test 561 -ne `wc -c <'nocol-3.0/src/cmu-snmp/README.JVNC'`; then
  54.     echo shar: \"'nocol-3.0/src/cmu-snmp/README.JVNC'\" unpacked with wrong size!
  55.   fi
  56.   # end of 'nocol-3.0/src/cmu-snmp/README.JVNC'
  57. fi
  58. if test -f 'nocol-3.0/src/cmu-snmp/mib.txt.B' -a "${1}" != "-c" ; then 
  59.   echo shar: Will not clobber existing file \"'nocol-3.0/src/cmu-snmp/mib.txt.B'\"
  60. else
  61.   echo shar: Extracting \"'nocol-3.0/src/cmu-snmp/mib.txt.B'\" \(53002 characters\)
  62.   sed "s/^X//" >'nocol-3.0/src/cmu-snmp/mib.txt.B' <<'END_OF_FILE'
  63. X                        noWarning(2)
  64. X                   }
  65. X                   ACCESS  read-only
  66. X                   STATUS  mandatory
  67. X                   ::= { lsystem 106 }
  68. X
  69. X
  70. X
  71. X
  72. X
  73. X          -- cisco MIB                                         [Page 23]
  74. X--
  75. X
  76. X
  77. X
  78. X
  79. X
  80. X          -- Request for Comments: Draft             cisco Systems, Inc.
  81. X
  82. X
  83. X               envTestPt6warn OBJECT-TYPE
  84. X                   SYNTAX  INTEGER {
  85. X                        warning(1),
  86. X                        noWarning(2)
  87. X                   }
  88. X                   ACCESS  read-only
  89. X                   STATUS  mandatory
  90. X                   ::= { lsystem 107 }
  91. X
  92. X               envFirmVersion OBJECT-TYPE
  93. X                   SYNTAX  DisplayString
  94. X                   ACCESS  read-only
  95. X                   STATUS  mandatory
  96. X                   ::= { lsystem 108 }
  97. X
  98. X               envTechnicianID OBJECT-TYPE
  99. X                   SYNTAX  DisplayString
  100. X                   ACCESS  read-only
  101. X                   STATUS  mandatory
  102. X                   ::= { lsystem 109 }
  103. X
  104. X               envType OBJECT-TYPE
  105. X                   SYNTAX  DisplayString
  106. X                   ACCESS  read-only
  107. X                   STATUS  mandatory
  108. X                   ::= { lsystem 110 }
  109. X
  110. X               envBurnDate OBJECT-TYPE
  111. X                   SYNTAX  DisplayString
  112. X                   ACCESS  read-only
  113. X                   STATUS  mandatory
  114. X                   ::= { lsystem 111 }
  115. X
  116. X               envSerialNumber OBJECT-TYPE
  117. X                   SYNTAX  DisplayString
  118. X
  119. X
  120. X
  121. X
  122. X
  123. X          -- cisco MIB                                         [Page 24]
  124. X--
  125. X
  126. X
  127. X
  128. X
  129. X
  130. X          -- Request for Comments: Draft             cisco Systems, Inc.
  131. X
  132. X
  133. X                   ACCESS  read-only
  134. X                   STATUS  mandatory
  135. X                   ::= { lsystem 112 }
  136. X
  137. X
  138. X               -- Local Interface Group
  139. X
  140. X          -- This group is present in all products.
  141. X
  142. X
  143. X          -- Local Interface Table
  144. X
  145. X          -- This group provides additional objects to the table
  146. X          -- defined by RFC1156.
  147. X
  148. X               lifTable OBJECT-TYPE
  149. X                   SYNTAX  SEQUENCE OF LIfEntry
  150. X                   ACCESS  not-accessible
  151. X                   STATUS  mandatory
  152. X                   ::= { linterfaces 1 }
  153. X
  154. X               lifEntry OBJECT-TYPE
  155. X                   SYNTAX LIfEntry
  156. X                   ACCESS  not-accessible
  157. X                   STATUS  mandatory
  158. X               ::= { lifTable 1 }
  159. X
  160. X               LIfEntry ::=
  161. X                   SEQUENCE {
  162. X                       locIfHardType
  163. X                           DisplayString,
  164. X                       locIfLineProt
  165. X                           INTEGER,
  166. X                       locIfLastIn
  167. X                           INTEGER,
  168. X                       locIfLastOut
  169. X                           INTEGER,
  170. X
  171. X
  172. X
  173. X
  174. X
  175. X          -- cisco MIB                                         [Page 25]
  176. X--
  177. X
  178. X
  179. X
  180. X
  181. X
  182. X          -- Request for Comments: Draft             cisco Systems, Inc.
  183. X
  184. X
  185. X                       locIfLastOutHang
  186. X                           INTEGER,
  187. X                       locIfInBitsSec
  188. X                           INTEGER,
  189. X                       locIfInPktsSec
  190. X                           INTEGER,
  191. X                       locIfOutBitsSec
  192. X                           INTEGER,
  193. X                       locIfOutPktsSec
  194. X                           INTEGER,
  195. X                       locIfInRunts
  196. X                           INTEGER,
  197. X                       locIfInGiants
  198. X                           INTEGER,
  199. X                       locIfInCRC
  200. X                           INTEGER,
  201. X                       locIfInFrame
  202. X                           INTEGER,
  203. X                       locIfInOverrun
  204. X                           INTEGER,
  205. X                       locIfInIgnored
  206. X                           INTEGER,
  207. X                       locIfInAbort
  208. X                           INTEGER,
  209. X                       locIfResets
  210. X                           INTEGER,
  211. X                       locIfRestarts
  212. X                           INTEGER,
  213. X                       locIfKeep
  214. X                           INTEGER,
  215. X                       locIfReason
  216. X                           DisplayString,
  217. X                       locIfCarTrans
  218. X                           INTEGER,
  219. X                       locIfReliab
  220. X                           INTEGER,
  221. X                       locIfDelay
  222. X                           INTEGER,
  223. X                       locIfLoad
  224. X                           INTEGER,
  225. X                       locIfCollisions
  226. X                           INTEGER,
  227. X                       locIfInputQueueDrops
  228. X                           INTEGER,
  229. X                       locIfOutputQueueDrops
  230. X
  231. X
  232. X
  233. X
  234. X
  235. X          -- cisco MIB                                         [Page 26]
  236. X--
  237. X
  238. X
  239. X
  240. X
  241. X
  242. X          -- Request for Comments: Draft             cisco Systems, Inc.
  243. X
  244. X
  245. X                           INTEGER,
  246. X                       locIfDescr
  247. X                           DisplayString,
  248. X                       locIfPakmon
  249. X                           INTEGER,
  250. X                       locIfSlowInPkts
  251. X                           Counter,
  252. X                       locIfSlowOutPkts
  253. X                           Counter,
  254. X                       locIfSlowInOctets
  255. X                           Counter,
  256. X                       locIfSlowOutOctets
  257. X                           Counter,
  258. X                       locIfFastInPkts
  259. X                           Counter,
  260. X                       locIfFastOutPkts
  261. X                           Counter,
  262. X                       locIfFastInOctets
  263. X                           Counter,
  264. X                       locIfFastOutOctets
  265. X                           Counter,
  266. X                       locIfotherInPkts
  267. X                           Counter,
  268. X                       locIfotherOutPkts
  269. X                           Counter,
  270. X                       locIfotherInOctets
  271. X                           Counter,
  272. X                       locIfotherOutOctets
  273. X                           Counter,
  274. X                       locIfipInPkts
  275. X                           Counter,
  276. X                       locIfipOutPkts
  277. X                           Counter,
  278. X                       locIfipInOctets
  279. X                           Counter,
  280. X                       locIfipOutOctets
  281. X                           Counter,
  282. X                       locIfdecnetInPkts
  283. X                           Counter,
  284. X                       locIfdecnetOutPkts
  285. X                           Counter,
  286. X                       locIfdecnetInOctets
  287. X                           Counter,
  288. X                       locIfdecnetOutOctets
  289. X                           Counter,
  290. X
  291. X
  292. X
  293. X
  294. X
  295. X          -- cisco MIB                                         [Page 27]
  296. X--
  297. X
  298. X
  299. X
  300. X
  301. X
  302. X          -- Request for Comments: Draft             cisco Systems, Inc.
  303. X
  304. X
  305. X                       locIfxnsInPkts
  306. X                           Counter,
  307. X                       locIfxnsOutPkts
  308. X                           Counter,
  309. X                       locIfxnsInOctets
  310. X                           Counter,
  311. X                       locIfxnsOutOctets
  312. X                           Counter,
  313. X                       locIfclnsInPkts
  314. X                           Counter,
  315. X                       locIfclnsOutPkts
  316. X                           Counter,
  317. X                       locIfclnsInOctets
  318. X                           Counter,
  319. X                       locIfclnsOutOctets
  320. X                           Counter,
  321. X                       locIfappletalkInPkts
  322. X                           Counter,
  323. X                       locIfappletalkOutPkts
  324. X                           Counter,
  325. X                       locIfappletalkInOctets
  326. X                           Counter,
  327. X                       locIfappletalkOutOctets
  328. X                           Counter,
  329. X                       locIfnovellInPkts
  330. X                           Counter,
  331. X                       locIfnovellOutPkts
  332. X                           Counter,
  333. X                       locIfnovellInOctets
  334. X                           Counter,
  335. X                       locIfnovellOutOctets
  336. X                           Counter,
  337. X                       locIfapolloInPkts
  338. X                           Counter,
  339. X                       locIfapolloOutPkts
  340. X                           Counter,
  341. X                       locIfapolloInOctets
  342. X                           Counter,
  343. X                       locIfapolloOutOctets
  344. X                           Counter,
  345. X                       locIfvinesInPkts
  346. X                           Counter,
  347. X                       locIfvinesOutPkts
  348. X                           Counter,
  349. X                       locIfvinesInOctets
  350. X
  351. X
  352. X
  353. X
  354. X
  355. X          -- cisco MIB                                         [Page 28]
  356. X--
  357. X
  358. X
  359. X
  360. X
  361. X
  362. X          -- Request for Comments: Draft             cisco Systems, Inc.
  363. X
  364. X
  365. X                           Counter,
  366. X                       locIfvinesOutOctets
  367. X                           Counter,
  368. X                       locIfbridgedInPkts
  369. X                           Counter,
  370. X                       locIfbridgedOutPkts
  371. X                           Counter,
  372. X                       locIfbridgedInOctets
  373. X                           Counter,
  374. X                       locIfbridgedOutOctets
  375. X                           Counter,
  376. X                       locIfsrbInPkts
  377. X                           Counter,
  378. X                       locIfsrbOutPkts
  379. X                           Counter,
  380. X                       locIfsrbInOctets
  381. X                           Counter,
  382. X                       locIfsrbOutOctets
  383. X                           Counter,
  384. X                       locIfchaosInPkts
  385. X                           Counter,
  386. X                       locIfchaosOutPkts
  387. X                           Counter,
  388. X                       locIfchaosInOctets
  389. X                           Counter,
  390. X                       locIfchaosOutOctets
  391. X                           Counter,
  392. X                       locIfpupInPkts
  393. X                           Counter,
  394. X                       locIfpupOutPkts
  395. X                           Counter,
  396. X                       locIfpupInOctets
  397. X                           Counter,
  398. X                       locIfpupOutOctets
  399. X                           Counter,
  400. X                       locIfmopInPkts
  401. X                           Counter,
  402. X                       locIfmopOutPkts
  403. X                           Counter,
  404. X                       locIfmopInOctets
  405. X                           Counter,
  406. X                       locIfmopOutOctets
  407. X                           Counter,
  408. X                       locIflanmanInPkts
  409. X                           Counter,
  410. X
  411. X
  412. X
  413. X
  414. X
  415. X          -- cisco MIB                                         [Page 29]
  416. X--
  417. X
  418. X
  419. X
  420. X
  421. X
  422. X          -- Request for Comments: Draft             cisco Systems, Inc.
  423. X
  424. X
  425. X                       locIflanmanOutPkts
  426. X                           Counter,
  427. X                       locIflanmanInOctets
  428. X                           Counter,
  429. X                       locIflanmanOutOctets
  430. X                           Counter,
  431. X                       locIfstunInPkts
  432. X                           Counter,
  433. X                       locIfstunOutPkts
  434. X                           Counter,
  435. X                       locIfstunInOctets
  436. X                           Counter,
  437. X                       locIfstunOutOctets
  438. X                           Counter,
  439. X                       locIfspanInPkts
  440. X                           Counter,
  441. X                       locIfspanOutPkts
  442. X                           Counter,
  443. X                       locIfspanInOctets
  444. X                           Counter,
  445. X                       locIfspanOutOctets
  446. X                           Counter,
  447. X                       locIfarpInPkts
  448. X                           Counter,
  449. X                       locIfarpOutPkts
  450. X                           Counter,
  451. X                       locIfarpInOctets
  452. X                           Counter,
  453. X                       locIfarpOutOctets
  454. X                           Counter,
  455. X                       locIfprobeInPkts
  456. X                           Counter,
  457. X                       locIfprobeOutPkts
  458. X                           Counter,
  459. X                       locIfprobeInOctets
  460. X                           Counter,
  461. X                       locIfprobeOutOctets
  462. X                           Counter
  463. X                   }
  464. X
  465. X
  466. X          -- The following section describes the components of the
  467. X          -- table.
  468. X
  469. X               locIfHardType OBJECT-TYPE
  470. X
  471. X
  472. X
  473. X
  474. X
  475. X          -- cisco MIB                                         [Page 30]
  476. X--
  477. X
  478. X
  479. X
  480. X
  481. X
  482. X          -- Request for Comments: Draft             cisco Systems, Inc.
  483. X
  484. X
  485. X                   SYNTAX  DisplayString
  486. X                   ACCESS  read-only
  487. X                   STATUS  mandatory
  488. X                   ::= { lifEntry 1 }
  489. X
  490. X               locIfLineProt OBJECT-TYPE
  491. X                   SYNTAX  INTEGER
  492. X                   ACCESS  read-only
  493. X                   STATUS  mandatory
  494. X                   ::= { lifEntry 2 }
  495. X
  496. X               locIfLastIn OBJECT-TYPE
  497. X                   SYNTAX  INTEGER
  498. X                   ACCESS  read-only
  499. X                   STATUS  mandatory
  500. X                   ::= { lifEntry 3 }
  501. X
  502. X               locIfLastOut OBJECT-TYPE
  503. X                   SYNTAX  INTEGER
  504. X                   ACCESS  read-only
  505. X                   STATUS  mandatory
  506. X                   ::= { lifEntry 4 }
  507. X
  508. X               locIfLastOutHang OBJECT-TYPE
  509. X                   SYNTAX  INTEGER
  510. X                   ACCESS  read-only
  511. X                   STATUS  mandatory
  512. X                   ::= { lifEntry 5 }
  513. X
  514. X               locIfInBitsSec OBJECT-TYPE
  515. X
  516. X
  517. X
  518. X
  519. X
  520. X          -- cisco MIB                                         [Page 31]
  521. X--
  522. X
  523. X
  524. X
  525. X
  526. X
  527. X          -- Request for Comments: Draft             cisco Systems, Inc.
  528. X
  529. X
  530. X                   SYNTAX  INTEGER
  531. X                   ACCESS  read-only
  532. X                   STATUS  mandatory
  533. X                   ::= { lifEntry 6 }
  534. X
  535. X               locIfInPktsSec OBJECT-TYPE
  536. X                   SYNTAX  INTEGER
  537. X                   ACCESS  read-only
  538. X                   STATUS  mandatory
  539. X                   ::= { lifEntry 7 }
  540. X
  541. X               locIfOutBitsSec OBJECT-TYPE
  542. X                   SYNTAX  INTEGER
  543. X                   ACCESS  read-only
  544. X                   STATUS  mandatory
  545. X                   ::= { lifEntry 8 }
  546. X
  547. X               locIfOutPktsSec OBJECT-TYPE
  548. X                   SYNTAX  INTEGER
  549. X                   ACCESS  read-only
  550. X                   STATUS  mandatory
  551. X                   ::= { lifEntry 9 }
  552. X
  553. X               locIfInRunts OBJECT-TYPE
  554. X                   SYNTAX  INTEGER
  555. X                   ACCESS  read-only
  556. X                   STATUS  mandatory
  557. X                   ::= { lifEntry 10 }
  558. X
  559. X               locIfInGiants OBJECT-TYPE
  560. X
  561. X
  562. X
  563. X
  564. X
  565. X          -- cisco MIB                                         [Page 32]
  566. X--
  567. X
  568. X
  569. X
  570. X
  571. X
  572. X          -- Request for Comments: Draft             cisco Systems, Inc.
  573. X
  574. X
  575. X                   SYNTAX  INTEGER
  576. X                   ACCESS  read-only
  577. X                   STATUS  mandatory
  578. X                   ::= { lifEntry 11 }
  579. X
  580. X               locIfInCRC OBJECT-TYPE
  581. X                   SYNTAX  INTEGER
  582. X                   ACCESS  read-only
  583. X                   STATUS  mandatory
  584. X                   ::= { lifEntry 12 }
  585. X
  586. X               locIfInFrame OBJECT-TYPE
  587. X                   SYNTAX  INTEGER
  588. X                   ACCESS  read-only
  589. X                   STATUS  mandatory
  590. X                   ::= { lifEntry 13 }
  591. X
  592. X               locIfInOverrun OBJECT-TYPE
  593. X                   SYNTAX  INTEGER
  594. X                   ACCESS  read-only
  595. X                   STATUS  mandatory
  596. X                   ::= { lifEntry 14 }
  597. X
  598. X               locIfInIgnored OBJECT-TYPE
  599. X                   SYNTAX  INTEGER
  600. X                   ACCESS  read-only
  601. X                   STATUS  mandatory
  602. X                   ::= { lifEntry 15 }
  603. X
  604. X               locIfInAbort OBJECT-TYPE
  605. X
  606. X
  607. X
  608. X
  609. X
  610. X          -- cisco MIB                                         [Page 33]
  611. X--
  612. X
  613. X
  614. X
  615. X
  616. X
  617. X          -- Request for Comments: Draft             cisco Systems, Inc.
  618. X
  619. X
  620. X                   SYNTAX  INTEGER
  621. X                   ACCESS  read-only
  622. X                   STATUS  mandatory
  623. X                   ::= { lifEntry 16 }
  624. X
  625. X               locIfResets OBJECT-TYPE
  626. X                   SYNTAX  INTEGER
  627. X                   ACCESS  read-only
  628. X                   STATUS  mandatory
  629. X                   ::= { lifEntry 17 }
  630. X
  631. X               locIfRestarts OBJECT-TYPE
  632. X                   SYNTAX  INTEGER
  633. X                   ACCESS  read-only
  634. X                   STATUS  mandatory
  635. X                   ::= { lifEntry 18 }
  636. X
  637. X               locIfKeep OBJECT-TYPE
  638. X                   SYNTAX  INTEGER
  639. X                   ACCESS  read-only
  640. X                   STATUS  mandatory
  641. X                   ::= { lifEntry 19 }
  642. X
  643. X               locIfReason OBJECT-TYPE
  644. X                   SYNTAX  DisplayString
  645. X                   ACCESS  read-only
  646. X                   STATUS  mandatory
  647. X                   ::= { lifEntry 20 }
  648. X
  649. X               locIfCarTrans OBJECT-TYPE
  650. X                   SYNTAX  INTEGER
  651. X                   ACCESS  read-only
  652. X
  653. X
  654. X
  655. X
  656. X
  657. X          -- cisco MIB                                         [Page 34]
  658. X--
  659. X
  660. X
  661. X
  662. X
  663. X
  664. X          -- Request for Comments: Draft             cisco Systems, Inc.
  665. X
  666. X
  667. X                   STATUS  mandatory
  668. X                   ::= { lifEntry 21 }
  669. X
  670. X               locIfReliab OBJECT-TYPE
  671. X                   SYNTAX  INTEGER
  672. X                   ACCESS  read-only
  673. X                   STATUS  mandatory
  674. X                   ::= { lifEntry 22 }
  675. X
  676. X               locIfDelay OBJECT-TYPE
  677. X                   SYNTAX  INTEGER
  678. X                   ACCESS  read-only
  679. X                   STATUS  mandatory
  680. X                   ::= { lifEntry 23 }
  681. X
  682. X               locIfLoad OBJECT-TYPE
  683. X                   SYNTAX  INTEGER
  684. X                   ACCESS  read-only
  685. X                   STATUS  mandatory
  686. X                   ::= { lifEntry 24 }
  687. X
  688. X               locIfCollisions OBJECT-TYPE
  689. X                   SYNTAX  INTEGER
  690. X                   ACCESS  read-only
  691. X                   STATUS  mandatory
  692. X                   ::= { lifEntry 25 }
  693. X
  694. X               locIfInputQueueDrops OBJECT-TYPE
  695. X                   SYNTAX  INTEGER
  696. X                   ACCESS  read-only
  697. X
  698. X
  699. X
  700. X
  701. X
  702. X          -- cisco MIB                                         [Page 35]
  703. X--
  704. X
  705. X
  706. X
  707. X
  708. X
  709. X          -- Request for Comments: Draft             cisco Systems, Inc.
  710. X
  711. X
  712. X                   STATUS  mandatory
  713. X                   ::= { lifEntry 26 }
  714. X
  715. X               locIfOutputQueueDrops OBJECT-TYPE
  716. X                   SYNTAX  INTEGER
  717. X                   ACCESS  read-only
  718. X                   STATUS  mandatory
  719. X                   ::= { lifEntry 27 }
  720. X
  721. X               locIfDescr OBJECT-TYPE
  722. X                   SYNTAX  DisplayString
  723. X                   ACCESS  read-write
  724. X                   STATUS  mandatory
  725. X                   ::= { lifEntry 28 }
  726. X
  727. X               locIfPakmon OBJECT-TYPE
  728. X                   SYNTAX  INTEGER {
  729. X                        enable(1),
  730. X                        disable(2)
  731. X                   }
  732. X                   ACCESS  read-write
  733. X                   STATUS  mandatory
  734. X                   ::= { lifEntry 29 }
  735. X
  736. X               locIfSlowInPkts OBJECT-TYPE
  737. X                   SYNTAX  Counter
  738. X                   ACCESS  read-only
  739. X                   STATUS  mandatory
  740. X                   ::= { lifEntry 30 }
  741. X
  742. X               locIfSlowOutPkts OBJECT-TYPE
  743. X                   SYNTAX  Counter
  744. X
  745. X
  746. X
  747. X
  748. X
  749. X          -- cisco MIB                                         [Page 36]
  750. X--
  751. X
  752. X
  753. X
  754. X
  755. X
  756. X          -- Request for Comments: Draft             cisco Systems, Inc.
  757. X
  758. X
  759. X                   ACCESS  read-only
  760. X                   STATUS  mandatory
  761. X                   ::= { lifEntry 31 }
  762. X
  763. X               locIfSlowInOctets OBJECT-TYPE
  764. X                   SYNTAX  Counter
  765. X                   ACCESS  read-only
  766. X                   STATUS  mandatory
  767. X                   ::= { lifEntry 32 }
  768. X
  769. X               locIfSlowOutOctets OBJECT-TYPE
  770. X                   SYNTAX  Counter
  771. X                   ACCESS  read-only
  772. X                   STATUS  mandatory
  773. X                   ::= { lifEntry 33 }
  774. X
  775. X               locIfFastInPkts OBJECT-TYPE
  776. X                   SYNTAX  Counter
  777. X                   ACCESS  read-only
  778. X                   STATUS  mandatory
  779. X                   ::= { lifEntry 34 }
  780. X
  781. X               locIfFastOutPkts OBJECT-TYPE
  782. X                   SYNTAX  Counter
  783. X                   ACCESS  read-only
  784. X                   STATUS  mandatory
  785. X                   ::= { lifEntry 35 }
  786. X
  787. X               locIfFastInOctets OBJECT-TYPE
  788. X                   SYNTAX  Counter
  789. X
  790. X
  791. X
  792. X
  793. X
  794. X          -- cisco MIB                                         [Page 37]
  795. X--
  796. X
  797. X
  798. X
  799. X
  800. X
  801. X          -- Request for Comments: Draft             cisco Systems, Inc.
  802. X
  803. X
  804. X                   ACCESS  read-only
  805. X                   STATUS  mandatory
  806. X                   ::= { lifEntry 36 }
  807. X
  808. X               locIfFastOutOctets OBJECT-TYPE
  809. X                   SYNTAX  Counter
  810. X                   ACCESS  read-only
  811. X                   STATUS  mandatory
  812. X                   ::= { lifEntry 37 }
  813. X
  814. X               locIfotherInPkts OBJECT-TYPE
  815. X                   SYNTAX  Counter
  816. X                   ACCESS  read-only
  817. X                   STATUS  mandatory
  818. X                   ::= { lifEntry 38 }
  819. X
  820. X               locIfotherOutPkts OBJECT-TYPE
  821. X                   SYNTAX  Counter
  822. X                   ACCESS  read-only
  823. X                   STATUS  mandatory
  824. X                   ::= { lifEntry 39 }
  825. X
  826. X               locIfotherInOctets OBJECT-TYPE
  827. X                   SYNTAX  Counter
  828. X                   ACCESS  read-only
  829. X                   STATUS  mandatory
  830. X                   ::= { lifEntry 40 }
  831. X
  832. X               locIfotherOutOctets OBJECT-TYPE
  833. X                   SYNTAX  Counter
  834. X                   ACCESS  read-only
  835. X                   STATUS  mandatory
  836. X                   ::= { lifEntry 41 }
  837. X
  838. X               locIfipInPkts OBJECT-TYPE
  839. X                   SYNTAX  Counter
  840. X                   ACCESS  read-only
  841. X                   STATUS  mandatory
  842. X                   ::= { lifEntry 42 }
  843. X
  844. X               locIfipOutPkts OBJECT-TYPE
  845. X                   SYNTAX  Counter
  846. X                   ACCESS  read-only
  847. X                   STATUS  mandatory
  848. X                   ::= { lifEntry 43 }
  849. X
  850. X               locIfipInOctets OBJECT-TYPE
  851. X                   SYNTAX  Counter
  852. X                   ACCESS  read-only
  853. X                   STATUS  mandatory
  854. X                   ::= { lifEntry 44 }
  855. X
  856. X               locIfipOutOctets OBJECT-TYPE
  857. X                   SYNTAX  Counter
  858. X                   ACCESS  read-only
  859. X                   STATUS  mandatory
  860. X                   ::= { lifEntry 45 }
  861. X
  862. X               locIfdecnetInPkts OBJECT-TYPE
  863. X                   SYNTAX  Counter
  864. X                   ACCESS  read-only
  865. X                   STATUS  mandatory
  866. X                   ::= { lifEntry 46 }
  867. X
  868. X               locIfdecnetOutPkts OBJECT-TYPE
  869. X                   SYNTAX  Counter
  870. X
  871. X
  872. X
  873. X
  874. X
  875. X          -- cisco MIB                                         [Page 39]
  876. X--
  877. X
  878. X
  879. X
  880. X
  881. X
  882. X          -- Request for Comments: Draft             cisco Systems, Inc.
  883. X
  884. X
  885. X                   ACCESS  read-only
  886. X                   STATUS  mandatory
  887. X                   ::= { lifEntry 47 }
  888. X
  889. X               locIfdecnetInOctets OBJECT-TYPE
  890. X                   SYNTAX  Counter
  891. X                   ACCESS  read-only
  892. X                   STATUS  mandatory
  893. X                   ::= { lifEntry 48 }
  894. X
  895. X               locIfdecnetOutOctets OBJECT-TYPE
  896. X                   SYNTAX  Counter
  897. X                   ACCESS  read-only
  898. X                   STATUS  mandatory
  899. X                   ::= { lifEntry 49 }
  900. X
  901. X               locIfxnsInPkts OBJECT-TYPE
  902. X                   SYNTAX  Counter
  903. X                   ACCESS  read-only
  904. X                   STATUS  mandatory
  905. X                   ::= { lifEntry 50 }
  906. X
  907. X               locIfxnsOutPkts OBJECT-TYPE
  908. X                   SYNTAX  Counter
  909. X                   ACCESS  read-only
  910. X                   STATUS  mandatory
  911. X                   ::= { lifEntry 51 }
  912. X
  913. X               locIfxnsInOctets OBJECT-TYPE
  914. X                   SYNTAX  Counter
  915. X                   ACCESS  read-only
  916. X                   STATUS  mandatory
  917. X                   ::= { lifEntry 52 }
  918. X
  919. X
  920. X
  921. X
  922. X
  923. X          -- cisco MIB                                         [Page 40]
  924. X--
  925. X
  926. X
  927. X
  928. X
  929. X
  930. X          -- Request for Comments: Draft             cisco Systems, Inc.
  931. X
  932. X
  933. X               locIfxnsOutOctets OBJECT-TYPE
  934. X                   SYNTAX  Counter
  935. X                   ACCESS  read-only
  936. X                   STATUS  mandatory
  937. X                   ::= { lifEntry 53 }
  938. X
  939. X               locIfclnsInPkts OBJECT-TYPE
  940. X                   SYNTAX  Counter
  941. X                   ACCESS  read-only
  942. X                   STATUS  mandatory
  943. X                   ::= { lifEntry 54 }
  944. X
  945. X               locIfclnsOutPkts OBJECT-TYPE
  946. X                   SYNTAX  Counter
  947. X                   ACCESS  read-only
  948. X                   STATUS  mandatory
  949. X                   ::= { lifEntry 55 }
  950. X
  951. X               locIfclnsInOctets OBJECT-TYPE
  952. X                   SYNTAX  Counter
  953. X                   ACCESS  read-only
  954. X                   STATUS  mandatory
  955. X                   ::= { lifEntry 56 }
  956. X
  957. X               locIfclnsOutOctets OBJECT-TYPE
  958. X                   SYNTAX  Counter
  959. X                   ACCESS  read-only
  960. X                   STATUS  mandatory
  961. X                   ::= { lifEntry 57 }
  962. X
  963. X               locIfappletalkInPkts OBJECT-TYPE
  964. X                   SYNTAX  Counter
  965. X                   ACCESS  read-only
  966. X                   STATUS  mandatory
  967. X                   ::= { lifEntry 58 }
  968. X
  969. X               locIfappletalkOutPkts OBJECT-TYPE
  970. X                   SYNTAX  Counter
  971. X                   ACCESS  read-only
  972. X                   STATUS  mandatory
  973. X                   ::= { lifEntry 59 }
  974. X
  975. X               locIfappletalkInOctets OBJECT-TYPE
  976. X                   SYNTAX  Counter
  977. X                   ACCESS  read-only
  978. X                   STATUS  mandatory
  979. X                   ::= { lifEntry 60 }
  980. X
  981. X               locIfappletalkOutOctets OBJECT-TYPE
  982. X                   SYNTAX  Counter
  983. X                   ACCESS  read-only
  984. X                   STATUS  mandatory
  985. X                   ::= { lifEntry 61 }
  986. X
  987. X               locIfnovellInPkts OBJECT-TYPE
  988. X                   SYNTAX  Counter
  989. X                   ACCESS  read-only
  990. X                   STATUS  mandatory
  991. X                   ::= { lifEntry 62 }
  992. X
  993. X               locIfnovellOutPkts OBJECT-TYPE
  994. X                   SYNTAX  Counter
  995. X                   ACCESS  read-only
  996. X                   STATUS  mandatory
  997. X                   ::= { lifEntry 63 }
  998. X
  999. X               locIfnovellInOctets OBJECT-TYPE
  1000. X                   SYNTAX  Counter
  1001. X
  1002. X
  1003. X
  1004. X
  1005. X
  1006. X          -- cisco MIB                                         [Page 42]
  1007. X--
  1008. X
  1009. X
  1010. X
  1011. X
  1012. X
  1013. X          -- Request for Comments: Draft             cisco Systems, Inc.
  1014. X
  1015. X
  1016. X                   ACCESS  read-only
  1017. X                   STATUS  mandatory
  1018. X                   ::= { lifEntry 64 }
  1019. X
  1020. X               locIfnovellOutOctets OBJECT-TYPE
  1021. X                   SYNTAX  Counter
  1022. X                   ACCESS  read-only
  1023. X                   STATUS  mandatory
  1024. X                   ::= { lifEntry 65 }
  1025. X
  1026. X               locIfapolloInPkts OBJECT-TYPE
  1027. X                   SYNTAX  Counter
  1028. X                   ACCESS  read-only
  1029. X                   STATUS  mandatory
  1030. X                   ::= { lifEntry 66 }
  1031. X
  1032. X               locIfapolloOutPkts OBJECT-TYPE
  1033. X                   SYNTAX  Counter
  1034. X                   ACCESS  read-only
  1035. X                   STATUS  mandatory
  1036. X                   ::= { lifEntry 67 }
  1037. X
  1038. X               locIfapolloInOctets OBJECT-TYPE
  1039. X                   SYNTAX  Counter
  1040. X                   ACCESS  read-only
  1041. X                   STATUS  mandatory
  1042. X                   ::= { lifEntry 68 }
  1043. X
  1044. X               locIfapolloOutOctets OBJECT-TYPE
  1045. X                   SYNTAX  Counter
  1046. X                   ACCESS  read-only
  1047. X                   STATUS  mandatory
  1048. X                   ::= { lifEntry 69 }
  1049. X
  1050. X
  1051. X
  1052. X
  1053. X
  1054. X          -- cisco MIB                                         [Page 43]
  1055. X--
  1056. X
  1057. X
  1058. X
  1059. X
  1060. X
  1061. X          -- Request for Comments: Draft             cisco Systems, Inc.
  1062. X
  1063. X
  1064. X               locIfvinesInPkts OBJECT-TYPE
  1065. X                   SYNTAX  Counter
  1066. X                   ACCESS  read-only
  1067. X                   STATUS  mandatory
  1068. X                   ::= { lifEntry 70 }
  1069. X
  1070. X               locIfvinesOutPkts OBJECT-TYPE
  1071. X                   SYNTAX  Counter
  1072. X                   ACCESS  read-only
  1073. X                   STATUS  mandatory
  1074. X                   ::= { lifEntry 71 }
  1075. X
  1076. X               locIfvinesInOctets OBJECT-TYPE
  1077. X                   SYNTAX  Counter
  1078. X                   ACCESS  read-only
  1079. X                   STATUS  mandatory
  1080. X                   ::= { lifEntry 72 }
  1081. X
  1082. X               locIfvinesOutOctets OBJECT-TYPE
  1083. X                   SYNTAX  Counter
  1084. X                   ACCESS  read-only
  1085. X                   STATUS  mandatory
  1086. X                   ::= { lifEntry 73 }
  1087. X
  1088. X               locIfbridgedInPkts OBJECT-TYPE
  1089. X                   SYNTAX  Counter
  1090. X                   ACCESS  read-only
  1091. X                   STATUS  mandatory
  1092. X                   ::= { lifEntry 74 }
  1093. X
  1094. X               locIfbridgedOutPkts OBJECT-TYPE
  1095. X                   SYNTAX  Counter
  1096. X                   ACCESS  read-only
  1097. X                   STATUS  mandatory
  1098. X                   ::= { lifEntry 75 }
  1099. X
  1100. X               locIfbridgedInOctets OBJECT-TYPE
  1101. X                   SYNTAX  Counter
  1102. X                   ACCESS  read-only
  1103. X                   STATUS  mandatory
  1104. X                   ::= { lifEntry 76 }
  1105. X
  1106. X               locIfbridgedOutOctets OBJECT-TYPE
  1107. X                   SYNTAX  Counter
  1108. X                   ACCESS  read-only
  1109. X                   STATUS  mandatory
  1110. X                   ::= { lifEntry 77 }
  1111. X
  1112. X               locIfsrbInPkts OBJECT-TYPE
  1113. X                   SYNTAX  Counter
  1114. X                   ACCESS  read-only
  1115. X                   STATUS  mandatory
  1116. X                   ::= { lifEntry 78 }
  1117. X
  1118. X               locIfsrbOutPkts OBJECT-TYPE
  1119. X                   SYNTAX  Counter
  1120. X                   ACCESS  read-only
  1121. X                   STATUS  mandatory
  1122. X                   ::= { lifEntry 79 }
  1123. X
  1124. X               locIfsrbInOctets OBJECT-TYPE
  1125. X                   SYNTAX  Counter
  1126. X                   ACCESS  read-only
  1127. X                   STATUS  mandatory
  1128. X                   ::= { lifEntry 80 }
  1129. X
  1130. X               locIfsrbOutOctets OBJECT-TYPE
  1131. X                   SYNTAX  Counter
  1132. X
  1133. X
  1134. X
  1135. X
  1136. X
  1137. X          -- cisco MIB                                         [Page 45]
  1138. X--
  1139. X
  1140. X
  1141. X
  1142. X
  1143. X
  1144. X          -- Request for Comments: Draft             cisco Systems, Inc.
  1145. X
  1146. X
  1147. X                   ACCESS  read-only
  1148. X                   STATUS  mandatory
  1149. X                   ::= { lifEntry 81 }
  1150. X
  1151. X               locIfchaosInPkts OBJECT-TYPE
  1152. X                   SYNTAX  Counter
  1153. X                   ACCESS  read-only
  1154. X                   STATUS  mandatory
  1155. X                   ::= { lifEntry 82 }
  1156. X
  1157. X               locIfchaosOutPkts OBJECT-TYPE
  1158. X                   SYNTAX  Counter
  1159. X                   ACCESS  read-only
  1160. X                   STATUS  mandatory
  1161. X                   ::= { lifEntry 83 }
  1162. X
  1163. X               locIfchaosInOctets OBJECT-TYPE
  1164. X                   SYNTAX  Counter
  1165. X                   ACCESS  read-only
  1166. X                   STATUS  mandatory
  1167. X                   ::= { lifEntry 84 }
  1168. X
  1169. X               locIfchaosOutOctets OBJECT-TYPE
  1170. X                   SYNTAX  Counter
  1171. X                   ACCESS  read-only
  1172. X                   STATUS  mandatory
  1173. X                   ::= { lifEntry 85 }
  1174. X
  1175. X               locIfpupInPkts OBJECT-TYPE
  1176. X                   SYNTAX  Counter
  1177. X                   ACCESS  read-only
  1178. X                   STATUS  mandatory
  1179. X                   ::= { lifEntry 86 }
  1180. X
  1181. X
  1182. X
  1183. X
  1184. X
  1185. X          -- cisco MIB                                         [Page 46]
  1186. X--
  1187. X
  1188. X
  1189. X
  1190. X
  1191. X
  1192. X          -- Request for Comments: Draft             cisco Systems, Inc.
  1193. X
  1194. X
  1195. X               locIfpupOutPkts OBJECT-TYPE
  1196. X                   SYNTAX  Counter
  1197. X                   ACCESS  read-only
  1198. X                   STATUS  mandatory
  1199. X                   ::= { lifEntry 87 }
  1200. X
  1201. X               locIfpupInOctets OBJECT-TYPE
  1202. X                   SYNTAX  Counter
  1203. X                   ACCESS  read-only
  1204. X                   STATUS  mandatory
  1205. X                   ::= { lifEntry 88 }
  1206. X
  1207. X               locIfpupOutOctets OBJECT-TYPE
  1208. X                   SYNTAX  Counter
  1209. X                   ACCESS  read-only
  1210. X                   STATUS  mandatory
  1211. X                   ::= { lifEntry 89 }
  1212. X
  1213. X               locIfmopInPkts OBJECT-TYPE
  1214. X                   SYNTAX  Counter
  1215. X                   ACCESS  read-only
  1216. X                   STATUS  mandatory
  1217. X                   ::= { lifEntry 90 }
  1218. X
  1219. X               locIfmopOutPkts OBJECT-TYPE
  1220. X                   SYNTAX  Counter
  1221. X                   ACCESS  read-only
  1222. X                   STATUS  mandatory
  1223. X                   ::= { lifEntry 91 }
  1224. X
  1225. X               locIfmopInOctets OBJECT-TYPE
  1226. X                   SYNTAX  Counter
  1227. X                   ACCESS  read-only
  1228. X                   STATUS  mandatory
  1229. X                   ::= { lifEntry 92 }
  1230. X
  1231. X               locIfmopOutOctets OBJECT-TYPE
  1232. X                   SYNTAX  Counter
  1233. X                   ACCESS  read-only
  1234. X                   STATUS  mandatory
  1235. X                   ::= { lifEntry 93 }
  1236. X
  1237. X               locIflanmanInPkts OBJECT-TYPE
  1238. X                   SYNTAX  Counter
  1239. X                   ACCESS  read-only
  1240. X                   STATUS  mandatory
  1241. X                   ::= { lifEntry 94 }
  1242. X
  1243. X               locIflanmanOutPkts OBJECT-TYPE
  1244. X                   SYNTAX  Counter
  1245. X                   ACCESS  read-only
  1246. X                   STATUS  mandatory
  1247. X                   ::= { lifEntry 95 }
  1248. X
  1249. X               locIflanmanInOctets OBJECT-TYPE
  1250. X                   SYNTAX  Counter
  1251. X                   ACCESS  read-only
  1252. X                   STATUS  mandatory
  1253. X                   ::= { lifEntry 96 }
  1254. X
  1255. X               locIflanmanOutOctets OBJECT-TYPE
  1256. X                   SYNTAX  Counter
  1257. X                   ACCESS  read-only
  1258. X                   STATUS  mandatory
  1259. X                   ::= { lifEntry 97 }
  1260. X
  1261. X               locIfstunInPkts OBJECT-TYPE
  1262. X                   SYNTAX  Counter
  1263. X
  1264. X
  1265. X
  1266. X
  1267. X
  1268. X          -- cisco MIB                                         [Page 48]
  1269. X--
  1270. X
  1271. X
  1272. X
  1273. X
  1274. X
  1275. X          -- Request for Comments: Draft             cisco Systems, Inc.
  1276. X
  1277. X
  1278. X                   ACCESS  read-only
  1279. X                   STATUS  mandatory
  1280. X                   ::= { lifEntry 98 }
  1281. X
  1282. X               locIfstunOutPkts OBJECT-TYPE
  1283. X                   SYNTAX  Counter
  1284. X                   ACCESS  read-only
  1285. X                   STATUS  mandatory
  1286. X                   ::= { lifEntry 99 }
  1287. X
  1288. X               locIfstunInOctets OBJECT-TYPE
  1289. X                   SYNTAX  Counter
  1290. X                   ACCESS  read-only
  1291. X                   STATUS  mandatory
  1292. X                   ::= { lifEntry 100 }
  1293. X
  1294. X               locIfstunOutOctets OBJECT-TYPE
  1295. X                   SYNTAX  Counter
  1296. X                   ACCESS  read-only
  1297. X                   STATUS  mandatory
  1298. X                   ::= { lifEntry 101 }
  1299. X
  1300. X               locIfspanInPkts OBJECT-TYPE
  1301. X                   SYNTAX  Counter
  1302. X                   ACCESS  read-only
  1303. X                   STATUS  mandatory
  1304. X                   ::= { lifEntry 102 }
  1305. X
  1306. X               locIfspanOutPkts OBJECT-TYPE
  1307. X                   SYNTAX  Counter
  1308. X                   ACCESS  read-only
  1309. X                   STATUS  mandatory
  1310. X                   ::= { lifEntry 103 }
  1311. X
  1312. X
  1313. X
  1314. X
  1315. X
  1316. X          -- cisco MIB                                         [Page 49]
  1317. X--
  1318. X
  1319. X
  1320. X
  1321. X
  1322. X
  1323. X          -- Request for Comments: Draft             cisco Systems, Inc.
  1324. X
  1325. X
  1326. X               locIfspanInOctets OBJECT-TYPE
  1327. X                   SYNTAX  Counter
  1328. X                   ACCESS  read-only
  1329. X                   STATUS  mandatory
  1330. X                   ::= { lifEntry 104 }
  1331. X
  1332. X               locIfspanOutOctets OBJECT-TYPE
  1333. X                   SYNTAX  Counter
  1334. X                   ACCESS  read-only
  1335. X                   STATUS  mandatory
  1336. X                   ::= { lifEntry 105 }
  1337. X
  1338. X               locIfarpInPkts OBJECT-TYPE
  1339. X                   SYNTAX  Counter
  1340. X                   ACCESS  read-only
  1341. X                   STATUS  mandatory
  1342. X                   ::= { lifEntry 106 }
  1343. X
  1344. X               locIfarpOutPkts OBJECT-TYPE
  1345. X                   SYNTAX  Counter
  1346. X                   ACCESS  read-only
  1347. X                   STATUS  mandatory
  1348. X                   ::= { lifEntry 107 }
  1349. X
  1350. X               locIfarpInOctets OBJECT-TYPE
  1351. X                   SYNTAX  Counter
  1352. X                   ACCESS  read-only
  1353. X                   STATUS  mandatory
  1354. X                   ::= { lifEntry 108 }
  1355. X
  1356. X               locIfarpOutOctets OBJECT-TYPE
  1357. X                   SYNTAX  Counter
  1358. X                   ACCESS  read-only
  1359. X                   STATUS  mandatory
  1360. X                   ::= { lifEntry 109 }
  1361. X
  1362. X               locIfprobeInPkts OBJECT-TYPE
  1363. X                   SYNTAX  Counter
  1364. X                   ACCESS  read-only
  1365. X                   STATUS  mandatory
  1366. X                   ::= { lifEntry 110 }
  1367. X
  1368. X               locIfprobeOutPkts OBJECT-TYPE
  1369. X                   SYNTAX  Counter
  1370. X                   ACCESS  read-only
  1371. X                   STATUS  mandatory
  1372. X                   ::= { lifEntry 111 }
  1373. X
  1374. X               locIfprobeInOctets OBJECT-TYPE
  1375. X                   SYNTAX  Counter
  1376. X                   ACCESS  read-only
  1377. X                   STATUS  mandatory
  1378. X                   ::= { lifEntry 112 }
  1379. X
  1380. X               locIfprobeOutOctets OBJECT-TYPE
  1381. X                   SYNTAX  Counter
  1382. X                   ACCESS  read-only
  1383. X                   STATUS  mandatory
  1384. X                   ::= { lifEntry 113 }
  1385. X
  1386. X               -- End of table
  1387. X
  1388. X
  1389. X
  1390. X               -- Local IP Group
  1391. X
  1392. X          -- This group is present in all products which are using the
  1393. X          -- IP protocol.
  1394. X
  1395. X
  1396. X
  1397. X
  1398. X
  1399. X
  1400. X
  1401. X          -- cisco MIB                                         [Page 51]
  1402. X--
  1403. X
  1404. X
  1405. X
  1406. X
  1407. X
  1408. X          -- Request for Comments: Draft             cisco Systems, Inc.
  1409. X
  1410. X
  1411. X          -- Local IP Address Table
  1412. X
  1413. X          -- This group provides additional objects to the table
  1414. X          -- defined by RFC1156.
  1415. X
  1416. X               lipAddrTable OBJECT-TYPE
  1417. X                   SYNTAX  SEQUENCE OF LIpAddrEntry
  1418. X                   ACCESS  not-accessible
  1419. X                   STATUS  mandatory
  1420. X                   ::= { lip 1 }
  1421. X
  1422. X               lipAddrEntry OBJECT-TYPE
  1423. X                   SYNTAX LIpAddrEntry
  1424. X                   ACCESS  not-accessible
  1425. X                   STATUS  mandatory
  1426. X               ::= { lipAddrTable 1 }
  1427. X
  1428. X               LIpAddrEntry ::=
  1429. X                   SEQUENCE {
  1430. X                       locIPHow
  1431. X                           DisplayString,
  1432. X                       locIPWho
  1433. X                           IpAddress,
  1434. X                       locIPHelper
  1435. X                           IpAddress,
  1436. X                       locIPSecurity
  1437. X                           INTEGER,
  1438. X                       locIPRedirects
  1439. X                           INTEGER,
  1440. X                       locIPUnreach
  1441. X                           INTEGER
  1442. X                   }
  1443. X
  1444. X
  1445. X          -- The following section describes the components of the
  1446. X          -- table.
  1447. X
  1448. X               locIPHow OBJECT-TYPE
  1449. X                   SYNTAX  DisplayString
  1450. X
  1451. X
  1452. X
  1453. X
  1454. X
  1455. X          -- cisco MIB                                         [Page 52]
  1456. X--
  1457. X
  1458. X
  1459. X
  1460. X
  1461. X
  1462. X          -- Request for Comments: Draft             cisco Systems, Inc.
  1463. X
  1464. X
  1465. X                   ACCESS  read-only
  1466. X                   STATUS  mandatory
  1467. X                   ::= { lipAddrEntry 1 }
  1468. X
  1469. X               locIPWho OBJECT-TYPE
  1470. X                   SYNTAX  IpAddress
  1471. X                   ACCESS  read-only
  1472. X                   STATUS  mandatory
  1473. X                   ::= { lipAddrEntry 2 }
  1474. X
  1475. X               locIPHelper OBJECT-TYPE
  1476. X                   SYNTAX  IpAddress
  1477. X                   ACCESS  read-only
  1478. X                   STATUS  mandatory
  1479. X                   ::= { lipAddrEntry 3 }
  1480. X
  1481. X               locIPSecurity OBJECT-TYPE
  1482. X                   SYNTAX  INTEGER
  1483. X                   ACCESS  read-only
  1484. X                   STATUS  mandatory
  1485. X                   ::= { lipAddrEntry 4 }
  1486. X
  1487. X               locIPRedirects OBJECT-TYPE
  1488. X                   SYNTAX  INTEGER
  1489. X                   ACCESS  read-only
  1490. X                   STATUS  mandatory
  1491. X                   ::= { lipAddrEntry 5 }
  1492. X
  1493. X               locIPUnreach OBJECT-TYPE
  1494. X                   SYNTAX  INTEGER
  1495. X                   ACCESS  read-only
  1496. X
  1497. X
  1498. X
  1499. X
  1500. X
  1501. X          -- cisco MIB                                         [Page 53]
  1502. X--
  1503. X
  1504. X
  1505. X
  1506. X
  1507. X
  1508. X          -- Request for Comments: Draft             cisco Systems, Inc.
  1509. X
  1510. X
  1511. X                   STATUS  mandatory
  1512. X                   ::= { lipAddrEntry 6 }
  1513. X
  1514. X               -- End of table
  1515. X
  1516. X
  1517. X
  1518. X               -- Local IP Routing Table
  1519. X
  1520. X          -- This group provides additional objects to the table
  1521. X          -- defined by RFC1156.
  1522. X
  1523. X               lipRoutingTable OBJECT-TYPE
  1524. X                   SYNTAX  SEQUENCE OF LIpRouteEntry
  1525. X                   ACCESS  not-accessible
  1526. X                   STATUS  mandatory
  1527. X                   ::= { lip 2 }
  1528. X
  1529. X               lipRouteEntry OBJECT-TYPE
  1530. X                   SYNTAX LIpRouteEntry
  1531. X                   ACCESS  not-accessible
  1532. X                   STATUS  mandatory
  1533. X               ::= { lipRoutingTable 1 }
  1534. X
  1535. X               LIpRouteEntry ::=
  1536. X                   SEQUENCE {
  1537. X                       locRtMask
  1538. X                           IpAddress,
  1539. X                       locRtCount
  1540. X                           INTEGER,
  1541. X                       locRtUses
  1542. X                           INTEGER
  1543. X                   }
  1544. X
  1545. X
  1546. X
  1547. X
  1548. X
  1549. X
  1550. X
  1551. X
  1552. X          -- cisco MIB                                         [Page 54]
  1553. X--
  1554. X
  1555. X
  1556. X
  1557. X
  1558. X
  1559. X          -- Request for Comments: Draft             cisco Systems, Inc.
  1560. X
  1561. X
  1562. X          -- The following section describes the components of the
  1563. X          -- table.
  1564. X
  1565. X               locRtMask OBJECT-TYPE
  1566. X                   SYNTAX  IpAddress
  1567. X                   ACCESS  read-only
  1568. X                   STATUS  mandatory
  1569. X                   ::= { lipRouteEntry 1 }
  1570. X
  1571. X               locRtCount OBJECT-TYPE
  1572. X                   SYNTAX  INTEGER
  1573. X                   ACCESS  read-only
  1574. X                   STATUS  mandatory
  1575. X                   ::= { lipRouteEntry 2 }
  1576. X
  1577. X               locRtUses OBJECT-TYPE
  1578. X                   SYNTAX  INTEGER
  1579. X                   ACCESS  read-only
  1580. X                   STATUS  mandatory
  1581. X                   ::= { lipRouteEntry 3 }
  1582. X
  1583. X               -- End of table
  1584. X
  1585. X
  1586. X               actThresh OBJECT-TYPE
  1587. X                   SYNTAX  INTEGER
  1588. X                   ACCESS  read-only
  1589. X                   STATUS  mandatory
  1590. X                   ::= { lip 4 }
  1591. X
  1592. X               actLostPkts OBJECT-TYPE
  1593. X                   SYNTAX  INTEGER
  1594. X                   ACCESS  read-only
  1595. X                   STATUS  mandatory
  1596. X
  1597. X
  1598. X
  1599. X
  1600. X
  1601. X          -- cisco MIB                                         [Page 55]
  1602. X--
  1603. X
  1604. X
  1605. X
  1606. X
  1607. X
  1608. X          -- Request for Comments: Draft             cisco Systems, Inc.
  1609. X
  1610. X
  1611. X                   ::= { lip 5 }
  1612. X
  1613. X               actLostByts OBJECT-TYPE
  1614. X                   SYNTAX  INTEGER
  1615. X                   ACCESS  read-only
  1616. X                   STATUS  mandatory
  1617. X                   ::= { lip 6 }
  1618. X
  1619. X
  1620. X               -- Local IP Accounting Table
  1621. X
  1622. X          -- This group provides access to the cisco IP accounting
  1623. X          -- support.
  1624. X
  1625. X               lipAccountingTable OBJECT-TYPE
  1626. X                   SYNTAX  SEQUENCE OF LIpAccountEntry
  1627. X                   ACCESS  not-accessible
  1628. X                   STATUS  mandatory
  1629. X                   ::= { lip 7 }
  1630. X
  1631. X               lipAccountEntry OBJECT-TYPE
  1632. X                   SYNTAX LIpAccountEntry
  1633. X                   ACCESS  not-accessible
  1634. X                   STATUS  mandatory
  1635. X               ::= { lipAccountingTable 1 }
  1636. X
  1637. X               LIpAccountEntry ::=
  1638. X                   SEQUENCE {
  1639. X                       actSrc
  1640. X                           IpAddress,
  1641. X                       actDst
  1642. X                           IpAddress,
  1643. X                       actPkts
  1644. X                           INTEGER,
  1645. X                       actByts
  1646. X
  1647. X
  1648. X
  1649. X
  1650. X
  1651. X          -- cisco MIB                                         [Page 56]
  1652. X--
  1653. X
  1654. X
  1655. X
  1656. X
  1657. X
  1658. X          -- Request for Comments: Draft             cisco Systems, Inc.
  1659. X
  1660. X
  1661. X                           INTEGER
  1662. X                   }
  1663. X
  1664. X
  1665. X          -- The following section describes the components of the
  1666. X          -- table.
  1667. X
  1668. X               actSrc OBJECT-TYPE
  1669. X                   SYNTAX  IpAddress
  1670. X                   ACCESS  read-only
  1671. X                   STATUS  mandatory
  1672. X                   ::= { lipAccountEntry 1 }
  1673. X
  1674. X               actDst OBJECT-TYPE
  1675. X                   SYNTAX  IpAddress
  1676. X                   ACCESS  read-only
  1677. X                   STATUS  mandatory
  1678. X                   ::= { lipAccountEntry 2 }
  1679. X
  1680. X               actPkts OBJECT-TYPE
  1681. X                   SYNTAX  INTEGER
  1682. X                   ACCESS  read-only
  1683. X                   STATUS  mandatory
  1684. X                   ::= { lipAccountEntry 3 }
  1685. X
  1686. X               actByts OBJECT-TYPE
  1687. X                   SYNTAX  INTEGER
  1688. X                   ACCESS  read-only
  1689. X                   STATUS  mandatory
  1690. X                   ::= { lipAccountEntry 4 }
  1691. X
  1692. X               -- End of table
  1693. X
  1694. X
  1695. X
  1696. X
  1697. X
  1698. X
  1699. X
  1700. X          -- cisco MIB                                         [Page 57]
  1701. X--
  1702. X
  1703. X
  1704. X
  1705. X
  1706. X
  1707. X          -- Request for Comments: Draft             cisco Systems, Inc.
  1708. X
  1709. X
  1710. X               actAge OBJECT-TYPE
  1711. X                   SYNTAX  TimeTicks
  1712. X                   ACCESS  read-only
  1713. X                   STATUS  mandatory
  1714. X                   ::= { lip 8 }
  1715. X
  1716. X
  1717. X               -- Local IP Checkpoint Accounting Table
  1718. X
  1719. X          -- This group provides access to the cisco
  1720. X          -- IP checkpoint accounting support.
  1721. X
  1722. X               lipCkAccountingTable OBJECT-TYPE
  1723. X                   SYNTAX  SEQUENCE OF LIpCkAccountEntry
  1724. X                   ACCESS  not-accessible
  1725. X                   STATUS  mandatory
  1726. X                   ::= { lip 9 }
  1727. X
  1728. X               lipCkAccountEntry OBJECT-TYPE
  1729. X                   SYNTAX LIpCkAccountEntry
  1730. X                   ACCESS  not-accessible
  1731. X                   STATUS  mandatory
  1732. X               ::= { lipCkAccountingTable 1 }
  1733. X
  1734. X               LIpCkAccountEntry ::=
  1735. X                   SEQUENCE {
  1736. X                       ckactSrc
  1737. X                           IpAddress,
  1738. X                       ckactDst
  1739. X                           IpAddress,
  1740. X                       ckactPkts
  1741. X                           INTEGER,
  1742. X                       ckactByts
  1743. X                           INTEGER
  1744. X                   }
  1745. X
  1746. X
  1747. X
  1748. X
  1749. X
  1750. X          -- cisco MIB                                         [Page 58]
  1751. X--
  1752. X
  1753. X
  1754. X
  1755. X
  1756. X
  1757. X          -- Request for Comments: Draft             cisco Systems, Inc.
  1758. X
  1759. X
  1760. X          -- The following section describes the components of the
  1761. X          -- table.
  1762. X
  1763. X               ckactSrc OBJECT-TYPE
  1764. X                   SYNTAX  IpAddress
  1765. X                   ACCESS  read-only
  1766. X                   STATUS  mandatory
  1767. X                   ::= { lipCkAccountEntry 1 }
  1768. X
  1769. X               ckactDst OBJECT-TYPE
  1770. X                   SYNTAX  IpAddress
  1771. X                   ACCESS  read-only
  1772. X                   STATUS  mandatory
  1773. X                   ::= { lipCkAccountEntry 2 }
  1774. X
  1775. X               ckactPkts OBJECT-TYPE
  1776. X                   SYNTAX  INTEGER
  1777. X                   ACCESS  read-only
  1778. X                   STATUS  mandatory
  1779. X                   ::= { lipCkAccountEntry 3 }
  1780. X
  1781. X               ckactByts OBJECT-TYPE
  1782. X                   SYNTAX  INTEGER
  1783. X                   ACCESS  read-only
  1784. X                   STATUS  mandatory
  1785. X                   ::= { lipCkAccountEntry 4 }
  1786. X
  1787. X               -- End of table
  1788. X
  1789. X
  1790. X               ckactAge OBJECT-TYPE
  1791. X                   SYNTAX  TimeTicks
  1792. X                   ACCESS  read-only
  1793. X
  1794. X
  1795. X
  1796. X
  1797. X
  1798. X          -- cisco MIB                                         [Page 59]
  1799. X--
  1800. X
  1801. X
  1802. X
  1803. X
  1804. X
  1805. X          -- Request for Comments: Draft             cisco Systems, Inc.
  1806. X
  1807. X
  1808. X                   STATUS  mandatory
  1809. X                   ::= { lip 10 }
  1810. X
  1811. X               actCheckPoint OBJECT-TYPE
  1812. X                   SYNTAX  INTEGER
  1813. X                   ACCESS  read-write
  1814. X                   STATUS  mandatory
  1815. X                   ::= { lip 11 }
  1816. X
  1817. X               ipNoaccess OBJECT-TYPE
  1818. X                   SYNTAX  Counter
  1819. X                   ACCESS  read-only
  1820. X                   STATUS  mandatory
  1821. X                   ::= { lip 12 }
  1822. X
  1823. X
  1824. X               -- Local TCP Group
  1825. X
  1826. X          -- This group is present in all products which are using the
  1827. X          -- TCP protocol.
  1828. X
  1829. X
  1830. X          -- Local TCP Connection Table
  1831. X
  1832. X          -- This group provides additional objects to the table defined
  1833. X          -- by RFC1156.
  1834. X
  1835. X               ltcpConnTable OBJECT-TYPE
  1836. X                   SYNTAX  SEQUENCE OF LTcpConnEntry
  1837. X                   ACCESS  not-accessible
  1838. X                   STATUS  mandatory
  1839. X                   ::= { ltcp 1 }
  1840. X
  1841. X
  1842. X
  1843. X
  1844. X
  1845. X          -- cisco MIB                                         [Page 60]
  1846. X--
  1847. X
  1848. X
  1849. X
  1850. X
  1851. X
  1852. X          -- Request for Comments: Draft             cisco Systems, Inc.
  1853. X
  1854. X
  1855. X               ltcpConnEntry OBJECT-TYPE
  1856. X                   SYNTAX LTcpConnEntry
  1857. X                   ACCESS  not-accessible
  1858. X                   STATUS  mandatory
  1859. X               ::= { ltcpConnTable 1 }
  1860. X
  1861. X               LTcpConnEntry ::=
  1862. X                   SEQUENCE {
  1863. X                       loctcpConnInBytes
  1864. X                           INTEGER,
  1865. X                       loctcpConnOutBytes
  1866. X                           INTEGER,
  1867. X                       loctcpConnInPkts
  1868. X                           INTEGER,
  1869. X                       loctcpConnOutPkts
  1870. X                           INTEGER,
  1871. X                       loctcpConnElapsed
  1872. X                           TimeTicks
  1873. X                   }
  1874. X
  1875. X
  1876. X          -- The following section describes the components of the
  1877. X          -- table.
  1878. X
  1879. X               loctcpConnInBytes OBJECT-TYPE
  1880. X                   SYNTAX  INTEGER
  1881. X                   ACCESS  read-only
  1882. X                   STATUS  mandatory
  1883. X                   ::= { ltcpConnEntry 1 }
  1884. X
  1885. X               loctcpConnOutBytes OBJECT-TYPE
  1886. X                   SYNTAX  INTEGER
  1887. X                   ACCESS  read-only
  1888. X                   STATUS  mandatory
  1889. X                   ::= { ltcpConnEntry 2 }
  1890. X
  1891. X
  1892. X
  1893. X
  1894. X
  1895. X
  1896. X          -- cisco MIB                                         [Page 61]
  1897. X--
  1898. X
  1899. X
  1900. X
  1901. X
  1902. X
  1903. X          -- Request for Comments: Draft             cisco Systems, Inc.
  1904. X
  1905. X
  1906. X               loctcpConnInPkts OBJECT-TYPE
  1907. X                   SYNTAX  INTEGER
  1908. X                   ACCESS  read-only
  1909. X                   STATUS  mandatory
  1910. X                   ::= { ltcpConnEntry 3 }
  1911. X
  1912. X               loctcpConnOutPkts OBJECT-TYPE
  1913. X                   SYNTAX  INTEGER
  1914. X                   ACCESS  read-only
  1915. X                   STATUS  mandatory
  1916. X                   ::= { ltcpConnEntry 4 }
  1917. X
  1918. X               loctcpConnElapsed OBJECT-TYPE
  1919. X                   SYNTAX  TimeTicks
  1920. X                   ACCESS  read-only
  1921. X                   STATUS  mandatory
  1922. X                   ::= { ltcpConnEntry 5 }
  1923. X
  1924. X               -- End of table
  1925. X
  1926. X
  1927. X
  1928. X               -- Local cisco Terminal Server Group
  1929. X
  1930. X          -- This group is present in all products which contain
  1931. X          -- asynchronous terminal lines.
  1932. X
  1933. X               tsLines OBJECT-TYPE
  1934. X                   SYNTAX  INTEGER
  1935. X                   ACCESS  read-only
  1936. X                   STATUS  mandatory
  1937. X                   ::= { lts 1 }
  1938. X
  1939. X
  1940. X               -- Local Terminal Server Line Table
  1941. X
  1942. X
  1943. X
  1944. X
  1945. X
  1946. X          -- cisco MIB                                         [Page 62]
  1947. X--
  1948. X
  1949. X
  1950. X
  1951. X
  1952. X
  1953. X          -- Request for Comments: Draft             cisco Systems, Inc.
  1954. X
  1955. X
  1956. X          -- This group contains terminal server specific
  1957. X          -- information on a per line basis.
  1958. X
  1959. X               ltsLineTable OBJECT-TYPE
  1960. X                   SYNTAX  SEQUENCE OF LTsLineEntry
  1961. X                   ACCESS  not-accessible
  1962. X                   STATUS  mandatory
  1963. X                   ::= { lts 2 }
  1964. X
  1965. X               ltsLineEntry OBJECT-TYPE
  1966. X                   SYNTAX LTsLineEntry
  1967. X                   ACCESS  not-accessible
  1968. X                   STATUS  mandatory
  1969. X               ::= { ltsLineTable 1 }
  1970. X
  1971. X               LTsLineEntry ::=
  1972. X                   SEQUENCE {
  1973. X                       tsLineActive
  1974. X                           INTEGER,
  1975. X                       tsLineType
  1976. X                           INTEGER,
  1977. X                       tsLineAutobaud
  1978. X                           INTEGER,
  1979. X                       tsLineSpeedin
  1980. X                           INTEGER,
  1981. X                       tsLineSpeedout
  1982. X                           INTEGER,
  1983. X                       tsLineFlow
  1984. X                           INTEGER,
  1985. X                       tsLineModem
  1986. X                           INTEGER,
  1987. X                       tsLineLoc
  1988. X                           DisplayString,
  1989. X                       tsLineTerm
  1990. X                           DisplayString,
  1991. X                       tsLineScrlen
  1992. X                           INTEGER,
  1993. X                       tsLineScrwid
  1994. X                           INTEGER,
  1995. X
  1996. X
  1997. X
  1998. X
  1999. X
  2000. X          -- cisco MIB                                         [Page 63]
  2001. X--
  2002. X
  2003. X
  2004. X
  2005. X
  2006. X
  2007. X          -- Request for Comments: Draft             cisco Systems, Inc.
  2008. X
  2009. X
  2010. X                       tsLineEsc
  2011. X                           DisplayString,
  2012. X                       tsLineTmo
  2013. X                           INTEGER,
  2014. X                       tsLineSestmo
  2015. X                           INTEGER,
  2016. X                       tsLineRotary
  2017. X                           INTEGER,
  2018. X                       tsLineUses
  2019. X                           INTEGER,
  2020. X                       tsLineNses
  2021. X                           INTEGER,
  2022. X                       tsLineUser
  2023. X                           DisplayString,
  2024. X                       tsLineNoise
  2025. X                           INTEGER
  2026. X                   }
  2027. X
  2028. X
  2029. X          -- The following section describes the components of the
  2030. X          -- table.
  2031. X
  2032. X               tsLineActive OBJECT-TYPE
  2033. X                   SYNTAX  INTEGER
  2034. X                   ACCESS  read-only
  2035. X                   STATUS  mandatory
  2036. X                   ::= { ltsLineEntry 1 }
  2037. X
  2038. X               tsLineType OBJECT-TYPE
  2039. X                   SYNTAX  INTEGER {
  2040. X                        unknown(1),
  2041. X                        console(2),
  2042. X                        terminal(3),
  2043. X                        line-printer(4),
  2044. X                        virtual-terminal(5),
  2045. X                        auxiliary(6)
  2046. X                   }
  2047. X                   ACCESS  read-only
  2048. X                   STATUS  mandatory
  2049. X                   ::= { ltsLineEntry 2 }
  2050. X
  2051. X
  2052. X
  2053. X
  2054. X
  2055. X
  2056. X          -- cisco MIB                                         [Page 64]
  2057. X--
  2058. X
  2059. X
  2060. X
  2061. X
  2062. X
  2063. END_OF_FILE
  2064.   if test 53002 -ne `wc -c <'nocol-3.0/src/cmu-snmp/mib.txt.B'`; then
  2065.     echo shar: \"'nocol-3.0/src/cmu-snmp/mib.txt.B'\" unpacked with wrong size!
  2066.   elif test -f 'nocol-3.0/src/cmu-snmp/mib.txt.A' && test -f 'nocol-3.0/src/cmu-snmp/mib.txt.C'; then
  2067.     echo shar: Combining  \"'nocol-3.0/src/cmu-snmp/mib.txt'\" \(164470 characters\)
  2068.     cat 'nocol-3.0/src/cmu-snmp/mib.txt.A' 'nocol-3.0/src/cmu-snmp/mib.txt.B' 'nocol-3.0/src/cmu-snmp/mib.txt.C' > 'nocol-3.0/src/cmu-snmp/mib.txt'
  2069.     if test 164470 -ne `wc -c <'nocol-3.0/src/cmu-snmp/mib.txt'`; then
  2070.       echo shar: \"'nocol-3.0/src/cmu-snmp/mib.txt'\" combined with wrong size!
  2071.     else
  2072.       rm nocol-3.0/src/cmu-snmp/mib.txt.A nocol-3.0/src/cmu-snmp/mib.txt.B nocol-3.0/src/cmu-snmp/mib.txt.C
  2073.     fi
  2074.   fi
  2075.   # end of 'nocol-3.0/src/cmu-snmp/mib.txt.B'
  2076. fi
  2077. if test -f 'nocol-3.0/src/cmu-snmp/snmplib/asn1.c' -a "${1}" != "-c" ; then 
  2078.   echo shar: Will not clobber existing file \"'nocol-3.0/src/cmu-snmp/snmplib/asn1.c'\"
  2079. else
  2080.   echo shar: Extracting \"'nocol-3.0/src/cmu-snmp/snmplib/asn1.c'\" \(18768 characters\)
  2081.   sed "s/^X//" >'nocol-3.0/src/cmu-snmp/snmplib/asn1.c' <<'END_OF_FILE'
  2082. X/*
  2083. X * Abstract Syntax Notation One, ASN.1
  2084. X * As defined in ISO/IS 8824 and ISO/IS 8825
  2085. X * This implements a subset of the above International Standards that
  2086. X * is sufficient to implement SNMP.
  2087. X *
  2088. X * Encodes abstract data types into a machine independent stream of bytes.
  2089. X *
  2090. X */
  2091. X/***********************************************************
  2092. X    Copyright 1988, 1989 by Carnegie Mellon University
  2093. X
  2094. X                      All Rights Reserved
  2095. X
  2096. XPermission to use, copy, modify, and distribute this software and its 
  2097. Xdocumentation for any purpose and without fee is hereby granted, 
  2098. Xprovided that the above copyright notice appear in all copies and that
  2099. Xboth that copyright notice and this permission notice appear in 
  2100. Xsupporting documentation, and that the name of CMU not be
  2101. Xused in advertising or publicity pertaining to distribution of the
  2102. Xsoftware without specific, written prior permission.  
  2103. X
  2104. XCMU DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
  2105. XALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
  2106. XCMU BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
  2107. XANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
  2108. XWHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
  2109. XARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
  2110. XSOFTWARE.
  2111. X******************************************************************/
  2112. X#ifdef KINETICS
  2113. X#include "gw.h"
  2114. X#endif
  2115. X
  2116. X#if (defined(unix) && !defined(KINETICS))
  2117. X#include <sys/types.h>
  2118. X#include <netinet/in.h>
  2119. X#endif
  2120. X
  2121. X#include "asn1.h"
  2122. X
  2123. X#ifndef NULL
  2124. X#define NULL    0
  2125. X#endif
  2126. X#define    ERROR(x)
  2127. X
  2128. X/*
  2129. X * asn_parse_int - pulls a long out of an ASN int type.
  2130. X *  On entry, datalength is input as the number of valid bytes following
  2131. X *   "data".  On exit, it is returned as the number of valid bytes
  2132. X *   following the end of this object.
  2133. X *
  2134. X *  Returns a pointer to the first byte past the end
  2135. X *   of this object (i.e. the start of the next object).
  2136. X *  Returns NULL on any error.
  2137. X */
  2138. Xu_char *
  2139. Xasn_parse_int(data, datalength, type, intp, intsize)
  2140. X    register u_char        *data;    /* IN - pointer to start of object */
  2141. X    register int        *datalength;/* IN/OUT - number of valid bytes left in buffer */
  2142. X    u_char            *type;    /* OUT - asn type of object */
  2143. X    long            *intp;    /* IN/OUT - pointer to start of output buffer */
  2144. X    int                intsize;    /* IN - size of output buffer */
  2145. X{
  2146. X/*
  2147. X * ASN.1 integer ::= 0x02 asnlength byte {byte}*
  2148. X */
  2149. X    register u_char *bufp = data;
  2150. X    u_long        asn_length;
  2151. X    register long   value = 0;
  2152. X
  2153. X    if (intsize != sizeof (long)){
  2154. X    ERROR("not long");
  2155. X    return NULL;
  2156. X    }
  2157. X    *type = *bufp++;
  2158. X    bufp = asn_parse_length(bufp, &asn_length);
  2159. X    if (bufp == NULL){
  2160. X    ERROR("bad length");
  2161. X    return NULL;
  2162. X    }
  2163. X    if (asn_length + (bufp - data) > *datalength){
  2164. X    ERROR("overflow of message");
  2165. X    return NULL;
  2166. X    }
  2167. X    /* Put in by vikas@jvnc.net as per Robert Elz <kre@munnari.oz.au> */
  2168. X    if (asn_length == intsize + 1 && *bufp == 0) {
  2169. X        /*
  2170. X         * this will cause a positive 32 bit integer to be
  2171. X         * returned as negative, which is only OK if our
  2172. X         * result is to be treated as unsigned - in practice
  2173. X         * its likely to be OK...
  2174. X         */
  2175. X        asn_length--;
  2176. X        bufp++;
  2177. X    }
  2178. X    if (asn_length > intsize){
  2179. X    ERROR("I don't support such large integers");
  2180. X    return NULL;
  2181. X    }
  2182. X    *datalength -= (int)asn_length + (bufp - data);
  2183. X    if (*bufp & 0x80)
  2184. X    value = -1; /* integer is negative */
  2185. X    while(asn_length--)
  2186. X    value = (value << 8) | *bufp++;
  2187. X    *intp = value;
  2188. X    return bufp;
  2189. X}
  2190. X
  2191. X
  2192. X/*
  2193. X * asn_build_int - builds an ASN object containing an integer.
  2194. X *  On entry, datalength is input as the number of valid bytes following
  2195. X *   "data".  On exit, it is returned as the number of valid bytes
  2196. X *   following the end of this object.
  2197. X *
  2198. X *  Returns a pointer to the first byte past the end
  2199. X *   of this object (i.e. the start of the next object).
  2200. X *  Returns NULL on any error.
  2201. X */
  2202. Xu_char *
  2203. Xasn_build_int(data, datalength, type, intp, intsize)
  2204. X    register u_char *data;    /* IN - pointer to start of output buffer */
  2205. X    register int    *datalength;/* IN/OUT - number of valid bytes left in buffer */
  2206. X    u_char        type;    /* IN - asn type of object */
  2207. X    register long   *intp;    /* IN - pointer to start of long integer */
  2208. X    register int    intsize;    /* IN - size of *intp */
  2209. X{
  2210. X/*
  2211. X * ASN.1 integer ::= 0x02 asnlength byte {byte}*
  2212. X */
  2213. X
  2214. X    register long integer;
  2215. X    register u_long mask;
  2216. X
  2217. X    if (intsize != sizeof (long))
  2218. X    return NULL;
  2219. X    integer = *intp;
  2220. X    /*
  2221. X     * Truncate "unnecessary" bytes off of the most significant end of this 2's complement integer.
  2222. X     * There should be no sequence of 9 consecutive 1's or 0's at the most significant end of the
  2223. X     * integer.
  2224. X     */
  2225. X    mask = 0x1FF << ((8 * (sizeof(long) - 1)) - 1);
  2226. X    /* mask is 0xFF800000 on a big-endian machine */
  2227. X    while((((integer & mask) == 0) || ((integer & mask) == mask)) && intsize > 1){
  2228. X    intsize--;
  2229. X    integer <<= 8;
  2230. X    }
  2231. X    data = asn_build_header(data, datalength, type, intsize);
  2232. X    if (data == NULL)
  2233. X    return NULL;
  2234. X    if (*datalength < intsize)
  2235. X    return NULL;
  2236. X    *datalength -= intsize;
  2237. X    mask = 0xFF << (8 * (sizeof(long) - 1));
  2238. X    /* mask is 0xFF000000 on a big-endian machine */
  2239. X    while(intsize--){
  2240. X    *data++ = (u_char)((integer & mask) >> (8 * (sizeof(long) - 1)));
  2241. X    integer <<= 8;
  2242. X    }
  2243. X    return data;
  2244. X}
  2245. X
  2246. X
  2247. X/*
  2248. X * asn_parse_string - pulls an octet string out of an ASN octet string type.
  2249. X *  On entry, datalength is input as the number of valid bytes following
  2250. X *   "data".  On exit, it is returned as the number of valid bytes
  2251. X *   following the beginning of the next object.
  2252. X *
  2253. X *  "string" is filled with the octet string.
  2254. X *
  2255. X *  Returns a pointer to the first byte past the end
  2256. X *   of this object (i.e. the start of the next object).
  2257. X *  Returns NULL on any error.
  2258. X */
  2259. Xu_char *
  2260. Xasn_parse_string(data, datalength, type, string, strlength)
  2261. X    u_char        *data;        /* IN - pointer to start of object */
  2262. X    register int    *datalength;    /* IN/OUT - number of valid bytes left in buffer */
  2263. X    u_char        *type;        /* OUT - asn type of object */
  2264. X    u_char        *string;        /* IN/OUT - pointer to start of output buffer */
  2265. X    register int    *strlength;     /* IN/OUT - size of output buffer */
  2266. X{
  2267. X/*
  2268. X * ASN.1 octet string ::= primstring | cmpdstring
  2269. X * primstring ::= 0x04 asnlength byte {byte}*
  2270. X * cmpdstring ::= 0x24 asnlength string {string}*
  2271. X * This doesn't yet support the compound string.
  2272. X */
  2273. X    register u_char *bufp = data;
  2274. X    u_long        asn_length;
  2275. X
  2276. X    *type = *bufp++;
  2277. X    bufp = asn_parse_length(bufp, &asn_length);
  2278. X    if (bufp == NULL)
  2279. X    return NULL;
  2280. X    if (asn_length + (bufp - data) > *datalength){
  2281. X    ERROR("overflow of message");
  2282. X    return NULL;
  2283. X    }
  2284. X    if (asn_length > *strlength){
  2285. X    ERROR("I don't support such long strings");
  2286. X    return NULL;
  2287. X    }
  2288. X    bcopy((char *)bufp, (char *)string, (int)asn_length);
  2289. X    *strlength = (int)asn_length;
  2290. X    *datalength -= (int)asn_length + (bufp - data);
  2291. X    return bufp + asn_length;
  2292. X}
  2293. X
  2294. X
  2295. X/*
  2296. X * asn_build_string - Builds an ASN octet string object containing the input string.
  2297. X *  On entry, datalength is input as the number of valid bytes following
  2298. X *   "data".  On exit, it is returned as the number of valid bytes
  2299. X *   following the beginning of the next object.
  2300. X *
  2301. X *  Returns a pointer to the first byte past the end
  2302. X *   of this object (i.e. the start of the next object).
  2303. X *  Returns NULL on any error.
  2304. X */
  2305. Xu_char *
  2306. Xasn_build_string(data, datalength, type, string, strlength)
  2307. X    u_char        *data;        /* IN - pointer to start of object */
  2308. X    register int    *datalength;    /* IN/OUT - number of valid bytes left in buffer */
  2309. X    u_char        type;        /* IN - ASN type of string */
  2310. X    u_char        *string;        /* IN - pointer to start of input buffer */
  2311. X    register int    strlength;        /* IN - size of input buffer */
  2312. X{
  2313. X/*
  2314. X * ASN.1 octet string ::= primstring | cmpdstring
  2315. X * primstring ::= 0x04 asnlength byte {byte}*
  2316. X * cmpdstring ::= 0x24 asnlength string {string}*
  2317. X * This code will never send a compound string.
  2318. X */
  2319. X    data = asn_build_header(data, datalength, type, strlength);
  2320. X    if (data == NULL)
  2321. X    return NULL;
  2322. X    if (*datalength < strlength)
  2323. X    return NULL;
  2324. X    bcopy((char *)string, (char *)data, strlength);
  2325. X    *datalength -= strlength;
  2326. X    return data + strlength;
  2327. X}
  2328. X
  2329. X
  2330. X/*
  2331. X * asn_parse_header - interprets the ID and length of the current object.
  2332. X *  On entry, datalength is input as the number of valid bytes following
  2333. X *   "data".  On exit, it is returned as the number of valid bytes
  2334. X *   in this object following the id and length.
  2335. X *
  2336. X *  Returns a pointer to the first byte of the contents of this object.
  2337. X *  Returns NULL on any error.
  2338. X */
  2339. Xu_char *
  2340. Xasn_parse_header(data, datalength, type)
  2341. X    u_char        *data;    /* IN - pointer to start of object */
  2342. X    int            *datalength;/* IN/OUT - number of valid bytes left in buffer */
  2343. X    u_char        *type;    /* OUT - ASN type of object */
  2344. X{
  2345. X    register u_char *bufp = data;
  2346. X    register        header_len;
  2347. X    u_long        asn_length;
  2348. X
  2349. X    /* this only works on data types < 30, i.e. no extension octets */
  2350. X    if (IS_EXTENSION_ID(*bufp)){
  2351. X    ERROR("can't process ID >= 30");
  2352. X    return NULL;
  2353. X    }
  2354. X    *type = *bufp;
  2355. X    bufp = asn_parse_length(bufp + 1, &asn_length);
  2356. X    if (bufp == NULL)
  2357. X    return NULL;
  2358. X    header_len = bufp - data;
  2359. X    if (header_len + asn_length > *datalength){
  2360. X    ERROR("asn length too long");
  2361. X    return NULL;
  2362. X    }
  2363. X    *datalength = (int)asn_length;
  2364. X    return bufp;
  2365. X}
  2366. X
  2367. X/*
  2368. X * asn_build_header - builds an ASN header for an object with the ID and
  2369. X * length specified.
  2370. X *  On entry, datalength is input as the number of valid bytes following
  2371. X *   "data".  On exit, it is returned as the number of valid bytes
  2372. X *   in this object following the id and length.
  2373. X *
  2374. X *  This only works on data types < 30, i.e. no extension octets.
  2375. X *  The maximum length is 0xFFFF;
  2376. X *
  2377. X *  Returns a pointer to the first byte of the contents of this object.
  2378. X *  Returns NULL on any error.
  2379. X */
  2380. Xu_char *
  2381. Xasn_build_header(data, datalength, type, length)
  2382. X    register u_char *data;    /* IN - pointer to start of object */
  2383. X    int            *datalength;/* IN/OUT - number of valid bytes left in buffer */
  2384. X    u_char        type;    /* IN - ASN type of object */
  2385. X    int            length;    /* IN - length of object */
  2386. X{
  2387. X    if (*datalength < 1)
  2388. X    return NULL;
  2389. X    *data++ = type;
  2390. X    (*datalength)--;
  2391. X    return asn_build_length(data, datalength, length);
  2392. X    
  2393. X}
  2394. X
  2395. X/*
  2396. X * asn_parse_length - interprets the length of the current object.
  2397. X *  On exit, length contains the value of this length field.
  2398. X *
  2399. X *  Returns a pointer to the first byte after this length
  2400. X *  field (aka: the start of the data field).
  2401. X *  Returns NULL on any error.
  2402. X */
  2403. Xu_char *
  2404. Xasn_parse_length(data, length)
  2405. X    u_char  *data;    /* IN - pointer to start of length field */
  2406. X    u_long  *length;    /* OUT - value of length field */
  2407. X{
  2408. X    register u_char lengthbyte = *data;
  2409. X
  2410. X    if (lengthbyte & ASN_LONG_LEN){
  2411. X    lengthbyte &= ~ASN_LONG_LEN;    /* turn MSb off */
  2412. X    if (lengthbyte == 0){
  2413. X        ERROR("We don't support indefinite lengths");
  2414. X        return NULL;
  2415. X    }
  2416. X    if (lengthbyte > sizeof(long)){
  2417. X        ERROR("we can't support data lengths that long");
  2418. X        return NULL;
  2419. X    }
  2420. X    bcopy((char *)data + 1, (char *)length, (int)lengthbyte);
  2421. X    *length = ntohl(*length);
  2422. X    *length >>= (8 * ((sizeof *length) - lengthbyte));
  2423. X    return data + lengthbyte + 1;
  2424. X    } else { /* short asnlength */
  2425. X    *length = (long)lengthbyte;
  2426. X    return data + 1;
  2427. X    }
  2428. X}
  2429. X
  2430. Xu_char *
  2431. Xasn_build_length(data, datalength, length)
  2432. X    register u_char *data;    /* IN - pointer to start of object */
  2433. X    int            *datalength;/* IN/OUT - number of valid bytes left in buffer */
  2434. X    register int    length;    /* IN - length of object */
  2435. X{
  2436. X    u_char    *start_data = data;
  2437. X
  2438. X    /* no indefinite lengths sent */
  2439. X    if (length < 0x80){
  2440. X    *data++ = (u_char)length;
  2441. X    } else if (length <= 0xFF){
  2442. X    *data++ = (u_char)(0x01 | ASN_LONG_LEN);
  2443. X    *data++ = (u_char)length;
  2444. X    } else { /* 0xFF < length <= 0xFFFF */
  2445. X    *data++ = (u_char)(0x02 | ASN_LONG_LEN);
  2446. X    *data++ = (u_char)((length >> 8) & 0xFF);
  2447. X    *data++ = (u_char)(length & 0xFF);
  2448. X    }
  2449. X    if (*datalength < (data - start_data)){
  2450. X    ERROR("build_length");
  2451. X    return NULL;
  2452. X    }
  2453. X    *datalength -= (data - start_data);
  2454. X    return data;
  2455. X
  2456. X}
  2457. X
  2458. X/*
  2459. X * asn_parse_objid - pulls an object indentifier out of an ASN object identifier type.
  2460. X *  On entry, datalength is input as the number of valid bytes following
  2461. X *   "data".  On exit, it is returned as the number of valid bytes
  2462. X *   following the beginning of the next object.
  2463. X *
  2464. X *  "objid" is filled with the object identifier.
  2465. X *
  2466. X *  Returns a pointer to the first byte past the end
  2467. X *   of this object (i.e. the start of the next object).
  2468. X *  Returns NULL on any error.
  2469. X */
  2470. Xu_char *
  2471. Xasn_parse_objid(data, datalength, type, objid, objidlength)
  2472. X    u_char        *data;        /* IN - pointer to start of object */
  2473. X    int            *datalength;    /* IN/OUT - number of valid bytes left in buffer */
  2474. X    u_char        *type;        /* OUT - ASN type of object */
  2475. X    oid            *objid;        /* IN/OUT - pointer to start of output buffer */
  2476. X    int            *objidlength;     /* IN/OUT - number of sub-id's in objid */
  2477. X{
  2478. X/*
  2479. X * ASN.1 objid ::= 0x06 asnlength subidentifier {subidentifier}*
  2480. X * subidentifier ::= {leadingbyte}* lastbyte
  2481. X * leadingbyte ::= 1 7bitvalue
  2482. X * lastbyte ::= 0 7bitvalue
  2483. X */
  2484. X    register u_char *bufp = data;
  2485. X    register oid *oidp = objid + 1;
  2486. X    register u_long subidentifier;
  2487. X    register long   length;
  2488. X    u_long        asn_length;
  2489. X
  2490. X    *type = *bufp++;
  2491. X    bufp = asn_parse_length(bufp, &asn_length);
  2492. X    if (bufp == NULL)
  2493. X    return NULL;
  2494. X    if (asn_length + (bufp - data) > *datalength){
  2495. X    ERROR("overflow of message");
  2496. X    return NULL;
  2497. X    }
  2498. X    *datalength -= (int)asn_length + (bufp - data);
  2499. X
  2500. X    length = asn_length;
  2501. X    (*objidlength)--;    /* account for expansion of first byte */
  2502. X    while (length > 0 && (*objidlength)-- > 0){
  2503. X    subidentifier = 0;
  2504. X    do {    /* shift and add in low order 7 bits */
  2505. X        subidentifier = (subidentifier << 7) + (*(u_char *)bufp & ~ASN_BIT8);
  2506. X        length--;
  2507. X    } while (*(u_char *)bufp++ & ASN_BIT8);    /* last byte has high bit clear */
  2508. X    if (subidentifier > (u_long)MAX_SUBID){
  2509. X        ERROR("subidentifier too long");
  2510. X        return NULL;
  2511. X    }
  2512. X    *oidp++ = (oid)subidentifier;
  2513. X    }
  2514. X
  2515. X    /*
  2516. X     * The first two subidentifiers are encoded into the first component
  2517. X     * with the value (X * 40) + Y, where:
  2518. X     *    X is the value of the first subidentifier.
  2519. X     *  Y is the value of the second subidentifier.
  2520. X     */
  2521. X    subidentifier = (u_long)objid[1];
  2522. X    objid[1] = (u_char)(subidentifier % 40);
  2523. X    objid[0] = (u_char)((subidentifier - objid[1]) / 40);
  2524. X
  2525. X    *objidlength = (int)(oidp - objid);
  2526. X    return bufp;
  2527. X}
  2528. X
  2529. X/*
  2530. X * asn_build_objid - Builds an ASN object identifier object containing the input string.
  2531. X *  On entry, datalength is input as the number of valid bytes following
  2532. X *   "data".  On exit, it is returned as the number of valid bytes
  2533. X *   following the beginning of the next object.
  2534. X *
  2535. X *  Returns a pointer to the first byte past the end
  2536. X *   of this object (i.e. the start of the next object).
  2537. X *  Returns NULL on any error.
  2538. X */
  2539. Xu_char *
  2540. Xasn_build_objid(data, datalength, type, objid, objidlength)
  2541. X    register u_char *data;        /* IN - pointer to start of object */
  2542. X    int            *datalength;    /* IN/OUT - number of valid bytes left in buffer */
  2543. X    u_char        type;        /* IN - ASN type of object */
  2544. X    oid            *objid;        /* IN - pointer to start of input buffer */
  2545. X    int            objidlength;    /* IN - number of sub-id's in objid */
  2546. X{
  2547. X/*
  2548. X * ASN.1 objid ::= 0x06 asnlength subidentifier {subidentifier}*
  2549. X * subidentifier ::= {leadingbyte}* lastbyte
  2550. X * leadingbyte ::= 1 7bitvalue
  2551. X * lastbyte ::= 0 7bitvalue
  2552. X */
  2553. X    u_char buf[MAX_OID_LEN];
  2554. X    u_char *bp = buf;
  2555. X    oid    objbuf[MAX_OID_LEN];
  2556. X    oid *op = objbuf;
  2557. X    register int    asnlength;
  2558. X    register u_long subid, mask, testmask;
  2559. X    register int bits, testbits;
  2560. X
  2561. X    bcopy((char *)objid, (char *)objbuf, objidlength * sizeof(oid));
  2562. X    /* transform size in bytes to size in subid's */
  2563. X    /* encode the first two components into the first subidentifier */
  2564. X    op[1] = op[1] + (op[0] * 40);
  2565. X    op++;
  2566. X    objidlength--;
  2567. X
  2568. X    while(objidlength-- > 0){
  2569. X    subid = *op++;
  2570. X    mask = 0x7F; /* handle subid == 0 case */
  2571. X    bits = 0;
  2572. X    /* testmask *MUST* !!!! be of an unsigned type */
  2573. X    for(testmask = 0x7F, testbits = 0; testmask != 0; testmask <<= 7, testbits += 7){
  2574. X        if (subid & testmask){    /* if any bits set */
  2575. X        mask = testmask;
  2576. X        bits = testbits;
  2577. X        }
  2578. X    }
  2579. X    /* mask can't be zero here */
  2580. X    for(;mask != 0x7F; mask >>= 7, bits -= 7){
  2581. X        if (mask == 0x1E00000)  /* fix a mask that got truncated above */
  2582. X        mask = 0xFE00000;
  2583. X        *bp++ = (u_char)(((subid & mask) >> bits) | ASN_BIT8);
  2584. X    }
  2585. X    *bp++ = (u_char)(subid & mask);
  2586. X    }
  2587. X    asnlength = bp - buf;
  2588. X    data = asn_build_header(data, datalength, type, asnlength);
  2589. X    if (data == NULL)
  2590. X    return NULL;
  2591. X    if (*datalength < asnlength)
  2592. X    return NULL;
  2593. X    bcopy((char *)buf, (char *)data, asnlength);
  2594. X    *datalength -= asnlength;
  2595. X    return data + asnlength;
  2596. X}
  2597. X
  2598. X/*
  2599. X * asn_parse_null - Interprets an ASN null type.
  2600. X *  On entry, datalength is input as the number of valid bytes following
  2601. X *   "data".  On exit, it is returned as the number of valid bytes
  2602. X *   following the beginning of the next object.
  2603. X *
  2604. X *  Returns a pointer to the first byte past the end
  2605. X *   of this object (i.e. the start of the next object).
  2606. X *  Returns NULL on any error.
  2607. X */
  2608. Xu_char *
  2609. Xasn_parse_null(data, datalength, type)
  2610. X    u_char        *data;        /* IN - pointer to start of object */
  2611. X    int            *datalength;    /* IN/OUT - number of valid bytes left in buffer */
  2612. X    u_char        *type;        /* OUT - ASN type of object */
  2613. X{
  2614. X/*
  2615. X * ASN.1 null ::= 0x05 0x00
  2616. X */
  2617. X    register u_char   *bufp = data;
  2618. X    u_long        asn_length;
  2619. X
  2620. X    *type = *bufp++;
  2621. X    bufp = asn_parse_length(bufp, &asn_length);
  2622. X    if (bufp == NULL)
  2623. X    return NULL;
  2624. X    if (asn_length != 0){
  2625. X    ERROR("Malformed NULL");
  2626. X    return NULL;
  2627. X    }
  2628. X    *datalength -= (bufp - data);
  2629. X    return bufp + asn_length;
  2630. X}
  2631. X
  2632. X
  2633. X/*
  2634. X * asn_build_null - Builds an ASN null object.
  2635. X *  On entry, datalength is input as the number of valid bytes following
  2636. X *   "data".  On exit, it is returned as the number of valid bytes
  2637. X *   following the beginning of the next object.
  2638. X *
  2639. X *  Returns a pointer to the first byte past the end
  2640. X *   of this object (i.e. the start of the next object).
  2641. X *  Returns NULL on any error.
  2642. X */
  2643. Xu_char *
  2644. Xasn_build_null(data, datalength, type)
  2645. X    u_char        *data;        /* IN - pointer to start of object */
  2646. X    int            *datalength;    /* IN/OUT - number of valid bytes left in buffer */
  2647. X    u_char        type;        /* IN - ASN type of object */
  2648. X{
  2649. X/*
  2650. X * ASN.1 null ::= 0x05 0x00
  2651. X */
  2652. X    return asn_build_header(data, datalength, type, 0);
  2653. X}
  2654. X
  2655. END_OF_FILE
  2656.   if test 18768 -ne `wc -c <'nocol-3.0/src/cmu-snmp/snmplib/asn1.c'`; then
  2657.     echo shar: \"'nocol-3.0/src/cmu-snmp/snmplib/asn1.c'\" unpacked with wrong size!
  2658.   fi
  2659.   # end of 'nocol-3.0/src/cmu-snmp/snmplib/asn1.c'
  2660. fi
  2661. echo shar: End of archive 7 \(of 26\).
  2662. cp /dev/null ark7isdone
  2663. MISSING=""
  2664. for I in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 ; do
  2665.     if test ! -f ark${I}isdone ; then
  2666.     MISSING="${MISSING} ${I}"
  2667.     fi
  2668. done
  2669. if test "${MISSING}" = "" ; then
  2670.     echo You have unpacked all 26 archives.
  2671.     rm -f ark[1-9]isdone ark[1-9][0-9]isdone
  2672. else
  2673.     echo You still must unpack the following archives:
  2674.     echo "        " ${MISSING}
  2675. fi
  2676. exit 0
  2677. exit 0 # Just in case...
  2678.