This file is indexed.

/usr/share/mibs/netsnmp/UCD-SNMP-MIB is in libsnmp-base 5.4.3~dfsg-2.4ubuntu1.3.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

   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
  27
  28
  29
  30
  31
  32
  33
  34
  35
  36
  37
  38
  39
  40
  41
  42
  43
  44
  45
  46
  47
  48
  49
  50
  51
  52
  53
  54
  55
  56
  57
  58
  59
  60
  61
  62
  63
  64
  65
  66
  67
  68
  69
  70
  71
  72
  73
  74
  75
  76
  77
  78
  79
  80
  81
  82
  83
  84
  85
  86
  87
  88
  89
  90
  91
  92
  93
  94
  95
  96
  97
  98
  99
 100
 101
 102
 103
 104
 105
 106
 107
 108
 109
 110
 111
 112
 113
 114
 115
 116
 117
 118
 119
 120
 121
 122
 123
 124
 125
 126
 127
 128
 129
 130
 131
 132
 133
 134
 135
 136
 137
 138
 139
 140
 141
 142
 143
 144
 145
 146
 147
 148
 149
 150
 151
 152
 153
 154
 155
 156
 157
 158
 159
 160
 161
 162
 163
 164
 165
 166
 167
 168
 169
 170
 171
 172
 173
 174
 175
 176
 177
 178
 179
 180
 181
 182
 183
 184
 185
 186
 187
 188
 189
 190
 191
 192
 193
 194
 195
 196
 197
 198
 199
 200
 201
 202
 203
 204
 205
 206
 207
 208
 209
 210
 211
 212
 213
 214
 215
 216
 217
 218
 219
 220
 221
 222
 223
 224
 225
 226
 227
 228
 229
 230
 231
 232
 233
 234
 235
 236
 237
 238
 239
 240
 241
 242
 243
 244
 245
 246
 247
 248
 249
 250
 251
 252
 253
 254
 255
 256
 257
 258
 259
 260
 261
 262
 263
 264
 265
 266
 267
 268
 269
 270
 271
 272
 273
 274
 275
 276
 277
 278
 279
 280
 281
 282
 283
 284
 285
 286
 287
 288
 289
 290
 291
 292
 293
 294
 295
 296
 297
 298
 299
 300
 301
 302
 303
 304
 305
 306
 307
 308
 309
 310
 311
 312
 313
 314
 315
 316
 317
 318
 319
 320
 321
 322
 323
 324
 325
 326
 327
 328
 329
 330
 331
 332
 333
 334
 335
 336
 337
 338
 339
 340
 341
 342
 343
 344
 345
 346
 347
 348
 349
 350
 351
 352
 353
 354
 355
 356
 357
 358
 359
 360
 361
 362
 363
 364
 365
 366
 367
 368
 369
 370
 371
 372
 373
 374
 375
 376
 377
 378
 379
 380
 381
 382
 383
 384
 385
 386
 387
 388
 389
 390
 391
 392
 393
 394
 395
 396
 397
 398
 399
 400
 401
 402
 403
 404
 405
 406
 407
 408
 409
 410
 411
 412
 413
 414
 415
 416
 417
 418
 419
 420
 421
 422
 423
 424
 425
 426
 427
 428
 429
 430
 431
 432
 433
 434
 435
 436
 437
 438
 439
 440
 441
 442
 443
 444
 445
 446
 447
 448
 449
 450
 451
 452
 453
 454
 455
 456
 457
 458
 459
 460
 461
 462
 463
 464
 465
 466
 467
 468
 469
 470
 471
 472
 473
 474
 475
 476
 477
 478
 479
 480
 481
 482
 483
 484
 485
 486
 487
 488
 489
 490
 491
 492
 493
 494
 495
 496
 497
 498
 499
 500
 501
 502
 503
 504
 505
 506
 507
 508
 509
 510
 511
 512
 513
 514
 515
 516
 517
 518
 519
 520
 521
 522
 523
 524
 525
 526
 527
 528
 529
 530
 531
 532
 533
 534
 535
 536
 537
 538
 539
 540
 541
 542
 543
 544
 545
 546
 547
 548
 549
 550
 551
 552
 553
 554
 555
 556
 557
 558
 559
 560
 561
 562
 563
 564
 565
 566
 567
 568
 569
 570
 571
 572
 573
 574
 575
 576
 577
 578
 579
 580
 581
 582
 583
 584
 585
 586
 587
 588
 589
 590
 591
 592
 593
 594
 595
 596
 597
 598
 599
 600
 601
 602
 603
 604
 605
 606
 607
 608
 609
 610
 611
 612
 613
 614
 615
 616
 617
 618
 619
 620
 621
 622
 623
 624
 625
 626
 627
 628
 629
 630
 631
 632
 633
 634
 635
 636
 637
 638
 639
 640
 641
 642
 643
 644
 645
 646
 647
 648
 649
 650
 651
 652
 653
 654
 655
 656
 657
 658
 659
 660
 661
 662
 663
 664
 665
 666
 667
 668
 669
 670
 671
 672
 673
 674
 675
 676
 677
 678
 679
 680
 681
 682
 683
 684
 685
 686
 687
 688
 689
 690
 691
 692
 693
 694
 695
 696
 697
 698
 699
 700
 701
 702
 703
 704
 705
 706
 707
 708
 709
 710
 711
 712
 713
 714
 715
 716
 717
 718
 719
 720
 721
 722
 723
 724
 725
 726
 727
 728
 729
 730
 731
 732
 733
 734
 735
 736
 737
 738
 739
 740
 741
 742
 743
 744
 745
 746
 747
 748
 749
 750
 751
 752
 753
 754
 755
 756
 757
 758
 759
 760
 761
 762
 763
 764
 765
 766
 767
 768
 769
 770
 771
 772
 773
 774
 775
 776
 777
 778
 779
 780
 781
 782
 783
 784
 785
 786
 787
 788
 789
 790
 791
 792
 793
 794
 795
 796
 797
 798
 799
 800
 801
 802
 803
 804
 805
 806
 807
 808
 809
 810
 811
 812
 813
 814
 815
 816
 817
 818
 819
 820
 821
 822
 823
 824
 825
 826
 827
 828
 829
 830
 831
 832
 833
 834
 835
 836
 837
 838
 839
 840
 841
 842
 843
 844
 845
 846
 847
 848
 849
 850
 851
 852
 853
 854
 855
 856
 857
 858
 859
 860
 861
 862
 863
 864
 865
 866
 867
 868
 869
 870
 871
 872
 873
 874
 875
 876
 877
 878
 879
 880
 881
 882
 883
 884
 885
 886
 887
 888
 889
 890
 891
 892
 893
 894
 895
 896
 897
 898
 899
 900
 901
 902
 903
 904
 905
 906
 907
 908
 909
 910
 911
 912
 913
 914
 915
 916
 917
 918
 919
 920
 921
 922
 923
 924
 925
 926
 927
 928
 929
 930
 931
 932
 933
 934
 935
 936
 937
 938
 939
 940
 941
 942
 943
 944
 945
 946
 947
 948
 949
 950
 951
 952
 953
 954
 955
 956
 957
 958
 959
 960
 961
 962
 963
 964
 965
 966
 967
 968
 969
 970
 971
 972
 973
 974
 975
 976
 977
 978
 979
 980
 981
 982
 983
 984
 985
 986
 987
 988
 989
 990
 991
 992
 993
 994
 995
 996
 997
 998
 999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
UCD-SNMP-MIB DEFINITIONS ::= BEGIN

-- Design notes:
--
-- The design of this mib may seem unusual in parts, as it was
-- designed for ease of numerical management routines.
-- 
-- In that light, most sub-sections of this mib have four common
-- numerical oid consistencies:
--
-- 2021.ID.1   : an integer index value.  In scalers, this is always
--               of value 1.  In tables it is a row index.
-- 2021.ID.2   : a name of the script, process, etc. that this row represents.
-- 2021.ID.100 : An error flag indicating if an error is present on
--               that row (a threshold value was crossed, etc).
-- 2021.ID.101 : An error string describing why the error flag is non-0.
--
-- These conventions enable managers to easy examine portions of the
-- mib by setting the ID to the sub-section they are interested in
-- monitoring, and then scanning the .100 value to check for an
-- error(s), and get a more specific error message from .101 for the
-- named check found in .2.
--
-- Row numbers between 2 and 100 are sub-section specific.
--
-- Mib sections utilizing the above conventions:
--   Tables:  	procTable, execTable, diskTable, loadTable
--   Scalers: 	memory, snmperrs


IMPORTS
    OBJECT-TYPE, NOTIFICATION-TYPE, MODULE-IDENTITY,
    Integer32, Opaque, enterprises, Counter32
        FROM SNMPv2-SMI

    TEXTUAL-CONVENTION, DisplayString, TruthValue
	FROM SNMPv2-TC;

ucdavis MODULE-IDENTITY
    LAST-UPDATED "200611220000Z"
    ORGANIZATION "University of California, Davis"
    CONTACT-INFO    
	"This mib is no longer being maintained by the University of
	 California and is now in life-support-mode and being
	 maintained by the net-snmp project.  The best place to write
	 for public questions about the net-snmp-coders mailing list
	 at net-snmp-coders@lists.sourceforge.net.

         postal:   Wes Hardaker
                   P.O. Box 382
                   Davis CA  95617

         email:    net-snmp-coders@lists.sourceforge.net
        "
    DESCRIPTION
	"This file defines the private UCD SNMP MIB extensions."

    REVISION	 "200611220000Z"
    DESCRIPTION
	"Clarify behaviour of objects in the memory & systemStats groups
         (including updated versions of malnamed mem*Text objects).
         Define suitable TCs to describe error reporting/fix behaviour."

    REVISION	 "200404070000Z"
    DESCRIPTION
	"Added ssCpuRawSoftIRQ for Linux (2.6) and forgotten raw swap counters."

    REVISION	 "200209050000Z"
    DESCRIPTION
	"Deprecate the non-raw objects."

    REVISION	 "200109200000Z"
    DESCRIPTION
	"Group to monitor log files"

    REVISION	 "200101170000Z"
    DESCRIPTION
	"Added raw CPU and IO counters."

    REVISION	 "9912090000Z"
    DESCRIPTION
	"SMIv2 version converted from older MIB definitions."
    ::= { enterprises 2021 }

-- Current UCD core mib table entries:
--   prTable          OBJECT IDENTIFIER ::= { ucdavis   2 }
--   memory           OBJECT IDENTIFIER ::= { ucdavis   4 }
--   extTable         OBJECT IDENTIFIER ::= { ucdavis   8 }
--   diskTable        OBJECT IDENTIFIER ::= { ucdavis   9 }
--   loadTable        OBJECT IDENTIFIER ::= { ucdavis  10 }
--   systemStats      OBJECT IDENTIFIER ::= { ucdavis  11 }
--   ucdDemoMIB       OBJECT IDENTIFIER ::= { ucdavis  14 } - UCD-DEMO-MIB
--   fileTable        OBJECT IDENTIFIER ::= { ucdavis  15 }
--   logMatch         OBJECT IDENTIFIER ::= { ucdavis  16 }
--   version          OBJECT IDENTIFIER ::= { ucdavis 100 }
--   snmperrs         OBJECT IDENTIFIER ::= { ucdavis 101 }
--   mibRegistryTable OBJECT IDENTIFIER ::= { ucdavis 102 }

-- Older mib table entries that were changed to new locations above:
--   processes        OBJECT IDENTIFIER ::= { ucdavis   1 }
--   exec             OBJECT IDENTIFIER ::= { ucdavis   3 }
--   disk             OBJECT IDENTIFIER ::= { ucdavis   6 }
--   load             OBJECT IDENTIFIER ::= { ucdavis   7 }

-- Never implemented and removed from the mib:
--   lockd            OBJECT IDENTIFIER ::= { ucdavis   5 }

-- Branches for registering other UCD MIB modules:
ucdInternal           OBJECT IDENTIFIER ::= { ucdavis 12 }
ucdExperimental       OBJECT IDENTIFIER ::= { ucdavis 13 }

-- OID values assigned in the ucdExperimental branch:
--   ucdIpFwAccMIB    OBJECT IDENTIFIER ::= { ucdExperimental  1 } - UCD-IPFWACC-MIB
--   ucdIpFilter      OBJECT IDENTIFIER ::= { ucdExperimental  2 } - UCD-IPFILTER-MIB
--   wavelan          OBJECT IDENTIFIER ::= { ucdExperimental  3 } - WL-MIB
--   ucdDlmodMIB      OBJECT IDENTIFIER ::= { ucdExperimental 14 } - UCD-DLMOD-MIB
--   ucdDiskIOMIB     OBJECT IDENTIFIER ::= { ucdExperimental 15 } - UCD-DISKIO-MIB
--   lmSensors        OBJECT IDENTIFIER ::= { ucdExperimental 16 } - LM-SENSORS-MIB


-- These are the returned values of the agent type.
-- returned to:  .iso.org.dod.internet.mgmt.mib-2.system.sysObjectID.0 

ucdSnmpAgent      OBJECT IDENTIFIER ::= { ucdavis 250 }
hpux9             OBJECT IDENTIFIER ::= { ucdSnmpAgent 1 }
sunos4            OBJECT IDENTIFIER ::= { ucdSnmpAgent 2 }
solaris           OBJECT IDENTIFIER ::= { ucdSnmpAgent 3 }
osf               OBJECT IDENTIFIER ::= { ucdSnmpAgent 4 }
ultrix            OBJECT IDENTIFIER ::= { ucdSnmpAgent 5 }
hpux10            OBJECT IDENTIFIER ::= { ucdSnmpAgent 6 }
netbsd1           OBJECT IDENTIFIER ::= { ucdSnmpAgent 7 }
freebsd           OBJECT IDENTIFIER ::= { ucdSnmpAgent 8 }
irix              OBJECT IDENTIFIER ::= { ucdSnmpAgent 9 }
linux             OBJECT IDENTIFIER ::= { ucdSnmpAgent 10 }
bsdi              OBJECT IDENTIFIER ::= { ucdSnmpAgent 11 }
openbsd           OBJECT IDENTIFIER ::= { ucdSnmpAgent 12 }
win32		  OBJECT IDENTIFIER ::= { ucdSnmpAgent 13 } -- unlucky
hpux11            OBJECT IDENTIFIER ::= { ucdSnmpAgent 14 }
unknown           OBJECT IDENTIFIER ::= { ucdSnmpAgent 255 }


--
-- Define the Float Textual Convention
--   This definition was written by David Perkins.
--

Float ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "A single precision floating-point number.  The semantics
         and encoding are identical for type 'single' defined in
         IEEE Standard for Binary Floating-Point,
         ANSI/IEEE Std 754-1985.
         The value is restricted to the BER serialization of
         the following ASN.1 type:
             FLOATTYPE ::= [120] IMPLICIT FloatType
         (note: the value 120 is the sum of '30'h and '48'h)
         The BER serialization of the length for values of
         this type must use the definite length, short
         encoding form.

         For example, the BER serialization of value 123
         of type FLOATTYPE is '9f780442f60000'h.  (The tag
         is '9f78'h; the length is '04'h; and the value is
         '42f60000'h.) The BER serialization of value
         '9f780442f60000'h of data type Opaque is
         '44079f780442f60000'h. (The tag is '44'h; the length
         is '07'h; and the value is '9f780442f60000'h."
    SYNTAX Opaque (SIZE (7))

UCDErrorFlag ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "Represents a possible error condition"
    SYNTAX INTEGER  { noError(0),  error(1) }

UCDErrorFix ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "Represents a 'push-button' object, to invoke a suitable
         configured action.  Will always return 0 when read."
    SYNTAX INTEGER  { noError(0),  runFix(1) }

--
-- Process table checks
--

prTable OBJECT-TYPE
    SYNTAX	SEQUENCE OF PrEntry
    MAX-ACCESS	not-accessible
    STATUS	current
    DESCRIPTION
	"A table containing information on running
	 programs/daemons configured for monitoring in the
	 snmpd.conf file of the agent.  Processes violating the
	 number of running processes required by the agent's
	 configuration file are flagged with numerical and
	 textual errors."
    ::= { ucdavis 2 }

prEntry OBJECT-TYPE
    SYNTAX	PrEntry
    MAX-ACCESS	not-accessible
    STATUS	current
    DESCRIPTION
        "An entry containing a process and its statistics."
    INDEX	{ prIndex }
    ::= { prTable  1 }

PrEntry ::= SEQUENCE {
    prIndex		Integer32,
    prNames		DisplayString,
    prMin		Integer32,
    prMax		Integer32,
    prCount		Integer32,
    prErrorFlag		UCDErrorFlag,
    prErrMessage	DisplayString,
    prErrFix		UCDErrorFix,
    prErrFixCmd		DisplayString
}

prIndex OBJECT-TYPE
    SYNTAX	Integer32 (0..65535)
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"Reference Index for each observed process."
    ::= { prEntry 1 }

prNames OBJECT-TYPE
    SYNTAX	DisplayString
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"The process name we're counting/checking on."
    ::= { prEntry 2 }

prMin OBJECT-TYPE
    SYNTAX	Integer32
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"The minimum number of processes that should be
	 running.  An error flag is generated if the number of
	 running processes is < the minimum."
    ::= { prEntry 3 }

prMax OBJECT-TYPE
    SYNTAX	Integer32
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"The maximum number of processes that should be
	 running.  An error flag is generated if the number of
	 running processes is > the maximum."
    ::= { prEntry 4 }

prCount OBJECT-TYPE
    SYNTAX	Integer32
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"The number of current processes running with the name
	 in question."
    ::= { prEntry 5 }

prErrorFlag OBJECT-TYPE
    SYNTAX	UCDErrorFlag
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"A Error flag to indicate trouble with a process.  It
	 goes to 1 if there is an error, 0 if no error."
    ::= { prEntry 100 }

prErrMessage OBJECT-TYPE
    SYNTAX	DisplayString
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"An error message describing the problem (if one exists)."
    ::= { prEntry 101 }

prErrFix OBJECT-TYPE
    SYNTAX	UCDErrorFix
    MAX-ACCESS	read-write
    STATUS	current
    DESCRIPTION
	"Setting this to one will try to fix the problem if
	 the agent has been configured with a script to call
	 to attempt to fix problems automatically using remote
	 snmp operations."
    ::= { prEntry 102 }

prErrFixCmd OBJECT-TYPE
    SYNTAX	DisplayString
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"The command that gets run when the prErrFix column is 
	 set to 1."
    ::= { prEntry 103 }



extTable OBJECT-TYPE
    SYNTAX	SEQUENCE OF ExtEntry
    MAX-ACCESS	not-accessible
    STATUS	current
    DESCRIPTION
	"A table of extensible commands returning output and
	 result codes.  These commands are configured via the
	 agent's snmpd.conf file."
    ::= { ucdavis 8 }

extEntry OBJECT-TYPE
    SYNTAX     ExtEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "An entry containing an extensible script/program and its output."
    INDEX      { extIndex }
    ::= { extTable  1 }

ExtEntry ::= SEQUENCE {
    extIndex		Integer32,
    extNames		DisplayString,
    extCommand		DisplayString,
    extResult		Integer32,
    extOutput		DisplayString,
    extErrFix		UCDErrorFix,
    extErrFixCmd	DisplayString
}

extIndex OBJECT-TYPE
    SYNTAX	Integer32 (0..65535)
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"Reference Index for extensible scripts.  Simply an
	 integer row number."
    ::= { extEntry 1 }

extNames OBJECT-TYPE
    SYNTAX	DisplayString
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"A Short, one name description of the extensible command."
    ::= { extEntry 2 }

extCommand OBJECT-TYPE
    SYNTAX	DisplayString
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"The command line to be executed."
    ::= { extEntry 3 }

extResult OBJECT-TYPE
    SYNTAX	Integer32
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"The result code (exit status) from the executed command."
    ::= { extEntry 100 }

extOutput OBJECT-TYPE
    SYNTAX	DisplayString
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"The first line of output of the executed command."
    ::= { extEntry 101 }

extErrFix OBJECT-TYPE
    SYNTAX	UCDErrorFix
    MAX-ACCESS	read-write
    STATUS	current
    DESCRIPTION
	"Setting this to one will try to fix the problem if
	 the agent has been configured with a script to call
	 to attempt to fix problems automatically using remote
	 snmp operations."
    ::= { extEntry 102 }
	
extErrFixCmd OBJECT-TYPE
    SYNTAX	DisplayString
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"The command that gets run when the extErrFix column is 
	 set to 1."
    ::= { extEntry 103 }

--
-- Memory usage/watch reporting.
-- Not supported on all systems!
-- See agent/mibgroup/ucd_snmp.h to see if its loaded for your architecture.
--
memory OBJECT IDENTIFIER ::= { ucdavis 4 }

memIndex OBJECT-TYPE
    SYNTAX	Integer32
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION  
	"Bogus Index.  This should always return the integer 0."
    ::= { memory 1 } 

memErrorName OBJECT-TYPE
    SYNTAX	DisplayString
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION  
	"Bogus Name. This should always return the string 'swap'."
    ::= { memory 2 } 

memTotalSwap OBJECT-TYPE
    SYNTAX	Integer32
    UNITS       "kB"
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"The total amount of swap space configured for this host."
    ::= { memory 3 }

memAvailSwap OBJECT-TYPE
    SYNTAX	Integer32
    UNITS       "kB"
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"The amount of swap space currently unused or available."
    ::= { memory 4 }

memTotalReal OBJECT-TYPE
    SYNTAX	Integer32
    UNITS       "kB"
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"The total amount of real/physical memory installed
         on this host."
    ::= { memory 5 }

memAvailReal OBJECT-TYPE
    SYNTAX	Integer32
    UNITS       "kB"
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"The amount of real/physical memory currently unused
         or available."
    ::= { memory 6 }

memTotalSwapTXT OBJECT-TYPE
    SYNTAX	Integer32
    UNITS       "kB"
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"The total amount of swap space or virtual memory allocated
         for text pages on this host.

         This object will not be implemented on hosts where the
         underlying operating system does not distinguish text
         pages from other uses of swap space or virtual memory."
    ::= { memory 7 }

memAvailSwapTXT OBJECT-TYPE
    SYNTAX	Integer32
    UNITS       "kB"
    MAX-ACCESS	read-only
    STATUS	deprecated
    DESCRIPTION	
	"The amount of swap space or virtual memory currently
         being used by text pages on this host.

         This object will not be implemented on hosts where the
         underlying operating system does not distinguish text
         pages from other uses of swap space or virtual memory.

         Note that (despite the name), this value reports the
         amount used, rather than the amount free or available
         for use.  For clarity, this object is being deprecated
         in favour of 'memUsedSwapTXT(16)."
    ::= { memory 8 }

memTotalRealTXT OBJECT-TYPE
    SYNTAX	Integer32
    UNITS       "kB"
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"The total amount of real/physical memory allocated
         for text pages on this host.

         This object will not be implemented on hosts where the
         underlying operating system does not distinguish text
         pages from other uses of physical memory."
    ::= { memory 9 }

memAvailRealTXT OBJECT-TYPE
    SYNTAX	Integer32
    UNITS       "kB"
    MAX-ACCESS	read-only
    STATUS	deprecated
    DESCRIPTION
	"The amount of real/physical memory currently being
         used by text pages on this host.

         This object will not be implemented on hosts where the
         underlying operating system does not distinguish text
         pages from other uses of physical memory.

         Note that (despite the name), this value reports the
         amount used, rather than the amount free or available
         for use.  For clarity, this object is being deprecated
         in favour of 'memUsedRealTXT(17)."
    ::= { memory 10 }

memTotalFree OBJECT-TYPE
    SYNTAX	Integer32
    UNITS       "kB"
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
        "The total amount of memory free or available for use on
         this host.  This value typically covers both real memory
         and swap space or virtual memory."
    ::= { memory 11 }

memMinimumSwap OBJECT-TYPE
    SYNTAX	Integer32
    UNITS       "kB"
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"The minimum amount of swap space expected to be kept
         free or available during normal operation of this host.

         If this value (as reported by 'memAvailSwap(4)') falls
         below the specified level, then 'memSwapError(100)' will
         be set to 1 and an error message made available via
         'memSwapErrorMsg(101)'."
    ::= { memory 12 }

memShared OBJECT-TYPE
    SYNTAX	Integer32
    UNITS       "kB"
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
        "The total amount of real or virtual memory currently
         allocated for use as shared memory.

         This object will not be implemented on hosts where the
         underlying operating system does not explicitly identify
         memory as specifically reserved for this purpose."
    ::= { memory 13 }

memBuffer OBJECT-TYPE
    SYNTAX	Integer32
    UNITS       "kB"
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
        "The total amount of real or virtual memory currently
         allocated for use as memory buffers.

         This object will not be implemented on hosts where the
         underlying operating system does not explicitly identify
         memory as specifically reserved for this purpose."
    ::= { memory 14 }

memCached OBJECT-TYPE
    SYNTAX	Integer32
    UNITS       "kB"
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
        "The total amount of real or virtual memory currently
         allocated for use as cached memory.

         This object will not be implemented on hosts where the
         underlying operating system does not explicitly identify
         memory as specifically reserved for this purpose."
    ::= { memory 15 }

memUsedSwapTXT OBJECT-TYPE
    SYNTAX	Integer32
    UNITS       "kB"
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION	
	"The amount of swap space or virtual memory currently
         being used by text pages on this host.

         This object will not be implemented on hosts where the
         underlying operating system does not distinguish text
         pages from other uses of swap space or virtual memory."
    ::= { memory 16 }

memUsedRealTXT OBJECT-TYPE
    SYNTAX	Integer32
    UNITS       "kB"
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"The amount of real/physical memory currently being
         used by text pages on this host.

         This object will not be implemented on hosts where the
         underlying operating system does not distinguish text
         pages from other uses of physical memory."
    ::= { memory 17 }

memSwapError OBJECT-TYPE
    SYNTAX	UCDErrorFlag
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"Indicates whether the amount of available swap space
         (as reported by 'memAvailSwap(4)'), is less than the
         desired minimum (specified by 'memMinimumSwap(12)')."
    ::= { memory 100 }
	
memSwapErrorMsg OBJECT-TYPE
    SYNTAX	DisplayString
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"Describes whether the amount of available swap space
         (as reported by 'memAvailSwap(4)'), is less than the
         desired minimum (specified by 'memMinimumSwap(12)')."
    ::= { memory 101 } 


dskTable OBJECT-TYPE
    SYNTAX	SEQUENCE OF DskEntry
    MAX-ACCESS	not-accessible
    STATUS	current
    DESCRIPTION
	"Disk watching information.  Partions to be watched
	 are configured by the snmpd.conf file of the agent."
    ::= { ucdavis 9 }

dskEntry OBJECT-TYPE
    SYNTAX     DskEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "An entry containing a disk and its statistics."
    INDEX      { dskIndex }
    ::= { dskTable  1 }

DskEntry ::= SEQUENCE {
    dskIndex		Integer32,
    dskPath		DisplayString,
    dskDevice		DisplayString,
    dskMinimum		Integer32,
    dskMinPercent	Integer32,
    dskTotal		Integer32,
    dskAvail		Integer32,
    dskUsed		Integer32,
    dskPercent		Integer32,
    dskPercentNode	Integer32,
    dskErrorFlag	UCDErrorFlag,
    dskErrorMsg		DisplayString
}

dskIndex OBJECT-TYPE
    SYNTAX	Integer32 (0..65535)
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"Integer reference number (row number) for the disk mib."
    ::= { dskEntry 1 }
	
dskPath OBJECT-TYPE
    SYNTAX	DisplayString
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION  
	"Path where the disk is mounted."
    ::= { dskEntry 2 } 

dskDevice OBJECT-TYPE
    SYNTAX	DisplayString
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION  
	"Path of the device for the partition"
    ::= { dskEntry 3 } 

dskMinimum OBJECT-TYPE
    SYNTAX	Integer32
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION  
	"Minimum space required on the disk (in kBytes) before the
         errors are triggered.  Either this or dskMinPercent is
         configured via the agent's snmpd.conf file."
    ::= { dskEntry 4 } 

dskMinPercent OBJECT-TYPE
    SYNTAX	Integer32
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION  
	"Percentage of minimum space required on the disk before the
         errors are triggered.  Either this or dskMinimum is
         configured via the agent's snmpd.conf file."
    ::= { dskEntry 5 } 

dskTotal OBJECT-TYPE
    SYNTAX	Integer32
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION  
	"Total size of the disk/partion (kBytes).
	 For large disks (>2Tb), this value will
	 latch at INT32_MAX (2147483647)."
    ::= { dskEntry 6 } 

dskAvail OBJECT-TYPE
    SYNTAX	Integer32
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION  
	"Available space on the disk.
	 For large lightly-used disks (>2Tb), this
	 value will latch at INT32_MAX (2147483647)."
    ::= { dskEntry 7 } 

dskUsed OBJECT-TYPE
    SYNTAX	Integer32
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION  
	"Used space on the disk.
	 For large heavily-used disks (>2Tb), this
	 value will latch at INT32_MAX (2147483647)."
    ::= { dskEntry 8 } 

dskPercent OBJECT-TYPE
    SYNTAX	Integer32
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION  
	"Percentage of space used on disk"
    ::= { dskEntry 9 } 

dskPercentNode OBJECT-TYPE
    SYNTAX	Integer32
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION  
	"Percentage of inodes used on disk"
    ::= { dskEntry 10 } 

dskErrorFlag OBJECT-TYPE
    SYNTAX	UCDErrorFlag
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION  
	"Error flag signaling that the disk or partition is under
	 the minimum required space configured for it."
    ::= { dskEntry 100 } 
     
dskErrorMsg OBJECT-TYPE
    SYNTAX	DisplayString
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION  
	"A text description providing a warning and the space left
	 on the disk."
    ::= { dskEntry 101 } 
     
laTable OBJECT-TYPE
    SYNTAX	SEQUENCE OF LaEntry
    MAX-ACCESS	not-accessible
    STATUS	current
    DESCRIPTION
	"Load average information."
    ::= { ucdavis 10 }

laEntry OBJECT-TYPE
    SYNTAX	LaEntry
    MAX-ACCESS	not-accessible
    STATUS	current
    DESCRIPTION
	"An entry containing a load average and its values."
    INDEX	{ laIndex }
    ::= { laTable  1 }

LaEntry ::= SEQUENCE {
    laIndex		Integer32,
    laNames		DisplayString,
    laLoad		DisplayString,
    laConfig		DisplayString,
    laLoadInt		Integer32,
    laLoadFloat		Float,
    laErrorFlag		UCDErrorFlag,
    laErrMessage	DisplayString
}

laIndex OBJECT-TYPE
    SYNTAX	Integer32 (0..3)
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"reference index/row number for each observed loadave."
    ::= { laEntry 1 }

laNames OBJECT-TYPE
    SYNTAX	DisplayString
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"The list of loadave names we're watching."
    ::= { laEntry 2 }

laLoad OBJECT-TYPE
    SYNTAX	DisplayString
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"The 1,5 and 15 minute load averages (one per row)."
    ::= { laEntry 3 }

laConfig OBJECT-TYPE
    SYNTAX	DisplayString
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"The watch point for load-averages to signal an
	 error.  If the load averages rises above this value,
	 the laErrorFlag below is set."
    ::= { laEntry 4 }

laLoadInt OBJECT-TYPE
    SYNTAX	Integer32
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"The 1,5 and 15 minute load averages as an integer.
	 This is computed by taking the floating point
	 loadaverage value and multiplying by 100, then
	 converting the value to an integer."
    ::= { laEntry 5 }

laLoadFloat OBJECT-TYPE
    SYNTAX	Float
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"The 1,5 and 15 minute load averages as an opaquely
	 wrapped floating point number."
    ::= { laEntry 6 }

laErrorFlag OBJECT-TYPE
    SYNTAX	UCDErrorFlag
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"A Error flag to indicate the load-average has crossed
	 its threshold value defined in the snmpd.conf file.
	 It is set to 1 if the threshold is crossed, 0 otherwise."
    ::= { laEntry 100 }

laErrMessage OBJECT-TYPE
    SYNTAX	DisplayString
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"An error message describing the load-average and its
	 surpased watch-point value."
    ::= { laEntry 101 }


version	OBJECT IDENTIFIER ::= { ucdavis 100 }

versionIndex OBJECT-TYPE
    SYNTAX	Integer32
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION  
	"Index to mib (always 0)"
    ::= { version 1 } 

versionTag OBJECT-TYPE
    SYNTAX	DisplayString
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION  
	"CVS tag keyword"
    ::= { version 2 } 
     
versionDate OBJECT-TYPE
    SYNTAX	DisplayString
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION  
	"Date string from RCS keyword"
    ::= { version 3 } 

versionCDate OBJECT-TYPE
    SYNTAX	DisplayString
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION  
	"Date string from ctime() "
    ::= { version 4 } 

versionIdent OBJECT-TYPE
    SYNTAX	DisplayString
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION  
	"Id string from RCS keyword"
    ::= { version 5 } 

versionConfigureOptions OBJECT-TYPE
    SYNTAX	DisplayString
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION  
	"Options passed to the configure script when this agent was built."
    ::= { version 6 } 

versionClearCache OBJECT-TYPE
    SYNTAX	Integer32
    MAX-ACCESS	read-write
    STATUS	current
    DESCRIPTION  
	"Set to 1 to clear the exec cache, if enabled"
    ::= { version 10 } 

versionUpdateConfig OBJECT-TYPE
    SYNTAX	Integer32
    MAX-ACCESS	read-write
    STATUS	current
    DESCRIPTION  
	"Set to 1 to read-read the config file(s)."
    ::= { version 11 } 

versionRestartAgent OBJECT-TYPE
    SYNTAX	Integer32
    MAX-ACCESS	read-write
    STATUS	current
    DESCRIPTION  
	"Set to 1 to restart the agent."
    ::= { version 12 } 

versionSavePersistentData OBJECT-TYPE
    SYNTAX	Integer32
    MAX-ACCESS	read-write
    STATUS	current
    DESCRIPTION  
	"Set to 1 to force the agent to save it's persistent data immediately."
    ::= { version 13 } 

versionDoDebugging OBJECT-TYPE
    SYNTAX	Integer32
    MAX-ACCESS	read-write
    STATUS	current
    DESCRIPTION  
	"Set to 1 to turn debugging statements on in the agent or 0
	 to turn it off."
    ::= { version 20 } 


snmperrs OBJECT IDENTIFIER ::= { ucdavis 101 }

snmperrIndex OBJECT-TYPE
    SYNTAX	Integer32
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"Bogus Index for snmperrs (always 0)."
    ::= { snmperrs 1 }

snmperrNames OBJECT-TYPE
    SYNTAX	DisplayString
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"snmp"
    ::= { snmperrs 2 }

snmperrErrorFlag OBJECT-TYPE
    SYNTAX	UCDErrorFlag
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"A Error flag to indicate trouble with the agent.  It
	 goes to 1 if there is an error, 0 if no error."
    ::= { snmperrs 100 }

snmperrErrMessage OBJECT-TYPE
    SYNTAX	DisplayString
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"An error message describing the problem (if one exists)."
    ::= { snmperrs 101 }


mrTable OBJECT-TYPE
    SYNTAX	SEQUENCE OF MrEntry
    MAX-ACCESS	not-accessible
    STATUS	current
    DESCRIPTION
	"A table displaying all the oid's registered by mib modules in
	 the agent.  Since the agent is modular in nature, this lists
	 each module's OID it is responsible for and the name of the module"
    ::= { ucdavis 102 }

mrEntry OBJECT-TYPE
    SYNTAX	MrEntry
    MAX-ACCESS	not-accessible
    STATUS	current
    DESCRIPTION
	"An entry containing a registered mib oid."
    INDEX	{ IMPLIED mrIndex }
    ::= { mrTable 1 }

MrEntry ::= SEQUENCE {
    mrIndex		OBJECT IDENTIFIER,
    mrModuleName	DisplayString
}

mrIndex OBJECT-TYPE
    SYNTAX	OBJECT IDENTIFIER
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"The registry slot of a mibmodule."
    ::= { mrEntry  1 }

mrModuleName OBJECT-TYPE
    SYNTAX	DisplayString
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"The module name that registered this OID."
    ::= { mrEntry  2 }

systemStats OBJECT IDENTIFIER ::= { ucdavis 11 }

ssIndex OBJECT-TYPE
    SYNTAX	Integer32
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"Bogus Index.  This should always return the integer 1."
    ::= { systemStats 1 }

ssErrorName OBJECT-TYPE
    SYNTAX	DisplayString
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"Bogus Name. This should always return the string 'systemStats'."
    ::= { systemStats 2 }

ssSwapIn OBJECT-TYPE
    SYNTAX	Integer32
    UNITS       "kB"
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"The average amount of memory swapped in from disk,
         calculated over the last minute."
    ::= { systemStats 3 }

ssSwapOut OBJECT-TYPE
    SYNTAX	Integer32
    UNITS       "kB"
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"The average amount of memory swapped out to disk,
         calculated over the last minute."
    ::= { systemStats 4 }

ssIOSent OBJECT-TYPE
    SYNTAX	Integer32
    UNITS       "blocks/s"
    MAX-ACCESS	read-only
    STATUS	deprecated
    DESCRIPTION
	"The average amount of data written to disk or other
         block device, calculated over the last minute.
       
	 This object has been deprecated in favour of
         'ssIORawSent(57)', which can be used to calculate
         the same metric, but over any desired time period."
    ::= { systemStats 5 }

ssIOReceive OBJECT-TYPE
    SYNTAX	Integer32
    UNITS       "blocks/s"
    MAX-ACCESS	read-only
    STATUS	deprecated
    DESCRIPTION
	"The average amount of data read from disk or other
         block device, calculated over the last minute.
       
	 This object has been deprecated in favour of
         'ssIORawReceived(58)', which can be used to calculate
         the same metric, but over any desired time period."
    ::= { systemStats 6 }

ssSysInterrupts OBJECT-TYPE
    SYNTAX	Integer32
    UNITS       "interrupts/s"
    MAX-ACCESS	read-only
    STATUS	deprecated
    DESCRIPTION
	"The average rate of interrupts processed (including
         the clock) calculated over the last minute.
       
	 This object has been deprecated in favour of
         'ssRawInterrupts(59)', which can be used to calculate
         the same metric, but over any desired time period."
    ::= { systemStats 7 }

ssSysContext OBJECT-TYPE
    SYNTAX	Integer32
    UNITS       "switches/s"
    MAX-ACCESS	read-only
    STATUS	deprecated
    DESCRIPTION
	"The average rate of context switches,
         calculated over the last minute.
       
	 This object has been deprecated in favour of
         'ssRawContext(60)', which can be used to calculate
         the same metric, but over any desired time period."
    ::= { systemStats 8 }

ssCpuUser OBJECT-TYPE
    SYNTAX	Integer32
    MAX-ACCESS	read-only
    STATUS	deprecated
    DESCRIPTION
	"The percentage of CPU time spent processing
         user-level code, calculated over the last minute.
       
	 This object has been deprecated in favour of
         'ssCpuRawUser(50)', which can be used to calculate
         the same metric, but over any desired time period."
    ::= { systemStats 9 }

ssCpuSystem OBJECT-TYPE
    SYNTAX	Integer32
    MAX-ACCESS	read-only
    STATUS	deprecated
    DESCRIPTION
	"The percentage of CPU time spent processing
         system-level code, calculated over the last minute.
       
	 This object has been deprecated in favour of
         'ssCpuRawSystem(52)', which can be used to calculate
         the same metric, but over any desired time period."
    ::= { systemStats 10 }

ssCpuIdle OBJECT-TYPE
    SYNTAX	Integer32
    MAX-ACCESS	read-only
    STATUS	deprecated
    DESCRIPTION
	"The percentage of processor time spent idle,
         calculated over the last minute.
       
	 This object has been deprecated in favour of
         'ssCpuRawIdle(53)', which can be used to calculate
         the same metric, but over any desired time period."
    ::= { systemStats 11 }

-- The agent only implements those of the following counters that the
-- kernel supports! Don't expect all to be present.

ssCpuRawUser OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of 'ticks' (typically 1/100s) spent
         processing user-level code.

         On a multi-processor system, the 'ssCpuRaw*'
         counters are cumulative over all CPUs, so their
         sum will typically be N*100 (for N processors)."
    ::= { systemStats 50 }

ssCpuRawNice OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of 'ticks' (typically 1/100s) spent
         processing reduced-priority code.

         This object will not be implemented on hosts where
         the underlying operating system does not measure
         this particular CPU metric.

         On a multi-processor system, the 'ssCpuRaw*'
         counters are cumulative over all CPUs, so their
         sum will typically be N*100 (for N processors)."
    ::= { systemStats 51 }

ssCpuRawSystem OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of 'ticks' (typically 1/100s) spent
         processing system-level code.

         On a multi-processor system, the 'ssCpuRaw*'
         counters are cumulative over all CPUs, so their
         sum will typically be N*100 (for N processors).

         This object may sometimes be implemented as the
         combination of the 'ssCpuRawWait(54)' and
         'ssCpuRawKernel(55)' counters, so care must be
         taken when summing the overall raw counters."
    ::= { systemStats 52 }

ssCpuRawIdle OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of 'ticks' (typically 1/100s) spent
         idle.

         On a multi-processor system, the 'ssCpuRaw*'
         counters are cumulative over all CPUs, so their
         sum will typically be N*100 (for N processors)."
    ::= { systemStats 53 }

ssCpuRawWait OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of 'ticks' (typically 1/100s) spent
         waiting for IO.

         This object will not be implemented on hosts where
         the underlying operating system does not measure
         this particular CPU metric.  This time may also be
         included within the 'ssCpuRawSystem(52)' counter.

         On a multi-processor system, the 'ssCpuRaw*'
         counters are cumulative over all CPUs, so their
         sum will typically be N*100 (for N processors)."
    ::= { systemStats 54 }

ssCpuRawKernel OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of 'ticks' (typically 1/100s) spent
         processing kernel-level code.

         This object will not be implemented on hosts where
         the underlying operating system does not measure
         this particular CPU metric.  This time may also be
         included within the 'ssCpuRawSystem(52)' counter.

         On a multi-processor system, the 'ssCpuRaw*'
         counters are cumulative over all CPUs, so their
         sum will typically be N*100 (for N processors)."
    ::= { systemStats 55 }

ssCpuRawInterrupt OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of 'ticks' (typically 1/100s) spent
         processing hardware interrupts.

         This object will not be implemented on hosts where
         the underlying operating system does not measure
         this particular CPU metric.

         On a multi-processor system, the 'ssCpuRaw*'
         counters are cumulative over all CPUs, so their
         sum will typically be N*100 (for N processors)."
    ::= { systemStats 56 }

ssIORawSent OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of blocks sent to a block device"
    ::= { systemStats 57 }

ssIORawReceived OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of blocks received from a block device"
    ::= { systemStats 58 }

ssRawInterrupts OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of interrupts processed"
    ::= { systemStats 59 }

ssRawContexts OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of context switches"
    ::= { systemStats 60 }

ssCpuRawSoftIRQ OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of 'ticks' (typically 1/100s) spent
         processing software interrupts.

         This object will not be implemented on hosts where
         the underlying operating system does not measure
         this particular CPU metric.

         On a multi-processor system, the 'ssCpuRaw*'
         counters are cumulative over all CPUs, so their
         sum will typically be N*100 (for N processors)."
    ::= { systemStats 61 }

ssRawSwapIn OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of blocks swapped in"
    ::= { systemStats 62 }

ssRawSwapOut OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of blocks swapped out"
    ::= { systemStats 63 }

-- possibly used in the future:
--
-- ssErrorFlag OBJECT-TYPE
--     SYNTAX	   UCDErrorFlag
--     MAX-ACCESS  read-only
--     STATUS      current
--     DESCRIPTION
--         "Error flag."
--     ::= { systemStats 100 }
-- 
-- ssErrMessage OBJECT-TYPE
--     SYNTAX      DisplayString
--     MAX-ACCESS  read-only
--     STATUS      current
--     DESCRIPTION  
--         "Error message describing the errorflag condition."
--     ::= { systemStats 101 } 


ucdTraps OBJECT IDENTIFIER ::= { ucdavis 251 }

ucdStart NOTIFICATION-TYPE
    STATUS	current
    DESCRIPTION
	"This trap could in principle be sent when the agent start"
    ::= { ucdTraps 1 }
    
ucdShutdown	NOTIFICATION-TYPE
    STATUS current
    DESCRIPTION
	"This trap is sent when the agent terminates"
    ::= { ucdTraps 2 }

--
-- File Table:  monitor a list of files to check for a maximum size.
-- 

fileTable OBJECT-TYPE
    SYNTAX	SEQUENCE OF FileEntry
    MAX-ACCESS	not-accessible
    STATUS	current
    DESCRIPTION
	"Table of monitored files."
    ::= { ucdavis 15 }
    
fileEntry OBJECT-TYPE
    SYNTAX	FileEntry
    MAX-ACCESS	not-accessible
    STATUS	current
    DESCRIPTION
	"Entry of file"
    INDEX	{ fileIndex }
    ::= { fileTable 1 }

FileEntry ::= SEQUENCE {
    fileIndex		Integer32,
    fileName		DisplayString,
    fileSize		Integer32,
    fileMax		Integer32,
    fileErrorFlag	UCDErrorFlag,
    fileErrorMsg	DisplayString
}

fileIndex OBJECT-TYPE
    SYNTAX	Integer32 (0..2147483647)
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"Index of file"
    ::= { fileEntry 1 }

fileName OBJECT-TYPE
    SYNTAX	DisplayString
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"Filename"
    ::= { fileEntry 2 }

fileSize OBJECT-TYPE
    SYNTAX	Integer32
    UNITS       "kB"
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"Size of file (kB)"
    ::= { fileEntry 3 }

fileMax	OBJECT-TYPE
    SYNTAX	Integer32
    UNITS       "kB"
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"Limit of filesize (kB)"
    ::= { fileEntry 4 }

fileErrorFlag OBJECT-TYPE
    SYNTAX	UCDErrorFlag
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"Limit exceeded flag"
    ::= { fileEntry 100 }

fileErrorMsg OBJECT-TYPE
    SYNTAX	DisplayString
    MAX-ACCESS	read-only
    STATUS	current
    DESCRIPTION
	"Filesize error message"
    ::= { fileEntry 101 }

logMatch OBJECT IDENTIFIER ::= { ucdavis 16 }

logMatchMaxEntries OBJECT-TYPE
	SYNTAX Integer32
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The maximum number of logmatch entries
		this snmpd daemon can support."
	::= { logMatch 1 }

logMatchTable OBJECT-TYPE
	SYNTAX SEQUENCE OF LogMatchEntry
	MAX-ACCESS not-accessible
	STATUS current
	DESCRIPTION
		"Table of monitored files."
	::= { logMatch 2 }

logMatchEntry OBJECT-TYPE
	SYNTAX LogMatchEntry
	MAX-ACCESS not-accessible
	STATUS current
	DESCRIPTION
		"Entry of file"
	INDEX { logMatchIndex }
	::= { logMatchTable 1 }

LogMatchEntry ::=
	SEQUENCE { 
		logMatchIndex
			Integer32,
		logMatchName
			DisplayString,
		logMatchFilename
			DisplayString,
		logMatchRegEx
			DisplayString,
		logMatchGlobalCounter
			Counter32,
		logMatchGlobalCount
			Integer32,
		logMatchCurrentCounter
			Counter32,
		logMatchCurrentCount
			Integer32,
		logMatchCounter
			Counter32,
		logMatchCount
			Integer32,
		logMatchCycle
			Integer32,
		logMatchErrorFlag
			UCDErrorFlag,
		logMatchRegExCompilation
			DisplayString
	 }

logMatchIndex OBJECT-TYPE
	SYNTAX Integer32 (1..2147483647)
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Index of logmatch"
	::= { logMatchEntry 1 }

logMatchName OBJECT-TYPE
	SYNTAX DisplayString
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"logmatch instance name"
	::= { logMatchEntry 2 }

logMatchFilename OBJECT-TYPE
	SYNTAX DisplayString
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"filename to be logmatched"
	::= { logMatchEntry 3 }

logMatchRegEx OBJECT-TYPE
	SYNTAX DisplayString
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"regular expression"
	::= { logMatchEntry 4 }

logMatchGlobalCounter OBJECT-TYPE
	SYNTAX Counter32
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"global count of matches"
	::= { logMatchEntry 5 }

logMatchGlobalCount OBJECT-TYPE
	SYNTAX Integer32
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Description."
	::= { logMatchEntry 6 }

logMatchCurrentCounter OBJECT-TYPE
	SYNTAX Counter32
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Regex match counter. This counter will
		be reset with each logfile rotation."
	::= { logMatchEntry 7 }

logMatchCurrentCount OBJECT-TYPE
	SYNTAX Integer32
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Description."
	::= { logMatchEntry 8 }

logMatchCounter OBJECT-TYPE
	SYNTAX Counter32
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Regex match counter. This counter will
		be reset with each read"
	::= { logMatchEntry 9 }

logMatchCount OBJECT-TYPE
	SYNTAX Integer32
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Description."
	::= { logMatchEntry 10 }

logMatchCycle OBJECT-TYPE
	SYNTAX Integer32
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"time between updates (if not queried) in seconds"
	::= { logMatchEntry 11 }

logMatchErrorFlag OBJECT-TYPE
	SYNTAX UCDErrorFlag
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"errorflag: is this line configured correctly?"
	::= { logMatchEntry 100 }

logMatchRegExCompilation OBJECT-TYPE
	SYNTAX DisplayString
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"message of regex precompilation"
	::= { logMatchEntry 101 }

END