home *** CD-ROM | disk | FTP | other *** search
/ Source Code 1994 March / Source_Code_CD-ROM_Walnut_Creek_March_1994.iso / compsrcs / misc / volume40 / netramet / part14 < prev    next >
Encoding:
Text File  |  1993-11-07  |  63.9 KB  |  1,515 lines

  1. Newsgroups: comp.sources.misc
  2. From: nevil@ccu1.aukuni.ac.nz (J Nevil Brownlee)
  3. Subject: REPOST: v40i102: netramet - Network Traffic Accounting Meter, Part14/25
  4. Message-ID: <1993Nov7.230224.15241@sparky.sterling.com>
  5. X-Md4-Signature: ade6545e822cdffd21c071c17f80aa58
  6. Sender: kent@sparky.sterling.com (Kent Landfield)
  7. Organization: Sterling Software
  8. Date: Sun, 7 Nov 1993 23:02:24 GMT
  9. Approved: kent@sparky.sterling.com
  10.  
  11. Submitted-by: nevil@ccu1.aukuni.ac.nz (J Nevil Brownlee)
  12. Posting-number: Volume 40, Issue 102
  13. Archive-name: netramet/part14
  14. Environment: INET, UNIX, DOS
  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:  netramet/doc/NeTraMet/NeTraMet.man.ps.C
  21. #   netramet/src/apps/snmpwalk.c netramet/src/snmplib/include/mib.h
  22. # Wrapped by kent@sparky on Tue Nov  2 18:17:08 1993
  23. PATH=/bin:/usr/bin:/usr/ucb:/usr/local/bin:/usr/lbin:$PATH ; export PATH
  24. echo If this archive is complete, you will see the following message:
  25. echo '          "shar: End of archive 14 (of 25)."'
  26. if test -f 'netramet/doc/NeTraMet/NeTraMet.man.ps.C' -a "${1}" != "-c" ; then 
  27.   echo shar: Will not clobber existing file \"'netramet/doc/NeTraMet/NeTraMet.man.ps.C'\"
  28. else
  29.   echo shar: Extracting \"'netramet/doc/NeTraMet/NeTraMet.man.ps.C'\" \(44499 characters\)
  30.   sed "s/^X//" >'netramet/doc/NeTraMet/NeTraMet.man.ps.C' <<'END_OF_FILE'
  31. Xn
  32. X0 0 0 fC
  33. X903 1548 448 (Format statement) 448 SB
  34. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  35. X271 1732 1823 (A rule file contains one or more of five possible elements, which may appear in any order) 1823 SB
  36. X271 1786 199 (in the file.) 199 SB
  37. X32 0 0 46 46 0 0 0 43 /Helvetica-Bold /font13 ANSIFont font
  38. X271 1858 117 (5.2.1.) 117 SB
  39. X419 1858 408 (RuleSet Statement) 408 SB
  40. X1 lc
  41. X1 lj
  42. X0 0 0 pC
  43. X277 2046 M 1626 0 1 PP
  44. XS
  45. Xn
  46. X32 0 0 50 50 0 0 0 41 /Courier-Bold /font9 ANSIFont font
  47. X271 1937 510 (RuleSet statement) 510 SB
  48. X255 255 255 fC
  49. X1871 2024 M -38 -19 35 -28 0 41 3 6 4 PP
  50. X1 F
  51. XS
  52. Xn
  53. X0 lc
  54. X0 lj
  55. X255 255 255 pC
  56. X58 84 1659 2005 B
  57. X1 F
  58. XS
  59. Xn
  60. X32 0 0 46 46 0 0 0 38 /Courier-Bold /font9 ANSIFont font
  61. X0 0 0 fC
  62. X1674 2018 28 (;) 28 SB
  63. X255 255 255 fC
  64. X130 96 574 2002 B
  65. X1 F
  66. XS
  67. Xn
  68. X32 0 0 46 46 0 0 0 36 /Courier /font0 ANSIFont font
  69. X0 0 0 fC
  70. X593 2026 84 (SET) 84 SB
  71. X255 255 255 fC
  72. X212 103 855 1999 B
  73. X1 F
  74. XS
  75. Xn
  76. X32 0 0 46 46 0 0 0 39 /Courier-Oblique /font11 ANSIFont font
  77. X0 0 0 fC
  78. X877 2023 168 (setnbr) 168 SB
  79. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  80. X271 2132 1839 (The RuleSet statement tells the meter which rule set it is to use.  If a rule file doesn't have) 1839 SB
  81. X271 2186 1442 (a RuleSet statement, the meter will continue to use its current rule set.) 1442 SB
  82. X32 0 0 46 46 0 0 0 43 /Helvetica-Bold /font13 ANSIFont font
  83. X271 2258 117 (5.2.2.) 117 SB
  84. X419 2258 306 (Rules Section) 306 SB
  85. X1 lc
  86. X1 lj
  87. X0 0 0 pC
  88. X275 2387 M 1626 0 1 PP
  89. XS
  90. Xn
  91. X255 255 255 fC
  92. X1869 2365 M -38 -19 35 -28 0 41 3 6 4 PP
  93. X1 F
  94. XS
  95. Xn
  96. X0 lc
  97. X0 lj
  98. X255 255 255 pC
  99. X446 90 994 2340 B
  100. X1 F
  101. XS
  102. Xn
  103. X32 0 0 46 46 0 0 0 39 /Courier-Oblique /font11 ANSIFont font
  104. X0 0 0 fC
  105. X1019 2360 392 (Rule statement) 392 SB
  106. X255 255 255 fC
  107. X170 77 413 2349 B
  108. X1 F
  109. XS
  110. Xn
  111. X32 0 0 46 46 0 0 0 36 /Courier /font0 ANSIFont font
  112. X0 0 0 fC
  113. X428 2364 140 (RULES) 140 SB
  114. X1 lc
  115. X1 lj
  116. X0 0 0 pC
  117. X816 2390 M 0 -85 831 0 0 85 3 PP
  118. XS
  119. Xn
  120. X862 2443 M 40 31 -37 24 -3 7 3 PP
  121. XS
  122. Xn
  123. X277 2644 M 1626 0 1 PP
  124. XS
  125. Xn
  126. X32 0 0 50 50 0 0 0 41 /Courier-Bold /font9 ANSIFont font
  127. X271 2534 420 (Rule statement) 420 SB
  128. X255 255 255 fC
  129. X1871 2622 M -38 -19 35 -28 0 40 3 7 4 PP
  130. X1 F
  131. XS
  132. Xn
  133. X0 lc
  134. X0 lj
  135. X255 255 255 pC
  136. X759 100 349 2594 B
  137. X1 F
  138. XS
  139. Xn
  140. X32 0 0 46 46 0 0 0 39 /Courier-Oblique /font11 ANSIFont font
  141. X0 0 0 fC
  142. X362 2618 728 (attribute & mask = value :) 728 SB
  143. X255 255 255 fC
  144. X59 84 1727 2603 B
  145. X1 F
  146. XS
  147. Xn
  148. X32 0 0 46 46 0 0 0 38 /Courier-Bold /font9 ANSIFont font
  149. X0 0 0 fC
  150. X1743 2615 28 (;) 28 SB
  151. X255 255 255 fC
  152. X428 97 1199 2594 B
  153. X1 F
  154. XS
  155. Xn
  156. X32 0 0 46 46 0 0 0 39 /Courier-Oblique /font11 ANSIFont font
  157. X0 0 0 fC
  158. X1212 2618 392 (action , index) 392 SB
  159. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  160. X271 2724 1845 (The Rules section specifies the rule table for a rule set, and requests NeMaC to download) 1845 SB
  161. X271 2778 297 (it to the meter.) 297 SB
  162. X271 2857 1795 (It starts with the keyword RULES, followed by a series of Rule statements, one for each) 1795 SB
  163. X271 2911 1829 (rule.  Each rule has five components, which must appear in the correct order.  These are:) 1829 SB
  164. X32 0 0 46 46 0 0 0 43 /Helvetica-Oblique /font19 ANSIFont font
  165. X271 2990 173 (Attribute) 173 SB
  166. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  167. X389 3044 1645 (The name of the attribute to be tested by this rule.  Any of the address attributes) 1645 SB
  168. X389 3098 1075 (may be used, but not the mask or general attributes.) 1075 SB
  169. X32 0 0 46 46 1 0 0 43 /Helvetica /font12 ANSIFont font
  170. X271 3186 416 (                                ) 416 SB
  171. X687 3186 416 (                                ) 416 SB
  172. X1103 3186 78 (      ) 78 SB
  173. X1171 3186 416 (                                ) 416 SB
  174. X1587 3186 416 (                                ) 416 SB
  175. X2003 3186 78 (      ) 78 SB
  176. X32 0 0 46 46 0 0 0 43 /Helvetica-Oblique /font19 ANSIFont font
  177. X271 3265 182 (10/15/93) 182 SB
  178. X1102 3265 43 (-- ) 43 SB
  179. X1145 3265 52 (11) 52 SB
  180. X1197 3265 43 ( --) 43 SB
  181. X1866 3265 205 (NeTraMet) 205 SB
  182. XEJ RS
  183. X%%PageTrailer
  184. XSS
  185. X0 0 18 13 783 1169 300 SM
  186. X32 0 0 46 46 0 0 0 43 /Helvetica-Oblique /font19 ANSIFont font
  187. X0 0 0 fC
  188. X271 256 110 (Mask) 110 SB
  189. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  190. X389 310 1730 (Specifies a mask which is ANDed with the attribute's value from an incoming packet.) 1730 SB
  191. X389 364 1343 (Must be the same length \(number of bytes\) as the attribute value.) 1343 SB
  192. X32 0 0 46 46 0 0 0 43 /Helvetica-Oblique /font19 ANSIFont font
  193. X271 443 119 (Value) 119 SB
  194. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  195. X389 497 1729 (Specifies the value to be compared with the masked value from an incoming packet.) 1729 SB
  196. X389 551 1284 (If the compare fails the next rule is tested, otherwise the rule's ) 1284 SB
  197. X32 0 0 46 46 0 0 0 43 /Helvetica-Oblique /font19 ANSIFont font
  198. X1673 551 129 (Action) 129 SB
  199. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  200. X1802 551 283 ( is performed.) 283 SB
  201. X32 0 0 46 46 0 0 0 43 /Helvetica-Oblique /font19 ANSIFont font
  202. X271 630 129 (Action) 129 SB
  203. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  204. X389 684 1534 (Action to be performed if the rule's value is matched.  Possible actions are:) 1534 SB
  205. X448 751 124 (Count) 124 SB
  206. X714 751 837 (Count this packet.  Attribute values for a ) 837 SB
  207. X32 0 0 46 46 0 0 0 43 /Helvetica-Oblique /font19 ANSIFont font
  208. X1551 751 114 (count) 114 SB
  209. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  210. X1665 751 407 ( flow are taken from) 407 SB
  211. X714 805 1316 (the matched rules, which means that only those attributes which) 1316 SB
  212. X714 859 741 (have been matched will appear in it.) 741 SB
  213. X448 926 97 (Tally) 97 SB
  214. X714 926 1351 (Tally this packet.  The attributes \(or parts thereof\) are specified by) 1351 SB
  215. X714 980 1229 (the mask attributes in the tally action specified by this rule's ) 1229 SB
  216. X32 0 0 46 46 0 0 0 43 /Helvetica-Oblique /font19 ANSIFont font
  217. X1943 980 114 (Index) 114 SB
  218. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  219. X2057 980 13 (.) 13 SB
  220. X714 1034 1352 (The non-mask attributes of a tally action can be specified, and will) 1352 SB
  221. X714 1088 918 (appear in each flow which is part of this tally.) 918 SB
  222. X448 1155 215 (Aggregate) 215 SB
  223. X714 1155 1404 (Aggregate this packet, i.e. count it in the aggregate flow specified by) 1404 SB
  224. X714 1209 207 (this rule's ) 207 SB
  225. X32 0 0 46 46 0 0 0 43 /Helvetica-Oblique /font19 ANSIFont font
  226. X921 1209 124 (index.) 124 SB
  227. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  228. X1045 1209 998 (  All the attribute values of an aggregate flow are) 998 SB
  229. X714 1263 1018 (specified in the aggregate action which created it.) 1018 SB
  230. X448 1330 181 (Succeed) 181 SB
  231. X714 1330 1286 (Force rule matching to finish, returning a 'succeed' result.  This) 1286 SB
  232. X714 1384 1409 (means the incoming packet will not be counted, i.e. it will be ignored.) 1409 SB
  233. X448 1451 74 (Fail) 74 SB
  234. X714 1451 1395 (Stop rule matching and return a 'fail' result.  This allows the meter to) 1395 SB
  235. X714 1505 1280 (interchange the source and destination attributes and retry the) 1280 SB
  236. X714 1559 139 (match.) 139 SB
  237. X448 1626 160 (PushTo) 160 SB
  238. X714 1626 1409 (Save the current rule number on the 'pattern stack' and set the index) 1409 SB
  239. X714 1680 837 (of the next rule to be tested to this rule's ) 837 SB
  240. X32 0 0 46 46 0 0 0 43 /Helvetica-Oblique /font19 ANSIFont font
  241. X1551 1680 124 (index.) 124 SB
  242. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  243. X1675 1680 385 (  The pattern stack) 385 SB
  244. X714 1734 1353 (records the rules which were correctly matched; this information is) 1353 SB
  245. X714 1788 367 (used to construct ) 367 SB
  246. X32 0 0 46 46 0 0 0 43 /Helvetica-Oblique /font19 ANSIFont font
  247. X1081 1788 114 (count) 114 SB
  248. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  249. X1195 1788 131 ( flows.) 131 SB
  250. X448 1855 137 (PopTo) 137 SB
  251. X714 1855 1122 (Set the index of the next rule to be tested to this rule's ) 1122 SB
  252. X32 0 0 46 46 0 0 0 43 /Helvetica-Oblique /font19 ANSIFont font
  253. X1836 1855 124 (index ) 124 SB
  254. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  255. X1960 1855 169 (and pop) 169 SB
  256. X714 1909 978 (the topmost rule number from the pattern stack.) 978 SB
  257. X448 1976 116 (GoTo) 116 SB
  258. X714 1976 1122 (Set the index of the next rule to be tested to this rule's ) 1122 SB
  259. X32 0 0 46 46 0 0 0 43 /Helvetica-Oblique /font19 ANSIFont font
  260. X1836 1976 124 (index.) 124 SB
  261. X271 2055 114 (Index) 114 SB
  262. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  263. X389 2109 476 (This is a parameter for ) 476 SB
  264. X32 0 0 46 46 0 0 0 43 /Helvetica-Oblique /font19 ANSIFont font
  265. X865 2109 155 (Action; ) 155 SB
  266. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  267. X1020 2109 627 (see above for its various uses.) 627 SB
  268. X271 2188 1855 (Rule and action numbers are 1-origin indexes to their corresponding tables.  Since there is) 1855 SB
  269. X271 2242 1781 (no provision for labelling the rule and action statements it is very important to get these) 1781 SB
  270. X271 2296 1807 (numbers correct!  The simplest way to do this is to include the rule or action number in a) 1807 SB
  271. X271 2350 778 (comment attached to each statement.) 778 SB
  272. X32 0 0 46 46 0 0 0 43 /Helvetica-Bold /font13 ANSIFont font
  273. X271 2422 117 (5.2.3.) 117 SB
  274. X419 2422 349 (Actions Section) 349 SB
  275. X1 lc
  276. X1 lj
  277. X0 0 0 pC
  278. X6 4 SP
  279. X275 2551 M 1626 0 1 PP
  280. XS
  281. Xn
  282. X255 255 255 fC
  283. X/fm 256 def
  284. X1869 2529 M -38 -19 35 -28 0 41 3 6 4 PP
  285. X1 F
  286. XS
  287. Xn
  288. X0 lc
  289. X0 lj
  290. X255 255 255 pC
  291. X501 89 982 2504 B
  292. X1 F
  293. XS
  294. Xn
  295. X32 0 0 46 46 0 0 0 39 /Courier-Oblique /font11 ANSIFont font
  296. X0 0 0 fC
  297. X1007 2524 448 (Action statement) 448 SB
  298. X255 255 255 fC
  299. X227 71 406 2513 B
  300. X1 F
  301. XS
  302. Xn
  303. X32 0 0 46 46 0 0 0 36 /Courier /font0 ANSIFont font
  304. X0 0 0 fC
  305. X422 2528 196 (ACTIONS) 196 SB
  306. X1 lc
  307. X1 lj
  308. X0 0 0 pC
  309. X816 2554 M 0 -85 831 0 0 85 3 PP
  310. XS
  311. Xn
  312. X862 2607 M 40 31 -37 24 -3 7 3 PP
  313. XS
  314. Xn
  315. X277 2808 M 1626 0 1 PP
  316. XS
  317. Xn
  318. X32 0 0 50 50 0 0 0 41 /Courier-Bold /font9 ANSIFont font
  319. X271 2699 480 (Action statement) 480 SB
  320. X255 255 255 fC
  321. X1871 2786 M -38 -19 35 -28 0 41 3 6 4 PP
  322. X1 F
  323. XS
  324. Xn
  325. X0 lc
  326. X0 lj
  327. X255 255 255 pC
  328. X592 93 793 2764 B
  329. X1 F
  330. XS
  331. Xn
  332. X32 0 0 46 46 0 0 0 39 /Courier-Oblique /font11 ANSIFont font
  333. X0 0 0 fC
  334. X818 2785 532 (attribute  =  value) 532 SB
  335. X1 lc
  336. X1 lj
  337. X0 0 0 pC
  338. X1146 2868 M 34 28 -31 22 -3 6 3 PP
  339. XS
  340. Xn
  341. X0 lc
  342. X0 lj
  343. X255 255 255 pC
  344. X255 255 255 fC
  345. X58 84 1659 2767 B
  346. X1 F
  347. XS
  348. Xn
  349. X32 0 0 46 46 0 0 0 38 /Courier-Bold /font9 ANSIFont font
  350. X0 0 0 fC
  351. X1674 2779 28 (;) 28 SB
  352. X1 lc
  353. X1 lj
  354. X0 0 0 pC
  355. X674 2811 M 0 -85 832 0 0 85 3 PP
  356. XS
  357. Xn
  358. X721 2864 M 41 32 -37 24 -4 7 3 PP
  359. XS
  360. Xn
  361. X0 lc
  362. X0 lj
  363. X255 255 255 pC
  364. X255 255 255 fC
  365. X59 84 1046 2861 B
  366. X1 F
  367. XS
  368. Xn
  369. X0 0 0 fC
  370. X1062 2873 28 (,) 28 SB
  371. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  372. X271 2975 1747 (The Actions section specifies the action table for a rule set.  It starts with the keyword) 1747 SB
  373. X271 3029 1507 (ACTIONS, followed by a series of Action statements, one for each action.) 1507 SB
  374. X32 0 0 46 46 1 0 0 43 /Helvetica /font12 ANSIFont font
  375. X271 3186 416 (                                ) 416 SB
  376. X687 3186 416 (                                ) 416 SB
  377. X1103 3186 78 (      ) 78 SB
  378. X1171 3186 416 (                                ) 416 SB
  379. X1587 3186 416 (                                ) 416 SB
  380. X2003 3186 78 (      ) 78 SB
  381. X32 0 0 46 46 0 0 0 43 /Helvetica-Oblique /font19 ANSIFont font
  382. X271 3265 182 (10/15/93) 182 SB
  383. X1102 3265 43 (-- ) 43 SB
  384. X1145 3265 52 (12) 52 SB
  385. X1197 3265 43 ( --) 43 SB
  386. X1866 3265 205 (NeTraMet) 205 SB
  387. XEJ RS
  388. X%%PageTrailer
  389. XSS
  390. X0 0 18 13 783 1169 300 SM
  391. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  392. X0 0 0 fC
  393. X271 256 1804 (Each Action statement is a list of attribute values, separated by commas and terminated) 1804 SB
  394. X271 310 1794 (with a semicolon.  Attribute values must be in the correct form for their attributes - these) 1794 SB
  395. X271 364 1056 (are explained in the 'Flow Attributes' section above.) 1056 SB
  396. X271 443 1848 (Detail addresses are a special case.  They have two-byte values, but may also be entered) 1848 SB
  397. X271 497 1460 (as single integers.  Examples of this are given in the following sections.) 1460 SB
  398. X32 0 0 46 46 0 0 0 43 /Helvetica-Bold /font13 ANSIFont font
  399. X271 569 117 (5.2.4.) 117 SB
  400. X419 569 392 (Format Statement) 392 SB
  401. X1 lc
  402. X1 lj
  403. X0 0 0 pC
  404. X6 4 SP
  405. X277 757 M 1626 0 1 PP
  406. XS
  407. Xn
  408. X32 0 0 50 50 0 0 0 41 /Courier-Bold /font9 ANSIFont font
  409. X271 647 480 (Format statement) 480 SB
  410. X255 255 255 fC
  411. X/fm 256 def
  412. X1871 735 M -38 -19 35 -28 0 41 3 6 4 PP
  413. X1 F
  414. XS
  415. Xn
  416. X0 lc
  417. X0 lj
  418. X255 255 255 pC
  419. X312 89 952 710 B
  420. X1 F
  421. XS
  422. Xn
  423. X32 0 0 46 46 0 0 0 39 /Courier-Oblique /font11 ANSIFont font
  424. X0 0 0 fC
  425. X977 730 252 (attribute) 252 SB
  426. X255 255 255 fC
  427. X202 83 377 710 B
  428. X1 F
  429. XS
  430. Xn
  431. X32 0 0 46 46 0 0 0 36 /Courier /font0 ANSIFont font
  432. X0 0 0 fC
  433. X393 733 168 (FORMAT) 168 SB
  434. X1 lc
  435. X1 lj
  436. X0 0 0 pC
  437. X1290 819 M 34 28 -31 22 -3 7 3 PP
  438. XS
  439. Xn
  440. X0 lc
  441. X0 lj
  442. X255 255 255 pC
  443. X255 255 255 fC
  444. X58 84 1659 716 B
  445. X1 F
  446. XS
  447. Xn
  448. X32 0 0 46 46 0 0 0 38 /Courier-Bold /font9 ANSIFont font
  449. X0 0 0 fC
  450. X1674 728 28 (;) 28 SB
  451. X1 lc
  452. X1 lj
  453. X0 0 0 pC
  454. X799 757 M 0 -91 635 0 0 91 3 PP
  455. XS
  456. Xn
  457. X0 lc
  458. X0 lj
  459. X255 255 255 pC
  460. X255 255 255 fC
  461. X295 80 959 810 B
  462. X1 F
  463. XS
  464. Xn
  465. X32 0 0 46 46 0 0 0 39 /Courier-Oblique /font11 ANSIFont font
  466. X0 0 0 fC
  467. X977 821 252 (separator) 252 SB
  468. X1 lc
  469. X1 lj
  470. X0 0 0 pC
  471. X834 819 M 35 28 -31 22 -4 7 3 PP
  472. XS
  473. Xn
  474. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  475. X271 920 1788 (The Format statement specifies the format of rule data lines in a NeMaC Flow Data file.) 1788 SB
  476. X271 999 1751 (It starts with the FORMAT keyword, which is followed by a list of flow attributes, in the) 1751 SB
  477. X271 1053 932 (order they are to appear in the Flow Data file.) 932 SB
  478. X32 0 0 46 46 0 0 0 43 /Helvetica-Bold /font13 ANSIFont font
  479. X271 1125 117 (5.2.5.) 117 SB
  480. X419 1125 442 (Statistics Statement) 442 SB
  481. X277 1313 M 1626 0 1 PP
  482. XS
  483. Xn
  484. X32 0 0 50 50 0 0 0 41 /Courier-Bold /font9 ANSIFont font
  485. X271 1203 600 (Statistics statement) 600 SB
  486. X255 255 255 fC
  487. X1871 1291 M -38 -19 35 -28 0 40 3 7 4 PP
  488. X1 F
  489. XS
  490. Xn
  491. X0 lc
  492. X0 lj
  493. X255 255 255 pC
  494. X58 84 1659 1272 B
  495. X1 F
  496. XS
  497. Xn
  498. X32 0 0 46 46 0 0 0 38 /Courier-Bold /font9 ANSIFont font
  499. X0 0 0 fC
  500. X1674 1284 28 (;) 28 SB
  501. X255 255 255 fC
  502. X321 94 718 1269 B
  503. X1 F
  504. XS
  505. Xn
  506. X32 0 0 46 46 0 0 0 36 /Courier /font0 ANSIFont font
  507. X0 0 0 fC
  508. X737 1293 280 (STATISTICS) 280 SB
  509. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  510. X271 1393 1799 (The Statistics statement tells NeMaC to collect meter performance statistics each time it) 1799 SB
  511. X271 1447 1789 (collects flow data, and to write it to the flow data file.  NeMaC sets NeTraMet's statistics) 1789 SB
  512. X271 1501 877 (variables to zero after reading their values.) 877 SB
  513. X32 0 0 50 50 0 0 0 47 /Helvetica-Bold /font13 ANSIFont font
  514. X271 1588 84 (5.3.) 84 SB
  515. X413 1588 252 ( Rule Files) 252 SB
  516. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  517. X271 1671 1802 (This section gives a few examples of rule files, with comments on what they do and why) 1802 SB
  518. X271 1725 606 (they were written as they are.) 606 SB
  519. X271 1804 1624 (I have found it simplest, when developing a new rule file, to proceed as follows:) 1624 SB
  520. X32 0 0 46 46 0 0 0 46 /Symbol font
  521. Xgs 292 3426 0 0 CB
  522. X271 1880 21 (\267) 21 SB
  523. Xgr
  524. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  525. X421 1883 1698 (Make sure that every rule or action has a comment which includes its rule or action) 1698 SB
  526. X271 1937 1611 (number.  Check carefully that these numbers start at one and are consecutive.) 1611 SB
  527. X32 0 0 46 46 0 0 0 46 /Symbol font
  528. Xgs 292 3426 0 0 CB
  529. X271 2013 21 (\267) 21 SB
  530. Xgr
  531. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  532. X421 2016 1683 (Make sure that rule actions have indexes which really do refer to the intended rule) 1683 SB
  533. X271 2070 191 (or action.) 191 SB
  534. X32 0 0 46 46 0 0 0 46 /Symbol font
  535. Xgs 292 3426 0 0 CB
  536. X271 2146 21 (\267) 21 SB
  537. Xgr
  538. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  539. X421 2149 1611 (Check the rule file by using NeMaC's syntax check \(-s\) option, piping NeMaC's) 1611 SB
  540. X271 2203 1807 (output to a file.  Compare the syntax check output with the rule file using two windows in) 1807 SB
  541. X271 2257 1687 (your favourite file editor.  It's helpful to start by verifying that NeMaC has found the) 1687 SB
  542. X271 2311 778 (intended number of rules and actions!) 778 SB
  543. X32 0 0 46 46 0 0 0 43 /Helvetica-Bold /font13 ANSIFont font
  544. X271 2383 117 (5.3.1.) 117 SB
  545. X419 2383 275 (rules.default) 275 SB
  546. X32 0 0 38 38 0 0 0 30 /Courier /font0 ANSIFont font
  547. X330 2461 483 (#  1705, Mon 1 Sep 93) 483 SB
  548. X330 2501 23 (#) 23 SB
  549. X330 2541 1311 (#  Default rule file for NeTraMet \(built in to the meter\)) 1311 SB
  550. X330 2581 23 (#) 23 SB
  551. X330 2621 1380 (#  Nevil Brownlee,  Computer Centre,  University of Auckland) 1380 SB
  552. X330 2661 23 (#) 23 SB
  553. X330 2701 115 (SET 1) 115 SB
  554. X330 2741 23 (#) 23 SB
  555. X330 2781 115 (RULES) 115 SB
  556. X330 2821 23 (#) 23 SB
  557. X330 2861 1311 (SourcePeerType & 255 = IP :         Aggregate,  1;  #   1) 1311 SB
  558. X330 2901 1311 (SourcePeerType & 255 = Novell :     Aggregate,  2;  #   2) 1311 SB
  559. X330 2941 1311 (SourcePeerType & 255 = DECnet :     Aggregate,  3;  #   3) 1311 SB
  560. X330 2981 1311 (SourcePeerType & 255 = EtherTalk :  Aggregate,  4;  #   4) 1311 SB
  561. X330 3021 1495 (Null & 0 = 0 :                        Succeed,  0;  #   5  Ignore) 1495 SB
  562. X32 0 0 46 46 1 0 0 43 /Helvetica /font12 ANSIFont font
  563. X271 3186 416 (                                ) 416 SB
  564. X687 3186 416 (                                ) 416 SB
  565. X1103 3186 78 (      ) 78 SB
  566. X1171 3186 416 (                                ) 416 SB
  567. X1587 3186 416 (                                ) 416 SB
  568. X2003 3186 78 (      ) 78 SB
  569. X32 0 0 46 46 0 0 0 43 /Helvetica-Oblique /font19 ANSIFont font
  570. X271 3265 182 (10/15/93) 182 SB
  571. X1102 3265 43 (-- ) 43 SB
  572. X1145 3265 52 (13) 52 SB
  573. X1197 3265 43 ( --) 43 SB
  574. X1866 3265 205 (NeTraMet) 205 SB
  575. XEJ RS
  576. X%%PageTrailer
  577. XSS
  578. X0 0 18 13 783 1169 300 SM
  579. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  580. X0 0 0 fC
  581. X271 256 1838 (This is the default rule set, which is built in to the meter and can't be changed.  It provides) 1838 SB
  582. X271 310 1736 (rule set 1 which produces four aggregate flows, one for each of the peer types which) 1736 SB
  583. X271 364 487 (NeTraMet understands.) 487 SB
  584. X271 443 548 (Rule five, above, tests the ) 548 SB
  585. X32 0 0 46 46 0 0 0 43 /Helvetica-Oblique /font19 ANSIFont font
  586. X819 443 79 (Null) 79 SB
  587. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  588. X898 443 1167 ( attribute.  This is a special case which always succeeds.) 1167 SB
  589. X271 497 366 (The rule action is ) 366 SB
  590. X32 0 0 46 46 0 0 0 43 /Helvetica-Oblique /font19 ANSIFont font
  591. X637 497 207 (Succeed, ) 207 SB
  592. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  593. X844 497 1251 (which means that any other packets \(e.g. dummy packets for) 1251 SB
  594. X271 551 975 (measuring processor utilisation\) will be ignored.) 975 SB
  595. X32 0 0 38 38 0 0 0 30 /Courier /font0 ANSIFont font
  596. X330 630 161 (ACTIONS) 161 SB
  597. X330 670 23 (#) 23 SB
  598. X330 710 1311 (SourcePeerType=IP, SourcePeerMask=255,              #   1) 1311 SB
  599. X330 750 1357 (   SourcePeerAddress=11.12.0.0, SourcePeerMask=255.255.0.0,) 1357 SB
  600. X330 790 1265 (   DestPeerAddress=13.14.0.0, DestPeerMask=255.255.0.0;) 1265 SB
  601. X330 830 1311 (SourcePeerType=Novell, SourcePeerMask=255,          #   2) 1311 SB
  602. X330 870 1357 (   SourcePeerAddress=21.22.0.0, SourcePeerMask=255.255.0.0,) 1357 SB
  603. X330 910 1265 (   DestPeerAddress=23.24.0.0, DestPeerMask=255.255.0.0;) 1265 SB
  604. X330 950 1311 (SourcePeerType=DECnet, SourcePeerMask=255,          #   3) 1311 SB
  605. X330 990 1357 (   SourcePeerAddress=31.32.0.0, SourcePeerMask=255.255.0.0,) 1357 SB
  606. X330 1030 1265 (   DestPeerAddress=33.34.0.0, DestPeerMask=255.255.0.0;) 1265 SB
  607. X330 1070 1311 (SourcePeerType=EtherTalk, SOurcePeerMask=255,       #   4) 1311 SB
  608. X330 1110 1357 (   SourcePeerAddress=41.42.0.0, SourcePeerMask=255.255.0.0,) 1357 SB
  609. X330 1150 1265 (   DestPeerAddress=43.44.0.0, DestPeerMask=255.255.0.0;) 1265 SB
  610. X330 1190 23 (#) 23 SB
  611. X330 1230 299 (# end of file) 299 SB
  612. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  613. X271 1295 1851 (The default action table provides aggregate actions as required by the default rules.  Each) 1851 SB
  614. X271 1349 1717 (of these specifies a set of values for flow attributes.  These have been chosen to be) 1717 SB
  615. X271 1403 1738 (values which would not occur in normal traffic flows - they simply serve to identify the) 1738 SB
  616. X271 1457 246 (aggregates.) 246 SB
  617. X32 0 0 46 46 0 0 0 43 /Helvetica-Bold /font13 ANSIFont font
  618. X271 1529 117 (5.3.2.) 117 SB
  619. X419 1529 284 (rules.sample) 284 SB
  620. X32 0 0 38 38 0 0 0 30 /Courier /font0 ANSIFont font
  621. X330 1607 506 (#  1705, Mon 13 Sep 93) 506 SB
  622. X330 1647 23 (#) 23 SB
  623. X330 1687 1242 (#  Rule specification file to tally IP net <-> IP net,) 1242 SB
  624. X330 1727 1219 (#     tally DECnet and Novell and aggregate EtherTalk) 1219 SB
  625. X330 1767 23 (#) 23 SB
  626. X330 1807 1380 (#  Nevil Brownlee,  Computer Centre,  University of Auckland) 1380 SB
  627. X330 1847 23 (#) 23 SB
  628. X330 1887 828 (SET 2  #  Rule + action set number 2) 828 SB
  629. X330 1927 23 (#) 23 SB
  630. X330 1967 115 (RULES) 115 SB
  631. X330 2007 23 (#) 23 SB
  632. X330 2047 1311 (SourcePeerType & 255 = DECnet :         Tally,  9;  #   1) 1311 SB
  633. X330 2087 1311 (SourcePeerType & 255 = IP.0.0.0 :      Pushto,  8;  #   2) 1311 SB
  634. X330 2127 1311 (SourcePeerType & 255 = EtherTalk :  Aggregate,  7;  #   3) 1311 SB
  635. X330 2167 1311 (SourcePeerType & 255 = Novell :         Tally,  8;  #   4) 1311 SB
  636. X330 2207 1495 (Null & 0 = 0 :                        Succeed,  0;  #   5  Ignore) 1495 SB
  637. X330 2247 23 (#) 23 SB
  638. X330 2287 1311 (Null & 0 = 0 :                        Succeed,  0;  #   6) 1311 SB
  639. X330 2327 1311 (Null & 0 = 0 :                        Succeed,  0;  #   7) 1311 SB
  640. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  641. X271 2392 1739 (The first part of this rule table determines the peer protocol type.  DECnet and Novell) 1739 SB
  642. X271 2446 1843 (packets are tallied by actions 9 and 8, and EtherTalk packets are aggregated using action) 1843 SB
  643. X271 2500 1832 (7.  IP packets cause the meter to save rule 2's index on the pattern stack then test rule 8.) 1832 SB
  644. X271 2554 1839 (Rules 6 and 7 are never executed; they merely provide a gap in the rule table for possible) 1839 SB
  645. X271 2608 191 (later use.) 191 SB
  646. X32 0 0 38 38 0 0 0 30 /Courier /font0 ANSIFont font
  647. X330 2687 1610 (SourcePeerAddress & 192.0.0.0 = 128.0.0.0 :  Pushto, 13;  #   8  Low B) 1610 SB
  648. X330 2727 1610 (SourcePeerAddress & 192.0.0.0 = 192.0.0.0 :  Pushto, 16;  #   9  Low C) 1610 SB
  649. X330 2767 1610 (SourcePeerAddress & 192.0.0.0 = 64.0.0.0 :   Pushto, 18;  #  10  Low A) 1610 SB
  650. X330 2807 1610 (SourcePeerAddress & 192.0.0.0 = 0.0.0.0 :    Pushto, 18;  #  11  Low A) 1610 SB
  651. X330 2847 1449 (Null & 0 = 0 :                                 Fail,  0;  #  12) 1449 SB
  652. X330 2887 23 (#) 23 SB
  653. X330 2927 1748 (DestPeerAddress & 192.0.0.0 = 128.0.0.0 :     Tally,  1;  #  13  High B: B-B) 1748 SB
  654. X330 2967 1748 (DestPeerAddress & 192.0.0.0 = 192.0.0.0 :     Tally,  2;  #  14  High C: B-C) 1748 SB
  655. X330 3007 1449 (Null & 0 = 0 :                                 Fail,  0;  #  15) 1449 SB
  656. X330 3047 23 (#) 23 SB
  657. X32 0 0 46 46 1 0 0 43 /Helvetica /font12 ANSIFont font
  658. X271 3186 416 (                                ) 416 SB
  659. X687 3186 416 (                                ) 416 SB
  660. X1103 3186 78 (      ) 78 SB
  661. X1171 3186 416 (                                ) 416 SB
  662. X1587 3186 416 (                                ) 416 SB
  663. X2003 3186 78 (      ) 78 SB
  664. X32 0 0 46 46 0 0 0 43 /Helvetica-Oblique /font19 ANSIFont font
  665. X271 3265 182 (10/15/93) 182 SB
  666. X1102 3265 43 (-- ) 43 SB
  667. X1145 3265 52 (14) 52 SB
  668. X1197 3265 43 ( --) 43 SB
  669. X1866 3265 205 (NeTraMet) 205 SB
  670. XEJ RS
  671. X%%PageTrailer
  672. XSS
  673. X0 0 18 13 783 1169 300 SM
  674. X32 0 0 38 38 0 0 0 30 /Courier /font0 ANSIFont font
  675. X0 0 0 fC
  676. X330 256 1748 (DestPeerAddress & 192.0.0.0 = 192.0.0.0 :     Tally,  3;  #  16  High C: C-C) 1748 SB
  677. X330 296 1449 (Null & 0 = 0 :                                 Fail,  0;  #  17) 1449 SB
  678. X330 336 23 (#) 23 SB
  679. X330 376 1748 (DestPeerAddress & 192.0.0.0 = 128.0.0.0 :    Tally,   4;  #  18  High B: A-B) 1748 SB
  680. X330 416 1748 (DestPeerAddress & 192.0.0.0 = 192.0.0.0 :    Tally,   5;  #  19  High C: A-C) 1748 SB
  681. X330 456 1748 (DestPeerAddress & 192.0.0.0 = 64.0.0.0 :     Tally,   6;  #  20  High A: A-A) 1748 SB
  682. X330 496 1748 (DestPeerAddress & 192.0.0.0 = 0.0.0.0 :      Tally,   6;  #  21  High A: A-A) 1748 SB
  683. X330 536 1449 (Null & 0 = 0 :                                 Fail,  0;  #  22) 1449 SB
  684. X330 576 23 (#) 23 SB
  685. X330 616 1449 (Null & 0 = 0 :                                 Fail,  0;  #  23) 1449 SB
  686. X330 656 1449 (Null & 0 = 0 :                                 Fail,  0;  #  24) 1449 SB
  687. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  688. X271 721 1760 (This part of the rule table handles IP packets.  The first two bits of the packet's source) 1760 SB
  689. X271 775 1747 (peer address are examined to decide whether it is class A, B or C.  For each of these) 1747 SB
  690. X271 829 1802 (cases the first two bits of the destination peer address is tested to determine its address) 1802 SB
  691. X271 883 1709 (class.  The packet is then tallied in one of six tallies for each of the possible pairs of) 1709 SB
  692. X271 937 296 (address class.) 296 SB
  693. X271 1016 1848 (Note that the above rules make no attempt to impose any order on source and destination) 1848 SB
  694. X271 1070 1796 (addresses.  When a packet appears which is the first of a new traffic flow, its source will) 1796 SB
  695. X271 1124 535 (be the source for the flow.) 535 SB
  696. X32 0 0 38 38 0 0 0 30 /Courier /font0 ANSIFont font
  697. X330 1203 161 (ACTIONS) 161 SB
  698. X330 1243 23 (#) 23 SB
  699. X330 1283 1058 (SourcePeerType=IP, SourcePeerMask=255.255.0.0,) 1058 SB
  700. X330 1323 1472 (                   DestPeerMask=255.255.0.0;            # 1  B-B) 1472 SB
  701. X330 1363 1058 (SourcePeerType=IP, SourcePeerMask=255.255.0.0,) 1058 SB
  702. X330 1403 1472 (                   DestPeerMask=255.255.255.0;          # 2  B-C) 1472 SB
  703. X330 1443 1104 (SourcePeerType=IP, SourcePeerMask=255.255.255.0,) 1104 SB
  704. X330 1483 1472 (                   DestPeerMask=255.255.255.0;          # 3  C-C) 1472 SB
  705. X330 1523 1012 (SourcePeerType=IP, SourcePeerMask=255.0.0.0,) 1012 SB
  706. X330 1563 1472 (                   DestPeerMask=255.255.0.0;            # 4  A-B) 1472 SB
  707. X330 1603 1012 (SourcePeerType=IP, SourcePeerMask=255.0.0.0,) 1012 SB
  708. X330 1643 1472 (                   DestPeerMask=255.255.255.0;          # 5  A-C) 1472 SB
  709. X330 1683 1012 (SourcePeerType=IP, SourcePeerMask=255.0.0.0,) 1012 SB
  710. X330 1723 1472 (                   DestPeerMask=255.0.0.0;              # 6  A-A) 1472 SB
  711. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  712. X271 1788 1805 (The first six actions are tallies for each of the possible combinations of IP address class.) 1805 SB
  713. X271 1842 1807 (Each has the appropriate peer address masks set, telling the meter which parts of those) 1807 SB
  714. X271 1896 561 (attributes are to be tallied.  ) 561 SB
  715. X32 0 0 46 46 0 0 0 43 /Helvetica-Oblique /font19 ANSIFont font
  716. X832 1896 361 (SourcePeerType ) 361 SB
  717. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  718. X1193 1896 788 (is set to IP; without this it would not be) 788 SB
  719. X271 1950 1609 (possible to determine the peer address type when the flow data was collected.) 1609 SB
  720. X32 0 0 38 38 0 0 0 30 /Courier /font0 ANSIFont font
  721. X330 2029 575 (SourcePeerType=EtherTalk,) 575 SB
  722. X330 2069 1265 (   SourcePeerAddress=1.0.0.0, SourcePeerMask=255.0.0.0,) 1265 SB
  723. X330 2109 1610 (   DestPeerAddress=1.0.0.0, DestPeerMask=255.0.0.0;     # 7  Aggregate) 1610 SB
  724. X330 2149 23 (#) 23 SB
  725. X330 2189 1242 (SourcePeerType=Novell, SourcePeerMask=255.255.255.255,) 1242 SB
  726. X330 2229 1610 (                       DestPeerMask=255.255.255.255;    # 8  Tally all) 1610 SB
  727. X330 2269 1196 (SourcePeerType=DECnet, SourcePeerMask=255.255.255.0,) 1196 SB
  728. X330 2309 1610 (                       DestPeerMask=255.255.255.0;      # 9  Tally all) 1610 SB
  729. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  730. X271 2374 1801 (The remaining actions aggreagate EtherTalk and tally Novell and DECnet packets.  The) 1801 SB
  731. X271 2428 1803 (tallies use the entire peer address in each case.  This instructs the meter to create flows) 1803 SB
  732. X271 2482 1799 (for every possible pair of peer addresses.  The network segment which this rule set was) 1799 SB
  733. X271 2536 1219 (written for has very little EtherTalk, Novell or DECnet traffic.) 1219 SB
  734. X32 0 0 38 38 0 0 0 30 /Courier /font0 ANSIFont font
  735. X330 2615 989 (FORMAT FlowRuleSet FlowIndex FirstTime "  ") 989 SB
  736. X330 2655 1288 (   SourcePeerType SourcePeerAddress DestPeerAddress "  ") 1288 SB
  737. X330 2695 1012 (   ToPDUs FromPDUs "  " ToOctets FromOctets;) 1012 SB
  738. X330 2735 23 (#) 23 SB
  739. X330 2775 299 (# end of file) 299 SB
  740. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  741. X271 2840 1734 (The Format statement specifies the attributes to be collected from the meter.  It uses) 1734 SB
  742. X271 2894 1177 (double spaces to separate the attributes into four groups.) 1177 SB
  743. X32 0 0 46 46 1 0 0 43 /Helvetica /font12 ANSIFont font
  744. X271 3186 416 (                                ) 416 SB
  745. X687 3186 416 (                                ) 416 SB
  746. X1103 3186 78 (      ) 78 SB
  747. X1171 3186 416 (                                ) 416 SB
  748. X1587 3186 416 (                                ) 416 SB
  749. X2003 3186 78 (      ) 78 SB
  750. X32 0 0 46 46 0 0 0 43 /Helvetica-Oblique /font19 ANSIFont font
  751. X271 3265 182 (10/15/93) 182 SB
  752. X1102 3265 43 (-- ) 43 SB
  753. X1145 3265 52 (15) 52 SB
  754. X1197 3265 43 ( --) 43 SB
  755. X1866 3265 205 (NeTraMet) 205 SB
  756. XEJ RS
  757. X%%PageTrailer
  758. XSS
  759. X0 0 18 13 783 1169 300 SM
  760. X32 0 0 46 46 0 0 0 43 /Helvetica-Bold /font13 ANSIFont font
  761. X0 0 0 fC
  762. X271 257 117 (5.3.3.) 117 SB
  763. X419 257 307 (rules.gateway) 307 SB
  764. X32 0 0 38 38 0 0 0 30 /Courier /font0 ANSIFont font
  765. X330 335 506 (#  1605, Fri 24 Sep 93) 506 SB
  766. X330 375 23 (#) 23 SB
  767. X330 415 1288 (#  Rule specification file to tally traffic to/from ccr1) 1288 SB
  768. X330 455 23 (#) 23 SB
  769. X330 495 1380 (#  Nevil Brownlee,  Computer Centre,  University of Auckland) 1380 SB
  770. X330 535 23 (#) 23 SB
  771. X330 575 828 (SET 6  #  Rule + action set number 6) 828 SB
  772. X330 615 23 (#) 23 SB
  773. X330 655 115 (RULES) 115 SB
  774. X330 695 23 (#) 23 SB
  775. X330 735 1610 (DestAdjacentAddress & ff-ff-ff-ff-ff-ff = aa-00-04-00-f4-ed :  #  ccr1) 1610 SB
  776. X330 775 506 (    Pushto,  3;  #   1) 506 SB
  777. X330 815 1150 (Null & 0 = 0 :         Fail,  0;  #   2  Try again) 1150 SB
  778. X330 855 23 (#) 23 SB
  779. X330 895 1518 (SourcePeerType,       255,           IP,        Pushto,  5;  #   3) 1518 SB
  780. X330 935 1702 (Null,                   0,            0,       Succeed,  0;  #   4  Ignore) 1702 SB
  781. X330 975 23 (#) 23 SB
  782. X330 1015 1748 (SourcePeerAddress,  255.255.0.0,  130.216.0.0,  Pushto,  8;  #   5  Auckland) 1748 SB
  783. X330 1055 1679 (SourcePeerAddress,  192.0.0.0,    192.0.0.0,    Pushto,  8;  #   6  Low C) 1679 SB
  784. X330 1095 1679 (Null,                 0,            0,          Pushto, 11;  #   7  Low B) 1679 SB
  785. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  786. X271 1160 1776 (This rule set was intended for metering traffic through a gateway ethernet, which has a) 1776 SB
  787. X271 1214 289 (router named ) 289 SB
  788. X32 0 0 46 46 0 0 0 43 /Helvetica-Oblique /font19 ANSIFont font
  789. X560 1214 87 (ccr1) 87 SB
  790. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  791. X647 1214 1358 ( providing our connection to the Internet.  Rule 1 above tests each) 1358 SB
  792. X271 1268 182 (packet's ) 182 SB
  793. X32 0 0 46 46 0 0 0 43 /Helvetica-Oblique /font19 ANSIFont font
  794. X453 1268 446 (DestAdjacentAddress) 446 SB
  795. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  796. X899 1268 1034 ( to see whether its destination is on the far side of ) 1034 SB
  797. X32 0 0 46 46 0 0 0 43 /Helvetica-Oblique /font19 ANSIFont font
  798. X1933 1268 100 (ccr1.) 100 SB
  799. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  800. X2033 1268 88 (  If it) 88 SB
  801. X271 1322 1858 (is, rule 5 will be tested next, otherwise rule two is tested,  Rule two fails, allowing the meter) 1858 SB
  802. X271 1376 1828 (to interchange source and destinations and try again.  If the match fails on the second try) 1828 SB
  803. X271 1430 442 (the packet is ignored.) 442 SB
  804. X271 1509 1240 (The rest of this rule file is very similar to rules.sample above.) 1240 SB
  805. X32 0 0 46 46 0 0 0 43 /Helvetica-Bold /font13 ANSIFont font
  806. X271 1581 117 (5.3.4.) 117 SB
  807. X419 1581 233 (rules.UofA) 233 SB
  808. X32 0 0 38 38 0 0 0 30 /Courier /font0 ANSIFont font
  809. X330 1659 483 (#  1440, Fri 1 Oct 93) 483 SB
  810. X330 1699 23 (#) 23 SB
  811. X330 1739 1449 (#  Rule specification file to tally traffic for Auckland, using) 1449 SB
  812. X330 1779 966 (#     three groups of sites: UA, Local, NZ) 966 SB
  813. X330 1819 23 (#) 23 SB
  814. X330 1859 1380 (#  Nevil Brownlee,  Computer Centre,  University of Auckland) 1380 SB
  815. X330 1899 23 (#) 23 SB
  816. X330 1939 782 (SET 8  #  Rule + action set number) 782 SB
  817. X330 1979 23 (#) 23 SB
  818. X330 2019 115 (RULES) 115 SB
  819. X330 2059 23 (#) 23 SB
  820. X330 2099 1104 (SourcePeerType & 255 = IP :   Pushto,  7;  #   1) 1104 SB
  821. X330 2139 1288 (Null & 0 = 0 :               Succeed,  0;  #   2  Ignore) 1288 SB
  822. X330 2179 23 (#) 23 SB
  823. X330 2219 1288 (Null & 0 = 0 :               Succeed,  0;  #   3  Ignore) 1288 SB
  824. X330 2259 1288 (Null & 0 = 0 :               Succeed,  0;  #   4  Ignore) 1288 SB
  825. X330 2299 1288 (Null & 0 = 0 :               Succeed,  0;  #   5  Ignore) 1288 SB
  826. X330 2339 1288 (Null & 0 = 0 :               Succeed,  0;  #   6  Ignore) 1288 SB
  827. X330 2379 23 (#) 23 SB
  828. X330 2419 1725 (SourcePeerAddress & 255.255.0.0 = 130.216.0.0 :     Pushto, 33  #   7  UofA) 1725 SB
  829. X330 2459 23 (#) 23 SB
  830. X330 2499 1702 (SourcePeerAddress & 255.255.255.0 = 192.156.165.0 : Pushto, 31  #  8 decus) 1702 SB
  831. X330 2539 1817 (SourcePeerAddress & 255.255.255.0 = 192.251.230.0 : Pushto, 31  #  9 clearfield) 1817 SB
  832. X330 2579 1656 (SourcePeerAddress & 255.255.255.0 = 202.12.104.0 :  Pushto, 31  # 10 dse) 1656 SB
  833. X330 2659 1725 (SourcePeerAddress & 255.255.255.0 = 202.14.254.0 :  Pushto, 31  # 18 cray 3) 1725 SB
  834. X330 2699 23 (#) 23 SB
  835. X330 2739 1679 (SourcePeerAddress & 255.255.0.0 = 156.62.0.0 :      Pushto, 31  #  19 ati) 1679 SB
  836. X330 2779 23 (#) 23 SB
  837. X330 2819 598 (# Source isn't UA or local) 598 SB
  838. X330 2859 23 (#) 23 SB
  839. X330 2899 1495 (Null & 0 = 0 :                  Fail,  0;  #  20  Try match again) 1495 SB
  840. X330 2939 23 (#) 23 SB
  841. X330 2979 1104 (Null & 0 = 0 :               Succeed,  0;  #  21) 1104 SB
  842. X330 3019 1104 (Null & 0 = 0 :               Succeed,  0;  #  22) 1104 SB
  843. X330 3099 1104 (Null & 0 = 0 :               Succeed,  0;  #  30) 1104 SB
  844. X32 0 0 46 46 1 0 0 43 /Helvetica /font12 ANSIFont font
  845. X271 3186 416 (                                ) 416 SB
  846. X687 3186 416 (                                ) 416 SB
  847. X1103 3186 78 (      ) 78 SB
  848. X1171 3186 416 (                                ) 416 SB
  849. X1587 3186 416 (                                ) 416 SB
  850. X2003 3186 78 (      ) 78 SB
  851. X32 0 0 46 46 0 0 0 43 /Helvetica-Oblique /font19 ANSIFont font
  852. X271 3265 182 (10/15/93) 182 SB
  853. X1102 3265 43 (-- ) 43 SB
  854. X1145 3265 52 (16) 52 SB
  855. X1197 3265 43 ( --) 43 SB
  856. X1866 3265 205 (NeTraMet) 205 SB
  857. XEJ RS
  858. X%%PageTrailer
  859. XSS
  860. X0 0 18 13 783 1169 300 SM
  861. X32 0 0 38 38 0 0 0 30 /Courier /font0 ANSIFont font
  862. X0 0 0 fC
  863. X330 256 23 (#) 23 SB
  864. X330 296 391 (# Source is local) 391 SB
  865. X330 336 23 (#) 23 SB
  866. X330 376 1748 (DestPeerAddress & 255.255.0.0 = 130.216.0.0 :  Fail,  0;  #  31  Retry match) 1748 SB
  867. X330 416 1472 (Null & 0 = 0 :                 Pushto,  34;  #  32  Tally packet) 1472 SB
  868. X330 456 23 (#) 23 SB
  869. X330 496 322 (# Source is UA) 322 SB
  870. X330 536 23 (#) 23 SB
  871. X330 576 1610 (DestPeerAddress & 255.255.0.0 = 130.216.0.0 :  Count, 0;  #  33  UA-UA) 1610 SB
  872. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  873. X271 641 1865 (This rule set meters traffic through our gateway ethernet.  IP packets are classified into two) 1865 SB
  874. X271 695 1887 (groups:  'source is Auckland' and 'source is local to Auckland,' i.e. one of the list of networks) 1887 SB
  875. X271 749 1790 (in rules 8 to 19.  The rules above make sure that if either of a flow's hosts is Auckland it) 1790 SB
  876. X271 803 1897 (appears as the flow's source, so that flows between Auckland and one of our  local networks) 1897 SB
  877. X271 857 338 (are well defined.) 338 SB
  878. X32 0 0 38 38 0 0 0 30 /Courier /font0 ANSIFont font
  879. X330 936 920 (# Direction determined; tally the packet) 920 SB
  880. X330 976 23 (#) 23 SB
  881. X330 1016 1610 (DestPeerAddress & 140.200.0.0 = 255.255.0.0 : Pushto, 48;  #  34  Tuia) 1610 SB
  882. X330 1056 23 (#) 23 SB
  883. X330 1096 1633 (DestPeerAddress & 192.0.0.0 = 192.0.0.0 :   Pushto, 49;  #  35  Tally C) 1633 SB
  884. X330 1136 1633 (DestPeerAddress & 192.0.0.0 = 128.0.0.0 :   Pushto, 43;  #  36  Tally B) 1633 SB
  885. X330 1176 23 (#) 23 SB
  886. X330 1216 1610 (SourceDetailType & 255 = icmp :            Tally,   4;  #  37  Tally A) 1610 SB
  887. X330 1256 1403 (SourceDetailAddress & 255.255 = domain :   Tally,   7;  #  38) 1403 SB
  888. X330 1296 1403 (DestDetailAddress & 255.255 = domain :     Tally,   7;  #  39) 1403 SB
  889. X330 1336 1403 (DestDetailAddress & 255.255 = ftpdata :    Tally,  10;  #  40) 1403 SB
  890. X330 1376 1403 (SourceDetailAddress & 255.255 = ftpdata :  Tally,  13;  #  41) 1403 SB
  891. X330 1416 1403 (Null & 0 = 0 :                             Tally,   1;  #  42) 1403 SB
  892. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  893. X271 1481 1899 (Once classified, packets are tallied in various ways, depending on their IP protocol type.  For) 1899 SB
  894. X271 1535 1427 (example, Domain Name Service traffic flows have a detail address of ) 1427 SB
  895. X32 0 0 46 46 0 0 0 43 /Helvetica-Oblique /font19 ANSIFont font
  896. X1698 1535 152 (domain) 152 SB
  897. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  898. X1850 1535 232 ( for source,) 232 SB
  899. X271 1589 1016 (destination or both. - these are tallied by action 7.) 1016 SB
  900. X32 0 0 38 38 0 0 0 30 /Courier /font0 ANSIFont font
  901. X330 1668 161 (ACTIONS) 161 SB
  902. X330 1708 23 (#) 23 SB
  903. X330 1748 1679 (SourcePeerMask=255.255.255.0, DestPeerMask=255.0.0.0,  #  1 Tally ports A) 1679 SB
  904. X330 1788 644 (   SourceDetailTypeMask=255,) 644 SB
  905. X330 1828 1196 (   SourceDetailMask=255.255, DestDetailMask=255.255;) 1196 SB
  906. X330 1868 1725 (SourcePeerMask=255.255.255.0, DestPeerMask=255.255.0.0,  #  2 Tally ports B) 1725 SB
  907. X330 1908 644 (   SourceDetailTypeMask=255,) 644 SB
  908. X330 1948 1196 (   SourceDetailMask=255.255, DestDetailMask=255.255;) 1196 SB
  909. X330 1988 1771 (SourcePeerMask=255.255.255.0, DestPeerMask=255.255.255.0,  #  3 Tally ports C) 1771 SB
  910. X330 2028 644 (   SourceDetailTypeMask=255,) 644 SB
  911. X330 2068 1196 (   SourceDetailMask=255.255, DestDetailMask=255.255;) 1196 SB
  912. X330 2108 23 (#) 23 SB
  913. X330 2148 1656 (SourcePeerMask=255.255.255.0, DestPeerMask=255.0.0.0,  #  4 Tally icmp A) 1656 SB
  914. X330 2188 1058 (   SourceDetailType=icmp, DestDetailType=icmp;) 1058 SB
  915. X330 2228 1702 (SourcePeerMask=255.255.255.0, DestPeerMask=255.255.0.0,  #  5 Tally icmp B) 1702 SB
  916. X330 2268 1058 (   SourceDetailType=icmp, DestDetailType=icmp;) 1058 SB
  917. X330 2308 1748 (SourcePeerMask=255.255.255.0, DestPeerMask=255.255.255.0,  #  6 Tally icmp C) 1748 SB
  918. X330 2348 1058 (   SourceDetailType=icmp, DestDetailType=icmp;) 1058 SB
  919. X330 2388 23 (#) 23 SB
  920. X330 2428 1702 (SourcePeerMask=255.255.255.0, DestPeerMask=255.0.0.0,  #  7 Tally domain A) 1702 SB
  921. X330 2468 644 (   SourceDetailTypeMask=255,) 644 SB
  922. X330 2508 1288 (   SourceDetailAddress=domain, DestDetailAddress=domain;) 1288 SB
  923. X330 2548 1748 (SourcePeerMask=255.255.255.0, DestPeerMask=255.255.0.0,  #  8 Tally domain B) 1748 SB
  924. X330 2588 644 (   SourceDetailTypeMask=255,) 644 SB
  925. X330 2628 1288 (   SourceDetailAddress=domain, DestDetailAddress=domain;) 1288 SB
  926. X330 2668 1794 (SourcePeerMask=255.255.255.0, DestPeerMask=255.255.255.0,  #  9 Tally domain C) 1794 SB
  927. X330 2708 644 (   SourceDetailTypeMask=255,) 644 SB
  928. X330 2748 1288 (   SourceDetailAddress=domain, DestDetailAddress=domain;) 1288 SB
  929. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  930. X271 2813 1823 (The actions are arranged in groups of three, for class A, B and C destination networks. A) 1823 SB
  931. X271 2867 1857 (class C mask is used for all the source networks, which breaks the class B ones \(Auckland) 1857 SB
  932. X271 2921 699 (and ait\) into their class C subnets.) 699 SB
  933. X32 0 0 46 46 1 0 0 43 /Helvetica /font12 ANSIFont font
  934. X271 3186 416 (                                ) 416 SB
  935. X687 3186 416 (                                ) 416 SB
  936. X1103 3186 78 (      ) 78 SB
  937. X1171 3186 416 (                                ) 416 SB
  938. X1587 3186 416 (                                ) 416 SB
  939. X2003 3186 78 (      ) 78 SB
  940. X32 0 0 46 46 0 0 0 43 /Helvetica-Oblique /font19 ANSIFont font
  941. X271 3265 182 (10/15/93) 182 SB
  942. X1102 3265 43 (-- ) 43 SB
  943. X1145 3265 52 (17) 52 SB
  944. X1197 3265 43 ( --) 43 SB
  945. X1866 3265 205 (NeTraMet) 205 SB
  946. XEJ RS
  947. X%%PageTrailer
  948. XSS
  949. X0 0 18 13 783 1169 300 SM
  950. X32 0 0 38 38 0 0 0 30 /Courier /font0 ANSIFont font
  951. X0 0 0 fC
  952. X330 256 989 (FORMAT FlowRuleSet FlowIndex FirstTime "  ") 989 SB
  953. X330 296 943 (   SourcePeerAddress DestPeerAddress "  ") 943 SB
  954. X330 336 1426 (   SourceDetailType SourceDetailAddress DestDetailAddress "  ") 1426 SB
  955. X330 376 1012 (   ToPDUs FromPDUs "  " ToOctets FromOctets;) 1012 SB
  956. X330 416 23 (#) 23 SB
  957. X330 456 897 (STATISTICS  #  Collect meter statistics) 897 SB
  958. X330 496 23 (#) 23 SB
  959. X330 536 299 (# end of file) 299 SB
  960. X32 0 0 46 46 0 0 0 43 /Helvetica /font12 ANSIFont font
  961. X271 601 1774 (The Format statement specifies the attributes to be collected.  These include the detail) 1774 SB
  962. X271 655 1743 (addresses, allowing for analysis of the traffic by IP service.  The meter's performance) 1743 SB
  963. X271 709 625 (statistics will also be collected.) 625 SB
  964. X32 0 0 46 46 0 0 0 43 /Helvetica-Bold /font13 ANSIFont font
  965. X271 781 117 (5.3.5.) 117 SB
  966. X419 781 191 (rules.lan) 191 SB
  967. X32 0 0 38 38 0 0 0 30 /Courier /font0 ANSIFont font
  968. X330 859 483 (#  1015, Mon 4 Oct 93) 483 SB
  969. X330 899 23 (#) 23 SB
  970. X330 939 1426 (#  Rule specification file to tally Local Area Network traffic) 1426 SB
  971. X330 979 23 (#) 23 SB
  972. X330 1019 1380 (#  Nevil Brownlee,  Computer Centre,  University of Auckland) 1380 SB
  973. X330 1059 23 (#) 23 SB
  974. X330 1099 759 (SET 4  # Rule + action set number) 759 SB
  975. X330 1139 23 (#) 23 SB
  976. X330 1179 115 (RULES) 115 SB
  977. X330 1219 23 (#) 23 SB
  978. X330 1259 1311 (SourcePeerType & 255 = IP.0.0.0 :       Tally,  1;  #   1) 1311 SB
  979. X330 1299 1311 (SourcePeerType & 255 = DECnet :        Pushto,  6;  #   2) 1311 SB
  980. X330 1339 1311 (SourcePeerType & 255 = EtherTalk :     Pushto, 11;  #   3) 1311 SB
  981. X330 1379 1311 (SourcePeerType & 255 = Novell :         Tally,  6;  #   4) 1311 SB
  982. X330 1419 1495 (Null & 0 = 0 :                        Succeed,  0;  #   5  Ignore) 1495 SB
  983. X330 1459 23 (#) 23 SB
  984. X330 1499 1702 (SourceDetailType & 255 = 38 : Tally,  2;  #   6  Tally DECnet data by host) 1702 SB
  985. X330 1539 1081 (SourceDetailType & 255 =  6 : Tally,  2;  #   7) 1081 SB
  986. X330 1579 1081 (SourceDetailType & 255 = 46 : Tally,  2;  #   8) 1081 SB
  987. X330 1619 1081 (SourceDetailType & 255 = 14 : Tally,  2;  #   9) 1081 SB
  988. X330 1659 1656 (Null & 0 = 0 :                Tally,  3;  #  10  Tally rest of DECnet by) 1656 SB
  989. X330 1699 138 (detail) 138 SB
  990. X330 1739 23 (#) 23 SB
  991. X330 1779 1610 (SourceDetailType & 255 =  3 : Tally,  4;  #  11  Tally AT data by host) 1610 SB
  992. X330 1819 1725 (Null & 0 = 0 :                Tally,  5;  #  12  Tally rest of AT by detail) 1725 SB
  993. X330 1859 23 (#) 23 SB
  994. X330 1899 161 (ACTIONS) 161 SB
  995. X330 1939 23 (#) 23 SB
  996. X330 1979 1656 (SourcePeerType=IP,                     #  1  Tally IP by subnet and port) 1656 SB
  997. X330 2019 1380 (   SourcePeerMask=255.255.255.0, DestPeerMask=255.255.255.0,) 1380 SB
  998. X330 2059 1794 (   SourceDetailTypeMask=255, SourceDetailMask=255.255, DestDetailMask=255.255;) 1794 SB
  999. X330 2099 23 (#) 23 SB
  1000. X330 2139 1587 (SourcePeerType=DECnet,                 #  2 Tally DECnet data by host) 1587 SB
  1001. X330 2179 1380 (   SourcePeerMask=255.255.255.0, DestPeerMask=255.255.255.0,) 1380 SB
  1002. X330 2219 644 (   SourceDetailTypeMask=255;) 644 SB
  1003. X330 2259 1564 (SourcePeerType=DECnet,                 #  3 Tally DECnet by protocol) 1564 SB
  1004. X330 2299 644 (   SourceDetailTypeMask=255;) 644 SB
  1005. X330 2339 23 (#) 23 SB
  1006. X330 2379 1656 (SourcePeerType=EtherTalk,              #  4 Tally Ethertalk data by host) 1656 SB
  1007. X330 2419 1380 (   SourcePeerMask=255.255.255.0, DestPeerMask=255.255.255.0,) 1380 SB
  1008. X330 2459 644 (   SourceDetailTypeMask=255;) 644 SB
  1009. X330 2499 1633 (SourcePeerType=EtherTalk,              #  5 Tally Ethertalk by DDP type) 1633 SB
  1010. X330 2539 644 (   SourceDetailTypeMask=255;) 644 SB
  1011. X330 2579 23 (#) 23 SB
  1012. X330 2619 1794 (SourcePeerType=Novell,                 #  6  Tally IPX by network nbr and port) 1794 SB
  1013. X330 2659 1472 (   SourcePeerMask=255.255.255.255, DestPeerMask=255.255.255.255,) 1472 SB
  1014. X330 2699 644 (   SourceDetailTypeMask=255,) 644 SB
  1015. X330 2739 1196 (   SourceDetailMask=255.255, DestDetailMask=255.255;) 1196 SB
  1016. X330 2779 23 (#) 23 SB
  1017. X330 2819 230 (STATISTICS) 230 SB
  1018. X330 2859 23 (#) 23 SB
  1019. X330 2899 989 (FORMAT FlowRuleSet FlowIndex FirstTime "  ") 989 SB
  1020. X330 2939 1288 (   SourcePeerType SourcePeerAddress DestPeerAddress "  ") 1288 SB
  1021. X330 2979 1426 (   SourceDetailType SourceDetailAddress DestDetailAddress "  ") 1426 SB
  1022. X330 3019 1012 (   ToPDUs FromPDUs "  " ToOctets FromOctets;) 1012 SB
  1023. X330 3059 23 (#) 23 SB
  1024. X330 3099 299 (# end of file) 299 SB
  1025. X32 0 0 46 46 1 0 0 43 /Helvetica /font12 ANSIFont font
  1026. X271 3186 416 (                                ) 416 SB
  1027. X687 3186 416 (                                ) 416 SB
  1028. X1103 3186 78 (      ) 78 SB
  1029. X1171 3186 416 (                                ) 416 SB
  1030. X1587 3186 416 (                                ) 416 SB
  1031. END_OF_FILE
  1032.   if test 44499 -ne `wc -c <'netramet/doc/NeTraMet/NeTraMet.man.ps.C'`; then
  1033.     echo shar: \"'netramet/doc/NeTraMet/NeTraMet.man.ps.C'\" unpacked with wrong size!
  1034.   else  
  1035.     PARTS="" 
  1036.     for I in A B C D ; do 
  1037.       if test -f netramet/doc/NeTraMet/NeTraMet.man.ps.$I ; then
  1038.         PARTS="${PARTS}${I}"  
  1039.       fi  
  1040.       if test "${PARTS}" = "ABCD" ; then  
  1041.         echo shar: Combining  \"'netramet/doc/NeTraMet/NeTraMet.man.ps'\" \(188008 characters\)
  1042.         cat netramet/doc/NeTraMet/NeTraMet.man.ps.[A-D] > 'netramet/doc/NeTraMet/NeTraMet.man.ps' 
  1043.         if test 188008 -ne `wc -c <'netramet/doc/NeTraMet/NeTraMet.man.ps'`; then 
  1044.           echo shar: \"'netramet/doc/NeTraMet/NeTraMet.man.ps'\" combined with wrong size!  
  1045.         else  
  1046.           rm netramet/doc/NeTraMet/NeTraMet.man.ps.[A-D]  
  1047.         fi    
  1048.       fi    
  1049.     done  
  1050.   fi
  1051.   # end of 'netramet/doc/NeTraMet/NeTraMet.man.ps.C'
  1052. fi
  1053. if test -f 'netramet/src/apps/snmpwalk.c' -a "${1}" != "-c" ; then 
  1054.   echo shar: Will not clobber existing file \"'netramet/src/apps/snmpwalk.c'\"
  1055. else
  1056.   echo shar: Extracting \"'netramet/src/apps/snmpwalk.c'\" \(4841 characters\)
  1057.   sed "s/^X//" >'netramet/src/apps/snmpwalk.c' <<'END_OF_FILE'
  1058. X/*
  1059. X * snmpwalk.c - send snmp GETNEXT requests to a network entity, walking a subtree.
  1060. X *
  1061. X */
  1062. X/***********************************************************
  1063. X    Copyright 1988, 1989 by Carnegie Mellon University
  1064. X
  1065. X                      All Rights Reserved
  1066. X
  1067. XPermission to use, copy, modify, and distribute this software and its 
  1068. Xdocumentation for any purpose and without fee is hereby granted, 
  1069. Xprovided that the above copyright notice appear in all copies and that
  1070. Xboth that copyright notice and this permission notice appear in 
  1071. Xsupporting documentation, and that the name of CMU not be
  1072. Xused in advertising or publicity pertaining to distribution of the
  1073. Xsoftware without specific, written prior permission.  
  1074. X
  1075. XCMU DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
  1076. XALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
  1077. XCMU BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
  1078. XANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
  1079. XWHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
  1080. XARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
  1081. XSOFTWARE.
  1082. X******************************************************************/
  1083. X#include <sys/types.h>
  1084. X#include <netinet/in.h>
  1085. X#include <stdio.h>
  1086. X
  1087. X#include "ausnmp.h"
  1088. X#include "snmp.h"
  1089. X#include "snmpimpl.h"
  1090. X#include "asn1.h"
  1091. X#include "snmpapi.h"
  1092. X#include "snmpclnt.h"
  1093. X
  1094. Xoid objid_mib[] = {1, 3, 6, 1, 2, 1};
  1095. X
  1096. Xint    snmp_dump_packet = 0;
  1097. X
  1098. X
  1099. Xmain(argc, argv)
  1100. X    int        argc;
  1101. X    char    *argv[];
  1102. X{
  1103. X    struct snmp_session    session, *ss;
  1104. X    struct snmp_pdu *pdu, *response;
  1105. X    struct variable_list *vars;
  1106. X    int    arg;
  1107. X    char *gateway = NULL;
  1108. X    char *community = NULL;
  1109. X    int gotroot = 0;
  1110. X    oid    name[32];
  1111. X    int name_length;
  1112. X    oid root[MAX_NAME_LEN];
  1113. X    int    rootlen, count;
  1114. X    int running;
  1115. X    int status;
  1116. X
  1117. X    init_mib();
  1118. X    /*
  1119. X     * usage: snmpwalk gateway-name community-name [object-id]
  1120. X     */
  1121. X    for(arg = 1; arg < argc; arg++){
  1122. X    if (argv[arg][0] == '-'){
  1123. X        switch(argv[arg][1]){
  1124. X        case 'd':
  1125. X            snmp_dump_packet++;
  1126. X            break;
  1127. X        default:
  1128. X            printf("invalid option: -%c\n", argv[arg][1]);
  1129. X            break;
  1130. X        }
  1131. X        continue;
  1132. X    }
  1133. X    if (gateway == NULL){
  1134. X        gateway = argv[arg];
  1135. X    } else if (community == NULL){
  1136. X        community = argv[arg]; 
  1137. X    } else {
  1138. X        rootlen = MAX_NAME_LEN;
  1139. X        if (read_objid(argv[arg], root, &rootlen)){
  1140. X        gotroot = 1;
  1141. X        } else {
  1142. X        printf("Invalid object identifier: %s\n", argv[arg]);
  1143. X        }
  1144. X    }
  1145. X    }
  1146. X
  1147. X    if (gotroot == 0){
  1148. X    bcopy((char *)objid_mib, (char *)root, sizeof(objid_mib));
  1149. X    rootlen = sizeof(objid_mib) / sizeof(oid);        
  1150. X    gotroot = 1;
  1151. X    }
  1152. X
  1153. X    if (!(gateway && community && gotroot == 1)){
  1154. X    printf("usage: snmpwalk gateway-name community-name object-identifier\n");
  1155. X    exit(1);
  1156. X    }
  1157. X
  1158. X    bzero((char *)&session, sizeof(struct snmp_session));
  1159. X    session.peername = gateway;
  1160. X    session.community = (u_char *)community;
  1161. X    session.community_len = strlen((char *)community);
  1162. X    session.retries = SNMP_DEFAULT_RETRIES;
  1163. X    session.timeout = SNMP_DEFAULT_TIMEOUT;
  1164. X    session.authenticator = NULL;
  1165. X    snmp_synch_setup(&session);
  1166. X    ss = snmp_open(&session);
  1167. X    if (ss == NULL){
  1168. X    printf("Couldn't open snmp\n");
  1169. X    exit(-1);
  1170. X    }
  1171. X
  1172. X    bcopy((char *)root, (char *)name, rootlen * sizeof(oid));
  1173. X    name_length = rootlen;
  1174. X
  1175. X    running = 1;
  1176. X    while(running){
  1177. X    running = 0;
  1178. X    pdu = snmp_pdu_create(GETNEXT_REQ_MSG);
  1179. X
  1180. X    snmp_add_null_var(pdu, name, name_length);
  1181. X
  1182. X    status = snmp_synch_response(ss, pdu, &response);
  1183. X    if (status == STAT_SUCCESS){
  1184. X        if (response->errstat == SNMP_ERR_NOERROR){
  1185. X        for(vars = response->variables; vars; vars = vars->next_variable){
  1186. X            if (vars->name_length < rootlen || bcmp(root, vars->name, rootlen * sizeof(oid)))
  1187. X            continue;    /* not part of this subtree */
  1188. X            print_variable(vars->name, vars->name_length, vars);
  1189. X            bcopy((char *)vars->name, (char *)name, vars->name_length * sizeof(oid));
  1190. X            name_length = vars->name_length;
  1191. X            running = 1; /* restart so we can get next variable */
  1192. X        }
  1193. X        } else {
  1194. X        if (response->errstat == SNMP_ERR_NOSUCHNAME){
  1195. X            printf("End of MIB.\n");
  1196. X        } else {
  1197. X            printf("Error in packet.\nReason: %s\n", snmp_errstring(response->errstat));
  1198. X            if (response->errstat == SNMP_ERR_NOSUCHNAME){
  1199. X            printf("The request for this object identifier failed: ");
  1200. X            for(count = 1, vars = response->variables; vars && count != response->errindex;
  1201. X                vars = vars->next_variable, count++)
  1202. X                ;
  1203. X            if (vars)
  1204. X                print_objid(vars->name, vars->name_length);
  1205. X            printf("\n");
  1206. X            }
  1207. X        }
  1208. X        }
  1209. X
  1210. X    } else if (status == STAT_TIMEOUT){
  1211. X        printf("No Response from %s\n", gateway);
  1212. X    } else {    /* status == STAT_ERROR */
  1213. X        printf("An error occurred, Quitting\n");
  1214. X    }
  1215. X
  1216. X    if (response)
  1217. X        snmp_free_pdu(response);
  1218. X    }
  1219. X    printf("rootlen  %d\n", rootlen);
  1220. X    snmp_close(ss);
  1221. X}
  1222. X
  1223. END_OF_FILE
  1224.   if test 4841 -ne `wc -c <'netramet/src/apps/snmpwalk.c'`; then
  1225.     echo shar: \"'netramet/src/apps/snmpwalk.c'\" unpacked with wrong size!
  1226.   fi
  1227.   # end of 'netramet/src/apps/snmpwalk.c'
  1228. fi
  1229. if test -f 'netramet/src/snmplib/include/mib.h' -a "${1}" != "-c" ; then 
  1230.   echo shar: Will not clobber existing file \"'netramet/src/snmplib/include/mib.h'\"
  1231. else
  1232.   echo shar: Extracting \"'netramet/src/snmplib/include/mib.h'\" \(10793 characters\)
  1233.   sed "s/^X//" >'netramet/src/snmplib/include/mib.h' <<'END_OF_FILE'
  1234. X/*
  1235. X * Definitions for the variables as defined in the MIB
  1236. X */
  1237. X/***********************************************************
  1238. X    Copyright 1988, 1989 by Carnegie Mellon University
  1239. X
  1240. X                      All Rights Reserved
  1241. X
  1242. XPermission to use, copy, modify, and distribute this software and its 
  1243. Xdocumentation for any purpose and without fee is hereby granted, 
  1244. Xprovided that the above copyright notice appear in all copies and that
  1245. Xboth that copyright notice and this permission notice appear in 
  1246. Xsupporting documentation, and that the name of CMU not be
  1247. Xused in advertising or publicity pertaining to distribution of the
  1248. Xsoftware without specific, written prior permission.  
  1249. X
  1250. XCMU DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
  1251. XALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
  1252. XCMU BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
  1253. XANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
  1254. XWHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
  1255. XARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
  1256. XSOFTWARE.
  1257. X******************************************************************/
  1258. X
  1259. Xstruct    mib_system {
  1260. X    char    sysDescr[32];   /* textual description */
  1261. X    u_char  sysObjectID[16];/* OBJECT IDENTIFIER of system */
  1262. X    u_char  ObjIDLen;        /* length of sysObjectID */
  1263. X    u_long  sysUpTime;        /* Uptime in 100/s of a second */    
  1264. X};
  1265. X
  1266. Xstruct mib_interface {
  1267. X    long    ifNumber;        /* number of interfaces */
  1268. X};
  1269. X
  1270. Xstruct mib_ifEntry {
  1271. X    long    ifIndex;        /* index of this interface    */
  1272. X    char    ifDescr[32];    /* english description of interface    */
  1273. X    long    ifType;        /* network type of device    */
  1274. X    long    ifMtu;        /* size of largest packet in bytes    */
  1275. X    u_long  ifSpeed;        /* bandwidth in bits/sec    */
  1276. X    u_char  ifPhysAddress[11];    /* interface's address */
  1277. X    u_char  PhysAddrLen;    /* length of physAddr */
  1278. X    long    ifAdminStatus;  /* desired state of interface */
  1279. X    long    ifOperStatus;   /* current operational status */
  1280. X    u_long  ifLastChange;   /* value of sysUpTime when current state entered */
  1281. X    u_long  ifInOctets;        /* number of octets received on interface */
  1282. X    u_long  ifInUcastPkts;  /* number of unicast packets delivered */
  1283. X    u_long  ifInNUcastPkts; /* number of broadcasts or multicasts */
  1284. X    u_long  ifInDiscards;   /* number of packets discarded with no error */
  1285. X    u_long  ifInErrors;        /* number of packets containing errors */
  1286. X    u_long  ifInUnknownProtos;    /* number of packets with unknown protocol */
  1287. X    u_long  ifOutOctets;    /* number of octets transmitted */
  1288. X    u_long  ifOutUcastPkts; /* number of unicast packets sent */
  1289. X    u_long  ifOutNUcastPkts;/* number of broadcast or multicast pkts */
  1290. X    u_long  ifOutDiscards;  /* number of packets discarded with no error */
  1291. X    u_long  ifOutErrors;    /* number of pkts discarded with an error */
  1292. X    u_long  ifOutQLen;        /* number of packets in output queue */
  1293. X};
  1294. X
  1295. Xstruct mib_atEntry {
  1296. X    long    atIfIndex;        /* interface on which this entry maps */
  1297. X    u_char  atPhysAddress[11]; /* physical address of destination */
  1298. X    u_char  PhysAddressLen; /* length of atPhysAddress */
  1299. X    u_long  atNetAddress;   /* IP address of physical address */
  1300. X};
  1301. X
  1302. Xstruct mib_ip {
  1303. X    long    ipForwarding;   /* 1 if gateway, 2 if host */
  1304. X    long    ipDefaultTTL;   /* default TTL for pkts originating here */
  1305. X    u_long  ipInReceives;   /* no. of IP packets received from interfaces */
  1306. X    u_long  ipInHdrErrors;  /* number of pkts discarded due to header errors */
  1307. X    u_long  ipInAddrErrors; /* no. of pkts discarded due to bad address */
  1308. X    u_long  ipForwDatagrams;/* number pf pkts forwarded through this entity */
  1309. X    u_long  ipInUnknownProtos;/* no. of local-addressed pkts w/unknown proto */
  1310. X    u_long  ipInDiscards;   /* number of error-free packets discarded */
  1311. X    u_long  ipInDelivers;   /* number of datagrams delivered to upper level */
  1312. X    u_long  ipOutRequests;  /* number of IP datagrams originating locally */
  1313. X    u_long  ipOutDiscards;  /* number of error-free output IP pkts discarded */
  1314. X    u_long  ipOutNoRoutes;  /* number of IP pkts discarded due to no route */
  1315. X    long    ipReasmTimeout; /* seconds fragment is held awaiting reassembly */
  1316. X    u_long  ipReasmReqds;   /* no. of fragments needing reassembly (here) */
  1317. X    u_long  ipReasmOKs;        /* number of fragments reassembled */
  1318. X    u_long  ipReasmFails;   /* number of failures in IP reassembly */
  1319. X    u_long  ipFragOKs;        /* number of datagrams fragmented here */
  1320. X    u_long  ipFragFails;    /* no. pkts unable to be fragmented here */
  1321. X    u_long  ipFragCreates;  /* number of IP fragments created here */
  1322. X};
  1323. X
  1324. Xstruct mib_ipAddrEntry {
  1325. X    u_long  ipAdEntAddr;    /* IP address of this entry */
  1326. X    long    ipAdEntIfIndex; /* IF for this entry */
  1327. X    u_long  ipAdEntNetMask; /* subnet mask of this entry */
  1328. X    long    ipAdEntBcastAddr;/* read the MIB for this one */
  1329. X};
  1330. X
  1331. Xstruct mib_ipRouteEntry {
  1332. X    u_long  ipRouteDest;    /* destination IP addr for this route */
  1333. X    long    ipRouteIfIndex; /* index of local IF for this route */
  1334. X    long    ipRouteMetric1; /* Primary routing metric */
  1335. X    long    ipRouteMetric2; /* Alternate routing metric */
  1336. X    long    ipRouteMetric3; /* Alternate routing metric */
  1337. X    long    ipRouteMetric4; /* Alternate routing metric */
  1338. X    u_long  ipRouteNextHop; /* IP addr of next hop */
  1339. X    long    ipRouteType;    /* Type of this route */
  1340. X    long    ipRouteProto;   /* How this route was learned */
  1341. X    long    ipRouteAge;        /* No. of seconds since updating this route */
  1342. X};
  1343. X
  1344. Xstruct mib_icmp {
  1345. X    u_long  icmpInMsgs;        /* Total of ICMP msgs received */
  1346. X    u_long  icmpInErrors;   /* Total of ICMP msgs received with errors */
  1347. X    u_long  icmpInDestUnreachs;
  1348. X    u_long  icmpInTimeExcds;
  1349. X    u_long  icmpInParmProbs;
  1350. X    u_long  icmpInSrcQuenchs;
  1351. X    u_long  icmpInRedirects;
  1352. X    u_long  icmpInEchos;
  1353. X    u_long  icmpInEchoReps;
  1354. X    u_long  icmpInTimestamps;
  1355. X    u_long  icmpInTimestampReps;
  1356. X    u_long  icmpInAddrMasks;
  1357. X    u_long  icmpInAddrMaskReps;
  1358. X    u_long  icmpOutMsgs;
  1359. X    u_long  icmpOutErrors;
  1360. X    u_long  icmpOutDestUnreachs;
  1361. X    u_long  icmpOutTimeExcds;
  1362. X    u_long  icmpOutParmProbs;
  1363. X    u_long  icmpOutSrcQuenchs;
  1364. X    u_long  icmpOutRedirects;
  1365. X    u_long  icmpOutEchos;
  1366. X    u_long  icmpOutEchoReps;
  1367. X    u_long  icmpOutTimestamps;
  1368. X    u_long  icmpOutTimestampReps;
  1369. X    u_long  icmpOutAddrMasks;
  1370. X    u_long  icmpOutAddrMaskReps;
  1371. X};
  1372. X
  1373. Xstruct    mib_tcp {
  1374. X    long    tcpRtoAlgorithm;    /* retransmission timeout algorithm */
  1375. X    long    tcpRtoMin;        /* minimum retransmission timeout (mS) */
  1376. X    long    tcpRtoMax;        /* maximum retransmission timeout (mS) */ 
  1377. X    long    tcpMaxConn;        /* maximum tcp connections possible */
  1378. X    u_long  tcpActiveOpens;    /* number of SYN-SENT -> CLOSED transitions */
  1379. X    u_long  tcpPassiveOpens;    /* number of SYN-RCVD -> LISTEN transitions */
  1380. X    u_long  tcpAttemptFails;/*(SYN-SENT,SYN-RCVD)->CLOSED or SYN-RCVD->LISTEN*/
  1381. X    u_long  tcpEstabResets;    /* (ESTABLISHED,CLOSE-WAIT) -> CLOSED */
  1382. X    u_long  tcpCurrEstab;    /* number in ESTABLISHED or CLOSE-WAIT state */
  1383. X    u_long  tcpInSegs;        /* number of segments received */
  1384. X    u_long  tcpOutSegs;        /* number of segments sent */
  1385. X    u_long  tcpRetransSegs;    /* number of retransmitted segments */
  1386. X};
  1387. X
  1388. Xstruct mib_tcpConnEntry {
  1389. X    long    tcpConnState;    /* State of this connection */
  1390. X    u_long  tcpConnLocalAddress;/* local IP address for this connection */
  1391. X    long    tcpConnLocalPort;    /* local port for this connection */
  1392. X    u_long  tcpConnRemAddress;    /* remote IP address for this connection */
  1393. X    long    tcpConnRemPort;    /* remote port for this connection */
  1394. X};
  1395. X
  1396. Xstruct mib_udp {
  1397. X    u_long  udpInDatagrams; /* No. of UDP datagrams delivered to users */
  1398. X    u_long  udpNoPorts;        /* No. of UDP datagrams to port with no listener */
  1399. X    u_long  udpInErrors;    /* No. of UDP datagrams unable to be delivered */
  1400. X    u_long  udpOutDatagrams;/* No. of UDP datagrams sent from this entity */
  1401. X};
  1402. X
  1403. Xstruct    mib_egp {
  1404. X    u_long  egpInMsgs;    /* No. of EGP msgs received without error */
  1405. X    u_long  egpInErrors;/* No. of EGP msgs received with error */
  1406. X    u_long  egpOutMsgs;    /* No. of EGP msgs sent */
  1407. X    u_long  egpOutErrors;/* No. of (outgoing) EGP msgs dropped due to error */
  1408. X};
  1409. X
  1410. Xstruct    mib_egpNeighEntry {
  1411. X    long    egpNeighState;  /* local EGP state with this entry's neighbor */
  1412. X    u_long  egpNeighAddr;   /* IP address of this entry's neighbor */
  1413. X};
  1414. X
  1415. X#define MIB 1, 3, 6, 1, 2, 1
  1416. X
  1417. X#define MIB_IFTYPE_OTHER            1
  1418. X#define MIB_IFTYPE_REGULAR1822            2
  1419. X#define MIB_IFTYPE_HDH1822            3
  1420. X#define MIB_IFTYPE_DDNX25            4
  1421. X#define MIB_IFTYPE_RFC877X25            5
  1422. X#define MIB_IFTYPE_ETHERNETCSMACD        6
  1423. X#define MIB_IFTYPE_ISO88023CSMACD        7
  1424. X#define MIB_IFTYPE_ISO88024TOKENBUS        8
  1425. X#define MIB_IFTYPE_ISO88025TOKENRING        9
  1426. X#define MIB_IFTYPE_ISO88026MAN            10
  1427. X#define MIB_IFTYPE_STARLAN            11
  1428. X#define MIB_IFTYPE_PROTEON10MBIT        12
  1429. X#define MIB_IFTYPE_PROTEON80MBIT        13
  1430. X#define MIB_IFTYPE_HYPERCHANNEL            14
  1431. X#define MIB_IFTYPE_FDDI                15
  1432. X#define MIB_IFTYPE_LAPB                16
  1433. X#define MIB_IFTYPE_SDLC                17
  1434. X#define MIB_IFTYPE_T1CARRIER            18
  1435. X#define MIB_IFTYPE_CEPT                19
  1436. X#define MIB_IFTYPE_BASICISDN            20
  1437. X#define MIB_IFTYPE_PRIMARYISDN            21
  1438. X#define MIB_IFTYPE_PROPPOINTTOPOINTSERIAL   22
  1439. X
  1440. X#define MIB_IFSTATUS_UP        1
  1441. X#define MIB_IFSTATUS_DOWN    2
  1442. X#define MIB_IFSTATUS_TESTING    3
  1443. X
  1444. X#define MIB_FORWARD_GATEWAY    1
  1445. X#define MIB_FORWARD_HOST    2
  1446. X
  1447. X#define MIB_IPROUTETYPE_OTHER    1
  1448. X#define MIB_IPROUTETYPE_INVALID    2
  1449. X#define MIB_IPROUTETYPE_DIRECT    3
  1450. X#define MIB_IPROUTETYPE_REMOTE    4
  1451. X
  1452. X#define MIB_IPROUTEPROTO_OTHER        1
  1453. X#define MIB_IPROUTEPROTO_LOCAL        2
  1454. X#define MIB_IPROUTEPROTO_NETMGMT    3
  1455. X#define MIB_IPROUTEPROTO_ICMP        4
  1456. X#define MIB_IPROUTEPROTO_EGP        5
  1457. X#define MIB_IPROUTEPROTO_GGP        6
  1458. X#define MIB_IPROUTEPROTO_HELLO        7
  1459. X#define MIB_IPROUTEPROTO_RIP        8
  1460. X#define MIB_IPROUTEPROTO_ISIS        9
  1461. X#define MIB_IPROUTEPROTO_ESIS        10
  1462. X#define MIB_IPROUTEPROTO_CISCOIGRP  11
  1463. X#define MIB_IPROUTEPROTO_BBNSPFIGP  12
  1464. X#define MIB_IPROUTEPROTO_OIGP        13
  1465. X
  1466. X#define MIB_TCPRTOALG_OTHER    1
  1467. X#define MIB_TCPRTOALG_CONSTANT    2
  1468. X#define MIB_TCPRTOALG_RSRE    3
  1469. X#define MIB_TCPRTOALG_VANJ    4
  1470. X
  1471. X#define MIB_TCPCONNSTATE_CLOSED        1
  1472. X#define MIB_TCPCONNSTATE_LISTEN        2
  1473. X#define MIB_TCPCONNSTATE_SYNSENT    3
  1474. X#define MIB_TCPCONNSTATE_SYNRECEIVED    4
  1475. X#define MIB_TCPCONNSTATE_ESTABLISHED    5
  1476. X#define MIB_TCPCONNSTATE_FINWAIT1    6
  1477. X#define MIB_TCPCONNSTATE_FINWAIT2    7
  1478. X#define MIB_TCPCONNSTATE_CLOSEWAIT    8
  1479. X#define MIB_TCPCONNSTATE_LASTACK    9
  1480. X#define MIB_TCPCONNSTATE_CLOSING    10
  1481. X#define MIB_TCPCONNSTATE_TIMEWAIT    11
  1482. X
  1483. X#define MIB_EGPNEIGHSTATE_IDLE        1
  1484. X#define MIB_EGPNEIGHSTATE_AQUISITION    2
  1485. X#define MIB_EGPNEIGHSTATE_DOWN        3
  1486. X#define MIB_EGPNEIGHSTATE_UP        4
  1487. X#define MIB_EGPNEIGHSTATE_CEASE        5
  1488. X
  1489. X
  1490. X
  1491. END_OF_FILE
  1492.   if test 10793 -ne `wc -c <'netramet/src/snmplib/include/mib.h'`; then
  1493.     echo shar: \"'netramet/src/snmplib/include/mib.h'\" unpacked with wrong size!
  1494.   fi
  1495.   # end of 'netramet/src/snmplib/include/mib.h'
  1496. fi
  1497. echo shar: End of archive 14 \(of 25\).
  1498. cp /dev/null ark14isdone
  1499. MISSING=""
  1500. 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 ; do
  1501.     if test ! -f ark${I}isdone ; then
  1502.     MISSING="${MISSING} ${I}"
  1503.     fi
  1504. done
  1505. if test "${MISSING}" = "" ; then
  1506.     echo You have unpacked all 25 archives.
  1507.     rm -f ark[1-9]isdone ark[1-9][0-9]isdone
  1508. else
  1509.     echo You still must unpack the following archives:
  1510.     echo "        " ${MISSING}
  1511. fi
  1512. exit 0
  1513. exit 0 # Just in case...
  1514. exit 0 # Just in case...
  1515.