Various new MIBs added
authorVictor Kirhenshtein <victor@netxms.org>
Mon, 27 Mar 2006 15:42:02 +0000 (15:42 +0000)
committerVictor Kirhenshtein <victor@netxms.org>
Mon, 27 Mar 2006 15:42:02 +0000 (15:42 +0000)
.gitattributes
contrib/mibs/Makefile.am
contrib/mibs/RS-232-MIB.txt [new file with mode: 0644]
contrib/mibs/SNMP-COMMUNITY-MIB.txt [new file with mode: 0644]
contrib/mibs/SNMP-PROXY-MIB.txt [new file with mode: 0644]
contrib/mibs/SNMP-REPEATER-MIB.txt [new file with mode: 0644]
contrib/mibs/SNMP-TARGET-MIB.txt [new file with mode: 0644]
contrib/mibs/USEC-MIB.txt [new file with mode: 0644]
contrib/mibs/V2ADMIN-MIB.txt [new file with mode: 0644]
contrib/mibs/WWW-MIB.txt [new file with mode: 0644]

index b2d6b38..c8aa789 100644 (file)
@@ -88,6 +88,7 @@ contrib/mibs/RFC-1215.txt -text
 contrib/mibs/RFC1155-SMI.txt -text
 contrib/mibs/RFC1213-MIB.txt -text
 contrib/mibs/RMON-MIB.txt -text
+contrib/mibs/RS-232-MIB.txt -text
 contrib/mibs/S5-CHASSIS-MIB.txt -text
 contrib/mibs/S5-CHASSIS-TRAP-MIB.txt -text
 contrib/mibs/S5-ETH-REDUNDANT-LINKS-MIB.txt -text
@@ -98,7 +99,11 @@ contrib/mibs/S5-REG-MIB.txt -text
 contrib/mibs/S5-ROOT-MIB.txt -text
 contrib/mibs/S5-SWITCH-BAYSECURE-MIB.txt -text
 contrib/mibs/S5-TCS-MIB.txt -text
+contrib/mibs/SNMP-COMMUNITY-MIB.txt -text
 contrib/mibs/SNMP-FRAMEWORK-MIB.txt -text
+contrib/mibs/SNMP-PROXY-MIB.txt -text
+contrib/mibs/SNMP-REPEATER-MIB.txt -text
+contrib/mibs/SNMP-TARGET-MIB.txt -text
 contrib/mibs/SNMPv2-CONF.txt -text
 contrib/mibs/SNMPv2-MIB.txt -text
 contrib/mibs/SNMPv2-SMI.txt -text
@@ -116,7 +121,10 @@ contrib/mibs/UCD-IPFWACC-MIB.txt -text
 contrib/mibs/UCD-SNMP-MIB.txt -text
 contrib/mibs/UDP-MIB.txt -text
 contrib/mibs/UPS-MIB.txt -text
+contrib/mibs/USEC-MIB.txt -text
+contrib/mibs/V2ADMIN-MIB.txt -text
 contrib/mibs/WF-COM.txt -text
+contrib/mibs/WWW-MIB.txt -text
 contrib/netxmsd.conf-dist -text
 contrib/nxagentd.conf-dist -text
 contrib/startup/Makefile.am -text
index bb3109b..d28050d 100644 (file)
@@ -77,6 +77,7 @@ mibs_DATA = \
        RFC-1212.txt \
        RFC1213-MIB.txt \
        RMON-MIB.txt \
+       RS-232-MIB.txt \
        S5-CHASSIS-MIB.txt \
        S5-CHASSIS-TRAP-MIB.txt \
        S5-ETH-REDUNDANT-LINKS-MIB.txt \
@@ -87,7 +88,11 @@ mibs_DATA = \
        S5-ROOT-MIB.txt \
        S5-SWITCH-BAYSECURE-MIB.txt \
        S5-TCS-MIB.txt \
+       SNMP-COMMUNITY-MIB.txt \
        SNMP-FRAMEWORK-MIB.txt \
+       SNMP-PROXY-MIB.txt \
+       SNMP-REPEATER-MIB.txt \
+       SNMP-TARGET-MIB.txt \
        SNMPv2-CONF.txt \
        SNMPv2-MIB.txt \
        SNMPv2-SMI.txt \
@@ -105,6 +110,9 @@ mibs_DATA = \
        UCD-SNMP-MIB.txt \
        UDP-MIB.txt \
        UPS-MIB.txt \
-       WF-COM.txt
+       USEC-MIB.txt \
+       V2ADMIN-MIB.txt \
+       WF-COM.txt \
+       WWW-MIB.txt
 
 EXTRA_DIST=$(mibs_DATA)
diff --git a/contrib/mibs/RS-232-MIB.txt b/contrib/mibs/RS-232-MIB.txt
new file mode 100644 (file)
index 0000000..02db2aa
--- /dev/null
@@ -0,0 +1,882 @@
+   RS-232-MIB DEFINITIONS ::= BEGIN
+
+   IMPORTS
+       MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE,
+       Counter32, Integer32
+           FROM SNMPv2-SMI
+       InterfaceIndex
+           FROM IF-MIB
+       transmission
+           FROM RFC1213-MIB
+       MODULE-COMPLIANCE, OBJECT-GROUP
+           FROM SNMPv2-CONF;
+
+
+   rs232 MODULE-IDENTITY
+       LAST-UPDATED "9405261700Z"
+       ORGANIZATION "IETF Character MIB Working Group"
+       CONTACT-INFO
+               "        Bob Stewart
+                Postal: Xyplex, Inc.
+
+
+
+
+
+                        295 Foster Street
+                        Littleton, MA 01460
+
+                   Tel: 508-952-4816
+                   Fax: 508-952-4887
+                E-mail: rlstewart@eng.xyplex.com"
+       DESCRIPTION
+               "The MIB module for RS-232-like hardware devices."
+       ::= { transmission 33 }
+
+
+   -- Generic RS-232-like information
+
+   rs232Number OBJECT-TYPE
+       SYNTAX Integer32
+       MAX-ACCESS read-only
+       STATUS current
+       DESCRIPTION
+           "The number of ports (regardless of their current
+           state) in the RS-232-like general port table."
+       ::= { rs232 1 }
+
+
+   -- RS-232-like General Port Table
+
+   rs232PortTable OBJECT-TYPE
+       SYNTAX SEQUENCE OF Rs232PortEntry
+       MAX-ACCESS not-accessible
+       STATUS current
+       DESCRIPTION
+           "A list of port entries.  The number of entries is
+           given by the value of rs232Number."
+       ::= { rs232 2 }
+
+   rs232PortEntry OBJECT-TYPE
+       SYNTAX Rs232PortEntry
+       MAX-ACCESS not-accessible
+       STATUS current
+       DESCRIPTION
+           "Status and parameter values for a port."
+       INDEX { rs232PortIndex }
+       ::= { rs232PortTable 1 }
+
+   Rs232PortEntry ::=
+       SEQUENCE {
+           rs232PortIndex
+               InterfaceIndex,
+           rs232PortType
+
+
+
+
+
+               INTEGER,
+           rs232PortInSigNumber
+               Integer32,
+           rs232PortOutSigNumber
+               Integer32,
+           rs232PortInSpeed
+               Integer32,
+           rs232PortOutSpeed
+               Integer32,
+           rs232PortInFlowType
+               INTEGER,
+           rs232PortOutFlowType
+               INTEGER
+       }
+
+   rs232PortIndex OBJECT-TYPE
+       SYNTAX InterfaceIndex
+       MAX-ACCESS read-only
+       STATUS current
+       DESCRIPTION
+           "The value of ifIndex for the port.  By convention
+           and if possible, hardware port numbers map directly
+           to external connectors.  The value for each port must
+           remain constant at least from one re-initialization
+           of the network management agent to the next."
+       ::= { rs232PortEntry 1 }
+
+   rs232PortType OBJECT-TYPE
+       SYNTAX INTEGER { other(1), rs232(2), rs422(3),
+                        rs423(4), v35(5), x21(6) }
+       MAX-ACCESS read-only
+       STATUS current
+       DESCRIPTION
+           "The port's hardware type."
+       ::= { rs232PortEntry 2 }
+
+   rs232PortInSigNumber OBJECT-TYPE
+       SYNTAX Integer32
+       MAX-ACCESS read-only
+       STATUS current
+       DESCRIPTION
+           "The number of input signals for the port in the
+           input signal table (rs232PortInSigTable).  The table
+           contains entries only for those signals the software
+           can detect and that are useful to observe."
+       ::= { rs232PortEntry 3 }
+
+
+
+
+
+
+
+   rs232PortOutSigNumber OBJECT-TYPE
+       SYNTAX Integer32
+       MAX-ACCESS read-only
+       STATUS current
+       DESCRIPTION
+           "The number of output signals for the port in the
+           output signal table (rs232PortOutSigTable).  The
+           table contains entries only for those signals the
+           software can assert and that are useful to observe."
+       ::= { rs232PortEntry 4 }
+
+   rs232PortInSpeed OBJECT-TYPE
+       SYNTAX Integer32
+       MAX-ACCESS read-write
+       STATUS current
+       DESCRIPTION
+           "The port's input speed in bits per second.  Note that
+           non-standard values, such as 9612, are probably not allowed
+           on most implementations."
+       ::= { rs232PortEntry 5 }
+
+   rs232PortOutSpeed OBJECT-TYPE
+       SYNTAX Integer32
+       MAX-ACCESS read-write
+       STATUS current
+       DESCRIPTION
+           "The port's output speed in bits per second.  Note that
+           non-standard values, such as 9612, are probably not allowed
+           on most implementations."
+       ::= { rs232PortEntry 6 }
+
+   rs232PortInFlowType OBJECT-TYPE
+       SYNTAX INTEGER { none(1), ctsRts(2), dsrDtr(3) }
+       MAX-ACCESS read-write
+       STATUS current
+       DESCRIPTION
+           "The port's type of input flow control.  'none'
+           indicates no flow control at this level.
+           'ctsRts' and 'dsrDtr' indicate use of the indicated
+           hardware signals."
+       ::= { rs232PortEntry 7 }
+
+   rs232PortOutFlowType OBJECT-TYPE
+       SYNTAX INTEGER { none(1), ctsRts(2), dsrDtr(3) }
+       MAX-ACCESS read-write
+       STATUS current
+       DESCRIPTION
+           "The port's type of output flow control.  'none'
+
+
+
+
+
+           indicates no flow control at this level.
+           'ctsRts' and 'dsrDtr' indicate use of the indicated
+           hardware signals."
+       ::= { rs232PortEntry 8 }
+
+
+   -- RS-232-like Asynchronous Port Table
+
+   rs232AsyncPortTable OBJECT-TYPE
+       SYNTAX SEQUENCE OF Rs232AsyncPortEntry
+       MAX-ACCESS not-accessible
+       STATUS current
+       DESCRIPTION
+           "A list of asynchronous port entries.  Entries need
+           not exist for synchronous ports."
+       ::= { rs232 3 }
+
+   rs232AsyncPortEntry OBJECT-TYPE
+       SYNTAX Rs232AsyncPortEntry
+       MAX-ACCESS not-accessible
+       STATUS current
+       DESCRIPTION
+           "Status and parameter values for an asynchronous
+           port."
+       INDEX { rs232AsyncPortIndex }
+       ::= { rs232AsyncPortTable 1 }
+
+   Rs232AsyncPortEntry ::=
+       SEQUENCE {
+           rs232AsyncPortIndex
+               InterfaceIndex,
+           rs232AsyncPortBits
+               INTEGER,
+           rs232AsyncPortStopBits
+               INTEGER,
+           rs232AsyncPortParity
+               INTEGER,
+           rs232AsyncPortAutobaud
+               INTEGER,
+           rs232AsyncPortParityErrs
+               Counter32,
+           rs232AsyncPortFramingErrs
+               Counter32,
+           rs232AsyncPortOverrunErrs
+               Counter32
+
+       }
+
+
+
+
+
+
+   rs232AsyncPortIndex OBJECT-TYPE
+       SYNTAX InterfaceIndex
+       MAX-ACCESS read-only
+       STATUS current
+       DESCRIPTION
+           "A unique value for each port.  Its value is the
+           same as rs232PortIndex for the port."
+       ::= { rs232AsyncPortEntry 1 }
+
+   rs232AsyncPortBits OBJECT-TYPE
+       SYNTAX INTEGER (5..8)
+       MAX-ACCESS read-write
+       STATUS current
+       DESCRIPTION
+           "The port's number of bits in a character."
+       ::= { rs232AsyncPortEntry 2 }
+
+   rs232AsyncPortStopBits OBJECT-TYPE
+       SYNTAX INTEGER { one(1), two(2),
+                        oneAndHalf(3), dynamic(4) }
+       MAX-ACCESS read-write
+       STATUS current
+       DESCRIPTION
+           "The port's number of stop bits."
+       ::= { rs232AsyncPortEntry 3 }
+
+   rs232AsyncPortParity OBJECT-TYPE
+       SYNTAX INTEGER { none(1), odd(2), even(3),
+                        mark(4), space(5) }
+       MAX-ACCESS read-write
+       STATUS current
+       DESCRIPTION
+           "The port's sense of a character parity bit."
+       ::= { rs232AsyncPortEntry 4 }
+
+   rs232AsyncPortAutobaud OBJECT-TYPE
+       SYNTAX INTEGER { enabled(1), disabled(2) }
+       MAX-ACCESS read-write
+       STATUS current
+       DESCRIPTION
+           "A control for the port's ability to automatically
+           sense input speed.
+
+           When rs232PortAutoBaud is 'enabled', a port may
+           autobaud to values different from the set values for
+           speed, parity, and character size.  As a result a
+           network management system may temporarily observe
+           values different from what was previously set."
+
+
+
+
+
+       ::= { rs232AsyncPortEntry 5 }
+
+   rs232AsyncPortParityErrs OBJECT-TYPE
+       SYNTAX Counter32
+       MAX-ACCESS read-only
+       STATUS current
+       DESCRIPTION
+           "Total number of characters with a parity error,
+           input from the port since system re-initialization
+           and while the port state was 'up' or 'test'."
+       ::= { rs232AsyncPortEntry 6 }
+
+   rs232AsyncPortFramingErrs OBJECT-TYPE
+       SYNTAX Counter32
+       MAX-ACCESS read-only
+       STATUS current
+       DESCRIPTION
+           "Total number of characters with a framing error,
+           input from the port since system re-initialization
+           and while the port state was 'up' or 'test'."
+       ::= { rs232AsyncPortEntry 7 }
+
+   rs232AsyncPortOverrunErrs OBJECT-TYPE
+       SYNTAX Counter32
+       MAX-ACCESS read-only
+       STATUS current
+       DESCRIPTION
+           "Total number of characters with an overrun error,
+           input from the port since system re-initialization
+           and while the port state was 'up' or 'test'."
+       ::= { rs232AsyncPortEntry 8 }
+
+
+   -- RS-232-like Synchronous Port Table
+
+   rs232SyncPortTable OBJECT-TYPE
+       SYNTAX SEQUENCE OF Rs232SyncPortEntry
+       MAX-ACCESS not-accessible
+       STATUS current
+       DESCRIPTION
+           "A list of asynchronous port entries.  Entries need
+           not exist for synchronous ports."
+       ::= { rs232 4 }
+
+   rs232SyncPortEntry OBJECT-TYPE
+       SYNTAX Rs232SyncPortEntry
+       MAX-ACCESS not-accessible
+       STATUS current
+
+
+
+
+
+       DESCRIPTION
+           "Status and parameter values for a synchronous
+           port."
+       INDEX { rs232SyncPortIndex }
+       ::= { rs232SyncPortTable 1 }
+
+   Rs232SyncPortEntry ::=
+       SEQUENCE {
+           rs232SyncPortIndex
+               InterfaceIndex,
+           rs232SyncPortClockSource
+               INTEGER,
+           rs232SyncPortFrameCheckErrs
+               Counter32,
+           rs232SyncPortTransmitUnderrunErrs
+               Counter32,
+           rs232SyncPortReceiveOverrunErrs
+               Counter32,
+           rs232SyncPortInterruptedFrames
+               Counter32,
+           rs232SyncPortAbortedFrames
+               Counter32,
+           rs232SyncPortRole
+               INTEGER,
+           rs232SyncPortEncoding
+               INTEGER,
+           rs232SyncPortRTSControl
+               INTEGER,
+           rs232SyncPortRTSCTSDelay
+               Integer32,
+           rs232SyncPortMode
+               INTEGER,
+           rs232SyncPortIdlePattern
+               INTEGER,
+           rs232SyncPortMinFlags
+               Integer32
+       }
+
+   rs232SyncPortIndex OBJECT-TYPE
+       SYNTAX InterfaceIndex
+       MAX-ACCESS read-only
+       STATUS current
+       DESCRIPTION
+           "A unique value for each port.  Its value is the
+           same as rs232PortIndex for the port."
+       ::= { rs232SyncPortEntry 1 }
+
+
+
+
+
+
+
+   rs232SyncPortClockSource OBJECT-TYPE
+       SYNTAX INTEGER { internal(1), external(2), split(3) }
+       MAX-ACCESS read-write
+       STATUS current
+       DESCRIPTION
+           "Source of the port's bit rate clock. 'split' means
+           the tranmit clock is internal and the receive clock
+           is external."
+       ::= { rs232SyncPortEntry 2 }
+
+   rs232SyncPortFrameCheckErrs OBJECT-TYPE
+       SYNTAX Counter32
+       MAX-ACCESS read-only
+       STATUS current
+       DESCRIPTION
+           "Total number of frames with an invalid frame check
+           sequence, input from the port since system
+           re-initialization and while the port state was 'up'
+           or 'test'."
+       ::= { rs232SyncPortEntry 3 }
+
+   rs232SyncPortTransmitUnderrunErrs OBJECT-TYPE
+       SYNTAX Counter32
+       MAX-ACCESS read-only
+       STATUS current
+       DESCRIPTION
+           "Total number of frames that failed to be
+           transmitted on the port since system
+           re-initialization and while the port state was 'up'
+           or 'test' because data was not available to the
+           transmitter in time."
+       ::= { rs232SyncPortEntry 4 }
+
+   rs232SyncPortReceiveOverrunErrs OBJECT-TYPE
+       SYNTAX Counter32
+       MAX-ACCESS read-only
+       STATUS current
+       DESCRIPTION
+           "Total number of frames that failed to be received
+           on the port since system re-initialization and while
+           the port state was 'up' or 'test' because the
+           receiver did not accept the data in time."
+       ::= { rs232SyncPortEntry 5 }
+
+   rs232SyncPortInterruptedFrames OBJECT-TYPE
+       SYNTAX Counter32
+       MAX-ACCESS read-only
+       STATUS current
+
+
+
+
+
+       DESCRIPTION
+           "Total number of frames that failed to be received
+           or transmitted on the port due to loss of modem
+           signals since system re-initialization and while the
+           port state was 'up' or 'test'."
+       ::= { rs232SyncPortEntry 6 }
+
+   rs232SyncPortAbortedFrames OBJECT-TYPE
+       SYNTAX Counter32
+       MAX-ACCESS read-only
+       STATUS current
+       DESCRIPTION
+           "Number of frames aborted on the port due to
+           receiving an abort sequence since system
+           re-initialization and while the port state was 'up'
+           or 'test'."
+       ::= { rs232SyncPortEntry 7 }
+
+   rs232SyncPortRole OBJECT-TYPE
+       SYNTAX INTEGER  { dte(1), dce(2) }
+       MAX-ACCESS read-write
+       STATUS current
+       DESCRIPTION
+           "The role the device is playing that is using this port.
+              dte    means the device is performing the role of
+                     data terminal equipment
+              dce    means the device is performing the role of
+                     data circuit-terminating equipment."
+       DEFVAL { dce }
+       ::= { rs232SyncPortEntry 8 }
+
+   rs232SyncPortEncoding OBJECT-TYPE
+       SYNTAX INTEGER  { nrz(1), nrzi(2) }
+       MAX-ACCESS read-write
+       STATUS current
+       DESCRIPTION
+           "The bit stream encoding technique that is in effect
+            for this port.
+              nrz    for Non-Return to Zero encoding
+              nrzi   for Non-Return to Zero Inverted encoding."
+       DEFVAL { nrz }
+       ::= { rs232SyncPortEntry 9 }
+
+   rs232SyncPortRTSControl OBJECT-TYPE
+       SYNTAX INTEGER  { controlled(1), constant(2) }
+       MAX-ACCESS read-write
+       STATUS current
+       DESCRIPTION
+
+
+
+
+
+           "The method used to control the Request To Send (RTS)
+            signal.
+
+              controlled  when the DTE is asserts RTS each time
+                          data needs to be transmitted and drops
+                          RTS at some point after data
+                          transmission begins.
+
+                          If rs232SyncPortRole is 'dte', the
+                          RTS is an output signal. The device
+                          will issue a RTS and wait for a CTS
+                          from the DCE before starting to
+                          transmit.
+
+                          If rs232SyncPortRole is 'dce', the
+                          RTS is an input signal. The device
+                          will issue a CTS only after having
+                          received RTS and waiting the
+                          rs232SyncPortRTSCTSDelay interval.
+
+              constant    when the DTE constantly asserts RTS."
+       DEFVAL { constant }
+       ::= { rs232SyncPortEntry 10 }
+
+   rs232SyncPortRTSCTSDelay OBJECT-TYPE
+       SYNTAX Integer32
+       MAX-ACCESS read-write
+       STATUS current
+       DESCRIPTION
+           "The interval (in milliseconds) that the DCE must wait
+            after it sees RTS asserted before asserting CTS.  This
+            object exists in support of older synchronous devices
+            that cannot recognize CTS within a certain interval
+            after it asserts RTS."
+       DEFVAL { 0 }
+       ::= { rs232SyncPortEntry 11 }
+
+   rs232SyncPortMode OBJECT-TYPE
+       SYNTAX INTEGER  { fdx(1), hdx(2), simplex-receive(3),
+                         simplex-send(4) }
+       MAX-ACCESS read-write
+       STATUS current
+       DESCRIPTION
+           "The mode of operation of the port with respect to the
+            direction and simultaneity of data transfer.
+
+
+
+
+
+
+
+
+              fdx              when frames on the data link can be
+                               transmitted and received at the same
+                               time
+
+              hdx              when frames can either be received
+                               from the data link or transmitted
+                               onto the data link but not at the
+                               same time.
+
+              simplex-receive  when frames can only be received on
+                               this data link.
+
+              simplex-send     when frames can only be sent on this
+                               data link."
+       DEFVAL { fdx }
+       ::= { rs232SyncPortEntry 12 }
+
+   rs232SyncPortIdlePattern OBJECT-TYPE
+       SYNTAX INTEGER  { mark(1), space(2) }
+       MAX-ACCESS read-write
+       STATUS current
+       DESCRIPTION
+           "The bit pattern used to indicate an idle line."
+       DEFVAL { space }
+       ::= { rs232SyncPortEntry 13 }
+
+   rs232SyncPortMinFlags OBJECT-TYPE
+       SYNTAX Integer32
+       MAX-ACCESS read-write
+       STATUS current
+       DESCRIPTION
+           "The minimum number of flag patterns this port needs in
+            order to recognize the end of one frame and the start
+            of the next.  Plausible values are 1 and 2."
+       DEFVAL { 2 }
+       ::= { rs232SyncPortEntry 14 }
+
+
+   -- Input Signal Table
+
+   rs232InSigTable OBJECT-TYPE
+       SYNTAX SEQUENCE OF Rs232InSigEntry
+       MAX-ACCESS not-accessible
+       STATUS current
+       DESCRIPTION
+           "A list of port input control signal entries
+           implemented and visible to the software on the port,
+           and useful to monitor."
+
+
+
+
+
+       ::= { rs232 5 }
+
+   rs232InSigEntry OBJECT-TYPE
+       SYNTAX Rs232InSigEntry
+       MAX-ACCESS not-accessible
+       STATUS current
+       DESCRIPTION
+           "Input control signal status for a hardware port."
+       INDEX { rs232InSigPortIndex, rs232InSigName }
+       ::= { rs232InSigTable 1 }
+
+   Rs232InSigEntry ::=
+       SEQUENCE {
+           rs232InSigPortIndex
+               InterfaceIndex,
+           rs232InSigName
+               INTEGER,
+           rs232InSigState
+               INTEGER,
+           rs232InSigChanges
+               Counter32
+       }
+
+   rs232InSigPortIndex OBJECT-TYPE
+       SYNTAX InterfaceIndex
+       MAX-ACCESS read-only
+       STATUS current
+       DESCRIPTION
+           "The value of rs232PortIndex for the port to which
+           this entry belongs."
+       ::= { rs232InSigEntry 1 }
+
+   rs232InSigName OBJECT-TYPE
+       SYNTAX INTEGER { rts(1), cts(2), dsr(3), dtr(4), ri(5),
+                        dcd(6), sq(7), srs(8), srts(9),
+                        scts(10), sdcd(11) }
+       MAX-ACCESS read-only
+       STATUS current
+       DESCRIPTION
+           "Identification of a hardware signal, as follows:
+
+               rts    Request to Send
+               cts    Clear to Send
+               dsr    Data Set Ready
+               dtr    Data Terminal Ready
+               ri     Ring Indicator
+               dcd    Received Line Signal Detector
+               sq     Signal Quality Detector
+
+
+
+
+
+               srs    Data Signaling Rate Selector
+               srts   Secondary Request to Send
+               scts   Secondary Clear to Send
+               sdcd   Secondary Received Line Signal Detector
+           "
+       REFERENCE
+           "EIA Standard RS-232-C, August 1969."
+       ::= { rs232InSigEntry 2 }
+
+   rs232InSigState OBJECT-TYPE
+       SYNTAX INTEGER { none(1), on(2), off(3) }
+       MAX-ACCESS read-only
+       STATUS current
+       DESCRIPTION
+           "The current signal state."
+       ::= { rs232InSigEntry 3 }
+
+   rs232InSigChanges OBJECT-TYPE
+       SYNTAX Counter32
+       MAX-ACCESS read-only
+       STATUS current
+       DESCRIPTION
+           "The number of times the signal has changed from
+           'on' to 'off' or from 'off' to 'on'."
+       ::= { rs232InSigEntry 4 }
+
+
+   -- Output Signal Table
+
+   rs232OutSigTable OBJECT-TYPE
+       SYNTAX SEQUENCE OF Rs232OutSigEntry
+       MAX-ACCESS not-accessible
+       STATUS current
+       DESCRIPTION
+           "A list of port output control signal entries
+           implemented and visible to the software on the port,
+           and useful to monitor."
+       ::= { rs232 6 }
+
+   rs232OutSigEntry OBJECT-TYPE
+       SYNTAX Rs232OutSigEntry
+       MAX-ACCESS not-accessible
+       STATUS current
+       DESCRIPTION
+           "Output control signal status for a hardware port."
+       INDEX { rs232OutSigPortIndex, rs232OutSigName }
+       ::= { rs232OutSigTable 1 }
+
+
+
+
+
+
+   Rs232OutSigEntry ::=
+       SEQUENCE {
+           rs232OutSigPortIndex
+               InterfaceIndex,
+           rs232OutSigName
+               INTEGER,
+           rs232OutSigState
+               INTEGER,
+           rs232OutSigChanges
+               Counter32
+       }
+
+   rs232OutSigPortIndex OBJECT-TYPE
+       SYNTAX InterfaceIndex
+       MAX-ACCESS read-only
+       STATUS current
+       DESCRIPTION
+           "The value of rs232PortIndex for the port to which
+           this entry belongs."
+       ::= { rs232OutSigEntry 1 }
+
+   rs232OutSigName OBJECT-TYPE
+       SYNTAX INTEGER { rts(1), cts(2), dsr(3), dtr(4), ri(5),
+                        dcd(6), sq(7), srs(8), srts(9),
+                        scts(10), sdcd(11) }
+       MAX-ACCESS read-only
+       STATUS current
+       DESCRIPTION
+           "Identification of a hardware signal, as follows:
+
+               rts    Request to Send
+               cts    Clear to Send
+               dsr    Data Set Ready
+               dtr    Data Terminal Ready
+               ri     Ring Indicator
+               dcd    Received Line Signal Detector
+               sq     Signal Quality Detector
+               srs    Data Signaling Rate Selector
+               srts   Secondary Request to Send
+               scts   Secondary Clear to Send
+               sdcd   Secondary Received Line Signal Detector
+           "
+       REFERENCE
+           "EIA Standard RS-232-C, August 1969."
+       ::= { rs232OutSigEntry 2 }
+
+   rs232OutSigState OBJECT-TYPE
+       SYNTAX INTEGER { none(1), on(2), off(3) }
+
+
+
+
+
+       MAX-ACCESS read-only
+       STATUS current
+       DESCRIPTION
+           "The current signal state."
+       ::= { rs232OutSigEntry 3 }
+
+   rs232OutSigChanges OBJECT-TYPE
+       SYNTAX Counter32
+       MAX-ACCESS read-only
+       STATUS current
+       DESCRIPTION
+           "The number of times the signal has changed from
+           'on' to 'off' or from 'off' to 'on'."
+       ::= { rs232OutSigEntry 4 }
+
+
+   -- conformance information
+
+   rs232Conformance OBJECT IDENTIFIER ::= { rs232 7 }
+
+   rs232Groups      OBJECT IDENTIFIER ::= { rs232Conformance 1 }
+   rs232Compliances OBJECT IDENTIFIER ::= { rs232Conformance 2 }
+
+
+   -- compliance statements
+
+   rs232Compliance MODULE-COMPLIANCE
+       STATUS  current
+       DESCRIPTION
+               "The compliance statement for SNMPv2 entities
+               which have RS-232-like hardware interfaces."
+
+       MODULE  -- this module
+           MANDATORY-GROUPS { rs232Group }
+
+           GROUP   rs232AsyncGroup
+           DESCRIPTION
+               "The Asynch group is mandatory only for those
+                SNMPv2 entities which have asynchronous
+                interfaces Rs-232-like."
+
+           GROUP   rs232SyncGroup
+           DESCRIPTION
+               "The Synch group is mandatory only for those
+                SNMPv2 entities which have synchronous
+                interfaces Rs-232-like."
+       ::= { rs232Compliances 1 }
+
+
+
+
+
+
+   -- units of conformance
+
+   rs232Group    OBJECT-GROUP
+       OBJECTS { rs232Number, rs232PortIndex, rs232PortType,
+                 rs232PortInSigNumber, rs232PortOutSigNumber,
+                 rs232PortInSpeed, rs232PortOutSpeed,
+                 rs232PortInFlowType, rs232PortOutFlowType,
+                 rs232InSigPortIndex, rs232InSigName,
+                 rs232InSigState, rs232InSigChanges,
+                 rs232OutSigPortIndex, rs232OutSigName,
+                 rs232OutSigState, rs232OutSigChanges }
+       STATUS  current
+       DESCRIPTION
+               "A collection of objects providing information
+                applicable to all RS-232-like interfaces."
+       ::= { rs232Groups 1 }
+
+   rs232AsyncGroup OBJECT-GROUP
+       OBJECTS { rs232AsyncPortIndex, rs232AsyncPortBits,
+                 rs232AsyncPortStopBits, rs232AsyncPortParity,
+                 rs232AsyncPortAutobaud, rs232AsyncPortParityErrs,
+                 rs232AsyncPortFramingErrs, rs232AsyncPortOverrunErrs }
+       STATUS  current
+       DESCRIPTION
+               "A collection of objects providing information
+                applicable to asynchronous RS-232-like interfaces."
+       ::= { rs232Groups 2 }
+
+   rs232SyncGroup OBJECT-GROUP
+       OBJECTS { rs232SyncPortIndex, rs232SyncPortClockSource,
+                 rs232SyncPortFrameCheckErrs,
+                 rs232SyncPortTransmitUnderrunErrs,
+                 rs232SyncPortReceiveOverrunErrs,
+                 rs232SyncPortInterruptedFrames,
+                 rs232SyncPortAbortedFrames }
+       STATUS  current
+       DESCRIPTION
+               "A collection of objects providing information
+                applicable to synchronous RS-232-like interfaces."
+       ::= { rs232Groups 3 }
+
+   rs232SyncSDLCGroup OBJECT-GROUP
+       OBJECTS { rs232SyncPortRole,
+                 rs232SyncPortEncoding,
+                 rs232SyncPortRTSControl,
+                 rs232SyncPortRTSCTSDelay,
+                 rs232SyncPortMode,
+                 rs232SyncPortIdlePattern,
+
+
+
+
+
+                 rs232SyncPortMinFlags }
+       STATUS  current
+       DESCRIPTION
+               "A collection of objects providing information
+                applicable to synchronous RS-232-like interfaces
+                running SDLC."
+       ::= { rs232Groups 4 }
+
+   END
diff --git a/contrib/mibs/SNMP-COMMUNITY-MIB.txt b/contrib/mibs/SNMP-COMMUNITY-MIB.txt
new file mode 100644 (file)
index 0000000..9c8e185
--- /dev/null
@@ -0,0 +1,455 @@
+      SNMP-COMMUNITY-MIB DEFINITIONS ::= BEGIN
+
+      IMPORTS
+          IpAddress,
+          MODULE-IDENTITY,
+          OBJECT-TYPE,
+          Integer32,
+          snmpModules
+              FROM SNMPv2-SMI
+          RowStatus,
+          StorageType
+              FROM SNMPv2-TC
+          SnmpAdminString,
+          SnmpEngineID
+              FROM SNMP-FRAMEWORK-MIB
+          SnmpTagValue,
+          snmpTargetAddrEntry
+              FROM SNMP-TARGET-MIB
+          MODULE-COMPLIANCE,
+          OBJECT-GROUP
+              FROM SNMPv2-CONF;
+
+      snmpCommunityMIB MODULE-IDENTITY
+          LAST-UPDATED "200003060000Z"          -- 6 Mar 2000, midnight
+          ORGANIZATION "SNMPv3 Working Group"
+          CONTACT-INFO "WG-email:   snmpv3@lists.tislabs.com
+                        Subscribe:  majordomo@lists.tislabs.com
+                                    In msg body:  subscribe snmpv3
+
+                        Chair:      Russ Mundy
+                                    TIS Labs at Network Associates
+                        Postal:     3060 Washington Rd
+                                    Glenwood MD 21738
+                                    USA
+                        Email:      mundy@tislabs.com
+                        phone:      +1-301-854-6889
+
+                        Co-editor:  Rob Frye
+                                    CoSine Communications
+                        Postal:     1200 Bridge Parkway
+                                    Redwood City, CA 94065
+                                    USA
+                        E-mail:     rfrye@cosinecom.com
+                        Phone:      +1 703 725 1130
+
+                        Co-editor:  David B. Levi
+                                    Nortel Networks
+                        Postal:     3505 Kesterwood Drive
+                                    Knoxville, TN 37918
+                        E-mail:     dlevi@nortelnetworks.com
+                        Phone:      +1 423 686 0432
+
+                        Co-editor:  Shawn A. Routhier
+                                    Integrated Systems Inc.
+                        Postal:     333 North Ave 4th Floor
+                                    Wakefield, MA 01880
+                        E-mail:     sar@epilogue.com
+                        Phone:      +1 781 245 0804
+
+                        Co-editor:  Bert Wijnen
+                                    Lucent Technologies
+                        Postal:     Schagen 33
+                                    3461 GL Linschoten
+                                    Netherlands
+                        Email:      bwijnen@lucent.com
+                        Phone:      +31-348-407-775
+                       "
+
+              DESCRIPTION
+                  "This MIB module defines objects to help support coexistence
+                   between SNMPv1, SNMPv2, and SNMPv3."
+              REVISION "200003060000Z" -- 6 Mar 2000
+              DESCRIPTION "This version published as RFC 2576."
+              REVISION "199905130000Z" -- 13 May 1999
+              DESCRIPTION "The Initial Revision"
+          ::= { snmpModules 18 }
+
+      -- Administrative assignments ****************************************
+
+      snmpCommunityMIBObjects     OBJECT IDENTIFIER ::= { snmpCommunityMIB 1 }
+      snmpCommunityMIBConformance OBJECT IDENTIFIER ::= { snmpCommunityMIB 2 }
+
+      --
+      -- The snmpCommunityTable contains a database of community strings.
+      -- This table provides mappings between community strings, and the
+      -- parameters required for View-based Access Control.
+      --
+
+      snmpCommunityTable OBJECT-TYPE
+          SYNTAX       SEQUENCE OF SnmpCommunityEntry
+          MAX-ACCESS   not-accessible
+          STATUS       current
+          DESCRIPTION
+              "The table of community strings configured in the SNMP
+               engine's Local Configuration Datastore (LCD)."
+          ::= { snmpCommunityMIBObjects 1 }
+
+      snmpCommunityEntry OBJECT-TYPE
+          SYNTAX       SnmpCommunityEntry
+          MAX-ACCESS   not-accessible
+          STATUS       current
+          DESCRIPTION
+              "Information about a particular community string."
+          INDEX       { IMPLIED snmpCommunityIndex }
+          ::= { snmpCommunityTable 1 }
+
+      SnmpCommunityEntry ::= SEQUENCE {
+          snmpCommunityIndex               SnmpAdminString,
+          snmpCommunityName                OCTET STRING,
+          snmpCommunitySecurityName        SnmpAdminString,
+          snmpCommunityContextEngineID     SnmpEngineID,
+          snmpCommunityContextName         SnmpAdminString,
+          snmpCommunityTransportTag        SnmpTagValue,
+          snmpCommunityStorageType         StorageType,
+          snmpCommunityStatus              RowStatus
+      }
+
+      snmpCommunityIndex OBJECT-TYPE
+          SYNTAX      SnmpAdminString (SIZE(1..32))
+          MAX-ACCESS  not-accessible
+          STATUS      current
+          DESCRIPTION
+              "The unique index value of a row in this table."
+          ::= { snmpCommunityEntry 1 }
+
+      snmpCommunityName OBJECT-TYPE
+          SYNTAX       OCTET STRING
+          MAX-ACCESS   read-create
+          STATUS       current
+          DESCRIPTION
+              "The community string for which a row in this table
+               represents a configuration."
+          ::= { snmpCommunityEntry 2 }
+
+      snmpCommunitySecurityName OBJECT-TYPE
+          SYNTAX       SnmpAdminString (SIZE(1..32))
+          MAX-ACCESS   read-create
+          STATUS       current
+          DESCRIPTION
+              "A human readable string representing the corresponding
+               value of snmpCommunityName in a Security Model
+               independent format."
+          ::= { snmpCommunityEntry 3 }
+
+      snmpCommunityContextEngineID OBJECT-TYPE
+          SYNTAX       SnmpEngineID
+
+
+
+
+
+
+
+          MAX-ACCESS   read-create
+          STATUS       current
+          DESCRIPTION
+              "The contextEngineID indicating the location of the
+               context in which management information is accessed
+               when using the community string specified by the
+               corresponding instance of snmpCommunityName.
+
+               The default value is the snmpEngineID of the entity in
+               which this object is instantiated."
+          ::= { snmpCommunityEntry 4 }
+
+      snmpCommunityContextName OBJECT-TYPE
+          SYNTAX       SnmpAdminString (SIZE(0..32))
+          MAX-ACCESS   read-create
+          STATUS       current
+          DESCRIPTION
+              "The context in which management information is accessed
+               when using the community string specified by the corresponding
+               instance of snmpCommunityName."
+          DEFVAL      { ''H }   -- the empty string
+          ::= { snmpCommunityEntry 5 }
+
+      snmpCommunityTransportTag OBJECT-TYPE
+          SYNTAX       SnmpTagValue
+          MAX-ACCESS   read-create
+          STATUS       current
+          DESCRIPTION
+              "This object specifies a set of transport endpoints
+               from which an agent will accept management requests.
+               If a management request containing this community
+               is received on a transport endpoint other than the
+               transport endpoints identified by this object, the
+               request is deemed unauthentic.
+
+               The transports identified by this object are specified
+               in the snmpTargetAddrTable.  Entries in that table
+               whose snmpTargetAddrTagList contains this tag value
+               are identified.
+
+               If the value of this object has zero-length, transport
+               endpoints are not checked when authenticating messages
+               containing this community string."
+          DEFVAL      { ''H }   -- the empty string
+          ::= { snmpCommunityEntry 6 }
+
+      snmpCommunityStorageType OBJECT-TYPE
+
+
+
+
+
+
+
+          SYNTAX       StorageType
+          MAX-ACCESS   read-create
+          STATUS       current
+          DESCRIPTION
+              "The storage type for this conceptual row in the
+               snmpCommunityTable.  Conceptual rows having the value
+               'permanent' need not allow write-access to any
+               columnar object in the row."
+          ::= { snmpCommunityEntry 7 }
+
+      snmpCommunityStatus OBJECT-TYPE
+          SYNTAX       RowStatus
+          MAX-ACCESS   read-create
+          STATUS       current
+          DESCRIPTION
+              "The status of this conceptual row in the snmpCommunityTable.
+
+               An entry in this table is not qualified for activation
+               until instances of all corresponding columns have been
+               initialized, either through default values, or through
+               Set operations.  The snmpCommunityName and
+               snmpCommunitySecurityName objects must be explicitly set.
+
+               There is no restriction on setting columns in this table
+               when the value of snmpCommunityStatus is active(1)."
+          ::= { snmpCommunityEntry 8 }
+
+      --
+      -- The snmpTargetAddrExtTable
+      --
+
+      snmpTargetAddrExtTable OBJECT-TYPE
+          SYNTAX       SEQUENCE OF SnmpTargetAddrExtEntry
+          MAX-ACCESS   not-accessible
+          STATUS       current
+          DESCRIPTION
+              "The table of mask and mms values associated with the
+               snmpTargetAddrTable.
+
+               The snmpTargetAddrExtTable augments the
+               snmpTargetAddrTable with a transport address mask value
+               and a maximum message size value.  The transport address
+               mask allows entries in the snmpTargetAddrTable to define
+               a set of addresses instead of just a single address.
+               The maximum message size value allows the maximum
+               message size of another SNMP entity to be configured for
+               use in SNMPv1 (and SNMPv2c) transactions, where the
+               message format does not specify a maximum message size."
+          ::= { snmpCommunityMIBObjects 2 }
+
+      snmpTargetAddrExtEntry OBJECT-TYPE
+          SYNTAX       SnmpTargetAddrExtEntry
+          MAX-ACCESS   not-accessible
+
+
+
+
+
+
+
+          STATUS       current
+          DESCRIPTION
+              "Information about a particular mask and mms value."
+          AUGMENTS       { snmpTargetAddrEntry }
+          ::= { snmpTargetAddrExtTable 1 }
+
+      SnmpTargetAddrExtEntry ::= SEQUENCE {
+          snmpTargetAddrTMask              OCTET STRING,
+          snmpTargetAddrMMS                Integer32
+      }
+
+      snmpTargetAddrTMask OBJECT-TYPE
+          SYNTAX      OCTET STRING (SIZE (0..255))
+          MAX-ACCESS  read-create
+          STATUS      current
+          DESCRIPTION
+              "The mask value associated with an entry in the
+               snmpTargetAddrTable.  The value of this object must
+               have the same length as the corresponding instance of
+               snmpTargetAddrTAddress, or must have length 0.  An
+               attempt to set it to any other value will result in
+               an inconsistentValue error.
+
+               The value of this object allows an entry in the
+               snmpTargetAddrTable to specify multiple addresses.
+               The mask value is used to select which bits of
+               a transport address must match bits of the corresponding
+               instance of snmpTargetAddrTAddress, in order for the
+               transport address to match a particular entry in the
+               snmpTargetAddrTable.  Bits which are 1 in the mask
+               value indicate bits in the transport address which
+               must match bits in the snmpTargetAddrTAddress value.
+               Bits which are 0 in the mask indicate bits in the
+               transport address which need not match.  If the
+               length of the mask is 0, the mask should be treated
+               as if all its bits were 1 and its length were equal
+               to the length of the corresponding value of
+               snmpTargetAddrTable.
+
+               This object may not be modified while the value of the
+               corresponding instance of snmpTargetAddrRowStatus is
+               active(1).  An attempt to set this object in this case
+               will result in an inconsistentValue error."
+          DEFVAL { ''H }
+          ::= { snmpTargetAddrExtEntry 1 }
+
+      snmpTargetAddrMMS OBJECT-TYPE
+          SYNTAX      Integer32 (484..65535)
+          MAX-ACCESS  read-create
+          STATUS      current
+          DESCRIPTION
+              "The maximum message size value associated with an entry
+               in the snmpTargetAddrTable."
+          DEFVAL { 2048 }
+          ::= { snmpTargetAddrExtEntry 2 }
+
+      --
+      -- The snmpTrapAddress and snmpTrapCommunity objects are included
+      -- in notifications that are forwarded by a proxy, which were
+      -- originally received as SNMPv1 Trap messages.
+      --
+
+      snmpTrapAddress OBJECT-TYPE
+          SYNTAX      IpAddress
+          MAX-ACCESS  accessible-for-notify
+          STATUS      current
+          DESCRIPTION
+              "The value of the agent-addr field of a Trap PDU which
+               is forwarded by a proxy forwarder application using
+               an SNMP version other than SNMPv1.  The value of this
+
+
+
+
+
+
+
+               object SHOULD contain the value of the agent-addr field
+               from the original Trap PDU as generated by an SNMPv1
+               agent."
+          ::= { snmpCommunityMIBObjects 3 }
+
+      snmpTrapCommunity OBJECT-TYPE
+          SYNTAX      OCTET STRING
+          MAX-ACCESS  accessible-for-notify
+          STATUS      current
+          DESCRIPTION
+              "The value of the community string field of an SNMPv1
+               message containing a Trap PDU which is forwarded by
+               a proxy forwarder application using an SNMP version
+               other than SNMPv1.  The value of this object SHOULD
+               contain the value of the community string field from
+               the original SNMPv1 message containing a Trap PDU as
+               generated by an SNMPv1 agent."
+          ::= { snmpCommunityMIBObjects 4 }
+
+      -- Conformance Information *******************************************
+
+      snmpCommunityMIBCompliances OBJECT IDENTIFIER
+                                  ::= { snmpCommunityMIBConformance 1 }
+      snmpCommunityMIBGroups      OBJECT IDENTIFIER
+                                  ::= { snmpCommunityMIBConformance 2 }
+
+      -- Compliance statements
+
+      snmpCommunityMIBCompliance MODULE-COMPLIANCE
+          STATUS       current
+          DESCRIPTION
+              "The compliance statement for SNMP engines which
+               implement the SNMP-COMMUNITY-MIB."
+
+          MODULE       -- this module
+              MANDATORY-GROUPS { snmpCommunityObjectGroup }
+
+              OBJECT           snmpCommunityName
+              MIN-ACCESS       read-only
+              DESCRIPTION     "Write access is not required."
+
+              OBJECT           snmpCommunitySecurityName
+              MIN-ACCESS       read-only
+              DESCRIPTION     "Write access is not required."
+
+              OBJECT           snmpCommunityContextEngineID
+              MIN-ACCESS       read-only
+              DESCRIPTION     "Write access is not required."
+
+              OBJECT           snmpCommunityContextName
+              MIN-ACCESS       read-only
+              DESCRIPTION     "Write access is not required."
+
+              OBJECT           snmpCommunityTransportTag
+              MIN-ACCESS       read-only
+              DESCRIPTION     "Write access is not required."
+
+              OBJECT           snmpCommunityStorageType
+              MIN-ACCESS       read-only
+              DESCRIPTION     "Write access is not required."
+
+              OBJECT           snmpCommunityStatus
+              MIN-ACCESS       read-only
+              DESCRIPTION     "Write access is not required."
+
+          ::= { snmpCommunityMIBCompliances 1 }
+
+      snmpProxyTrapForwardCompliance MODULE-COMPLIANCE
+          STATUS       current
+          DESCRIPTION
+              "The compliance statement for SNMP engines which
+               contain a proxy forwarding application which is
+               capable of forwarding SNMPv1 traps using SNMPv2c
+               or SNMPv3."
+          MODULE       -- this module
+              MANDATORY-GROUPS { snmpProxyTrapForwardGroup }
+          ::= { snmpCommunityMIBCompliances 2 }
+
+      snmpCommunityObjectGroup OBJECT-GROUP
+          OBJECTS {
+              snmpCommunityIndex,
+              snmpCommunityName,
+              snmpCommunitySecurityName,
+              snmpCommunityContextEngineID,
+              snmpCommunityContextName,
+              snmpCommunityTransportTag,
+              snmpCommunityStorageType,
+              snmpCommunityStatus,
+              snmpTargetAddrTMask,
+              snmpTargetAddrMMS
+          }
+          STATUS       current
+          DESCRIPTION
+              "A collection of objects providing for configuration
+               of community strings for SNMPv1 (and SNMPv2c) usage."
+          ::= { snmpCommunityMIBGroups 1 }
+
+      snmpProxyTrapForwardGroup OBJECT-GROUP
+          OBJECTS {
+              snmpTrapAddress,
+              snmpTrapCommunity
+          }
+          STATUS       current
+          DESCRIPTION
+              "Objects which are used by proxy forwarding applications
+               when translating traps between SNMP versions.  These are
+               used to preserve SNMPv1-specific information when
+               translating to SNMPv2c or SNMPv3."
+          ::= { snmpCommunityMIBGroups 3 }
+
+      END
diff --git a/contrib/mibs/SNMP-PROXY-MIB.txt b/contrib/mibs/SNMP-PROXY-MIB.txt
new file mode 100644 (file)
index 0000000..acbbd14
--- /dev/null
@@ -0,0 +1,274 @@
+   SNMP-PROXY-MIB DEFINITIONS ::= BEGIN
+
+   IMPORTS
+       MODULE-IDENTITY,
+       OBJECT-TYPE,
+       snmpModules
+           FROM SNMPv2-SMI
+
+       RowStatus,
+       StorageType
+           FROM SNMPv2-TC
+
+       SnmpEngineID,
+       SnmpAdminString
+           FROM SNMP-FRAMEWORK-MIB
+
+       SnmpTagValue
+           FROM SNMP-TARGET-MIB
+
+       MODULE-COMPLIANCE,
+       OBJECT-GROUP
+           FROM SNMPv2-CONF;
+
+   snmpProxyMIB MODULE-IDENTITY
+       LAST-UPDATED "9706140000Z"
+       ORGANIZATION "IETF SNMPv3 Working Group"
+       CONTACT-INFO
+           "WG-email:   snmpv3@tis.com
+            Subscribe:  majordomo@tis.com
+                        In message body:  subscribe snmpv3
+
+            Chair:      Russ Mundy
+                        Trusted Information Systems
+            Postal:     3060 Washington Rd
+                        Glenwood MD 21738
+                        USA
+            Email:      mundy@tis.com
+            Phone:      +1-301-854-6889
+
+            Co-editor:  David B. Levi
+                        SNMP Research, Inc.
+            Postal:     3001 Kimberlin Heights Road
+                        Knoxville, TN 37920-9716
+            E-mail:     levi@snmp.com
+            Phone:      +1 423 573 1434
+
+            Co-editor:  Paul Meyer
+                        Secure Computing Corporation
+            Postal:     2675 Long Lake Road
+                        Roseville, MN 55113
+            E-mail:     paul_meyer@securecomputing.com
+            Phone:      +1 612 628 1592
+
+            Co-editor:  Bob Stewart
+                        Cisco Systems, Inc.
+            Postal:     170 West Tasman Drive
+                        San Jose, CA 95134-1706
+            E-mail:     bstewart@cisco.com
+            Phone:      +1 603 654 6923"
+       DESCRIPTION
+           "This MIB module defines MIB objects which provide
+            mechanisms to remotely configure the parameters
+            used by a proxy forwarding application."
+       REVISION    "9707140000Z"
+       DESCRIPTION
+           "The initial revision."
+       ::= { snmpModules 14 }
+
+   snmpProxyObjects        OBJECT IDENTIFIER ::= { snmpProxyMIB 1 }
+   snmpProxyConformance    OBJECT IDENTIFIER ::= { snmpProxyMIB 3 }
+
+   --
+   --
+   -- The snmpProxyObjects group
+   --
+   --
+
+   snmpProxyTable OBJECT-TYPE
+       SYNTAX      SEQUENCE OF SnmpProxyEntry
+       MAX-ACCESS  not-accessible
+       STATUS      current
+       DESCRIPTION
+           "The table of translation parameters used by proxy forwarder
+            applications for forwarding SNMP messages."
+       ::= { snmpProxyObjects 2 }
+
+   snmpProxyEntry OBJECT-TYPE
+       SYNTAX      SnmpProxyEntry
+       MAX-ACCESS  not-accessible
+       STATUS      current
+       DESCRIPTION
+           "A set of translation parameters used by a proxy forwarder
+            application for forwarding SNMP messages.
+
+            Entries in the snmpProxyTable are created and deleted
+            using the snmpProxyRowStatus object."
+       INDEX { IMPLIED snmpProxyName }
+       ::= { snmpProxyTable 1 }
+
+   SnmpProxyEntry ::= SEQUENCE {
+       snmpProxyName               SnmpAdminString,
+       snmpProxyType               INTEGER,
+       snmpProxyContextEngineID    SnmpEngineID,
+       snmpProxyContextName        SnmpAdminString,
+       snmpProxyTargetParamsIn     SnmpAdminString,
+       snmpProxySingleTargetOut    SnmpAdminString,
+       snmpProxyMultipleTargetOut  SnmpTagValue,
+       snmpProxyStorageType        StorageType,
+       snmpProxyRowStatus          RowStatus
+   }
+
+   snmpProxyName OBJECT-TYPE
+       SYNTAX      SnmpAdminString (SIZE(1..32))
+       MAX-ACCESS  not-accessible
+       STATUS      current
+       DESCRIPTION
+           "The locally arbitrary, but unique identifier associated
+            with this snmpProxyEntry."
+       ::= { snmpProxyEntry 1 }
+
+   snmpProxyType OBJECT-TYPE
+       SYNTAX      INTEGER {
+                       read(1),
+                       write(2),
+                       trap(3),
+                       inform(4)
+                   }
+       MAX-ACCESS  read-create
+       STATUS      current
+       DESCRIPTION
+           "The type of message that may be forwarded using
+            the translation parameters defined by this entry."
+       ::= { snmpProxyEntry 2 }
+
+   snmpProxyContextEngineID OBJECT-TYPE
+       SYNTAX      SnmpEngineID
+       MAX-ACCESS  read-create
+       STATUS      current
+       DESCRIPTION
+           "The contextEngineID contained in messages that
+            may be forwarded using the translation parameters
+            defined by this entry."
+       ::= { snmpProxyEntry 3 }
+
+   snmpProxyContextName OBJECT-TYPE
+       SYNTAX      SnmpAdminString
+       MAX-ACCESS  read-create
+       STATUS      current
+       DESCRIPTION
+           "The contextName contained in messages that may be
+            forwarded using the translation parameters defined
+            by this entry.
+
+            This object is optional, and if not supported, the
+            contextName contained in a message is ignored when
+            selecting an entry in the snmpProxyTable."
+       ::= { snmpProxyEntry 4 }
+
+   snmpProxyTargetParamsIn OBJECT-TYPE
+       SYNTAX      SnmpAdminString
+       MAX-ACCESS  read-create
+       STATUS      current
+       DESCRIPTION
+           "This object selects an entry in the snmpTargetParamsTable.
+            The selected entry is used to determine which row of the
+            snmpProxyTable to use for forwarding received messages."
+       ::= { snmpProxyEntry 5 }
+
+   snmpProxySingleTargetOut OBJECT-TYPE
+       SYNTAX      SnmpAdminString
+       MAX-ACCESS  read-create
+       STATUS      current
+       DESCRIPTION
+           "This object selects a management target defined in the
+            snmpTargetAddrTable (in the SNMP-TARGET-MIB).  The
+            selected target is defined by an entry in the
+            snmpTargetAddrTable whose index value (snmpTargetAddrName)
+            is equal to this object.
+
+            This object is only used when selection of a single
+            target is required (i.e. when forwarding an incoming
+            read or write request)."
+       ::= { snmpProxyEntry 6 }
+
+   snmpProxyMultipleTargetOut OBJECT-TYPE
+       SYNTAX      SnmpTagValue
+       MAX-ACCESS  read-create
+       STATUS      current
+       DESCRIPTION
+           "This object selects a set of management targets defined
+            in the snmpTargetAddrTable (in the SNMP-TARGET-MIB).
+
+            This object is only used when selection of multiple
+            targets is required (i.e. when forwarding an incoming
+            notification)."
+       ::= { snmpProxyEntry 7 }
+
+   snmpProxyStorageType OBJECT-TYPE
+       SYNTAX      StorageType
+       MAX-ACCESS  read-create
+       STATUS      current
+       DESCRIPTION
+           "The storage type of this conceptual row."
+       ::= { snmpProxyEntry 8 }
+
+   snmpProxyRowStatus OBJECT-TYPE
+       SYNTAX      RowStatus
+       MAX-ACCESS  read-create
+       STATUS      current
+       DESCRIPTION
+           "The status of this conceptual row.
+
+            To create a row in this table, a manager must
+            set this object to either createAndGo(4) or
+            createAndWait(5).
+
+            The following objects may not be modified while the
+            value of this object is active(1):
+                - snmpProxyType
+                - snmpProxyContextEngineID
+                - snmpProxyContextName
+                - snmpProxyTargetParamsIn
+                - snmpProxySingleTargetOut
+                - snmpProxyMultipleTargetOut"
+       ::= { snmpProxyEntry 9 }
+
+   --
+   --
+   -- Conformance information
+   --
+   --
+
+   snmpProxyCompliances OBJECT IDENTIFIER ::=
+                                            { snmpProxyConformance 1 }
+   snmpProxyGroups      OBJECT IDENTIFIER ::=
+                                            { snmpProxyConformance 2 }
+
+   --
+   --
+   -- Compliance statements
+   --
+   --
+
+   snmpProxyCompliance MODULE-COMPLIANCE
+       STATUS      current
+       DESCRIPTION
+           "The compliance statement for SNMP entities which include
+            a proxy forwarding application."
+       MODULE SNMP-TARGET-MIB
+           MANDATORY-GROUPS { snmpTargetBasicGroup,
+                              snmpTargetResponseGroup }
+       MODULE -- This Module
+           MANDATORY-GROUPS { snmpProxyGroup }
+       ::= { snmpProxyCompliances 1 }
+
+   snmpProxyGroup OBJECT-GROUP
+       OBJECTS {
+           snmpProxyType,
+           snmpProxyContextEngineID,
+           snmpProxyContextName,
+           snmpProxyTargetParamsIn,
+           snmpProxySingleTargetOut,
+           snmpProxyMultipleTargetOut,
+           snmpProxyStorageType,
+           snmpProxyRowStatus
+       }
+       STATUS      current
+       DESCRIPTION
+           "A collection of objects providing remote configuration of
+            management target translation parameters for use by
+            proxy forwarder applications."
+       ::= { snmpProxyGroups 3 }
+
+   END
diff --git a/contrib/mibs/SNMP-REPEATER-MIB.txt b/contrib/mibs/SNMP-REPEATER-MIB.txt
new file mode 100644 (file)
index 0000000..08bbfbc
--- /dev/null
@@ -0,0 +1,1436 @@
+   SNMP-REPEATER-MIB DEFINITIONS ::= BEGIN
+
+   IMPORTS
+       Counter, TimeTicks, Gauge
+                                           FROM RFC1155-SMI
+       DisplayString                       FROM RFC1213-MIB
+       TRAP-TYPE                           FROM RFC-1215
+       OBJECT-TYPE                         FROM RFC-1212
+       mib-2                               FROM SNMPv2-SMI;
+
+
+   snmpDot3RptrMgt OBJECT IDENTIFIER ::= { mib-2 22 }
+
+
+   -- All representations of MAC addresses in this MIB Module use,
+   -- as a textual convention (i.e., this convention does not affect
+   -- their encoding), the data type:
+
+   MacAddress ::= OCTET STRING (SIZE (6))    -- a 6 octet address in
+                                             -- the "canonical" order
+   -- defined by IEEE 802.1a, i.e., as if it were transmitted least
+   -- significant bit first.
+
+
+   --                      References
+   --
+   -- The following references are used throughout this MIB:
+   --
+
+
+
+
+
+   -- [IEEE 802.3 Std]
+   --    refers to IEEE 802.3/ISO 8802-3 Information processing
+   --    systems - Local area networks - Part 3: Carrier sense
+   --    multiple access with collision detection (CSMA/CD)
+   --    access method and physical layer specifications
+   --    (2nd edition, September 21, 1990).
+   --
+   -- [IEEE 802.3 Rptr Mgt]
+   --    refers to IEEE P802.3K, 'Layer Management for 10 Mb/s
+   --    Baseband Repeaters, Section 19,' Draft Supplement to
+   --    ANSI/IEEE 802.3, (Draft 8, April 9, 1992)
+
+
+   --                      MIB Groups
+   --
+   -- The rptrBasicPackage group is mandatory.
+   -- The rptrMonitorPackage and rptrAddrTrackPackage
+   -- groups are optional.
+
+
+   rptrBasicPackage
+       OBJECT IDENTIFIER ::= { snmpDot3RptrMgt 1 }
+
+   rptrMonitorPackage
+       OBJECT IDENTIFIER ::= { snmpDot3RptrMgt 2 }
+
+   rptrAddrTrackPackage
+       OBJECT IDENTIFIER ::= { snmpDot3RptrMgt 3 }
+
+
+   -- object identifiers for organizing the information
+   -- in the groups by repeater, port-group, and port
+
+   rptrRptrInfo
+       OBJECT IDENTIFIER ::= { rptrBasicPackage 1 }
+   rptrGroupInfo
+       OBJECT IDENTIFIER ::= { rptrBasicPackage 2 }
+   rptrPortInfo
+       OBJECT IDENTIFIER ::= { rptrBasicPackage 3 }
+
+   rptrMonitorRptrInfo
+       OBJECT IDENTIFIER ::= { rptrMonitorPackage 1 }
+   rptrMonitorGroupInfo
+       OBJECT IDENTIFIER ::= { rptrMonitorPackage 2 }
+   rptrMonitorPortInfo
+       OBJECT IDENTIFIER ::= { rptrMonitorPackage 3 }
+
+   rptrAddrTrackRptrInfo     -- this subtree is currently unused
+
+
+
+
+
+       OBJECT IDENTIFIER ::= { rptrAddrTrackPackage 1 }
+   rptrAddrTrackGroupInfo    -- this subtree is currently unused
+       OBJECT IDENTIFIER ::= { rptrAddrTrackPackage 2 }
+   rptrAddrTrackPortInfo
+       OBJECT IDENTIFIER ::= { rptrAddrTrackPackage 3 }
+
+
+   --
+   --                    The BASIC GROUP
+   --
+   -- Implementation of the Basic Group is mandatory for all
+   -- managed repeaters.
+
+   --
+   -- Basic Repeater Information
+   --
+   -- Configuration, status, and control objects for the overall
+   -- repeater
+   --
+
+   rptrGroupCapacity OBJECT-TYPE
+       SYNTAX    INTEGER (1..1024)
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "The rptrGroupCapacity is the number of groups
+               that can be contained within the repeater.  Within
+               each managed repeater, the groups are uniquely
+               numbered in the range from 1 to rptrGroupCapacity.
+
+               Some groups may not be present in the repeater, in
+               which case the actual number of groups present
+               will be less than rptrGroupCapacity.  The number
+               of groups present will never be greater than
+               rptrGroupCapacity.
+
+               Note:  In practice, this will generally be the
+               number of field-replaceable units (i.e., modules,
+               cards, or boards) that can fit in the physical
+               repeater enclosure, and the group numbers will
+               correspond to numbers marked on the physical
+               enclosure."
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.3.2,
+               aRepeaterGroupCapacity."
+       ::= { rptrRptrInfo 1 }
+
+   rptrOperStatus OBJECT-TYPE
+
+
+
+
+
+       SYNTAX  INTEGER {
+                   other(1),            -- undefined or unknown status
+                   ok(2),               -- no known failures
+                   rptrFailure(3),      -- repeater-related failure
+                   groupFailure(4),     -- group-related failure
+                   portFailure(5),      -- port-related failure
+                   generalFailure(6)    -- failure, unspecified type
+               }
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "The rptrOperStatus object indicates the
+               operational state of the repeater.  The
+               rptrHealthText object may be consulted for more
+               specific information about the state of the
+               repeater's health.
+
+               In the case of multiple kinds of failures (e.g.,
+               repeater failure and port failure), the value of
+               this attribute shall reflect the highest priority
+               failure in the following order, listed highest
+               priority first:
+
+                   rptrFailure(3)
+                   groupFailure(4)
+                   portFailure(5)
+                   generalFailure(6)."
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.3.2,
+               aRepeaterHealthState."
+       ::= { rptrRptrInfo 2 }
+
+   rptrHealthText OBJECT-TYPE
+       SYNTAX    DisplayString (SIZE (0..255))
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "The health text object is a text string that
+               provides information relevant to the operational
+               state of the repeater.  Agents may use this string
+               to provide detailed information on current
+               failures, including how they were detected, and/or
+               instructions for problem resolution.  The contents
+               are agent-specific."
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.3.2,
+               aRepeaterHealthText."
+       ::= { rptrRptrInfo 3 }
+
+
+
+
+
+   rptrReset OBJECT-TYPE
+       SYNTAX    INTEGER {
+                     noReset(1),
+                     reset(2)
+                 }
+       ACCESS    read-write
+       STATUS    mandatory
+       DESCRIPTION
+               "Setting this object to reset(2) causes a
+               transition to the START state of Fig 9-2 in
+               section 9 [IEEE 802.3 Std].
+
+               Setting this object to noReset(1) has no effect.
+               The agent will always return the value noReset(1)
+               when this object is read.
+
+               After receiving a request to set this variable to
+               reset(2), the agent is allowed to delay the reset
+               for a short period.  For example, the implementor
+               may choose to delay the reset long enough to allow
+               the SNMP response to be transmitted.  In any
+               event, the SNMP response must be transmitted.
+
+               This action does not reset the management counters
+               defined in this document nor does it affect the
+               portAdminStatus parameters.  Included in this
+               action is the execution of a disruptive Self-Test
+               with the following characteristics:  a) The nature
+               of the tests is not specified.  b) The test resets
+               the repeater but without affecting management
+               information about the repeater.  c) The test does
+               not inject packets onto any segment.  d) Packets
+               received during the test may or may not be
+               transferred.  e) The test does not interfere with
+               management functions.
+
+               After performing this self-test, the agent will
+               update the repeater health information (including
+               rptrOperStatus and rptrHealthText), and send a
+               rptrHealth trap."
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.3.3,
+               acResetRepeater."
+       ::= { rptrRptrInfo 4 }
+
+   rptrNonDisruptTest OBJECT-TYPE
+       SYNTAX    INTEGER {
+                     noSelfTest(1),
+
+
+
+
+
+                     selfTest(2)
+                 }
+       ACCESS    read-write
+       STATUS    mandatory
+       DESCRIPTION
+               "Setting this object to selfTest(2) causes the
+               repeater to perform a agent-specific, non-
+               disruptive self-test that has the following
+               characteristics:  a) The nature of the tests is
+               not specified.  b) The test does not change the
+               state of the repeater or management information
+               about the repeater.  c) The test does not inject
+               packets onto any segment.  d) The test does not
+               prevent the relay of any packets.  e) The test
+               does not interfere with management functions.
+
+               After performing this test, the agent will update
+               the repeater health information (including
+               rptrOperStatus and rptrHealthText) and send a
+               rptrHealth trap.
+
+               Note that this definition allows returning an
+               'okay' result after doing a trivial test.
+
+               Setting this object to noSelfTest(1) has no
+               effect.  The agent will always return the value
+               noSelfTest(1) when this object is read."
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.3.3,
+               acExecuteNonDisruptiveSelfTest."
+       ::= { rptrRptrInfo 5 }
+
+   rptrTotalPartitionedPorts OBJECT-TYPE
+       SYNTAX    Gauge
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "This object returns the total number of ports in
+               the repeater whose current state meets all three
+               of the following criteria:  rptrPortOperStatus
+               does not have the value notPresent(3),
+               rptrPortAdminStatus is enabled(1), and
+               rptrPortAutoPartitionState is autoPartitioned(2)."
+       ::= { rptrRptrInfo 6 }
+
+
+
+
+
+
+
+
+
+   --
+   -- The Basic Port Group Table
+   --
+
+   rptrGroupTable OBJECT-TYPE
+       SYNTAX    SEQUENCE OF RptrGroupEntry
+       ACCESS    not-accessible
+       STATUS    mandatory
+       DESCRIPTION
+               "Table of descriptive and status information about
+               the groups of ports."
+       ::= { rptrGroupInfo 1 }
+
+   rptrGroupEntry OBJECT-TYPE
+       SYNTAX    RptrGroupEntry
+       ACCESS    not-accessible
+       STATUS    mandatory
+       DESCRIPTION
+               "An entry in the table, containing information
+               about a single group of ports."
+       INDEX    { rptrGroupIndex }
+       ::= { rptrGroupTable 1 }
+
+   RptrGroupEntry ::=
+       SEQUENCE {
+           rptrGroupIndex
+               INTEGER,
+           rptrGroupDescr
+               DisplayString,
+           rptrGroupObjectID
+               OBJECT IDENTIFIER,
+           rptrGroupOperStatus
+               INTEGER,
+           rptrGroupLastOperStatusChange
+               TimeTicks,
+           rptrGroupPortCapacity
+               INTEGER
+       }
+
+   rptrGroupIndex OBJECT-TYPE
+       SYNTAX    INTEGER (1..1024)
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "This object identifies the group within the
+               repeater for which this entry contains
+               information.  This value is never greater than
+               rptrGroupCapacity."
+
+
+
+
+
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.5.2,
+               aGroupID."
+       ::= { rptrGroupEntry 1 }
+
+   rptrGroupDescr OBJECT-TYPE
+       SYNTAX    DisplayString (SIZE (0..255))
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "A textual description of the group.  This value
+               should include the full name and version
+               identification of the group's hardware type and
+               indicate how the group is differentiated from
+               other types of groups in the repeater.  Plug-in
+               Module, Rev A' or 'Barney Rubble 10BASE-T 4-port
+               SIMM socket Version 2.1' are examples of valid
+               group descriptions.
+
+               It is mandatory that this only contain printable
+               ASCII characters."
+       ::= { rptrGroupEntry 2 }
+
+   rptrGroupObjectID OBJECT-TYPE
+       SYNTAX    OBJECT IDENTIFIER
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "The vendor's authoritative identification of the
+               group.  This value may be allocated within the SMI
+               enterprises subtree (1.3.6.1.4.1) and provides a
+               straight-forward and unambiguous means for
+               determining what kind of group is being managed.
+
+               For example, this object could take the value
+               1.3.6.1.4.1.4242.1.2.14 if vendor 'Flintstones,
+               Inc.' was assigned the subtree 1.3.6.1.4.1.4242,
+               and had assigned the identifier
+               1.3.6.1.4.1.4242.1.2.14 to its 'Wilma Flintstone
+               6-Port FOIRL Plug-in Module.'"
+       ::= { rptrGroupEntry 3 }
+
+   rptrGroupOperStatus OBJECT-TYPE
+       SYNTAX    INTEGER {
+                     other(1),
+                     operational(2),
+                     malfunctioning(3),
+                     notPresent(4),
+
+
+
+
+
+                     underTest(5),
+                     resetInProgress(6)
+                 }
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "An object that indicates the operational status
+               of the group.
+
+               A status of notPresent(4) indicates that the group
+               is temporarily or permanently physically and/or
+               logically not a part of the repeater.  It is an
+               implementation-specific matter as to whether the
+               agent effectively removes notPresent entries from
+               the table.
+
+               A status of operational(2) indicates that the
+               group is functioning, and a status of
+               malfunctioning(3) indicates that the group is
+               malfunctioning in some way."
+       ::= { rptrGroupEntry 4 }
+
+   rptrGroupLastOperStatusChange OBJECT-TYPE
+       SYNTAX    TimeTicks
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "An object that contains the value of sysUpTime at
+               the time that the value of the rptrGroupOperStatus
+               object for this group last changed.
+
+               A value of zero indicates that the group's
+               operational status has not changed since the agent
+               last restarted."
+       ::= { rptrGroupEntry 5 }
+
+   rptrGroupPortCapacity OBJECT-TYPE
+       SYNTAX    INTEGER (1..1024)
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "The rptrGroupPortCapacity is the number of ports
+               that can be contained within the group.  Valid
+               range is 1-1024.  Within each group, the ports are
+               uniquely numbered in the range from 1 to
+               rptrGroupPortCapacity.
+
+               Note:  In practice, this will generally be the
+
+
+
+
+
+               number of ports on a module, card, or board, and
+               the port numbers will correspond to numbers marked
+               on the physical embodiment."
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.5.2,
+               aGroupPortCapacity."
+       ::= { rptrGroupEntry 6 }
+
+
+   --
+   -- The Basic Port Table
+   --
+
+   rptrPortTable OBJECT-TYPE
+       SYNTAX    SEQUENCE OF RptrPortEntry
+       ACCESS    not-accessible
+       STATUS    mandatory
+       DESCRIPTION
+               "Table of descriptive and status information about
+               the ports."
+       ::= { rptrPortInfo 1 }
+
+   rptrPortEntry OBJECT-TYPE
+       SYNTAX    RptrPortEntry
+       ACCESS    not-accessible
+       STATUS    mandatory
+       DESCRIPTION
+               "An entry in the table, containing information
+               about a single port."
+       INDEX    { rptrPortGroupIndex, rptrPortIndex }
+       ::= { rptrPortTable 1 }
+
+   RptrPortEntry ::=
+       SEQUENCE {
+           rptrPortGroupIndex
+               INTEGER,
+           rptrPortIndex
+               INTEGER,
+           rptrPortAdminStatus
+               INTEGER,
+           rptrPortAutoPartitionState
+               INTEGER,
+           rptrPortOperStatus
+               INTEGER
+       }
+
+   rptrPortGroupIndex OBJECT-TYPE
+       SYNTAX    INTEGER (1..1024)
+
+
+
+
+
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "This object identifies the group containing the
+               port for which this entry contains information."
+       ::= { rptrPortEntry 1 }
+
+   rptrPortIndex OBJECT-TYPE
+       SYNTAX    INTEGER (1..1024)
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "This object identifies the port within the group
+               for which this entry contains information.  This
+               value can never be greater than
+               rptrGroupPortCapacity for the associated group."
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.6.2,
+               aPortID."
+       ::= { rptrPortEntry 2 }
+
+   rptrPortAdminStatus OBJECT-TYPE
+       SYNTAX    INTEGER {
+                     enabled(1),
+                     disabled(2)
+                 }
+       ACCESS    read-write
+       STATUS    mandatory
+       DESCRIPTION
+               "Setting this object to disabled(2) disables the
+               port.  A disabled port neither transmits nor
+               receives.  Once disabled, a port must be
+               explicitly enabled to restore operation.  A port
+               which is disabled when power is lost or when a
+               reset is exerted shall remain disabled when normal
+               operation resumes.
+
+               The admin status takes precedence over auto-
+               partition and functionally operates between the
+               auto-partition mechanism and the AUI/PMA.
+
+               Setting this object to enabled(1) enables the port
+               and exerts a BEGIN on the port's auto-partition
+               state machine.
+
+               (In effect, when a port is disabled, the value of
+               rptrPortAutoPartitionState for that port is frozen
+               until the port is next enabled.  When the port
+
+
+
+
+
+               becomes enabled, the rptrPortAutoPartitionState
+               becomes notAutoPartitioned(1), regardless of its
+               pre-disabling state.)"
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.6.2,
+               aPortAdminState and 19.2.6.3, acPortAdminControl."
+       ::= { rptrPortEntry 3 }
+
+   rptrPortAutoPartitionState OBJECT-TYPE
+       SYNTAX    INTEGER {
+                     notAutoPartitioned(1),
+                     autoPartitioned(2)
+                 }
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "The autoPartitionState flag indicates whether the
+               port is currently partitioned by the repeater's
+               auto-partition protection.
+
+               The conditions that cause port partitioning are
+               specified in partition state machine in Section 9
+               [IEEE 802.3 Std].  They are not differentiated
+               here."
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.6.2,
+               aAutoPartitionState."
+       ::= { rptrPortEntry 4 }
+
+   rptrPortOperStatus  OBJECT-TYPE
+       SYNTAX    INTEGER {
+                     operational(1),
+                     notOperational(2),
+                     notPresent(3)
+                 }
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "This object indicates the port's operational
+               status.  The notPresent(3) status indicates the
+               port is physically removed (note this may or may
+               not be possible depending on the type of port.)
+               The operational(1) status indicates that the port
+               is enabled (see rptrPortAdminStatus) and working,
+               even though it might be auto-partitioned (see
+               rptrPortAutoPartitionState).
+
+               If this object has the value operational(1) and
+
+
+
+
+
+               rptrPortAdminStatus is set to disabled(2), it is
+               expected that this object's value will soon change
+               to notOperational(2)."
+       ::= { rptrPortEntry 5 }
+
+
+   --
+   --                    The MONITOR GROUP
+   --
+   -- Implementation of this group is optional, but within the
+   -- group all elements are mandatory.  If a managed repeater
+   -- implements any part of this group, the entire group shall
+   -- be implemented.
+
+   --
+   -- Repeater Monitor Information
+   --
+   -- Performance monitoring statistics for the repeater
+   --
+
+   rptrMonitorTransmitCollisions OBJECT-TYPE
+       SYNTAX    Counter
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "This counter is incremented every time the
+               repeater state machine enters the TRANSMIT
+               COLLISION state from any state other than ONE PORT
+               LEFT (Ref: Fig 9-2, IEEE 802.3 Std).
+
+               The approximate minimum time for rollover of this
+               counter is 16 hours."
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.3.2,
+               aTransmitCollisions."
+       ::= { rptrMonitorRptrInfo 1 }
+
+
+   --
+   -- The Group Monitor Table
+   --
+
+   rptrMonitorGroupTable OBJECT-TYPE
+       SYNTAX    SEQUENCE OF RptrMonitorGroupEntry
+       ACCESS    not-accessible
+       STATUS    mandatory
+       DESCRIPTION
+               "Table of performance and error statistics for the
+
+
+
+
+
+               groups."
+       ::= { rptrMonitorGroupInfo 1 }
+
+   rptrMonitorGroupEntry OBJECT-TYPE
+       SYNTAX    RptrMonitorGroupEntry
+       ACCESS    not-accessible
+       STATUS    mandatory
+       DESCRIPTION
+               "An entry in the table, containing total
+               performance and error statistics for a single
+               group.  Regular retrieval of the information in
+               this table provides a means of tracking the
+               performance and health of the networked devices
+               attached to this group's ports.
+
+               The counters in this table are redundant in the
+               sense that they are the summations of information
+               already available through other objects.  However,
+               these sums provide a considerable optimization of
+               network management traffic over the otherwise
+               necessary retrieval of the individual counters
+               included in each sum."
+       INDEX    { rptrMonitorGroupIndex }
+       ::= { rptrMonitorGroupTable 1 }
+
+   RptrMonitorGroupEntry ::=
+       SEQUENCE {
+           rptrMonitorGroupIndex
+               INTEGER,
+           rptrMonitorGroupTotalFrames
+               Counter,
+           rptrMonitorGroupTotalOctets
+               Counter,
+           rptrMonitorGroupTotalErrors
+               Counter
+       }
+
+   rptrMonitorGroupIndex OBJECT-TYPE
+       SYNTAX    INTEGER (1..1024)
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "This object identifies the group within the
+               repeater for which this entry contains
+               information."
+       ::= { rptrMonitorGroupEntry 1 }
+
+   rptrMonitorGroupTotalFrames OBJECT-TYPE
+
+
+
+
+
+       SYNTAX    Counter
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "The total number of frames of valid frame length
+               that have been received on the ports in this group
+               and for which the FCSError and CollisionEvent
+               signals were not asserted.  This counter is the
+               summation of the values of the
+               rptrMonitorPortReadableFrames counters for all of
+               the ports in the group.
+
+               This statistic provides one of the parameters
+               necessary for obtaining the packet error rate.
+               The approximate minimum time for rollover of this
+               counter is 80 hours."
+       ::= { rptrMonitorGroupEntry 2 }
+
+   rptrMonitorGroupTotalOctets OBJECT-TYPE
+       SYNTAX    Counter
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "The total number of octets contained in the valid
+               frames that have been received on the ports in
+               this group.  This counter is the summation of the
+               values of the rptrMonitorPortReadableOctets
+               counters for all of the ports in the group.
+
+               This statistic provides an indicator of the total
+               data transferred.  The approximate minimum time
+               for rollover of this counter is 58 minutes."
+       ::= { rptrMonitorGroupEntry 3 }
+
+   rptrMonitorGroupTotalErrors OBJECT-TYPE
+       SYNTAX    Counter
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "The total number of errors which have occurred on
+               all of the ports in this group.  This counter is
+               the summation of the values of the
+               rptrMonitorPortTotalErrors counters for all of the
+               ports in the group."
+       ::= { rptrMonitorGroupEntry 4 }
+
+   --
+   -- The Port Monitor Table
+
+
+
+
+
+   --
+
+   rptrMonitorPortTable OBJECT-TYPE
+       SYNTAX    SEQUENCE OF RptrMonitorPortEntry
+       ACCESS    not-accessible
+       STATUS    mandatory
+       DESCRIPTION
+               "Table of performance and error statistics for the
+               ports."
+       ::= { rptrMonitorPortInfo 1 }
+
+   rptrMonitorPortEntry OBJECT-TYPE
+       SYNTAX    RptrMonitorPortEntry
+       ACCESS    not-accessible
+       STATUS    mandatory
+       DESCRIPTION
+               "An entry in the table, containing performance and
+               error statistics for a single port."
+       INDEX    { rptrMonitorPortGroupIndex, rptrMonitorPortIndex }
+       ::= { rptrMonitorPortTable 1 }
+
+   RptrMonitorPortEntry ::=
+       SEQUENCE {
+           rptrMonitorPortGroupIndex
+               INTEGER,
+           rptrMonitorPortIndex
+               INTEGER,
+           rptrMonitorPortReadableFrames
+               Counter,
+           rptrMonitorPortReadableOctets
+               Counter,
+           rptrMonitorPortFCSErrors
+               Counter,
+           rptrMonitorPortAlignmentErrors
+               Counter,
+           rptrMonitorPortFrameTooLongs
+               Counter,
+           rptrMonitorPortShortEvents
+               Counter,
+           rptrMonitorPortRunts
+               Counter,
+           rptrMonitorPortCollisions
+               Counter,
+           rptrMonitorPortLateEvents
+               Counter,
+           rptrMonitorPortVeryLongEvents
+               Counter,
+           rptrMonitorPortDataRateMismatches
+
+
+
+
+
+               Counter,
+           rptrMonitorPortAutoPartitions
+               Counter,
+           rptrMonitorPortTotalErrors
+               Counter
+       }
+
+   rptrMonitorPortGroupIndex OBJECT-TYPE
+       SYNTAX    INTEGER (1..1024)
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "This object identifies the group containing the
+               port for which this entry contains information."
+       ::= { rptrMonitorPortEntry 1 }
+
+   rptrMonitorPortIndex OBJECT-TYPE
+       SYNTAX    INTEGER (1..1024)
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "This object identifies the port within the group
+               for which this entry contains information."
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.6.2,
+               aPortID."
+       ::= { rptrMonitorPortEntry 2 }
+
+   rptrMonitorPortReadableFrames OBJECT-TYPE
+       SYNTAX    Counter
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "This object is the number of frames of valid
+               frame length that have been received on this port.
+               This counter is incremented by one for each frame
+               received on this port whose OctetCount is greater
+               than or equal to minFrameSize and less than or
+               equal to maxFrameSize (Ref: IEEE 802.3 Std,
+               4.4.2.1) and for which the FCSError and
+               CollisionEvent signals are not asserted.
+
+               This statistic provides one of the parameters
+               necessary for obtaining the packet error rate.
+               The approximate minimum time for rollover of this
+               counter is 80 hours."
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.6.2,
+
+
+
+
+
+               aReadableFrames."
+       ::= { rptrMonitorPortEntry 3 }
+
+   rptrMonitorPortReadableOctets OBJECT-TYPE
+       SYNTAX    Counter
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "This object is the number of octets contained in
+               valid frames that have been received on this port.
+               This counter is incremented by OctetCount for each
+               frame received on this port which has been
+               determined to be a readable frame (i.e., including
+               FCS octets but excluding framing bits and dribble
+               bits).
+
+               This statistic provides an indicator of the total
+               data transferred.  The approximate minimum time
+               for rollover of this counter is 58 minutes."
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.6.2,
+               aReadableOctets."
+       ::= { rptrMonitorPortEntry 4 }
+
+   rptrMonitorPortFCSErrors OBJECT-TYPE
+       SYNTAX    Counter
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "This counter is incremented by one for each frame
+               received on this port with the FCSError signal
+               asserted and the FramingError and CollisionEvent
+               signals deasserted and whose OctetCount is greater
+               than or equal to minFrameSize and less than or
+               equal to maxFrameSize (Ref: 4.4.2.1, IEEE 802.3
+               Std).
+
+               The approximate minimum time for rollover of this
+               counter is 80 hours."
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.6.2,
+               aFrameCheckSequenceErrors."
+       ::= { rptrMonitorPortEntry 5 }
+
+   rptrMonitorPortAlignmentErrors OBJECT-TYPE
+       SYNTAX    Counter
+       ACCESS    read-only
+       STATUS    mandatory
+
+
+
+
+
+       DESCRIPTION
+               "This counter is incremented by one for each frame
+               received on this port with the FCSError and
+               FramingError signals asserted and CollisionEvent
+               signal deasserted and whose OctetCount is greater
+               than or equal to minFrameSize and less than or
+               equal to maxFrameSize (Ref: IEEE 802.3 Std,
+               4.4.2.1).  If rptrMonitorPortAlignmentErrors is
+               incremented then the rptrMonitorPortFCSErrors
+               Counter shall not be incremented for the same
+               frame.
+
+               The approximate minimum time for rollover of this
+               counter is 80 hours."
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.6.2,
+               aAlignmentErrors."
+       ::= { rptrMonitorPortEntry 6 }
+
+   rptrMonitorPortFrameTooLongs OBJECT-TYPE
+       SYNTAX    Counter
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "This counter is incremented by one for each frame
+               received on this port whose OctetCount is greater
+               than maxFrameSize (Ref: 4.4.2.1, IEEE 802.3 Std).
+               If rptrMonitorPortFrameTooLongs is incremented
+               then neither the rptrMonitorPortAlignmentErrors
+               nor the rptrMonitorPortFCSErrors counter shall be
+               incremented for the frame.
+
+               The approximate minimum time for rollover of this
+               counter is 61 days."
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.6.2,
+               aFramesTooLong."
+       ::= { rptrMonitorPortEntry 7 }
+
+   rptrMonitorPortShortEvents OBJECT-TYPE
+       SYNTAX    Counter
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "This counter is incremented by one for each
+               CarrierEvent on this port with ActivityDuration
+               less than ShortEventMaxTime.  ShortEventMaxTime is
+               greater than 74 bit times and less than 82 bit
+
+
+
+
+
+               times.  ShortEventMaxTime has tolerances included
+               to provide for circuit losses between a
+               conformance test point at the AUI and the
+               measurement point within the state machine.
+
+               Note:  shortEvents may indicate externally
+               generated noise hits which will cause the repeater
+               to transmit Runts to its other ports, or propagate
+               a collision (which may be late) back to the
+               transmitting DTE and damaged frames to the rest of
+               the network.
+
+               Implementors may wish to consider selecting the
+               ShortEventMaxTime towards the lower end of the
+               allowed tolerance range to accommodate bit losses
+               suffered through physical channel devices not
+               budgeted for within this standard.
+
+               The approximate minimum time for rollover of this
+               counter is 16 hours."
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.6.2,
+               aShortEvents."
+       ::= { rptrMonitorPortEntry 8 }
+
+   rptrMonitorPortRunts OBJECT-TYPE
+       SYNTAX    Counter
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "This counter is incremented by one for each
+               CarrierEvent on this port that meets one of the
+               following two conditions.  Only one test need be
+               made.  a) The ActivityDuration is greater than
+               ShortEventMaxTime and less than ValidPacketMinTime
+               and the CollisionEvent signal is deasserted.  b)
+               The OctetCount is less than 64, the
+               ActivityDuration is greater than ShortEventMaxTime
+               and the CollisionEvent signal is deasserted.
+               ValidPacketMinTime is greater than or equal to 552
+               bit times and less than 565 bit times.
+
+               An event whose length is greater than 74 bit times
+               but less than 82 bit times shall increment either
+               the shortEvents counter or the runts counter but
+               not both.  A CarrierEvent greater than or equal to
+               552 bit times but less than 565 bit times may or
+               may not be counted as a runt.
+
+
+
+
+
+               ValidPacketMinTime has tolerances included to
+               provide for circuit losses between a conformance
+               test point at the AUI and the measurement point
+               within the state machine.
+
+               Runts usually indicate collision fragments, a
+               normal network event.  In certain situations
+               associated with large diameter networks a
+               percentage of collision fragments may exceed
+               ValidPacketMinTime.
+
+               The approximate minimum time for rollover of this
+               counter is 16 hours."
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.6.2, aRunts."
+       ::= { rptrMonitorPortEntry 9 }
+
+   rptrMonitorPortCollisions OBJECT-TYPE
+       SYNTAX    Counter
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "This counter is incremented by one for any
+               CarrierEvent signal on any port for which the
+               CollisionEvent signal on this port is also
+               asserted.
+
+               The approximate minimum time for rollover of this
+               counter is 16 hours."
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.6.2,
+               aCollisions."
+       ::= { rptrMonitorPortEntry 10 }
+
+   rptrMonitorPortLateEvents OBJECT-TYPE
+       SYNTAX    Counter
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "This counter is incremented by one for each
+               CarrierEvent on this port in which the CollIn(X)
+               variable transitions to the value SQE (Ref:
+               9.6.6.2, IEEE 802.3 Std) while the
+               ActivityDuration is greater than the
+               LateEventThreshold.  Such a CarrierEvent is
+               counted twice, as both a collision and as a
+               lateEvent.
+
+
+
+
+
+
+               The LateEventThreshold is greater than 480 bit
+               times and less than 565 bit times.
+               LateEventThreshold has tolerances included to
+               permit an implementation to build a single
+               threshold to serve as both the LateEventThreshold
+               and ValidPacketMinTime threshold.
+
+               The approximate minimum time for rollover of this
+               counter is 81 hours."
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.6.2,
+               aLateEvents."
+       ::= { rptrMonitorPortEntry 11 }
+
+   rptrMonitorPortVeryLongEvents OBJECT-TYPE
+       SYNTAX    Counter
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "This counter is incremented by one for each
+               CarrierEvent on this port whose ActivityDuration
+               is greater than the MAU Jabber Lockup Protection
+               timer TW3 (Ref: 9.6.1 & 9.6.5, IEEE 802.3 Std).
+               Other counters may be incremented as appropriate."
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.6.2,
+               aVeryLongEvents."
+       ::= { rptrMonitorPortEntry 12 }
+
+   rptrMonitorPortDataRateMismatches OBJECT-TYPE
+       SYNTAX    Counter
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "This counter is incremented by one for each frame
+               received on this port that meets all of the
+               following conditions:  a) The CollisionEvent
+               signal is not asserted.  b) The ActivityDuration
+               is greater than ValidPacketMinTime.  c) The
+               frequency (data rate) is detectably mismatched
+               from the local transmit frequency.  The exact
+               degree of mismatch is vendor specific and is to be
+               defined by the vendor for conformance testing.
+
+               When this event occurs, other counters whose
+               increment conditions were satisfied may or may not
+               also be incremented, at the implementor's
+               discretion.  Whether or not the repeater was able
+
+
+
+
+
+               to maintain data integrity is beyond the scope of
+               this standard."
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.6.2,
+               aDataRateMismatches."
+       ::= { rptrMonitorPortEntry 13 }
+
+   rptrMonitorPortAutoPartitions OBJECT-TYPE
+       SYNTAX    Counter
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "This counter is incremented by one for each time
+               the repeater has automatically partitioned this
+               port.  The conditions that cause port partitioning
+               are specified in the partition state machine in
+               Section 9 [IEEE 802.3 Std].  They are not
+               differentiated here."
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.6.2,
+               aAutoPartitions."
+       ::= { rptrMonitorPortEntry 14 }
+
+   rptrMonitorPortTotalErrors OBJECT-TYPE
+       SYNTAX    Counter
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "The total number of errors which have occurred on
+               this port.  This counter is the summation of the
+               values of other error counters (for the same
+               port), namely:
+
+                   rptrMonitorPortFCSErrors,
+                   rptrMonitorPortAlignmentErrors,
+                   rptrMonitorPortFrameTooLongs,
+                   rptrMonitorPortShortEvents,
+                   rptrMonitorPortLateEvents,
+                   rptrMonitorPortVeryLongEvents, and
+                   rptrMonitorPortDataRateMismatches.
+
+               This counter is redundant in the sense that it is
+               the summation of information already available
+               through other objects.  However, it is included
+               specifically because the regular retrieval of this
+               object as a means of tracking the health of a port
+               provides a considerable optimization of network
+               management traffic over the otherwise necessary
+
+
+
+
+
+               retrieval of the summed counters."
+       ::= { rptrMonitorPortEntry 15 }
+
+
+   --
+   --                    The ADDRESS TRACKING GROUP
+   --
+   -- Implementation of this group is optional; it is appropriate
+   -- for all systems which have the necessary instrumentation.  If a
+   -- managed repeater implements any part of this group, the entire
+   -- group shall be implemented.
+
+   --
+   -- The Port Address Tracking Table
+   --
+
+   rptrAddrTrackTable OBJECT-TYPE
+       SYNTAX    SEQUENCE OF RptrAddrTrackEntry
+       ACCESS    not-accessible
+       STATUS    mandatory
+       DESCRIPTION
+               "Table of address mapping information about the
+               ports."
+       ::= { rptrAddrTrackPortInfo 1 }
+
+   rptrAddrTrackEntry OBJECT-TYPE
+       SYNTAX    RptrAddrTrackEntry
+       ACCESS    not-accessible
+       STATUS    mandatory
+       DESCRIPTION
+               "An entry in the table, containing address mapping
+               information about a single port."
+       INDEX    { rptrAddrTrackGroupIndex, rptrAddrTrackPortIndex }
+       ::= { rptrAddrTrackTable 1 }
+
+   RptrAddrTrackEntry ::=
+       SEQUENCE {
+           rptrAddrTrackGroupIndex
+               INTEGER,
+           rptrAddrTrackPortIndex
+               INTEGER,
+           rptrAddrTrackLastSourceAddress     -- DEPRECATED OBJECT
+               MacAddress,
+           rptrAddrTrackSourceAddrChanges
+               Counter,
+           rptrAddrTrackNewLastSrcAddress
+               OCTET STRING
+       }
+
+
+
+
+
+   rptrAddrTrackGroupIndex OBJECT-TYPE
+       SYNTAX    INTEGER (1..1024)
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "This object identifies the group containing the
+               port for which this entry contains information."
+       ::= { rptrAddrTrackEntry 1 }
+
+   rptrAddrTrackPortIndex OBJECT-TYPE
+       SYNTAX    INTEGER (1..1024)
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "This object identifies the port within the group
+               for which this entry contains information."
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.6.2,
+               aPortID."
+       ::= { rptrAddrTrackEntry 2 }
+
+   rptrAddrTrackLastSourceAddress OBJECT-TYPE
+       SYNTAX    MacAddress
+       ACCESS    read-only
+       STATUS    deprecated
+       DESCRIPTION
+               "This object is the SourceAddress of the last
+               readable frame (i.e., counted by
+               rptrMonitorPortReadableFrames) received by this
+               port.
+
+               This object has been deprecated because its value
+               is undefined when no frames have been observed on
+               this port.  The replacement object is
+               rptrAddrTrackNewLastSrcAddress."
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.6.2,
+               aLastSourceAddress."
+       ::= { rptrAddrTrackEntry 3 }
+
+   rptrAddrTrackSourceAddrChanges OBJECT-TYPE
+       SYNTAX    Counter
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "This counter is incremented by one for each time
+               that the rptrAddrTrackLastSourceAddress attribute
+               for this port has changed.
+
+
+
+
+
+               This may indicate whether a link is connected to a
+               single DTE or another multi-user segment.
+
+               The approximate minimum time for rollover of this
+               counter is 81 hours."
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.6.2,
+               aSourceAddressChanges."
+       ::= { rptrAddrTrackEntry 4 }
+
+   rptrAddrTrackNewLastSrcAddress OBJECT-TYPE
+       SYNTAX    OCTET STRING (SIZE(0 | 6))
+       ACCESS    read-only
+       STATUS    mandatory
+       DESCRIPTION
+               "This object is the SourceAddress of the last
+               readable frame (i.e., counted by
+               rptrMonitorPortReadableFrames) received by this
+               port.  If no frames have been received by this
+               port since the agent began monitoring the port
+               activity, the agent shall return a string of
+               length zero."
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.6.2,
+               aLastSourceAddress."
+       ::= { rptrAddrTrackEntry 5 }
+
+
+   -- Traps for use by Repeaters
+
+   -- Traps are defined using the conventions in RFC 1215 [6].
+
+   rptrHealth TRAP-TYPE
+       ENTERPRISE  snmpDot3RptrMgt
+       VARIABLES   { rptrOperStatus }
+       DESCRIPTION
+               "The rptrHealth trap conveys information related
+               to the operational status of the repeater.  This
+               trap is sent either when the value of
+               rptrOperStatus changes, or upon completion of a
+               non-disruptive test.
+
+               The rptrHealth trap must contain the
+               rptrOperStatus object.  The agent may optionally
+               include the rptrHealthText object in the varBind
+               list.  See the rptrOperStatus and rptrHealthText
+               objects for descriptions of the information that
+               is sent.
+
+
+
+
+
+               The agent must throttle the generation of
+               consecutive rptrHealth traps so that there is at
+               least a five-second gap between traps of this
+               type.  When traps are throttled, they are dropped,
+               not queued for sending at a future time.  (Note
+               that 'generating' a trap means sending to all
+               configured recipients.)"
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.3.4,
+               hubHealth notification."
+       ::= 1
+
+   rptrGroupChange TRAP-TYPE
+       ENTERPRISE  snmpDot3RptrMgt
+       VARIABLES   { rptrGroupIndex }
+       DESCRIPTION
+               "This trap is sent when a change occurs in the
+               group structure of a repeater.  This occurs only
+               when a group is logically or physically removed
+               from or added to a repeater.  The varBind list
+               contains the identifier of the group that was
+               removed or added.
+
+               The agent must throttle the generation of
+               consecutive rptrGroupChange traps for the same
+               group so that there is at least a five-second gap
+               between traps of this type.  When traps are
+               throttled, they are dropped, not queued for
+               sending at a future time.  (Note that 'generating'
+               a trap means sending to all configured
+               recipients.)"
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.3.4,
+               groupMapChange notification."
+       ::= 2
+
+   rptrResetEvent TRAP-TYPE
+       ENTERPRISE  snmpDot3RptrMgt
+       VARIABLES   { rptrOperStatus }
+       DESCRIPTION
+               "The rptrResetEvent trap conveys information
+               related to the operational status of the repeater.
+               This trap is sent on completion of a repeater
+               reset action.  A repeater reset action is defined
+               as an a transition to the START state of Fig 9-2
+               in section 9 [IEEE 802.3 Std], when triggered by a
+               management command (e.g., an SNMP Set on the
+               rptrReset object).
+
+
+
+
+
+               The agent must throttle the generation of
+               consecutive rptrResetEvent traps so that there is
+               at least a five-second gap between traps of this
+               type.  When traps are throttled, they are dropped,
+               not queued for sending at a future time.  (Note
+               that 'generating' a trap means sending to all
+               configured recipients.)
+
+               The rptrResetEvent trap is not sent when the agent
+               restarts and sends an SNMP coldStart or warmStart
+               trap.  However, it is recommended that a repeater
+               agent send the rptrOperStatus object as an
+               optional object with its coldStart and warmStart
+               trap PDUs.
+
+               The rptrOperStatus object must be included in the
+               varbind list sent with this trap.  The agent may
+               optionally include the rptrHealthText object as
+               well."
+       REFERENCE
+               "Reference IEEE 802.3 Rptr Mgt, 19.2.3.4, hubReset
+               notification."
+       ::= 3
+
+END
diff --git a/contrib/mibs/SNMP-TARGET-MIB.txt b/contrib/mibs/SNMP-TARGET-MIB.txt
new file mode 100644 (file)
index 0000000..e4637e2
--- /dev/null
@@ -0,0 +1,611 @@
+   SNMP-TARGET-MIB DEFINITIONS ::= BEGIN
+
+   IMPORTS
+--       TEXTUAL-CONVENTION,
+       MODULE-IDENTITY,
+       OBJECT-TYPE,
+       snmpModules,
+       Integer32
+           FROM SNMPv2-SMI
+
+       TDomain,
+       TAddress,
+       TimeInterval,
+       RowStatus,
+       StorageType,
+       TestAndIncr
+           FROM SNMPv2-TC
+       SnmpSecurityModel,
+       SnmpMessageProcessingModel,
+       SnmpSecurityLevel,
+       SnmpAdminString
+           FROM SNMP-FRAMEWORK-MIB
+
+       OBJECT-GROUP
+           FROM SNMPv2-CONF;
+
+   snmpTargetMIB MODULE-IDENTITY
+       LAST-UPDATED "9707140000Z"
+       ORGANIZATION "IETF SNMPv3 Working Group"
+       CONTACT-INFO
+           "WG-email:   snmpv3@tis.com
+            Subscribe:  majordomo@tis.com
+                        In message body:  subscribe snmpv3
+
+            Chair:      Russ Mundy
+                        Trusted Information Systems
+            Postal:     3060 Washington Rd
+                        Glenwood MD 21738
+                        USA
+            Email:      mundy@tis.com
+            Phone:      +1-301-854-6889
+
+            Co-editor:  David B. Levi
+                        SNMP Research, Inc.
+            Postal:     3001 Kimberlin Heights Road
+                        Knoxville, TN 37920-9716
+            E-mail:     levi@snmp.com
+            Phone:      +1 423 573 1434
+
+            Co-editor:  Paul Meyer
+                        Secure Computing Corporation
+            Postal:     2675 Long Lake Road
+                        Roseville, MN 55113
+            E-mail:     paul_meyer@securecomputing.com
+            Phone:      +1 612 628 1592
+
+            Co-editor:  Bob Stewart
+                        Cisco Systems, Inc.
+            Postal:     170 West Tasman Drive
+                        San Jose, CA 95134-1706
+            E-mail:     bstewart@cisco.com
+            Phone:      +1 603 654 6923"
+       DESCRIPTION
+           "This MIB module defines MIB objects which provide
+            mechanisms to remotely configure the parameters used
+            by an SNMP entity for the generation of SNMP messages."
+       REVISION        "9707140000Z"
+       DESCRIPTION
+           "The initial revision."
+       ::= { snmpModules 12 }
+
+   snmpTargetObjects       OBJECT IDENTIFIER ::= { snmpTargetMIB 1 }
+   snmpTargetConformance   OBJECT IDENTIFIER ::= { snmpTargetMIB 3 }
+
+   SnmpTagValue ::= TEXTUAL-CONVENTION
+       DISPLAY-HINT "255a"
+       STATUS       current
+       DESCRIPTION
+           "An octet string containing a tag value.
+            Tag values are preferably in human-readable form.
+
+            To facilitate internationalization, this information
+            is represented using the ISO/IEC IS 10646-1 character
+            set, encoded as an octet string using the UTF-8
+            character encoding scheme described in RFC 2044.
+
+            Since additional code points are added by amendments
+            to the 10646 standard from time to time,
+            implementations must be prepared to encounter any code
+            point from 0x00000000 to 0x7fffffff.
+
+            The use of control codes should be avoided, and certain
+            control codes are not allowed as described below.
+
+            For code points not directly supported by user
+            interface hardware or software, an alternative means
+            of entry and display, such as hexadecimal, may be
+            provided.
+
+            For information encoded in 7-bit US-ASCII, the UTF-8
+            representation is identical to the US-ASCII encoding.
+
+            Note that when this TC is used for an object that
+            is used or envisioned to be used as an index, then a
+            SIZE restriction must be specified so that the number
+            sub-identifiers for any object instance do not exceed
+            the limit of 128, as defined by [RFC1905].
+
+            An object of this type contains a single tag value
+            which is used to select a set of entries in a table.
+            A tag value is an arbitrary string of octets, but
+            may not contain a delimiter character.  Delimiter
+            characters are defined to be one of the following:
+
+                -  An ASCII space character (0x20).
+
+                -  An ASCII TAB character (0x09).
+
+                -  An ASCII carriage return (CR) character (0x0D).
+
+                -  An ASCII line feed (LF) character (0x0B).
+
+            Delimiter characters are used to separate tag values
+            in a tag list.  An object of this type may only
+            contain a single tag value, and so delimiter
+            characters are not allowed in a value of this type.
+
+            Some examples of valid tag values are:
+
+                - 'acme'
+
+                - 'router'
+
+                - 'host'
+
+            The use of a tag value to select table entries is
+            application and MIB specific."
+       SYNTAX       OCTET STRING (SIZE (0..255))
+
+   SnmpTagList ::= TEXTUAL-CONVENTION
+       DISPLAY-HINT "255a"
+       STATUS       current
+       DESCRIPTION
+           "An octet string containing a list of tag values.
+            Tag values are preferably in human-readable form.
+
+            To facilitate internationalization, this information
+            is represented using the ISO/IEC IS 10646-1 character
+            set, encoded as an octet string using the UTF-8
+            character encoding scheme described in RFC 2044.
+
+            Since additional code points are added by amendments
+            to the 10646 standard from time to time,
+            implementations must be prepared to encounter any code
+            point from 0x00000000 to 0x7fffffff.
+
+            The use of control codes should be avoided, except as
+            described below.
+
+            For code points not directly supported by user
+            interface hardware or software, an alternative means
+            of entry and display, such as hexadecimal, may be
+            provided.
+
+            For information encoded in 7-bit US-ASCII, the UTF-8
+            representation is identical to the US-ASCII encoding.
+
+            An object of this type contains a list of tag values
+            which are used to select a set of entries in a table.
+
+            A tag value is an arbitrary string of octets, but
+            may not contain a delimiter character.  Delimiter
+            characters are defined to be one of the following:
+
+                -  An ASCII space character (0x20).
+
+                -  An ASCII TAB character (0x09).
+
+                -  An ASCII carriage return (CR) character (0x0D).
+
+                -  An ASCII line feed (LF) character (0x0B).
+
+            Delimiter characters are used to separate tag values
+            in a tag list.  Only a single delimiter character may
+            occur between two tag values.  A tag value may not
+            have a zero length.  These constraints imply certain
+            restrictions on the contents of this object:
+
+                - There cannot be a leading or trailing delimiter
+                  character.
+
+                - There cannot be multiple adjacent delimiter
+                  characters.
+
+            Some examples of valid tag lists are:
+
+                - An empty string
+
+                - 'acme router'
+
+                - 'host managerStation'
+
+            Note that although a tag value may not have a length of
+            zero, an empty string is still valid.  This indicates
+            an empty list (i.e. there are no tag values in the list).
+
+            The use of the tag list to select table entries is
+            application and MIB specific.  Typically, an application
+            will provide one or more tag values, and any entry
+            which contains some combination of these tag values
+            will be selected."
+       SYNTAX       OCTET STRING (SIZE (0..255))
+
+   --
+   --
+   -- The snmpTargetObjects group
+   --
+   --
+
+   snmpTargetSpinLock OBJECT-TYPE
+       SYNTAX      TestAndIncr
+       MAX-ACCESS  read-write
+       STATUS      current
+       DESCRIPTION
+           "This object is used to facilitate modification of table
+            entries in the SNMP-TARGET-MIB module by multiple
+            managers.  In particular, it is useful when modifying
+            the value of the snmpTargetAddrTagList object.
+
+            The procedure for modifying the snmpTargetAddrTagList
+            object is as follows:
+
+                1.  Retrieve the value of snmpTargetSpinLock and
+                    of snmpTargetAddrTagList.
+
+                2.  Generate a new value for snmpTargetAddrTagList.
+
+                3.  Set the value of snmpTargetSpinLock to the
+                    retrieved value, and the value of
+                    snmpTargetAddrTagList to the new value.  If
+                    the set fails for the snmpTargetSpinLock
+                    object, go back to step 1."
+       ::= { snmpTargetObjects 1 }
+
+   snmpTargetAddrTable OBJECT-TYPE
+       SYNTAX      SEQUENCE OF SnmpTargetAddrEntry
+       MAX-ACCESS  not-accessible
+       STATUS      current
+       DESCRIPTION
+           "A table of transport addresses to be used in the generation
+            of SNMP messages."
+       ::= { snmpTargetObjects 2 }
+
+   snmpTargetAddrEntry OBJECT-TYPE
+       SYNTAX      SnmpTargetAddrEntry
+       MAX-ACCESS  not-accessible
+       STATUS      current
+       DESCRIPTION
+           "A transport address to be used in the generation
+            of SNMP operations.
+
+            Entries in the snmpTargetAddrTable are created and
+            deleted using the snmpTargetAddrRowStatus object."
+       INDEX { IMPLIED snmpTargetAddrName }
+       ::= { snmpTargetAddrTable 1 }
+
+   SnmpTargetAddrEntry ::= SEQUENCE {
+       snmpTargetAddrName         SnmpAdminString,
+       snmpTargetAddrTDomain      TDomain,
+       snmpTargetAddrTAddress     TAddress,
+       snmpTargetAddrTimeout      TimeInterval,
+       snmpTargetAddrRetryCount   Integer32,
+       snmpTargetAddrTagList      SnmpTagList,
+       snmpTargetAddrParams       SnmpAdminString,
+       snmpTargetAddrStorageType  StorageType,
+       snmpTargetAddrRowStatus    RowStatus
+   }
+
+   snmpTargetAddrName OBJECT-TYPE
+       SYNTAX      SnmpAdminString (SIZE(1..32))
+       MAX-ACCESS  not-accessible
+       STATUS      current
+       DESCRIPTION
+           "The locally arbitrary, but unique identifier associated
+            with this snmpTargetAddrEntry."
+       ::= { snmpTargetAddrEntry 1 }
+
+   snmpTargetAddrTDomain OBJECT-TYPE
+       SYNTAX      TDomain
+       MAX-ACCESS  read-create
+       STATUS      current
+       DESCRIPTION
+           "This object indicates the transport type of the address
+            contained in the snmpTargetAddrTAddress object."
+       ::= { snmpTargetAddrEntry 2 }
+
+   snmpTargetAddrTAddress OBJECT-TYPE
+       SYNTAX      TAddress
+       MAX-ACCESS  read-create
+       STATUS      current
+       DESCRIPTION
+           "This object contains a transport address.  The format of
+            this address depends on the value of the
+            snmpTargetAddrTDomain object."
+       ::= { snmpTargetAddrEntry 3 }
+
+   snmpTargetAddrTimeout OBJECT-TYPE
+       SYNTAX      TimeInterval
+       MAX-ACCESS  read-create
+       STATUS      current
+       DESCRIPTION
+           "This object should reflect the expected maximum round
+            trip time for communicating with the transport address
+            defined by this row.  When a message is sent to this
+            address, and a response (if one is expected) is not
+            received within this time period, an implementation
+            may assume that the response will not be delivered.
+
+            Note that the time interval that an application waits
+            for a response may actually be derived from the value
+            of this object.  The method for deriving the actual time
+            interval is implementation dependent.  One such method
+            is to derive the expected round trip time based on a
+            particular retransmission algorithm and on the number
+            of timeouts which have occurred.  The type of message may
+            also be considered when deriving expected round trip
+            times for retransmissions.  For example, if a message is
+            being sent with a securityLevel that indicates both
+            authentication and privacy, the derived value may be
+            increased to compensate for extra processing time spent
+            during authentication and encryption processing."
+       DEFVAL { 1500 }
+       ::= { snmpTargetAddrEntry 4 }
+
+   snmpTargetAddrRetryCount OBJECT-TYPE
+       SYNTAX      Integer32 (0..255)
+       MAX-ACCESS  read-create
+       STATUS      current
+       DESCRIPTION
+           "This object specifies a default number of retries to be
+            attempted when a response is not received for a generated
+            message.  An application may provide its own retry count,
+            in which case the value of this object is ignored."
+       DEFVAL { 3 }
+       ::= { snmpTargetAddrEntry 5 }
+
+   snmpTargetAddrTagList OBJECT-TYPE
+       SYNTAX      SnmpTagList
+       MAX-ACCESS  read-create
+       STATUS      current
+       DESCRIPTION
+           "This object contains a list of tag values which are
+            used to select target addresses for a particular
+            operation."
+       ::= { snmpTargetAddrEntry 6 }
+
+   snmpTargetAddrParams OBJECT-TYPE
+       SYNTAX      SnmpAdminString (SIZE(1..32))
+       MAX-ACCESS  read-create
+       STATUS      current
+       DESCRIPTION
+           "The value of this object identifies an entry in the
+            snmpTargetParamsTable.  The identified entry
+            contains SNMP parameters to be used when generating
+            messages to be sent to this transport address."
+       ::= { snmpTargetAddrEntry 7 }
+
+   snmpTargetAddrStorageType OBJECT-TYPE
+       SYNTAX      StorageType
+       MAX-ACCESS  read-create
+       STATUS      current
+       DESCRIPTION
+           "The storage type for this conceptual row."
+       ::= { snmpTargetAddrEntry 8 }
+
+   snmpTargetAddrRowStatus OBJECT-TYPE
+       SYNTAX      RowStatus
+       MAX-ACCESS  read-create
+       STATUS      current
+       DESCRIPTION
+           "The status of this conceptual row.
+
+            To create a row in this table, a manager must
+            set this object to either createAndGo(4) or
+            createAndWait(5).
+
+            Until instances of all corresponding columns are
+            appropriately configured, the value of the
+            corresponding instance of the snmpTargetAddrRowStatus
+            column is 'notReady'.
+
+            In particular, a newly created row cannot be made
+            active until the corresponding snmpTargetAddrTDomain
+            and snmpTargetAddrTAddress have both been set.
+
+            The following objects may not be modified while the
+            value of this object is active(1):
+                - snmpTargetAddrTDomain
+                - snmpTargetAddrTAddress"
+       ::= { snmpTargetAddrEntry 9 }
+
+   snmpTargetParamsTable OBJECT-TYPE
+       SYNTAX      SEQUENCE OF SnmpTargetParamsEntry
+       MAX-ACCESS  not-accessible
+       STATUS      current
+       DESCRIPTION
+           "A table of SNMP target information to be used
+            in the generation of SNMP messages."
+       ::= { snmpTargetObjects 3 }
+
+   snmpTargetParamsEntry OBJECT-TYPE
+       SYNTAX      SnmpTargetParamsEntry
+       MAX-ACCESS  not-accessible
+       STATUS      current
+       DESCRIPTION
+           "A set of SNMP target information.
+
+            Entries in the snmpTargetParamsTable are created and
+            deleted using the snmpTargetParamsRowStatus object."
+       INDEX { IMPLIED snmpTargetParamsName }
+       ::= { snmpTargetParamsTable 1 }
+
+   SnmpTargetParamsEntry ::= SEQUENCE {
+       snmpTargetParamsName           SnmpAdminString,
+       snmpTargetParamsMPModel        SnmpMessageProcessingModel,
+       snmpTargetParamsSecurityModel  SnmpSecurityModel,
+       snmpTargetParamsSecurityName   SnmpAdminString,
+       snmpTargetParamsSecurityLevel  SnmpSecurityLevel,
+       snmpTargetParamsStorageType    StorageType,
+       snmpTargetParamsRowStatus      RowStatus
+   }
+
+   snmpTargetParamsName OBJECT-TYPE
+       SYNTAX      SnmpAdminString (SIZE(1..32))
+       MAX-ACCESS  not-accessible
+       STATUS      current
+       DESCRIPTION
+           "The locally arbitrary, but unique identifier associated
+            with this snmpTargetParamsEntry."
+       ::= { snmpTargetParamsEntry 1 }
+
+   snmpTargetParamsMPModel OBJECT-TYPE
+       SYNTAX      SnmpMessageProcessingModel
+       MAX-ACCESS  read-create
+       STATUS      current
+       DESCRIPTION
+           "The Message Processing Model to be used when generating
+            SNMP messages using this entry."
+       ::= { snmpTargetParamsEntry 2 }
+
+   snmpTargetParamsSecurityModel OBJECT-TYPE
+       SYNTAX      SnmpSecurityModel (0..254 | 256..2147483647)
+       MAX-ACCESS  read-create
+       STATUS      current
+       DESCRIPTION
+           "The Security Model to be used when generating SNMP
+             messages using this entry."
+       ::= { snmpTargetParamsEntry 3 }
+
+   snmpTargetParamsSecurityName OBJECT-TYPE
+       SYNTAX      SnmpAdminString
+       MAX-ACCESS  read-create
+       STATUS      current
+       DESCRIPTION
+           "The securityName which identifies the Principal on
+            whose behalf SNMP messages will be generated using
+            this entry."
+       ::= { snmpTargetParamsEntry 4 }
+
+   snmpTargetParamsSecurityLevel OBJECT-TYPE
+       SYNTAX      SnmpSecurityLevel
+       MAX-ACCESS  read-create
+       STATUS      current
+       DESCRIPTION
+           "The Level of Security to be used when generating
+            SNMP messages using this entry."
+       ::= { snmpTargetParamsEntry 5 }
+
+   snmpTargetParamsStorageType OBJECT-TYPE
+       SYNTAX      StorageType
+       MAX-ACCESS  read-create
+       STATUS      current
+       DESCRIPTION
+           "The storage type for this conceptual row."
+       ::= { snmpTargetParamsEntry 6 }
+
+   snmpTargetParamsRowStatus OBJECT-TYPE
+       SYNTAX      RowStatus
+       MAX-ACCESS  read-create
+       STATUS      current
+       DESCRIPTION
+           "The status of this conceptual row.
+
+            To create a row in this table, a manager must
+            set this object to either createAndGo(4) or
+            createAndWait(5).
+
+            Until instances of all corresponding columns are
+            appropriately configured, the value of the
+            corresponding instance of the snmpTargetParamsRowStatus
+            column is 'notReady'.
+
+            In particular, a newly created row cannot be made
+            active until the corresponding
+            snmpTargetParamsMPModel,
+            snmpTargetParamsSecurityModel,
+            snmpTargetParamsSecurityName,
+            and snmpTargetParamsSecurityLevel have all been set.
+
+            The following objects may not be modified while the
+            value of this object is active(1):
+                - snmpTargetParamsMPModel
+                - snmpTargetParamsSecurityModel
+                - snmpTargetParamsSecurityName
+                - snmpTargetParamsSecurityLevel"
+       ::= { snmpTargetParamsEntry 7 }
+
+   snmpUnavailableContexts OBJECT-TYPE
+       SYNTAX       Counter32
+       MAX-ACCESS   read-only
+       STATUS       current
+       DESCRIPTION
+           "The total number of packets received by the SNMP
+            engine which were dropped because the context
+            contained in the mesage was unavailable."
+       ::= { snmpTargetObjects 4 }
+
+   snmpUnknownContexts OBJECT-TYPE
+       SYNTAX       Counter32
+       MAX-ACCESS   read-only
+       STATUS       current
+       DESCRIPTION
+           "The total number of packets received by the SNMP
+            engine which were dropped because the context
+            contained in the mesage was unknown."
+       ::= { snmpTargetObjects 5 }
+
+   --
+   --
+   -- Conformance information
+   --
+   --
+
+   snmpTargetCompliances OBJECT IDENTIFIER ::=
+                                           { snmpTargetConformance 1 }
+   snmpTargetGroups      OBJECT IDENTIFIER ::=
+                                           { snmpTargetConformance 2 }
+
+   --
+   --
+   -- Compliance statements
+   --
+   --
+
+
+   snmpTargetCommandResponderCompliance MODULE-COMPLIANCE
+       STATUS      current
+       DESCRIPTION
+           "The compliance statement for SNMP entities which include
+            a command responder application."
+       MODULE -- This Module
+           MANDATORY-GROUPS { snmpTargetCommandResponderGroup }
+       ::= { snmpTargetCompliances 1 }
+
+   snmpTargetBasicGroup OBJECT-GROUP
+       OBJECTS {
+           snmpTargetSpinLock,
+           snmpTargetAddrTDomain,
+           snmpTargetAddrTAddress,
+           snmpTargetAddrTagList,
+           snmpTargetAddrParams,
+           snmpTargetAddrStorageType,
+           snmpTargetAddrRowStatus,
+           snmpTargetParamsMPModel,
+           snmpTargetParamsSecurityModel,
+           snmpTargetParamsSecurityName,
+           snmpTargetParamsSecurityLevel,
+           snmpTargetParamsStorageType,
+           snmpTargetParamsRowStatus
+       }
+       STATUS      current
+       DESCRIPTION
+           "A collection of objects providing basic remote
+            configuration of management targets."
+       ::= { snmpTargetGroups 1 }
+
+   snmpTargetResponseGroup OBJECT-GROUP
+       OBJECTS {
+           snmpTargetAddrTimeout,
+           snmpTargetAddrRetryCount
+       }
+       STATUS      current
+       DESCRIPTION
+           "A collection of objects providing remote configuration
+            of management targets for applications which generate
+            SNMP messages for which a response message would be
+            expected."
+       ::= { snmpTargetGroups 2 }
+
+   snmpTargetCommandResponderGroup OBJECT-GROUP
+       OBJECTS {
+           snmpUnavailableContexts,
+           snmpUnknownContexts
+       }
+       STATUS      current
+       DESCRIPTION
+           "A collection of objects required for command responder
+            applications, used for counting error conditions."
+       ::= { snmpTargetGroups 3 }
+
+   END
diff --git a/contrib/mibs/USEC-MIB.txt b/contrib/mibs/USEC-MIB.txt
new file mode 100644 (file)
index 0000000..0dde90f
--- /dev/null
@@ -0,0 +1,731 @@
+    USEC-MIB DEFINITIONS ::= BEGIN
+
+    IMPORTS
+--        MODULE-IDENTITY, OBJECT-TYPE, Integer32, Counter32, UInteger32
+       snmpModules
+            FROM SNMPv2-SMI
+        RowStatus, TestAndIncr, RowPointer
+             FROM SNMPv2-TC
+        KeyChange, MemoryType, TransportLabel, AuthName, SnmpID
+             FROM V2ADMIN-MIB
+        MODULE-COMPLIANCE, OBJECT-GROUP
+            FROM SNMPv2-CONF;
+
+
+    usecMIB MODULE-IDENTITY
+        LAST-UPDATED "9508121700"
+        ORGANIZATION "IETF SNMPv2 Working Group"
+        CONTACT-INFO "snmpv2@tis.com
+                     Complete contact information to be provided."
+        DESCRIPTION
+              "The MIB module for configuring the USEC security and privacy
+              services."
+        ::= { snmpModules 1135 }
+
+    --
+    -- The usecScalars group.  This group contains objects which provide
+    -- time synchronization for the USEC authentication service.
+    --
+    usecScalars OBJECT IDENTIFIER ::= { usecMIB 1 }
+
+    snmpBoots OBJECT-TYPE
+        SYNTAX       Integer32 (-1..2147483647)
+        MAX-ACCESS   read-only
+        STATUS       current
+        DESCRIPTION
+              "The number of times the management system on a device has
+              been re-initialized since its initial configuration."
+        ::= { usecScalars 1 }
+
+    snmpTime OBJECT-TYPE
+        SYNTAX       Integer32 (0..2147483647)
+        MAX-ACCESS   read-only
+        STATUS       current
+        DESCRIPTION
+
+
+
+
+
+
+
+
+
+
+
+              "The number of seconds since the SNMPv2 protocol entity
+              last incremented the snmpBoots object."
+        ::= { usecScalars 2 }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+    --
+    -- The usecStats group.  This group contains objects which provide
+    -- statistics for the USEC security and privacy services.
+    --
+
+    usecStats OBJECT IDENTIFIER ::= { usecMIB 2 }
+
+    usecStatsNotInTimeWindows OBJECT-TYPE
+        SYNTAX       Counter32
+        MAX-ACCESS   read-only
+        STATUS       current
+        DESCRIPTION
+              "A count of the number of packets that were deemed
+              unauthentic due to the authSnmpBoots or authSnmpTime values
+              being out of lifetime."
+        ::= { usecStats 1 }
+
+    usecStatsUnknownUserNames OBJECT-TYPE
+        SYNTAX       Counter32
+        MAX-ACCESS   read-only
+        STATUS       current
+        DESCRIPTION
+              "A count of the number of packets containing an SPI
+              associated with usecNoAuth(4), usecAuth(5), or usecPriv(6),
+              but whose userNames were not found in the
+              userNameTable."
+        ::= { usecStats 2 }
+
+    usecStatsWrongDigestValues OBJECT-TYPE
+        SYNTAX       Counter32
+        MAX-ACCESS   read-only
+        STATUS       current
+        DESCRIPTION
+              "A count of the number of packets that were deemed
+              unauthentic due to the digest value being incorrect."
+        ::= { usecStats 3 }
+
+    usecStatsBadPrivacys OBJECT-TYPE
+        SYNTAX       Counter32
+        MAX-ACCESS   read-only
+        STATUS       current
+        DESCRIPTION
+              "A count of the number of packets received which were
+              encrypted incorrectly."
+        ::= { usecStats 4 }
+
+
+
+
+
+
+
+
+
+
+
+    --
+    -- The usecUser group
+    --
+
+    usecUser OBJECT IDENTIFIER ::= { usecMIB 3 }
+
+    userSpinLock OBJECT-TYPE
+        SYNTAX       TestAndIncr
+        MAX-ACCESS   read-write
+        STATUS       current
+        DESCRIPTION
+              "An advisory lock used to allow several cooperating SNMPv2
+              entities, all acting in a manager role, to coordinate their
+              use of SNMPv2 set operations to entries in the userNameTable.
+              A manager application should include the value of
+              userSpinLock in every set operation which accesses the
+              userNameTable.  Since this is an advisory lock, entities
+              acting in an agent role do not enforce the use of
+              userSpinLock."
+        ::= { usecUser 1 }
+
+    maxUserNameLength OBJECT-TYPE
+        SYNTAX       Integer32 (0..255)
+        MAX-ACCESS   read-only
+        STATUS       current
+        DESCRIPTION
+              "The maximum length of userName allowed by this implementation.
+              This value can be probed by a management application prior
+              to attempting a row creation operation in the userNameTable.
+              A value of 0 indicates that the userNameTable does not allow
+              row creation or deletion operations."
+        ::= { usecUser 2 }
+
+    --
+    -- The userNameTable contains the database of users who are configured to
+    -- perform SNMP communications via the Usec authentication and privacy service.
+    -- These users are organized into 'groups'.
+    -- The group to which a user belongs is specified in the userGroupName
+    -- object.
+    --
+    -- Access privileges are assigned in the acTable [@ref adminmib] by group.
+    -- This allows groups of users to share the same privileges, or for individual
+    -- users to have their own unique privileges.
+    --
+    -- In order to ease the task of configuring SNMPv2 entities, many of the
+
+
+
+
+
+
+
+
+
+
+
+    -- indices used in the following table are textual (human-readable) strings.
+    -- Experience has shown that it is often necessary for a network administrator
+    -- to manually edit the configuration datastore for an SNMPv2 entities.
+    -- Use of textual strings for indices makes the configuration datastore much
+    -- easier for an administrator to maintain.
+    -- An implementation may restrict the lengths of userName and userGroupName
+    -- entries to less than the maximum value.
+    -- The maxUserNameLength variable and maxGroupNameLength [@ref adminmib]
+    -- variables can be used to detect the maximum length of name strings
+    -- supported by a particular implementation.
+
+    userNameTable OBJECT-TYPE
+        SYNTAX       SEQUENCE OF UserNameEntry
+        MAX-ACCESS   not-accessible
+        STATUS       current
+        DESCRIPTION
+              "The SNMPv2 database for usecNoAuth(4), usecAuth(5), and
+              usecPriv(6) users."
+        ::= { usecUser 3 }
+
+    userNameEntry OBJECT-TYPE
+        SYNTAX       UserNameEntry
+        MAX-ACCESS   not-accessible
+        STATUS       current
+        DESCRIPTION
+              "Information about a particular SNMPv2 user."
+        INDEX { userAuthSnmpID, IMPLIED userName }
+        ::= { userNameTable 1 }
+
+    UserNameEntry ::= SEQUENCE {
+        userAuthSnmpID       SnmpID,
+        userName             AuthName,
+        userGroupName        AuthName,
+        userAuthChange       KeyChange,
+        userPrivChange       KeyChange,
+        userNovel            OCTET STRING,
+        userTransportLabel   TransportLabel,
+        userCloneFrom        RowPointer,
+        userMemoryType       MemoryType,
+        userStatus           RowStatus
+    }
+
+    userAuthSnmpID OBJECT-TYPE
+        SYNTAX       SnmpID
+        MAX-ACCESS   not-accessible
+
+
+
+
+
+
+
+
+
+
+
+        STATUS       current
+        DESCRIPTION
+              "The node's administratively-unique identifier.
+
+              In a simple agent, this value will always be equal to the
+              agent's snmpID object.
+
+              In a manager which does not send or receive inform requests,
+              this value will be equal to the snmpID object of the
+              agent with which this user can communicate.
+
+              In a manager which sends or receives inform requests, this
+              object will be equal to one of three things:
+                  - The snmpID of the agent with which this user
+                    can communicate.
+                  - The snmpID of the manager's local protocol engine.
+                  - The snmpID of a remote manager which this user
+                    can send inform requests to or receive inform requests
+                    from.
+
+              In a dual-role entity, this value will be some combination
+              of those specified for agents and managers above."
+        ::= { userNameEntry 1 }
+
+    userName OBJECT-TYPE
+        SYNTAX       AuthName (SIZE(1..32))
+        MAX-ACCESS   not-accessible
+        STATUS       current
+        DESCRIPTION
+              "This variable contains the textual name of a user."
+        ::= { userNameEntry 2 }
+
+    userGroupName OBJECT-TYPE
+        SYNTAX       AuthName (SIZE(0..32))
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "This variable contains the textual name of the group to
+              which a user belongs."
+        ::= { userNameEntry 3 }
+
+    userAuthChange OBJECT-TYPE
+        SYNTAX       KeyChange
+        MAX-ACCESS   read-create
+        STATUS       current
+
+
+
+
+
+
+
+
+
+
+
+        DESCRIPTION
+              "An object, which when modified, causes the user's secret
+              authentication key to be modified via a one-way function.
+
+              When creating a new user, it is an 'inconsistentName' error
+              for a set operation to refer to this object unless it is
+              previously or concurrently initialized through a set
+              operation on the corresponding value of userCloneFrom."
+         DEFVAL { ''H }     -- the empty string
+         ::= { userNameEntry 4 }
+
+    userPrivChange OBJECT-TYPE
+        SYNTAX       KeyChange
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "An object, which when modified, causes the user's secret
+              privacy key to be modified via a one-way function.
+
+              When creating a new user, it is a 'inconsistentName' error
+              for a set operation to refer to this object unless it is
+              previously or concurrently initialized through a set
+              operation on the corresponding value of userCloneFrom."
+         DEFVAL { ''H }     -- the empty string
+        ::= { userNameEntry 5 }
+
+    userNovel OBJECT-TYPE
+        SYNTAX       OCTET STRING (SIZE(0..20))
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "This object may be used by a manager as a part of its
+              procedure for altering secret information about a user.
+              By altering the value of an instance of this object in
+              the same SNMPv2 Set-Request used to update secret information,
+              a subsequent Get-Request can determine if the Set-Request
+              was successful in the event that no response to the
+              Set-Request is received.
+
+              When an instance of this object is created, its value is
+              initialized to a random value.
+
+              This object need not be stored in non-volatile storage and
+              should be initialized to an unpredictable value upon system
+              re-initialization."
+
+
+
+
+
+
+
+
+
+
+
+         DEFVAL { ''H }     -- the empty string
+        ::= { userNameEntry 6 }
+
+    userTransportLabel OBJECT-TYPE
+        SYNTAX       TransportLabel
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "This object specifies a set of transport endpoints from which
+              an agent will accept management requests.  If a management
+              request generated by this user is received on a transport
+              endpoint other than the transport endpoints identified
+              by this object, the request is deemed unauthentic.
+
+              The transports identified by this object are specified in
+              the transportTable.  Entries in the transportTable whose
+              transportLabel value are equal to this object are identified.
+
+              If the value of this object has zero-length, or if the
+              transportTable is not implemented, then transport endpoints
+              are not checked when authenticating messages generated
+              by this user."
+         DEFVAL { ''H }     -- the empty string
+        ::= { userNameEntry 7 }
+
+    userCloneFrom OBJECT-TYPE
+        SYNTAX       RowPointer (SIZE(14..268))
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "An indication of the user to clone authentication and privacy
+              parameters from.  When read, the value { 0 0 } is returned.
+
+              This object must be written exactly once, when the associated
+              instance of userStatus either does not exist or has the
+              value `notReady'.  Subsequent set operations to this object
+              will succeed, but will not cause the agent to take any action.
+              When first written, the value identifies an instance of
+              a user, the cloning user, whose status column has the value
+              'active' or 'not in service'.
+
+              For implementations which support both authentication and
+              privacy, the authentication and privacy secrets of the cloning
+              user are copied to the corresponding authentication and
+              privacy secrets of the user being created.
+
+
+
+
+
+
+
+
+
+
+
+              For implementations which support only authentication, the
+              authentication secret of the cloning user is copied to the
+              corresponding authentication secret of the user being created.
+
+              For implementations which support neither authentication nor
+              privacy, this object has no effect (and need not be
+              implemented)."
+        ::= { userNameEntry 8 }
+
+    userMemoryType OBJECT-TYPE
+        SYNTAX       MemoryType
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "The storage type for this conceptual row in the userNameTable.
+
+              Conceptual rows having the value 'permanent' must allow
+              write-access at a minimum to:
+              userAuthChange and userNovel for users employing
+              authentication; and userPrivChange and userNovel
+              for users employing privacy.
+
+              Note that any user which employs authentication or privacy
+              must allow its secrets to be updated and thus
+              cannot be 'readOnly'."
+        ::= { userNameEntry 9 }
+
+    userStatus OBJECT-TYPE
+        SYNTAX       RowStatus
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "The status of this conceptual row in the userNameTable.
+
+              A user is not qualified for activation until instances of
+              all columns of its userNameEntry row have an appropriate
+              value.  In particular, one or more management set operations
+              are required to configure the entry:
+
+                  a value must be written to the user's userCloneFrom
+                  object, and ... update of secrets
+
+              Until instances of all corresponding columns and secrets are
+              appropriately configured, the value of the corresponding
+              instance of the userStatus column is `notReady'."
+
+
+
+
+
+
+
+
+
+
+
+        ::= { userNameEntry 10 }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+    -- conformance information
+
+    usecMIBConformance
+                   OBJECT IDENTIFIER ::= { usecMIB 4 }
+    usecMIBCompliances
+                   OBJECT IDENTIFIER ::= { usecMIBConformance 1 }
+    usecMIBGroups
+                   OBJECT IDENTIFIER ::= { usecMIBConformance 2 }
+
+
+    -- compliance statements
+
+    usecMIBNoAuthCompliance MODULE-COMPLIANCE
+        STATUS    current
+        DESCRIPTION
+              "The compliance statement for SNMPv2 entities which
+              implement the SNMPv2 USEC MIB with no authentication
+              or privacy protocols."
+
+        MODULE  -- this module
+            MANDATORY-GROUPS { usecNoAuthGroup }
+        ::= { usecMIBCompliances 1 }
+
+    usecMIBAuthCompliance MODULE-COMPLIANCE
+        STATUS    current
+        DESCRIPTION
+              "The compliance statement for SNMPv2 entities which
+              implement the SNMPv2 USEC MIB with authentication and
+              no privacy protocols."
+
+        MODULE  -- this module
+            MANDATORY-GROUPS { usecNoAuthGroup, usecAuthGroup }
+
+            OBJECT           userAuthChange
+            MIN-ACCESS       read-only
+            DESCRIPTION
+                  "Write access is not required."
+
+        ::= { usecMIBCompliances 2 }
+
+    usecMIBPrivCompliance MODULE-COMPLIANCE
+        STATUS    current
+        DESCRIPTION
+              "The compliance statement for SNMPv2 entities which
+              implement the SNMPv2 USEC MIB with both authentication
+
+
+
+
+
+
+
+
+
+
+
+              and privacy protocols."
+
+        MODULE  -- this module
+            MANDATORY-GROUPS { usecNoAuthGroup, usecAuthGroup, usecPrivGroup }
+
+            OBJECT           userAuthChange
+            MIN-ACCESS       read-only
+            DESCRIPTION
+                  "Write access is not required."
+
+            OBJECT           userPrivChange
+            MIN-ACCESS       read-only
+            DESCRIPTION
+                  "Write access is not required."
+
+        ::= { usecMIBCompliances 3 }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+    -- units of conformance
+
+    usecNoAuthGroup OBJECT-GROUP
+        OBJECTS {
+                 usecStatsNotInTimeWindows,
+                 usecStatsUnknownUserNames,
+                 usecStatsWrongDigestValues,
+                 usecStatsBadPrivacys,
+                 userSpinLock,
+                 userAuthSnmpID,
+                 userName,
+                 userGroupName,
+                 userTransportLabel,
+                 userCloneFrom,
+                 userMemoryType,
+                 userStatus
+                }
+        STATUS    current
+        DESCRIPTION
+
+                "A collection of objects providing for configuration of an
+                SNMPv2 agent which implements the SNMPv2 User-based Security
+                Model."
+        ::= { usecMIBGroups 1 }
+
+    usecAuthGroup OBJECT-GROUP
+        OBJECTS {
+                 userAuthChange,
+                 userNovel
+                }
+        STATUS    current
+        DESCRIPTION
+              "A collection of objects providing for configuration of an
+              SNMPv2 agent which implements the SNMPv2 User-based Security
+              Model."
+        ::= { usecMIBGroups 2 }
+
+    usecPrivGroup OBJECT-GROUP
+        OBJECTS {
+                 userPrivChange
+                }
+        STATUS    current
+        DESCRIPTION
+              "A collection of objects providing for configuration of an
+              SNMPv2 agent which implements the SNMPv2 User-based Security
+
+
+
+
+
+
+
+
+
+
+
+              Model."
+        ::= { usecMIBGroups 3 }
+
+END
diff --git a/contrib/mibs/V2ADMIN-MIB.txt b/contrib/mibs/V2ADMIN-MIB.txt
new file mode 100644 (file)
index 0000000..c9886db
--- /dev/null
@@ -0,0 +1,2264 @@
+    V2ADMIN-MIB DEFINITIONS ::= BEGIN
+
+    IMPORTS
+--        MODULE-IDENTITY, OBJECT-TYPE, Integer32, Counter32, UInteger32
+       snmpModules
+            FROM SNMPv2-SMI
+        RowStatus, TestAndIncr
+             FROM SNMPv2-TC
+        MODULE-COMPLIANCE, OBJECT-GROUP
+            FROM SNMPv2-CONF;
+
+
+    v2AdminMIB MODULE-IDENTITY
+        LAST-UPDATED "9508231700"
+        ORGANIZATION "IETF SNMPv2 Working Group"
+        CONTACT-INFO
+                      "The IETF SNMPv2 Working Group
+                      snmpv2@tis.com
+                      Full contact info to be provided . . ."
+        DESCRIPTION
+              "The MIB module for configuring SNMPv2 entities."
+        ::= { snmpModules 1134 }
+
+
+    -- definition of textual conventions
+
+    KeyChange ::= TEXTUAL-CONVENTION
+        STATUS       current
+        DESCRIPTION
+              "Objects with this syntax are used to change a value, K, such
+              as a secret key, using a one-way function.  Objects which
+              specify this syntax must designate the mechanism for selecting
+              the key value to be changed.
+
+              The value of an instance of this object is the concatenation
+              of two components:  a 'random' component and a 'delta'
+              component.  The length of the random component is always 16,
+              and the length of the delta component is variable and
+              non-negative.
+
+              When an instance of this object is modified to have a new
+              value by the management protocol, the agent generates a new
+              value of K as follows:
+
+
+
+
+
+
+
+
+
+
+
+               - a temporary variable is initialized to the existing value
+                 of K;
+               - if the length of the delta component is greater than 16
+                 bytes, then:
+                  - the random component is appended to the value of the
+                    temporary variable, and the result is input to the MD5
+                    hash algorithm to produce a digest value, and the
+                    temporary variable is set to this digest value;
+                  - the value of the temporary variable is XOR-ed with the
+                    first (next) 16-bytes of the delta component to produce
+                    the first (next) 16-bytes of the new value of K.
+                  - the above two steps are repeated until the unused
+                    portion of the delta component is 16 bytes or less,
+               - the random component is appended to the value of the
+                 temporary variable, and the result is input to the MD5 hash
+                 algorithm to produce a digest value;
+               - this digest value, truncated if necessary to be the same
+                 length as the unused portion of the delta component, is
+                 XOR-ed with the unused portion of the delta component to
+                 produce the (final portion of the) new value of K.
+
+                 That is,
+
+                    iterations = (lenOfDelta - 1) / 16; /* integer division */
+                    temp = keyold;
+                    for (i = 0; i < iterations; i++) {
+                       temp = MD5 (temp || random);
+                       keynew[i*16 .. (i*16)+15] =
+                              temp XOR delta[i*16 .. (i*16)+15];
+                    }
+                    temp = MD5 (temp || random);
+                    keynew[i*16 .. lenOfDelta-1] =
+                           temp XOR delta[i*16 .. lenOfDelta-1];
+
+              The value of an object with this syntax, whenever it is
+              retrieved by the management protocol, is always the zero-
+              length string."
+        SYNTAX       OCTET STRING
+
+
+    MemoryType ::= TEXTUAL-CONVENTION
+        STATUS       current
+        DESCRIPTION
+              "Describes the memory realization of a conceptual row.  A row
+              which is 'volatile' is lost upon reboot.  A row which is
+
+
+
+
+
+
+
+
+
+
+              either 'nonVolatile', 'permanent' or 'readOnly', is backed up
+              by stable storage.  A row which is 'permanent' can be changed
+              but not deleted.  A row which is 'readOnly' cannot be changed
+              nor deleted.
+
+              It is not necessary for an implementation to allow the creation
+              of permanent(4) or readOnly(5) entries.
+
+              Every usage of this textual convention is required to specify
+              the columnar objects which a 'permanent' row must at a minimum
+              allow to be writable."
+        SYNTAX       INTEGER {
+                       other(1),            -- eh?
+                       volatile(2),         -- e.g., in RAM
+                       nonVolatile(3),      -- e.g., in NVRAM
+                       permanent(4),        -- e.g., partially in ROM
+                       readOnly(5)          -- e.g., completely in ROM
+                     }
+
+
+    TransportLabel ::= TEXTUAL-CONVENTION
+        STATUS       current
+        DESCRIPTION
+              "A textual description for a transport endpoint.  This
+              description will typically be an alias for the
+              endpoint as defined by the operating system.  For example,
+              for a transport endpoint in the snmpUDPDomain, the textual
+              description might be the hostname of the corresponding
+              IP address."
+
+        SYNTAX       OCTET STRING (SIZE (0..255))
+
+
+    AuthName ::= TEXTUAL-CONVENTION
+        STATUS       current
+        DESCRIPTION
+              "An octet string consisting entirely of upper- or lower-case
+              letters, digits, underscore, hyphen, and period characters.
+              This corresponds to ASCII characters 65-90, 97-122, 48-57,
+              95, 45, and 46.
+
+              The use of this set of characters makes the configuration
+              datastore for an SNMPv2 entity more human-readable, when
+              stored as ASCII datafiles."
+        SYNTAX       OCTET STRING
+
+
+
+
+
+
+
+
+
+
+    SnmpID ::= TEXTUAL-CONVENTION
+        STATUS       current
+        DESCRIPTION
+              "An SNMPv2 entity's administratively-unique identifier."
+        SYNTAX       OCTET STRING (SIZE (12))
+
+
+    SPI ::= TEXTUAL-CONVENTION
+        STATUS       current
+        DESCRIPTION
+              "An integer specifying a security protocol."
+        SYNTAX       INTEGER {
+                                 snmpv1(1),
+                                 snmpv2C(2),
+                                 maint(3), -- maintenance operations
+                                 usecNoAuth(4),
+                                 usecAuth(5),
+                                 usecPriv(6)
+                     }
+    --
+    -- The v2AdminSnmpScalars Group
+    --
+
+    v2AdminSnmpScalars OBJECT IDENTIFIER ::= { v2AdminMIB 1 }
+
+    snmpID OBJECT-TYPE
+        SYNTAX       SnmpID
+        MAX-ACCESS   read-only
+        STATUS       current
+        DESCRIPTION
+              "An SNMPv2 entity's administratively-unique identifier.
+
+              The initial value for this object may be configured via an
+              operator console entry or via an algorithmic function
+              defined by the vendor or administrator.  In the later case,
+              the following guidelines are recommended:
+
+                  1) The first four octets should be set to the binary
+                     equivalent of the device vendor's SNMP network management
+                     private enterprise number as assigned by the Internet
+                     Assigned Numbers Authority (IANA).  For example, if
+                     Acme Networks has been assigned { enterprises 696 },
+                     the first four octets would be assigned '000002b8'H.
+
+                  2) The remaining eight octets are the cookie whose
+
+
+
+
+
+
+
+
+
+
+                     contents are determined via one or more enterprise-
+                     specific methods.  Such methods must be designed so as
+                     to maximize the possibility that the value of this
+                     object will be unique in the device's administrative
+                     domain.  For example, the cookie may be the IP address
+                     of the device, or the MAC address of one of the
+                     interfaces, with each address suitably padded with
+                     random octets, or possibly a unique cookie determined
+                     by the device's model# and serial#.  If multiple methods
+                     are defined, then it is recommended that the cookie be
+                     further divided into one octet that indicates the method
+                     being used and seven octets which are a function of
+                     the method."
+        ::= { v2AdminSnmpScalars 1 }
+
+    snmpMaxMessageSize OBJECT-TYPE
+        SYNTAX       Integer32 (484..2147483647)
+        MAX-ACCESS   read-only
+        STATUS       current
+        DESCRIPTION
+              "The maximum length in octets of an SNMPv2 message which
+              this SNMPv2 entity can send or receive and process, determined
+              as the minimum of the maximum message size values supported
+              among all of the transports available to and supported by the
+              entity."
+        ::= { v2AdminSnmpScalars 3 }
+
+    maxIdentityNameLength OBJECT-TYPE
+        SYNTAX       Integer32 (1..255)
+        MAX-ACCESS   read-only
+        STATUS       current
+        DESCRIPTION
+              "The maximum length in octets which a particular implementation
+              will allow for any object which specifies an identityName.
+              This object may be queried by a manager in order to determine
+              system-specific limits for use during creation of new entries
+              in the tables defined in this MIB module."
+        ::= { v2AdminSnmpScalars 4 }
+
+    maxGroupNameLength OBJECT-TYPE
+        SYNTAX       Integer32 (1..255)
+        MAX-ACCESS   read-only
+        STATUS       current
+        DESCRIPTION
+              "The maximum length in octets which a particular implementation
+
+
+
+
+
+
+
+
+
+
+              will allow for any object which specifies a groupName.
+              This object may be queried by a manager in order to determine
+              system-specific limits for use during creation of new entries
+              in the tables defined in this MIB module."
+        ::= { v2AdminSnmpScalars 5 }
+
+    maxV2ContextNameLength OBJECT-TYPE
+        SYNTAX       Integer32 (1..255)
+        MAX-ACCESS   read-only
+        STATUS       current
+        DESCRIPTION
+              "The maximum length in octets which a particular implementation
+              will allow for the v2ContextName object, the acContextName
+              object, the notifyContextName object, the proxyContextNameIn
+              object, and any other objects which specify a contextName.
+              This object may be queried by a manager in order to determine
+              system-specific limits for use during creation of new entries
+              in the tables defined in this MIB module."
+        ::= { v2AdminSnmpScalars 6 }
+
+    maxViewTreeNameLength OBJECT-TYPE
+        SYNTAX       Integer32 (1..255)
+        MAX-ACCESS   read-only
+        STATUS       current
+        DESCRIPTION
+              "The maximum length in octets which a particular implementation
+              will allow for the viewTreeName object, and any other
+              object which specifies the name of a view.  This object may
+              be queried by a manager in order to determine system-specific
+              limits for use during creation of new entries in the tables
+              defined in this MIB module."
+        ::= { v2AdminSnmpScalars 7 }
+
+    maxTransportLabelLength OBJECT-TYPE
+        SYNTAX       Integer32 (1..255)
+        MAX-ACCESS   read-only
+        STATUS       current
+        DESCRIPTION
+              "The maximum length in octets which a particular implementation
+              will allow for objects whose syntax is TransportLabel.
+              This object may be queried by a manager in order to
+              determine system-specific limits for use during creation of
+              new entries in the tables defined in this MIB module."
+        ::= { v2AdminSnmpScalars 8 }
+
+
+
+
+
+
+
+
+
+
+
+    --
+    -- The v2AdminStats Group
+    --
+
+    v2AdminStats OBJECT IDENTIFIER ::= { v2AdminMIB 2 }
+
+    v2AdminStatsUnknownSPIs OBJECT-TYPE
+        SYNTAX       Counter32
+        MAX-ACCESS   read-only
+        STATUS       current
+        DESCRIPTION
+              "A count of the number of packets that contained sPI values
+              which are unknown to or unimplemented by the agent."
+        ::= { v2AdminStats 1 }
+
+    v2AdminStatsUnknownContexts OBJECT-TYPE
+        SYNTAX       Counter32
+        MAX-ACCESS   read-only
+        STATUS       current
+        DESCRIPTION
+              "A count of the number of packets that contained a local
+              contextName value which is unknown to the agent."
+        ::= { v2AdminStats 2 }
+
+    v2AdminStatsUnavailableContexts OBJECT-TYPE
+        SYNTAX       Counter32
+        MAX-ACCESS   read-only
+        STATUS       current
+        DESCRIPTION
+              "A count of the number of packets that contained a local
+              contextName value which specified a context that is currently
+              not available."
+        ::= { v2AdminStats 3 }
+
+    v2AdminStatsCacheMisses OBJECT-TYPE
+        SYNTAX       Counter32
+        MAX-ACCESS   read-only
+        STATUS       current
+        DESCRIPTION
+              "A count of the number of Response or Report messages received
+              for which no corresponding entry in the cache of outstanding
+              proxy operations could be found.
+
+              Note that a cache miss is not necessarily a serious problem.
+              This can occur, for example, if packets get duplicated."
+
+
+
+
+
+
+
+
+
+
+        ::= { v2AdminStats 4 }
+
+
+    --
+    -- The v2ContextTable
+    --
+
+    v2ContextTable OBJECT-TYPE
+        SYNTAX       SEQUENCE OF V2ContextEntry
+        MAX-ACCESS   not-accessible
+        STATUS       current
+        DESCRIPTION
+              "The context database portion of the Local Configuration
+              Datastore."
+        ::= { v2AdminMIB 3 }
+
+    v2ContextEntry OBJECT-TYPE
+        SYNTAX       V2ContextEntry
+        MAX-ACCESS   not-accessible
+        STATUS       current
+        DESCRIPTION
+                   "Information about a particular context."
+        INDEX { v2ContextSnmpID, IMPLIED v2ContextName }
+        ::= { v2ContextTable 1 }
+
+    V2ContextEntry ::= SEQUENCE {
+        v2ContextSnmpID         SnmpID,
+        v2ContextName           AuthName,
+        v2ContextLocalEntity    OCTET STRING,
+        v2ContextLocalTime      INTEGER,
+        v2ContextMemoryType     MemoryType,
+        v2ContextStatus         RowStatus
+    }
+
+    v2ContextSnmpID OBJECT-TYPE
+        SYNTAX       SnmpID
+        MAX-ACCESS   not-accessible
+        STATUS       current
+        DESCRIPTION
+              "The SNMPv2 entity's administratively-unique
+              identifier.  It is worth noting that in a simple agent
+              implementation, the value of this object will always be
+              equal to the entity's local snmpID object."
+        ::= { v2ContextEntry 1 }
+
+
+
+
+
+
+
+
+
+
+
+    v2ContextName OBJECT-TYPE
+        SYNTAX       AuthName (SIZE(1..255))
+        MAX-ACCESS   not-accessible
+        STATUS       current
+        DESCRIPTION
+              "A textual name uniquely identifying a particular context
+              on a particular agent."
+        ::= { v2ContextEntry 2 }
+
+    v2ContextLocalEntity OBJECT-TYPE
+        SYNTAX       OCTET STRING (SIZE(0..255))
+        MAX-ACCESS   read-create            -- usually read-only on an agent
+        STATUS       current
+        DESCRIPTION
+              "If the value of the corresponding instance of the
+              v2ContextSnmpID is equal to the local value of snmpID, then
+              the value of an instance of this object uniquely identifies a
+              local entity (e.g., a logical device managed by the same agent)
+              whose management information is available within this context.
+              The empty string indicates that the context contains the
+              SNMPv2 entity's own local management information;  otherwise,
+              a non-empty string indicates that the context contains
+              management information of some other local entity,
+              e.g., 'Repeater1'.
+
+              If the value of the corresponding instance of v2ContextSnmpID
+              is not equal to the local value of snmpID, then the value of
+              an instance of this object identifies an entity which is local
+              to the SNMPv2 entity which realizes this context."
+        DEFVAL      { ''H }
+        ::= { v2ContextEntry 3 }
+
+    v2ContextLocalTime OBJECT-TYPE
+        SYNTAX       INTEGER {
+                               currentTime(1),
+                               restartTime(2)
+                           }
+        MAX-ACCESS   read-create            -- usually read-only on an agent
+        STATUS       current
+        DESCRIPTION
+              "This object identifies the temporal domain of the
+              management information within this context."
+        DEFVAL      { currentTime }
+        ::= { v2ContextEntry 4 }
+
+
+
+
+
+
+
+
+
+
+
+    v2ContextMemoryType OBJECT-TYPE
+        SYNTAX       MemoryType
+        MAX-ACCESS   read-create            -- usually read-only on an agent
+        STATUS       current
+        DESCRIPTION
+              "The storage type for this conceptual row in the
+              v2ContextTable.  Conceptual rows having the value 'permanent'
+              need not allow write-access to any columnar objects in the
+              row."
+        ::= { v2ContextEntry 5 }
+
+    v2ContextStatus OBJECT-TYPE
+        SYNTAX       RowStatus
+        MAX-ACCESS   read-create            -- usually read-only on an agent
+        STATUS       current
+        DESCRIPTION
+              "The status of this conceptual row in the v2ContextTable.
+
+              A context is not qualified for activation until instances of
+              all corresponding columns have consistent values.
+
+              For those columnar objects which permit write-access, their
+              value in an existing conceptual row can be changed
+              irrespective of the value of v2ContextStatus for that row."
+        ::= { v2ContextEntry 6 }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+    --
+    -- The v2AdminViewTree group
+    --
+    -- This group contains the viewTreeTable, and a spin lock variable to
+    -- coordinate use of the viewTreeTable
+    --
+
+    v2AdminViewTree OBJECT IDENTIFIER ::= { v2AdminMIB 4 }
+
+    viewTreeSpinLock OBJECT-TYPE
+        SYNTAX       TestAndIncr
+        MAX-ACCESS   read-write
+        STATUS       current
+        DESCRIPTION
+              "An advisory lock used to allow several cooperating SNMPv2
+              entities, all acting in a manager role, to coordinate their
+              use of the Set operation in creating view trees.
+
+              The values of viewTreeSpinLock, acSpinLock, and notifySpinLock
+              [if the notifyTable is implemented] should be accessed in
+              harmony to provide interlocks on the creation of new views.
+
+              When creating a new view or altering an existing view, it is
+              important to understand the potential interactions with other
+              users of the view.  The spinlocks for each table which allows
+              the creation of named views should be retrieved.  The name of
+              the view to be created should be determined to be unique on
+              the managed system by consulting each table containing named
+              views.  Finally, the named view may be created, including the
+              advisory spinlocks.
+
+              Since this is an advisory lock, entities acting in an agent
+              role do not enforce the use of viewTreeSpinLock."
+        ::= { v2AdminViewTree 1 }
+
+    viewTreeTable OBJECT-TYPE
+        SYNTAX       SEQUENCE OF ViewTreeEntry
+        MAX-ACCESS   not-accessible
+        STATUS       current
+        DESCRIPTION
+              "The view tree database.  This contains information about the
+              subtrees of MIB views known to this SNMPv2 entity.  Note that
+              a MIB view which has no subtrees defined for it has no
+              entries in this table.
+
+
+
+
+
+
+
+
+
+
+
+              Each MIB view is defined by two collections of view subtrees:
+              the included view subtrees, and the excluded view subtrees.
+              Every such subtree, both included and excluded, is defined in
+              this table.
+
+              To determine if a particular object instance is in a
+              particular MIB view, compare the object instance's OBJECT
+              IDENTIFIER with each of the MIB view's active entries
+              in this table.  If none match, then the object instance is
+              not in the MIB view.  If one or more match, then the object
+              instance is included in, or excluded from, the MIB view
+              according to the value of viewTreeType in the entry whose
+              value of viewTreeSubTree has the most sub-identifiers.  If
+              multiple entries match and have the same number of
+              sub-identifiers, then the lexicographically greatest instance
+              of viewTreeType among those which match determines the inclusion
+              or exclusion.
+
+              An object instance's OBJECT IDENTIFIER X matches an active
+              entry in this table when the number of sub-identifiers in X
+              is at least as many as in the value of viewTreeSubTree for
+              the entry, and each sub-identifier in the value of
+              viewTreeSubTree matches its corresponding sub-identifier in X.
+              Two sub-identifiers match either if the corresponding bit of
+              viewMask is zero (the 'wild card' value), or if they are equal.
+
+              Due to this 'wild card' capability, we introduce the term, a
+              'family' of view subtrees, to refer to the set of subtrees
+              defined by a particular combination of values of
+              viewTreeSubTree and viewTreeMask.  In the case where no
+              'wild card' is defined in viewTreeMask, the family of view
+              subtrees reduces to a single view subtree."
+        ::= { v2AdminViewTree 2 }
+
+    viewTreeEntry OBJECT-TYPE
+        SYNTAX       ViewTreeEntry
+        MAX-ACCESS   not-accessible
+        STATUS       current
+        DESCRIPTION
+              "Information on a particular family of view subtrees
+              included in or excluded from a particular MIB view.
+
+              Implementations must not restrict the number of families of
+              view subtrees for a given MIB view, except as dictated by
+              resource constraints on the overall number of entries in the
+
+
+
+
+
+
+
+
+
+
+              viewTable."
+        INDEX { viewTreeName, IMPLIED viewTreeSubTree }
+        ::= { viewTreeTable 1 }
+
+    ViewTreeEntry ::= SEQUENCE {
+        viewTreeName         AuthName,
+        viewTreeSubTree      OBJECT IDENTIFIER,
+        viewTreeMask         OCTET STRING,
+        viewTreeType         INTEGER,
+        viewTreeMemoryType   MemoryType,
+        viewTreeStatus       RowStatus
+    }
+
+    viewTreeName OBJECT-TYPE
+        SYNTAX       AuthName (SIZE(1..255))
+        MAX-ACCESS   not-accessible
+        STATUS       current
+        DESCRIPTION
+                   "The textual name for a family of view subtrees."
+        ::= { viewTreeEntry 1 }
+
+    viewTreeSubTree OBJECT-TYPE
+        SYNTAX       OBJECT IDENTIFIER
+        MAX-ACCESS   not-accessible
+        STATUS       current
+        DESCRIPTION
+              "A MIB subtree."
+        ::= { viewTreeEntry 2 }
+
+    viewTreeMask OBJECT-TYPE
+        SYNTAX       OCTET STRING (SIZE(0..16))
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "The bit mask which, in combination with the corresponding
+              instance of viewTreeSubTree, defines a family of view
+              subtrees.
+
+              Each bit of this bit mask corresponds to a sub-identifier of
+              viewTreeSubTree, with the most significant bit of the i-th
+              octet of this octet string value (extended if necessary, see
+              below) corresponding to the (8*i - 7)-th sub-identifier, and
+              the least significant bit of the i-th octet of this octet
+              string corresponding to the (8*i)-th sub-identifier, where i
+              is in the range 1 through 16.
+
+
+
+
+
+
+
+
+
+
+              Each bit of this bit mask specifies whether or not the
+              corresponding sub-identifiers must match when determining if
+              an OBJECT IDENTIFIER is in this family of view subtrees; a
+              '1' indicates that an exact match must occur; a '0'
+              indicates 'wild card', i.e., any sub-identifier value
+              matches.
+
+              Thus, the OBJECT IDENTIFIER X of an object instance is
+              contained in a family of view subtrees if the following
+              criteria are met:
+
+                  for each sub-identifier of the value of viewTreeSubTree,
+                  either:
+
+                      the i-th bit of viewMask is 0, or
+
+                      the i-th sub-identifier of X is equal to the i-th
+                      sub-identifier of the value of viewTreeSubTree.
+
+              If the value of this bit mask is M bits long and there are
+              more than M sub-identifiers in the corresponding instance of
+              viewTreeSubTree, then the bit mask is extended with 1's to be
+              the required length.
+
+              Note that when the value of this object is the zero-length
+              string, this extension rule results in a mask of all-1's
+              being used (i.e., no 'wild card'), and the family of view
+              subtrees is the one view subtree uniquely identified by the
+              corresponding instance of viewTreeSubTree."
+        DEFVAL      { ''H }
+        ::= { viewTreeEntry 3 }
+
+    viewTreeType OBJECT-TYPE
+        SYNTAX       INTEGER {
+                               included(1),
+                               excluded(2)
+                           }
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "The status of a particular family of view subtrees within
+              the particular context's MIB view.  The value 'included(1)'
+              indicates that the corresponding instances of viewTreeSubTree
+              and viewTreeMask define a family of view subtrees included in
+              the MIB view.  The  value 'excluded(2)' indicates that the
+
+
+
+
+
+
+
+
+
+
+              corresponding instances of viewTreeSubTree and viewTreeMask
+              define a family of view subtrees excluded from the MIB view."
+        ::= { viewTreeEntry 4 }
+
+    viewTreeMemoryType OBJECT-TYPE
+        SYNTAX       MemoryType
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "The storage type for this conceptual row in the viewTreeTable.
+              Conceptual rows having the value 'permanent' need not allow
+              write-access to any columnar objects in the row."
+        ::= { viewTreeEntry 5 }
+
+    viewTreeStatus OBJECT-TYPE
+        SYNTAX       RowStatus
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "The status of this conceptual row in the viewTreeTable.
+
+              For those columnar objects which permit write-access, their
+              value in an existing conceptual row can be changed
+              irrespective of the value of viewTreeStatus for that row."
+        ::= { viewTreeEntry 6 }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+    --
+    -- Access Control Portion of the Local Configuration Datastore (LCD)
+    --
+    v2AdminAccessControl OBJECT IDENTIFIER ::= { v2AdminMIB 5 }
+
+    --
+    -- a spinlock for the acTable
+    --
+
+    acSpinLock OBJECT-TYPE
+        SYNTAX       TestAndIncr
+        MAX-ACCESS   read-write
+        STATUS       current
+        DESCRIPTION
+              "An advisory lock used to allow several cooperating SNMPv2
+              entities, all acting in a manager role, to coordinate their
+              use of the Set operation in creating view trees.
+
+              The values of viewTreeSpinLock, acSpinLock, and notifySpinLock
+              [if the notifyTable is implemented] should be accessed in
+              harmony to provide interlocks on the creation of new views.
+
+              When creating a new view or altering an existing view, it is
+              important to understand the potential interactions with other
+              users of the view.  The spinlocks for each table which allows
+              the creation of named views should be retrieved.  The name of
+              the view to be created should be determined to be unique on
+              the managed system by consulting each table containing named
+              views.  Finally, the named view may be created, including the
+              advisory spinlocks.
+
+              Since this is an advisory lock, entities acting in an agent
+              role do not enforce the use of acSpinLock."
+        ::= { v2AdminAccessControl 1 }
+
+
+    --
+    -- The acTable
+    --
+
+    acTable OBJECT-TYPE
+        SYNTAX       SEQUENCE OF AcEntry
+        MAX-ACCESS   not-accessible
+        STATUS       current
+        DESCRIPTION
+
+
+
+
+
+
+
+
+
+
+                   "The access control database."
+        ::= { v2AdminAccessControl 2 }
+
+    acEntry OBJECT-TYPE
+        SYNTAX       AcEntry
+        MAX-ACCESS   not-accessible
+        STATUS       current
+        DESCRIPTION
+              "Each conceptual row in this table represents the access policy
+              for a group of identities within a particular sPI.  An access
+              policy specifies the access privileges authorized and MIB views
+              accessible by a group of identities for communication concerning
+              information contained in a particular context."
+        INDEX { acSPI, acGroupName, IMPLIED acContextName }
+        ::= { acTable 1 }
+
+    AcEntry ::= SEQUENCE {
+        acSPI                SPI,
+        acGroupName          AuthName,
+        acContextName        AuthName,
+        acContextNameMask    AuthName,
+        acPrivs              INTEGER,
+        acReadViewName       AuthName,
+        acWriteViewName      AuthName,
+        acMemoryType         MemoryType,
+        acStatus             RowStatus
+    }
+
+    acSPI OBJECT-TYPE
+        SYNTAX       SPI
+        MAX-ACCESS   not-accessible
+        STATUS       current
+        DESCRIPTION
+              "The security protocol under which this conceptual row
+              provides access privileges.  The sPI which is used to
+              originate a management request must match this object
+              in order to be granted access to management information."
+        ::= { acEntry 1 }
+
+    acGroupName OBJECT-TYPE
+        SYNTAX       AuthName (SIZE(1..255))
+        MAX-ACCESS   not-accessible
+        STATUS       current
+        DESCRIPTION
+              "The textual name of a group associated with a conceptual row
+
+
+
+
+
+
+
+
+
+
+              in the acTable.  A group name is associated with zero, one, or
+              more identities which are afforded the access privileges
+              authorized by the corresponding value of acPrivs to the zero,
+              one, or more contexts named by the corresponding values of
+              acContextName and acContextNameMask via the views named by
+              acReadViewName and acWriteViewName, if any.
+
+              For example, if the corresponding value of sPI is usecNoAuth,
+              usecAuth, or usecPriv, then the value of an instance of this
+              object identifies the set of identities whose usecUserGroupName
+              value is equal to the value of the instance of this object."
+        ::= { acEntry 2 }
+
+    acContextName OBJECT-TYPE
+        SYNTAX       AuthName (SIZE(1..255))
+        MAX-ACCESS   not-accessible
+        STATUS       current
+        DESCRIPTION
+              "The value of this object combined with the corresponding
+              value of acContextNameMask identifies zero, one, or more
+              contexts associated with a particular set of access
+              privileges."
+        ::= { acEntry 3 }
+
+    acContextNameMask OBJECT-TYPE
+        SYNTAX       OCTET STRING (SIZE (0..32))
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "The bit mask, which, in combination with the corresponding
+              instance of acContextName, identifies zero, one, or more
+              contexts.
+
+              Each bit of this bit mask corresponds to an octet of
+              acContextName, with the most significant bit of the
+              i-th octet of this octet string value (extended if necessary,
+              see below) corresponding to the (8*i - 7)-th octet, and the
+              least significant bit of the i-th octet of this octet string
+              corresponding to the (8*i)-th octet, where i is in the range
+              1 through 4.
+
+              Each bit of this bit mask specifies whether or not the
+              corresponding octets must match when determining which
+              instances of v2ContextEntry are identified by the
+              corresponding value of acContextName.  A '1' indicates that
+
+
+
+
+
+
+
+
+
+
+              the corresponding octets must match, and a '0' indicates that
+              any octet value matches.
+
+              Thus, an instance of v2ContextEntry is identified if, for each
+              bit in the corresponding value of acContextNameMask,
+              either:
+
+                  the bit of acContextNameMask is 0, or
+
+                  the length of acContextName and v2ContextName are both
+                  at least i octets, and the i-th octet of
+                  acContextName is equal to the i-th octet of
+                  v2ContextName.
+
+              It is not permitted for multiple conceptual rows in the acTable
+              to identify the same v2ContextName in this manner, for a
+              particular acSPI and acGroupName pair.  If a Set request
+              attempts to modify a conceptual row in the acTable in a way such
+              that the combination of acContextName and acContextNameMask as
+              described above would yield the same value as the combination of
+              acContextName and acContextNameMask of another conceptual row in
+              the same conceptual table, for which the corresponding values of
+              acSPI are equal and the corresponding values of acGroupName are
+              equal, then an inconsistentValueError should be returned, and
+              the Set operation should fail.
+
+              If the value of this bit mask is M bits long and there are
+              more than M octets in the corresponding instance of either
+              acContextName or v2ContextName, then the bit mask is
+              extended with 1's up to the maximum of the two lengths."
+        ::= { acEntry 4 }
+
+    acPrivs OBJECT-TYPE
+        SYNTAX       INTEGER {
+                            nothing(1),
+                            readOnly(2),
+                            readWrite(3)
+                           }
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "This object specifies the types of management operations
+              that are authorized by this conceptual row.  A value of
+              readOnly(2) indicates that Get, GetNext, and GetBulk
+              operations are authorized.  A value of readWrite(3)
+
+
+
+
+
+
+
+
+
+
+              indicates that Get, GetNext, GetBulk, and Set operations
+              are authorized."
+        ::= { acEntry 5 }
+
+    acReadViewName OBJECT-TYPE
+        SYNTAX       AuthName (SIZE(0..255))
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "The value of an instance of this object identifies the MIB
+              view to be be used to provide access control via read (i.e.,
+              Get, GetNext, and GetBulk) operations to the zero, one, or
+              many contexts identified by the combination of the
+              corresponding instances of acContextName and acContextNameMask,
+              for a given value of sPI equal to the value of the corresponding
+              instance of acSPI, if and only if the corresponding value of
+              acPrivs authorizes read operations, i.e., equals readOnly(2)
+              or readWrite(3).
+
+              The identified MIB view is that for which viewTreeName has
+              the same value as the instance of this object; if there are
+              no active view subtrees for that value, or if the value of
+              this object has zero-length, then the identified MIB view
+              is the empty set of view subtrees, and the identified set of
+              objects for which read operations is enabled by this conceptual
+              row is the empty set."
+        ::= { acEntry 6 }
+
+    acWriteViewName OBJECT-TYPE
+        SYNTAX       AuthName (SIZE(0..255))
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "The value of an instance of this object identifies the MIB
+              view to be be used to provide access control via write, i.e.,
+              Set operations to the zero, one, or many contexts identified
+              by the combination of the corresponding instances of
+              acContextName and acContextNameMask, for a given value of sPI
+              equal to the value of the corresponding instance of acSPI, if
+              and only if the corresponding value of acPrivs authorizes write
+              (Set) operations, i.e., equals readWrite(3).
+
+              The identified MIB view is that for which viewTreeName has
+              the same value as the instance of this object; if there are
+              no active view subtrees for that value, or if the value of
+
+
+
+
+
+
+
+
+
+
+              this object has zero-length, then the identified MIB view
+              is the empty set of view subtrees, and the identified set of
+              objects for which write (Set) operations is enabled by this
+              conceptual row is the empty set."
+        ::= { acEntry 7 }
+
+    acMemoryType OBJECT-TYPE
+        SYNTAX       MemoryType
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "The storage type for this conceptual row in the acTable.
+              Conceptual rows having the value 'permanent' need not allow
+              write-access to any columnar objects in the row."
+        ::= { acEntry 8 }
+
+    acStatus OBJECT-TYPE
+        SYNTAX       RowStatus
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "The status of this conceptual row in the acTable.
+
+              A conceptual row being created in this table is not
+              considered ready for activation until the values of
+              acContextName and acContextNameMask are consistent with
+              all existing active rows in the table, as described above
+              under acContextNameMask.
+
+              For those columnar objects which permit write-access, their
+              value in an existing conceptual row can be changed
+              irrespective of the value of acStatus for that row."
+        ::= { acEntry 9 }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+    --
+    -- The v2AdminTransport group
+    --
+
+    v2AdminTransport OBJECT IDENTIFIER ::= { v2AdminMIB 6 }
+
+    --
+    -- Spin lock variable for transportTable modification.
+    --
+
+    transportSpinLock OBJECT-TYPE
+        SYNTAX       TestAndIncr
+        MAX-ACCESS   read-write
+        STATUS       current
+        DESCRIPTION
+              "An advisory lock used to allow several cooperating SNMPv2
+              entities, all acting in a manager role, to coordinate their
+              use of Set operations to entries in the transportTable.
+              A manager application should include the value of
+              transportSpinLock in every Set operation which accesses the
+              transportTable.  Since this is an advisory lock, entities
+              acting in an agent role do not enforce the use of
+              transportSpinLock."
+        ::= { v2AdminTransport 1 }
+
+    --
+    -- The transportTable
+    --
+
+    transportTable OBJECT-TYPE
+        SYNTAX       SEQUENCE OF TransportEntry
+        MAX-ACCESS   not-accessible
+        STATUS       current
+        DESCRIPTION
+              "The transport endpoint database.  This table need only be
+              implemented by entities which will send traps or inform
+              requests, or which will support proxy operations."
+        ::= { v2AdminTransport 3 }
+
+    transportEntry OBJECT-TYPE
+        SYNTAX       TransportEntry
+        MAX-ACCESS   not-accessible
+        STATUS       current
+        DESCRIPTION
+              "A transport endpoint.  This specifies a destination to which
+
+
+
+
+
+
+
+
+
+
+              notifications or proxy requests will be sent."
+        INDEX { transportLabel, transportSubindex }
+        ::= { transportTable 1 }
+
+    TransportEntry ::= SEQUENCE {
+        transportLabel        TransportLabel,
+        transportSubindex     INTEGER,
+        transportDomain       OBJECT IDENTIFIER,
+        transportAddress      OCTET STRING,
+        transportReceiveMask  OCTET STRING,
+        transportMMS          Integer32,
+        transportMemoryType   MemoryType,
+        transportStatus       RowStatus
+    }
+
+    transportLabel OBJECT-TYPE
+        SYNTAX       TransportLabel (SIZE(1..255))
+        MAX-ACCESS   not-accessible
+        STATUS       current
+        DESCRIPTION
+              "A unique name for a set of transport endpoints."
+        ::= { transportEntry 1 }
+
+    transportSubindex OBJECT-TYPE
+        SYNTAX       INTEGER (0..2147483647)
+        MAX-ACCESS   not-accessible
+        STATUS       current
+        DESCRIPTION
+              "The sub-index for a transport endpoint.  For multiply-homed
+              entities, a single transportLabel might refer to multiple
+              transport endpoints."
+        ::= { transportEntry 2 }
+
+    transportDomain OBJECT-TYPE
+        SYNTAX       OBJECT IDENTIFIER
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "Indicates the kind of transport service."
+        ::= { transportEntry 3 }
+
+    -- [@ref tm] specifies some transportDomain values
+
+    transportAddress OBJECT-TYPE
+        SYNTAX       OCTET STRING (SIZE(0..255))
+
+
+
+
+
+
+
+
+
+
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "The transport service address, formatted according to the
+              corresponding value of transportDomain.  For some operations,
+              this value is further qualified by the corresponding value of
+              transportReceiveMask, allowing a group of transport
+              endpoints to be specified.
+
+              For example, for the transport domain corresponding to the
+              snmpUDPDomain, transportAddress is formatted as a 4-octet
+              IP Address concatenated with a 2-octet UDP port number."
+        ::= { transportEntry 4 }
+
+    transportReceiveMask OBJECT-TYPE
+        SYNTAX       OCTET STRING (SIZE(0..255))
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "This object is used to qualify the value of the
+              corresponding value of transportAddress.  The semantics of
+              this object depend on the corresponding value of
+              transportDomain.
+
+              For example, for the transport domain corresponding to the
+              snmpUDPDomain, transportReceiveMask specifies a network mask
+              value.  This allows an entry in the transportTable to
+              specify an entire sub-network."
+        ::= { transportEntry 5 }
+
+    transportMMS OBJECT-TYPE
+        SYNTAX       Integer32 (484..2147483647)
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "This object specifies the minimum value of the maximum
+              size of messages which may be sent or received using this
+              transport endpoint."
+        ::= { transportEntry 6 }
+
+    transportMemoryType OBJECT-TYPE
+        SYNTAX       MemoryType
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+
+
+
+
+
+
+
+
+
+
+              "The storage type for this conceptual row in the transportTable.
+              Conceptual rows having the value 'permanent' need not allow
+              write-access to any columnar objects in the row."
+        ::= { transportEntry 7 }
+
+    transportStatus OBJECT-TYPE
+        SYNTAX       RowStatus
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "The status of this conceptual row in the transportTable.
+
+              The values of transportDomain, transportAddress, and
+              transportReceiveMask in an existing conceptual row cannot be
+              changed while the corresponding value of transportStatus for
+              that row is active.
+
+              For other columnar objects which permit write-access, their
+              value in an existing conceptual row can be changed
+              irrespective of the value of transportStatus for that row."
+        ::= { transportEntry 8 }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+    --
+    -- The v2AdminNotify group
+    --
+    -- This group contains tables used for configuring notifications.
+    --
+
+    v2AdminNotify OBJECT IDENTIFIER ::= { v2AdminMIB 7 }
+
+    notifySpinLock OBJECT-TYPE
+        SYNTAX       TestAndIncr
+        MAX-ACCESS   read-write
+        STATUS       current
+        DESCRIPTION
+              "An advisory lock used to allow several cooperating SNMPv2
+              entities, all acting in a manager role, to coordinate their
+              use of the Set operation in creating view trees.
+
+              The values of viewTreeSpinLock, acSpinLock, and notifySpinLock
+              should be accessed in harmony to provide interlocks on the
+              creation of new views.
+
+              When creating a new view or altering an existing view, it is
+              important to understand the potential interactions with other
+              users of the view.  The spinlocks for each table which allows
+              the creation of named views should be retrieved.  The name of
+              the view to be created should be determined to be unique on
+              the managed system by consulting each table containing named
+              views.  Finally, the named view may be created, including the
+              advisory spinlocks.
+
+              Since this is an advisory lock, entities acting in an agent
+              role do not enforce the use of notifySpinLock."
+        ::= { v2AdminNotify 1 }
+
+    --
+    -- The notifyTable.
+    --
+    -- Note that this table does not provide values to be used for the
+    -- authSnmpID or contextSnmpID values for outgoing packets.
+    --
+    -- When sending a Trap notification, both the authSnmpID and the
+    -- contextSnmpID will be equal to the local value of snmpID.
+    --
+    -- When sending an Inform request, the authSnmpID will be equal to the
+    -- notifyAuthSnmpID, and the contextSnmpID will be equal to the local
+
+
+
+
+
+
+
+
+
+
+    -- value of snmpID.
+    --
+
+    notifyTable OBJECT-TYPE
+        SYNTAX       SEQUENCE OF NotifyEntry
+        MAX-ACCESS   not-accessible
+        STATUS       current
+        DESCRIPTION
+              "The notification destination database.  This table need
+              only be implemented by entities which will send trap
+              notifications or inform requests.
+
+              If an entity will only send trap notifications, it need
+              only implement this table, in which case all entries in the
+              table are taken as trap destinations.
+
+              If an entity will send inform requests, it must implement
+              both this table, and the notifyInformParametersTable.  In this
+              case, each entry in this table is taken as a trap or inform
+              destination, as specified in the corresponding value of
+              notifyConfirm."
+        ::= { v2AdminNotify 2 }
+
+    notifyEntry OBJECT-TYPE
+        SYNTAX       NotifyEntry
+        MAX-ACCESS   not-accessible
+        STATUS       current
+        DESCRIPTION
+              "Each conceptual row in this table identifies a notification
+              destination, including, directly or indirectly, an identity,
+              context, and transport endpoint information to be used for
+              sending a notification."
+        INDEX { notifyIndex }
+        ::= { notifyTable 1 }
+
+    NotifyEntry ::= SEQUENCE {
+        notifyIndex          INTEGER,
+        notifySPI            SPI,
+        notifyIdentityName   AuthName,
+        notifyTransportLabel TransportLabel,
+        notifyContextName    AuthName,
+        notifyViewName       AuthName,
+        notifyMemoryType     MemoryType,
+        notifyStatus         RowStatus
+    }
+
+
+
+
+
+
+
+
+
+
+    notifyIndex OBJECT-TYPE
+        SYNTAX       INTEGER (0..2147483647)
+        MAX-ACCESS   not-accessible
+        STATUS       current
+        DESCRIPTION
+              "An arbitrary unique value for each notification destination."
+        ::= { notifyEntry 1 }
+
+    notifySPI OBJECT-TYPE
+        SYNTAX       SPI
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "This object identifies the security protocol to be used
+              when sending this notification."
+        ::= { notifyEntry 2 }
+
+    notifyIdentityName OBJECT-TYPE
+        SYNTAX       AuthName (SIZE(1..255))
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "The identity which will be used to send a notification.  This
+              object specifies an identity within the security protocol
+              specified by the corresponding value of notifySPI."
+        ::= { notifyEntry 3 }
+
+    notifyTransportLabel OBJECT-TYPE
+        SYNTAX       TransportLabel
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "An instance of notifyTransportLabel identifies zero, one, or
+              more conceptual rows in the transportTable which describe
+              the transport endpoint(s) to which this notification should
+              be delivered."
+        ::= { notifyEntry 4 }
+
+    notifyContextName OBJECT-TYPE
+        SYNTAX       AuthName (SIZE(1..255))
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "The context for which notifications will be sent.  There
+              may or may not be be a corresponding conceptual row in the
+
+
+
+
+
+
+
+
+
+
+              v2ContextTable whose value of v2ContextName is equal to the
+              value of this object.  If there is no corresponding conceptual
+              row in the v2ContextTable, then no notifications shall be
+              emitted as a result of this entry, even if the value of
+              notifyStatus is 'active'."
+        ::= { notifyEntry 5 }
+
+    notifyViewName OBJECT-TYPE
+        SYNTAX       AuthName (SIZE(1..255))
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "The family of view subtrees to which this notification has
+              access.  A notification will only be delivered to this
+              destination if all of the objects in the varbind list to be
+              delivered are included in this MIB view.  This object
+              specifies a set of entries in the viewTreeTable whose
+              values of viewTreeName are equal to this object.
+
+              The identified view is that for which viewTreeName has the
+              same value as the instance of this object; if there are no
+              active view subtrees for that value, or if the value of
+              this object has zero-length, then the identified MIB view
+              is the empty set of view subtrees, and thus no objects
+              are included in the identified view."
+        ::= { notifyEntry 6 }
+
+    notifyMemoryType OBJECT-TYPE
+        SYNTAX       MemoryType
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "The storage type for this conceptual row in the notifyTable.
+              Conceptual rows having the value 'permanent' need not allow
+              write-access to any columnar objects in the row."
+        ::= { notifyEntry 7 }
+
+    notifyStatus OBJECT-TYPE
+        SYNTAX       RowStatus
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "The status of this conceptual row in the notifyTable.
+
+              For those columnar objects which permit write-access, their
+
+
+
+
+
+
+
+
+
+
+              value in an existing conceptual row can be changed
+              irrespective of the value of notifyStatus for that row."
+        ::= { notifyEntry 8 }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+    --
+    -- The notifyInformParametersTable contains additional parameters for
+    -- inform requests.  This table augments the notifyTable.
+    --
+    notifyInformParametersTable OBJECT-TYPE
+        SYNTAX       SEQUENCE OF NotifyInformParametersEntry
+        MAX-ACCESS   not-accessible
+        STATUS       current
+        DESCRIPTION
+              "Database of additional parameters for notification
+              destinations.  This table need only be implemented by
+              entities which are configured to send inform requests
+              via entries in the notifyTable."
+        ::= { v2AdminNotify 3 }
+
+    notifyInformParametersEntry OBJECT-TYPE
+        SYNTAX       NotifyInformParametersEntry
+        MAX-ACCESS   not-accessible
+        STATUS       current
+        DESCRIPTION
+              "Additional parameters for a notification destination."
+        AUGMENTS { notifyEntry }
+        ::= { notifyInformParametersTable 1 }
+
+    NotifyInformParametersEntry ::= SEQUENCE {
+        notifyConfirm         TruthValue,
+        notifyAuthSnmpID      SnmpID,
+        notifyTimeout         Integer32,
+        notifyMaxRetry        Integer32
+    }
+
+    notifyConfirm OBJECT-TYPE
+        SYNTAX       TruthValue
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "Indicates whether a notification should be confirmed.  If
+              this value is true(1), then the notification will be sent
+              as an inform request.  If the value is false(2), then the
+              notification will be sent as a trap."
+        ::= { notifyInformParametersEntry 1 }
+
+    notifyAuthSnmpID OBJECT-TYPE
+        SYNTAX       SnmpID
+        MAX-ACCESS   read-create
+
+
+
+
+
+
+
+
+
+
+        STATUS       current
+        DESCRIPTION
+              "Indicates the SnmpID to be used in the AuthInfo
+              field of Inform requests.  This object is located in this
+              table because the authSnmpID need only be specified
+              for an Inform request, since this snmpID must be that
+              of the entity to which the Inform is being sent.  For a trap,
+              the authSnmpID would be equal to the local value of snmpID
+              of the trap sender."
+        ::= { notifyInformParametersEntry 2 }
+
+    notifyTimeout OBJECT-TYPE
+        SYNTAX       Integer32 (1..2147483647)
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "The timeout interval to be used when waiting for the response
+              to an inform request.  After this period has expired, the
+              inform request will be resent.  This will be repeated a number
+              of times up to notifyMaxRetry, until a response is
+              received."
+        ::= { notifyInformParametersEntry 3 }
+
+    notifyMaxRetry OBJECT-TYPE
+        SYNTAX       Integer32 (0..2147483647)
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "The maximum number of times an inform request should be
+              re-sent when a response is not received within the interval
+              specified by the corresponding value of notifyTimeout."
+        ::= { notifyInformParametersEntry 4 }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+    --
+    -- The v2AdminProxy group
+    --
+
+    v2AdminProxy OBJECT IDENTIFIER ::= { v2AdminMIB 8 }
+
+    --
+    -- The proxyForwardingTable need only be implemented by those entities
+    -- which perform proxy operations.  This includes entities which forward
+    -- SNMP Get, GetNext, GetBulk, Set, and Inform requests to another
+    -- entity, and forward the responses resulting from these requests back
+    -- to the originating entities, and entities which forward SNMP traps to
+    -- another entity.
+    --
+
+    proxyForwardingTable OBJECT-TYPE
+        SYNTAX       SEQUENCE OF ProxyForwardingEntry
+        MAX-ACCESS   not-accessible
+        STATUS       current
+        DESCRIPTION
+              "The proxy configuration database.  Each conceptual row in
+              this database specifies configuration information for an
+              entity acting in a proxy role."
+        ::= { v2AdminProxy 2 }
+
+    proxyForwardingEntry OBJECT-TYPE
+        SYNTAX       ProxyForwardingEntry
+        MAX-ACCESS   not-accessible
+        STATUS       current
+        DESCRIPTION
+              "A proxy configuration."
+        INDEX { proxyIndex }
+        ::= { proxyForwardingTable 1 }
+
+
+    ProxyForwardingEntry ::= SEQUENCE {
+        proxyIndex                 INTEGER,
+        proxyType                  INTEGER,
+        proxySPIIn                 SPI,
+        proxyAuthSnmpIDIn          SnmpID,
+        proxyIdentityNameIn        AuthName,
+        proxyContextSnmpIDIn       SnmpID,
+        proxyContextNameIn         AuthName,
+        proxySPIOut                SPI,
+
+
+
+
+
+
+
+
+
+
+        proxyIdentityNameOut       AuthName,
+        proxyTransportLabelOut     TransportLabel,
+        proxyMemoryType            MemoryType,
+        proxyStatus                RowStatus
+    }
+
+    proxyIndex OBJECT-TYPE
+        SYNTAX       INTEGER (0..2147483647)
+        MAX-ACCESS   not-accessible
+        STATUS       current
+        DESCRIPTION
+              "An arbitrary unique value for each proxy configuration."
+        ::= { proxyForwardingEntry 1 }
+
+    proxyType OBJECT-TYPE
+        SYNTAX       INTEGER {
+                               gnb(1),
+                               set(2),
+                               trap(3),
+                               inform(4)
+                           }
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "Indicates whether the entity will act as a proxy for
+              management requests being sent from one entity to another
+              entity (and for the corresponding responses), for traps
+              operations being sent from an agent to a manager, or for
+              inform operations being sent from a manager to another manager
+              (and for the corresponding responses).
+
+              If this object is equal to gnb(1), then this conceptual row
+              is a configuration for performing proxy operations for Get,
+              GetNext, and GetBulk operations.
+
+              If this object is equal to set(2), then this conceptual row
+              is a configuration for performing proxy operations for Set
+              operations.
+
+              If this object is equal to trap(3), then this conceptual
+              row is a configuration for performing proxy operations for
+              Trap operations.
+
+              If this object is equal to inform(4), then this conceptual
+              row is a configuration for performing proxy operations for
+
+
+
+
+
+
+
+
+
+
+              Inform operations."
+        ::= { proxyForwardingEntry 2 }
+
+    proxySPIIn OBJECT-TYPE
+        SYNTAX       SPI
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "The security protocol for which the agent will act as
+              a proxy.  This entity will only perform proxy operations
+              for management operations in which the security protocol
+              in use matches this object."
+        ::= { proxyForwardingEntry 3 }
+
+    proxyAuthSnmpIDIn OBJECT-TYPE
+        SYNTAX       SnmpID
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "The value of authSnmpID for an incoming message.  For
+              entries for which the value of proxyType is gnb(1), set(2) or
+              inform(4), this object will have the same value as the local
+              value for snmpID."
+        ::= { proxyForwardingEntry 4 }
+
+    proxyIdentityNameIn OBJECT-TYPE
+        SYNTAX       AuthName(SIZE(1..255))
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "The identity for which this agent will act as a proxy.
+              This entity will only perform proxy operations for management
+              operations in which the identity derived by the security
+              protocol from the authentication information matches an
+              instance of this object."
+        ::= { proxyForwardingEntry 5 }
+
+    proxyContextSnmpIDIn OBJECT-TYPE
+        SYNTAX       SnmpID
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "This object, along with the corresponding instance of
+              proxyContextNameIn, specifies the context for which
+              this entity will act as a proxy.  These two objects
+
+
+
+
+
+
+
+
+
+
+              identify a particular globally unique context, i.e.,
+              a particular v2ContextSnmpID and v2ContextName pair."
+        ::= { proxyForwardingEntry 6 }
+
+    proxyContextNameIn OBJECT-TYPE
+        SYNTAX       AuthName (SIZE(1..255))
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "This object, along with the corresponding instance of
+              proxyContextSnmpIDIn, specifies the context for which
+              this entity will act as a proxy.  These two objects
+              identify a particular globally unique context, i.e.,
+              a particular v2ContextSnmpID and v2ContextName pair."
+        ::= { proxyForwardingEntry 7 }
+
+    proxySPIOut OBJECT-TYPE
+        SYNTAX       SPI
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "The identifier of the security protocol to be used for
+              forwarding the proxied requests or trap notifications."
+        ::= { proxyForwardingEntry 8 }
+
+    proxyIdentityNameOut OBJECT-TYPE
+        SYNTAX       AuthName(SIZE(0..255))
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "The identity to be used for forwarding proxied requests or
+              trap notifications."
+        ::= { proxyForwardingEntry 10 }
+
+    proxyTransportLabelOut OBJECT-TYPE
+        SYNTAX       TransportLabel
+
+
+
+
+
+
+
+
+
+
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "The identification of zero, one, or many conceptual rows in
+              the transportTable whose values of transportLabel equal the
+              value of this object, designating the transport endpoint(s) to
+              which proxied requests will be forwarded.
+
+              Note that this object may specify multiple transport endpoints
+              to which a proxied request may be forwarded.  If this is the
+              case, then the first response to the forwarded request which
+              is received will be accepted, and subsequent responses will
+              be discarded.  In the case of proxy trap forwarding, multiple
+              transport end-points simply represent a proxy fan-out."
+        ::= { proxyForwardingEntry 11 }
+
+    proxyMemoryType OBJECT-TYPE
+        SYNTAX       MemoryType
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "The storage type for this conceptual row in the
+              proxyForwardingTable.  Conceptual rows having the value
+              'permanent' need not allow write-access to any columnar
+              objects in the row."
+        ::= { proxyForwardingEntry 12 }
+
+    proxyStatus OBJECT-TYPE
+        SYNTAX       RowStatus
+        MAX-ACCESS   read-create
+        STATUS       current
+        DESCRIPTION
+              "The status of this conceptual row in the proxyForwardingTable.
+
+              For those columnar objects which permit write-access, their
+              value in an existing conceptual row can be changed
+              irrespective of the value of proxyStatus for that row."
+        ::= { proxyForwardingEntry 13 }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+    -- conformance information
+
+    v2AdminMIBConformance
+                   OBJECT IDENTIFIER ::= { v2AdminMIB 10 }
+    v2AdminMIBCompliances
+                   OBJECT IDENTIFIER ::= { v2AdminMIBConformance 1 }
+    v2AdminMIBGroups
+                   OBJECT IDENTIFIER ::= { v2AdminMIBConformance 2 }
+
+
+    -- compliance statements
+
+    v2AdminMIBBasicAgentCompliance MODULE-COMPLIANCE
+        STATUS    current
+        DESCRIPTION
+              "The compliance statement for simple SNMPv2 agents which
+              implement the SNMPv2 ADMIN MIB."
+        MODULE  -- this module
+            MANDATORY-GROUPS {
+                              v2AdminBasicGroup
+                             }
+        ::= { v2AdminMIBCompliances 1 }
+
+    v2AdminMIBBasicAgentWithTransportCheckingCompliance MODULE-COMPLIANCE
+        STATUS    current
+        DESCRIPTION
+              "The compliance statement for simple SNMPv2 agents which
+              implement the SNMPv2 ADMIN MIB, and which also perform
+              transport endpoint checks when authenticating messages."
+        MODULE  -- this module
+            MANDATORY-GROUPS {
+                              v2AdminBasicGroup,
+                              v2AdminTransportGroup
+                             }
+        ::= { v2AdminMIBCompliances 2 }
+
+    v2AdminMIBBasicAgentWithTrapsCompliance MODULE-COMPLIANCE
+        STATUS    current
+        DESCRIPTION
+              "The compliance statement for SNMPv2 entities which
+              implement the SNMPv2 ADMIN MIB."
+        MODULE  -- this module
+            MANDATORY-GROUPS {
+                              v2AdminBasicGroup,
+                              v2AdminTransportGroup,
+
+
+
+
+
+
+
+
+
+
+                              v2AdminTrapGroup
+                             }
+        ::= { v2AdminMIBCompliances 3 }
+
+    v2AdminMIBBasicAgentWithProxyCompliance MODULE-COMPLIANCE
+        STATUS    current
+        DESCRIPTION
+              "The compliance statement for SNMPv2 entities which
+              implement the SNMPv2 ADMIN MIB."
+        MODULE  -- this module
+            MANDATORY-GROUPS {
+                              v2AdminBasicGroup,
+                              v2AdminTransportGroup,
+                              v2AdminProxyGroup
+                             }
+        ::= { v2AdminMIBCompliances 4 }
+
+    v2AdminMIBBasicAgentWithTrapsAndProxyCompliance MODULE-COMPLIANCE
+        STATUS    current
+        DESCRIPTION
+              "The compliance statement for SNMPv2 entities which
+              implement the SNMPv2 ADMIN MIB."
+        MODULE  -- this module
+            MANDATORY-GROUPS {
+                              v2AdminBasicGroup,
+                              v2AdminTransportGroup,
+                              v2AdminTrapGroup,
+                              v2AdminProxyGroup
+                             }
+        ::= { v2AdminMIBCompliances 5 }
+
+    v2AdminMIBDualRoleEntityCompliance MODULE-COMPLIANCE
+        STATUS    current
+        DESCRIPTION
+              "The compliance statement for SNMPv2 entities which
+              implement the SNMPv2 ADMIN MIB."
+        MODULE  -- this module
+            MANDATORY-GROUPS {
+                              v2AdminBasicGroup,
+                              v2AdminTransportGroup,
+                              v2AdminTrapGroup,
+                              v2AdminProxyGroup,
+                              v2AdminInformGroup
+                             }
+        ::= { v2AdminMIBCompliances 6 }
+
+
+
+
+
+
+
+
+
+
+    -- units of conformance
+
+    v2AdminBasicGroup OBJECT-GROUP
+        OBJECTS {
+                 snmpID,
+                 snmpMaxMessageSize,
+                 maxIdentityNameLength,
+                 maxGroupNameLength,
+                 maxV2ContextNameLength,
+                 maxViewTreeNameLength,
+                 maxTransportLabelLength,
+                 v2ContextSnmpID,
+                 v2ContextName,
+                 v2ContextLocalEntity,
+                 v2ContextLocalTime,
+                 v2ContextMemoryType,
+                 v2ContextStatus,
+                 viewTreeSpinLock,
+                 viewTreeName,
+                 viewTreeSubTree,
+                 viewTreeMask,
+                 viewTreeType,
+                 viewTreeMemoryType,
+                 viewTreeStatus,
+                 acSpinLock,
+                 acGroupName,
+                 acContextName,
+                 acContextNameMask,
+                 acPrivs,
+                 acReadViewName,
+                 acWriteViewName,
+                 acMemoryType,
+                 acStatus
+                }
+        STATUS    current
+        DESCRIPTION
+              "A collection of objects providing for configuration of an
+              SNMPv2 agent."
+        ::= { v2AdminMIBGroups 1 }
+
+    v2AdminTransportGroup OBJECT-GROUP
+        OBJECTS {
+                 transportSpinLock,
+                 transportLabel,
+                 transportSubindex,
+
+
+
+
+
+
+
+
+
+
+                 transportDomain,
+                 transportAddress,
+                 transportReceiveMask,
+                 transportMMS,
+                 transportMemoryType,
+                 transportStatus
+                }
+        STATUS    current
+        DESCRIPTION
+              "A collection of objects providing for configuration of
+              transport endpoints."
+        ::= { v2AdminMIBGroups 2 }
+
+    v2AdminTrapGroup OBJECT-GROUP
+        OBJECTS {
+                 notifySpinLock,
+                 notifyIndex,
+                 notifySPI,
+                 notifyIdentityName,
+                 notifyTransportLabel,
+                 notifyContextName,
+                 notifyViewName,
+                 notifyMemoryType,
+                 notifyStatus
+                }
+        STATUS    current
+        DESCRIPTION
+              "A collection of objects providing for configuration of an
+              SNMPv2 agent which will send traps."
+        ::= { v2AdminMIBGroups 3 }
+
+    v2AdminProxyGroup OBJECT-GROUP
+        OBJECTS {
+                 proxyIndex,
+                 proxyType,
+                 proxySPIIn,
+                 proxyIdentityNameIn,
+                 proxyContextSnmpIDIn,
+                 proxyContextNameIn,
+                 proxySPIOut,
+                 proxyIdentityNameOut,
+                 proxyTransportLabelOut,
+                 proxyMemoryType,
+                 proxyStatus
+
+
+
+
+
+
+
+
+
+
+                }
+        STATUS    current
+        DESCRIPTION
+              "A collection of objects providing for configuration of an
+              SNMPv2 proxy agent."
+        ::= { v2AdminMIBGroups 4 }
+
+    v2AdminInformGroup OBJECT-GROUP
+        OBJECTS {
+                 notifyConfirm,
+                 notifyAuthSnmpID,
+                 notifyTimeout,
+                 notifyMaxRetry
+                }
+        STATUS    current
+        DESCRIPTION
+              "A collection of objects providing for configuration of an
+              SNMPv2 dual-role-entity which will send informs."
+        ::= { v2AdminMIBGroups 5 }
+
+END
diff --git a/contrib/mibs/WWW-MIB.txt b/contrib/mibs/WWW-MIB.txt
new file mode 100644 (file)
index 0000000..3f88ed8
--- /dev/null
@@ -0,0 +1,1385 @@
+   WWW-MIB DEFINITIONS ::= BEGIN
+
+   IMPORTS
+          MODULE-IDENTITY, OBJECT-TYPE, mib-2,
+          Counter32, Counter64, Integer32, Unsigned32, TimeTicks
+                  FROM SNMPv2-SMI
+
+
+
+
+          TEXTUAL-CONVENTION, DisplayString, DateAndTime, TimeInterval
+                  FROM SNMPv2-TC
+
+          MODULE-COMPLIANCE, OBJECT-GROUP
+                  FROM SNMPv2-CONF;
+
+  --   Utf8String
+  --      FROM SYSAPPL-MIB;
+
+   wwwMIB MODULE-IDENTITY
+          LAST-UPDATED "9902251400Z"
+          ORGANIZATION "IETF Application MIB Working Group"
+          CONTACT-INFO
+                  "        Harrie Hazewinkel
+
+                       Postal: Joint Research Centre of the E.C.
+                                       via Fermi - Ispra 21020 (VA)
+                                       Italy
+
+                          Tel: +39+(0)332 786322
+                          Fax: +39+(0)332 785641
+                       E-mail: harrie.hazewinkel@jrc.it
+
+                                       Carl W. Kalbfleisch
+
+                       Postal: Verio, Inc.
+                                       1950 Stemmons Freeway
+                                       Suite 2006
+                                       Dallas, TX 75207
+                                       US
+
+                          Tel: +1 214 290-8653
+                          Fax: +1 214 744-0742
+                       E-mail: cwk@verio.net
+
+                                       Juergen Schoenwaelder
+
+                       Postal: TU Braunschweig
+                                       Bueltenweg 74/75
+                                       38106 Braunschweig
+                                       Germany
+
+                          Tel: +49 531 391-3683
+                          Fax: +49 531 489-5936
+                       E-mail: schoenw@ibr.cs.tu-bs.de"
+          DESCRIPTION
+                  "This WWW service MIB module is applicable to services
+                       realized by a family of 'Document Transfer Protocols'
+                       (DTP). Examples of DTPs are HTTP and FTP."
+
+
+
+
+                 -- revision history
+
+                 REVISION        "9902251400Z"
+                 DESCRIPTION "Initial version, published as RFC2594."
+
+                 ::= { mib-2 65 }
+
+   --
+   --  Object Identifier Assignments
+   --
+
+   wwwMIBObjects        OBJECT IDENTIFIER ::= { wwwMIB 1 }
+   wwwMIBConformance OBJECT IDENTIFIER ::= { wwwMIB 2 }
+
+   --
+   -- Textual Conventions
+   --
+
+ Utf8String ::= TEXTUAL-CONVENTION
+                DISPLAY-HINT "255a"
+                STATUS  current
+                DESCRIPTION
+                                "To facilitate internationalization, this TC
+                                 represents information taken from the ISO/IEC IS
+                                 10646-1 character set, encoded as an octet string
+                                 using the UTF-8 character encoding scheme described
+                                 in RFC 2044 [10].  For strings in 7-bit US-ASCII,
+                                 there is no impact since the UTF-8 representation
+                                 is identical to the US-ASCII encoding. Published as RFC2287."
+                SYNTAX  OCTET STRING (SIZE (0..255))
+
+
+   WwwRequestType ::= TEXTUAL-CONVENTION
+          STATUS          current
+          DESCRIPTION
+                  "The WwwRequestType defines the textual identification of
+                       request types used by a document transfer protocol. For
+                       the proper values for a given DTP, refer to the protocol
+                       mappings for that DTP."
+          SYNTAX          OCTET STRING (SIZE (1..40))
+
+   WwwResponseType ::= TEXTUAL-CONVENTION
+          STATUS          current
+          DESCRIPTION
+                  "The WwwResponseType defines the different response values
+                       used by document transfer protocols. For the proper values
+                       for a given DTP, refer to the protocol mappings for that
+                       DTP."
+          SYNTAX          Integer32 (0..2147483647)
+
+   WwwOperStatus ::= TEXTUAL-CONVENTION
+          STATUS          current
+          DESCRIPTION
+                  "The operational status of a WWW service. 'down' indicates
+                       that the service is not available. 'running' indicates
+                       that the service is operational and available. 'halted'
+                       indicates that the service is operational but not
+                       available. 'congested' indicates that the service is
+                       operational but no additional inbound associations can be
+                       accommodated. 'restarting' indicates that the service is
+                       currently unavailable but is in the process of restarting
+                       and will be available soon."
+          SYNTAX          INTEGER {
+                                          down(1),
+
+
+
+
+                                          running(2),
+                                          halted(3),
+                                          congested(4),
+                                          restarting(5)
+                                  }
+
+   WwwDocName ::= TEXTUAL-CONVENTION
+          DISPLAY-HINT "255a"
+          STATUS          current
+          DESCRIPTION
+                  "The server relative name of a document. If the URL were
+                       http://www.x.org/standards/search/search.cgi?string=test
+                       then the value of this textual convention would resolve
+                       to '/standards/search/search.cgi'. This textual convention
+                       uses the character set for URIs as defined in RFC 2396
+                       section 2."
+          SYNTAX          OCTET STRING (SIZE (0..255))
+
+
+   -- The WWW Service Information Group
+   --
+   -- The WWW service information group contains information about
+   -- the WWW services known by the SNMP agent.
+
+   wwwService OBJECT IDENTIFIER ::= { wwwMIBObjects 1 }
+
+   wwwServiceTable OBJECT-TYPE
+          SYNTAX          SEQUENCE OF WwwServiceEntry
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "The table of the WWW services known by the SNMP agent."
+          ::= { wwwService 1 }
+
+   wwwServiceEntry OBJECT-TYPE
+          SYNTAX          WwwServiceEntry
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "Details about a particular WWW service."
+          INDEX           { wwwServiceIndex }
+          ::= { wwwServiceTable 1 }
+
+   WwwServiceEntry ::= SEQUENCE {
+          wwwServiceIndex                         Unsigned32,
+          wwwServiceDescription           Utf8String,
+          wwwServiceContact               Utf8String,
+          wwwServiceProtocol              OBJECT IDENTIFIER,
+          wwwServiceName                          DisplayString,
+          wwwServiceType                          INTEGER,
+
+
+
+
+          wwwServiceStartTime             DateAndTime,
+          wwwServiceOperStatus            WwwOperStatus,
+          wwwServiceLastChange            DateAndTime
+   }
+
+   wwwServiceIndex OBJECT-TYPE
+          SYNTAX          Unsigned32 (1..4294967295)
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "An integer used to uniquely identify a WWW service. The
+                       value must be the same as the corresponding value of the
+                       applSrvIndex defined in the Application Management MIB
+                       (APPLICATION-MIB) if the applSrvIndex object is available.
+                       It might be necessary to manually configure sub-agents in
+                       order to meet this requirement."
+          ::= { wwwServiceEntry 1 }
+
+   wwwServiceDescription OBJECT-TYPE
+          SYNTAX          Utf8String
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "Textual description of the WWW service. This shall include
+                       at least the vendor and version number of the application
+                       realizing the WWW service. In a minimal case, this might
+                       be the Product Token (see RFC 2068) for the application."
+          ::= { wwwServiceEntry 2 }
+
+   wwwServiceContact OBJECT-TYPE
+          SYNTAX          Utf8String
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The textual identification of the contact person for this
+                       service, together with information on how to contact this
+                       person. For instance, this might be a string containing an
+                       email address, e.g. '<webmaster@domain.name>'."
+          ::= { wwwServiceEntry 3 }
+
+   wwwServiceProtocol OBJECT-TYPE
+          SYNTAX          OBJECT IDENTIFIER
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "An identification of the primary protocol in use by this
+                       service. For Internet applications, the IANA maintains
+                       a registry of the OIDs which correspond to well-known
+                       application protocols.  If the application protocol is not
+                       listed in the registry, an OID value of the form
+
+
+
+
+                       {applTCPProtoID port} or {applUDPProtoID port} are used for
+                       TCP-based and UDP-based protocols, respectively. In either
+                       case 'port' corresponds to the primary port number being
+                       used by the protocol."
+          REFERENCE
+                  "The OID values applTCPProtoID and applUDPProtoID are
+                       defined in the NETWORK-SERVICES-MIB (RFC 2248)."
+          ::= { wwwServiceEntry 4 }
+
+   wwwServiceName OBJECT-TYPE
+          SYNTAX          DisplayString
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The fully qualified domain name by which this service is
+                       known. This object must contain the virtual host name if
+                       the service is realized for a virtual host."
+          ::= { wwwServiceEntry 5 }
+
+   wwwServiceType OBJECT-TYPE
+          SYNTAX          INTEGER {
+                                          wwwOther(1),
+                                          wwwServer(2),
+                                          wwwClient(3),
+                                          wwwProxy(4),
+                                          wwwCachingProxy(5)
+                                  }
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The application type using or realizing this WWW service."
+          ::= { wwwServiceEntry 6 }
+
+   wwwServiceStartTime OBJECT-TYPE
+          SYNTAX          DateAndTime
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The date and time when this WWW service was last started.
+                       The value SHALL be '0000000000000000'H if the last start
+                       time of this WWW service is not known."
+          ::= { wwwServiceEntry 7 }
+
+   wwwServiceOperStatus OBJECT-TYPE
+          SYNTAX          WwwOperStatus
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "Indicates the operational status of the WWW service."
+          ::= { wwwServiceEntry 8 }
+
+
+
+
+   wwwServiceLastChange OBJECT-TYPE
+          SYNTAX          DateAndTime
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The date and time when this WWW service entered its current
+                       operational state. The value SHALL be '0000000000000000'H if
+                       the time of the last state change is not known."
+          ::= { wwwServiceEntry 9 }
+
+
+   -- The WWW Protocol Statistics Group
+   --
+   -- The WWW protocol statistics group contains statistics about
+   -- the DTP requests and responses sent or received.
+
+   wwwProtocolStatistics OBJECT IDENTIFIER ::= { wwwMIBObjects 2 }
+
+   wwwSummaryTable OBJECT-TYPE
+          SYNTAX          SEQUENCE OF WwwSummaryEntry
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "The table providing overview statistics for the
+                       WWW services on this system."
+          ::= { wwwProtocolStatistics 1 }
+
+   wwwSummaryEntry OBJECT-TYPE
+          SYNTAX          WwwSummaryEntry
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "Overview statistics for an individual service."
+          INDEX           { wwwServiceIndex }
+          ::= { wwwSummaryTable 1 }
+
+   WwwSummaryEntry ::= SEQUENCE {
+          wwwSummaryInRequests            Counter32,
+          wwwSummaryOutRequests           Counter32,
+          wwwSummaryInResponses           Counter32,
+          wwwSummaryOutResponses          Counter32,
+          wwwSummaryInBytes               Counter64,
+          wwwSummaryInLowBytes            Counter32,
+          wwwSummaryOutBytes              Counter64,
+          wwwSummaryOutLowBytes           Counter32
+   }
+
+   wwwSummaryInRequests OBJECT-TYPE
+          SYNTAX          Counter32
+          MAX-ACCESS  read-only
+
+
+
+
+          STATUS          current
+          DESCRIPTION
+                  "The number of requests successfully received."
+          ::= { wwwSummaryEntry 1 }
+
+   wwwSummaryOutRequests OBJECT-TYPE
+          SYNTAX          Counter32
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The number of requests generated."
+          ::= { wwwSummaryEntry 2 }
+
+   wwwSummaryInResponses OBJECT-TYPE
+          SYNTAX          Counter32
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The number of responses successfully received."
+          ::= { wwwSummaryEntry 3 }
+
+   wwwSummaryOutResponses OBJECT-TYPE
+          SYNTAX          Counter32
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The number of responses generated."
+          ::= { wwwSummaryEntry 4 }
+
+   wwwSummaryInBytes OBJECT-TYPE
+          SYNTAX          Counter64
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The number of content bytes received."
+          ::= { wwwSummaryEntry 5 }
+
+   wwwSummaryInLowBytes OBJECT-TYPE
+          SYNTAX          Counter32
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The lowest thirty-two bits of wwwSummaryInBytes."
+          ::= { wwwSummaryEntry 6 }
+
+   wwwSummaryOutBytes OBJECT-TYPE
+          SYNTAX          Counter64
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+
+
+
+
+                  "The number of content bytes transmitted."
+          ::= { wwwSummaryEntry 7 }
+
+   wwwSummaryOutLowBytes OBJECT-TYPE
+          SYNTAX          Counter32
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The lowest thirty-two bits of wwwSummaryOutBytes."
+          ::= { wwwSummaryEntry 8 }
+
+   -- The WWW request tables contain detailed information about
+   -- requests send or received by WWW services.
+
+   wwwRequestInTable OBJECT-TYPE
+          SYNTAX          SEQUENCE OF WwwRequestInEntry
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "The table providing detailed statistics for requests
+                       received by WWW services on this system."
+          ::= { wwwProtocolStatistics 2 }
+
+   wwwRequestInEntry OBJECT-TYPE
+          SYNTAX          WwwRequestInEntry
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "Request statistics for an individual service."
+          INDEX           { wwwServiceIndex, wwwRequestInIndex }
+          ::= { wwwRequestInTable 1 }
+
+   WwwRequestInEntry ::= SEQUENCE {
+          wwwRequestInIndex               WwwRequestType,
+          wwwRequestInRequests            Counter32,
+          wwwRequestInBytes               Counter32,
+          wwwRequestInLastTime            DateAndTime
+   }
+
+   wwwRequestInIndex OBJECT-TYPE
+          SYNTAX          WwwRequestType
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "The particular request type the statistics apply to."
+          ::= { wwwRequestInEntry 1 }
+
+   wwwRequestInRequests OBJECT-TYPE
+          SYNTAX          Counter32
+          MAX-ACCESS  read-only
+
+
+
+
+          STATUS          current
+          DESCRIPTION
+                  "The number of requests of this type received by this
+                       WWW service."
+          ::= { wwwRequestInEntry 2 }
+
+   wwwRequestInBytes OBJECT-TYPE
+          SYNTAX          Counter32
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The number of content bytes per request type received
+                       by this WWW service."
+          ::= { wwwRequestInEntry 3 }
+
+   wwwRequestInLastTime OBJECT-TYPE
+          SYNTAX          DateAndTime
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The date and time when the last byte of the last complete
+                       request of this type was received by this WWW service. The
+                       value SHALL be '0000000000000000'H if no request of this
+                       type has been received yet."
+          ::= { wwwRequestInEntry 4 }
+
+   wwwRequestOutTable OBJECT-TYPE
+          SYNTAX          SEQUENCE OF WwwRequestOutEntry
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "The table providing detailed statistics for requests
+                       generated by the services on this system."
+          ::= { wwwProtocolStatistics 3 }
+
+   wwwRequestOutEntry OBJECT-TYPE
+          SYNTAX          WwwRequestOutEntry
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "Request statistics for an individual service."
+          INDEX           { wwwServiceIndex, wwwRequestOutIndex }
+          ::= { wwwRequestOutTable 1 }
+
+   WwwRequestOutEntry ::= SEQUENCE {
+          wwwRequestOutIndex              WwwRequestType,
+          wwwRequestOutRequests           Counter32,
+          wwwRequestOutBytes              Counter32,
+          wwwRequestOutLastTime           DateAndTime
+   }
+
+
+
+
+   wwwRequestOutIndex OBJECT-TYPE
+          SYNTAX          WwwRequestType
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "The particular request type the statistics apply to."
+          ::= { wwwRequestOutEntry 1 }
+
+   wwwRequestOutRequests OBJECT-TYPE
+          SYNTAX          Counter32
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The number of requests of this type generated by this
+                       WWW service."
+          ::= { wwwRequestOutEntry 2 }
+
+   wwwRequestOutBytes OBJECT-TYPE
+          SYNTAX          Counter32
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The number of content bytes per requests type generated
+                       by this WWW service."
+          ::= { wwwRequestOutEntry 3 }
+
+   wwwRequestOutLastTime OBJECT-TYPE
+          SYNTAX          DateAndTime
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The date and time when the first byte of the last request
+                       of this type was send by this WWW service. The value SHALL
+                       be '0000000000000000'H if no request of this type has been
+                       send yet."
+          ::= { wwwRequestOutEntry 4 }
+
+   -- The WWW response tables contain detailed information about
+   -- responses sent or received by WWW services.
+
+   wwwResponseInTable OBJECT-TYPE
+          SYNTAX          SEQUENCE OF WwwResponseInEntry
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "The table providing detailed statistics for responses
+                       received by WWW services on this system."
+          ::= { wwwProtocolStatistics 4 }
+
+   wwwResponseInEntry OBJECT-TYPE
+
+
+
+
+          SYNTAX          WwwResponseInEntry
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "Response statistics for an individual service."
+          INDEX           { wwwServiceIndex, wwwResponseInIndex }
+          ::= { wwwResponseInTable 1 }
+
+   WwwResponseInEntry ::= SEQUENCE {
+          wwwResponseInIndex              WwwResponseType,
+          wwwResponseInResponses          Counter32,
+          wwwResponseInBytes              Counter32,
+          wwwResponseInLastTime           DateAndTime
+   }
+
+   wwwResponseInIndex OBJECT-TYPE
+          SYNTAX          WwwResponseType
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "The particular response type the statistics apply to."
+          ::= { wwwResponseInEntry 1 }
+
+   wwwResponseInResponses OBJECT-TYPE
+          SYNTAX          Counter32
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The number of responses of this type received by this
+                       WWW service."
+          ::= { wwwResponseInEntry 2 }
+
+   wwwResponseInBytes OBJECT-TYPE
+          SYNTAX          Counter32
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The number of content bytes per response type received
+                       by this WWW service."
+          ::= { wwwResponseInEntry 3 }
+
+   wwwResponseInLastTime OBJECT-TYPE
+          SYNTAX          DateAndTime
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The date and time when the last byte of the last complete
+                       response of this type was received by this WWW service. The
+                       value SHALL be '0000000000000000'H if no response of this
+                       type has been received yet."
+
+
+
+
+          ::= { wwwResponseInEntry 4 }
+
+   wwwResponseOutTable OBJECT-TYPE
+          SYNTAX          SEQUENCE OF WwwResponseOutEntry
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "The table providing detailed statistics for responses
+                       generated by services on this system."
+          ::= { wwwProtocolStatistics 5 }
+
+   wwwResponseOutEntry OBJECT-TYPE
+          SYNTAX          WwwResponseOutEntry
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "Response statistics for an individual service."
+          INDEX           { wwwServiceIndex, wwwResponseOutIndex }
+          ::= { wwwResponseOutTable 1 }
+
+   WwwResponseOutEntry ::= SEQUENCE {
+          wwwResponseOutIndex             WwwResponseType,
+          wwwResponseOutResponses         Counter32,
+          wwwResponseOutBytes             Counter32,
+          wwwResponseOutLastTime          DateAndTime
+   }
+
+   wwwResponseOutIndex OBJECT-TYPE
+          SYNTAX          WwwResponseType
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "The particular response type the statistics apply to."
+          ::= { wwwResponseOutEntry 1 }
+
+   wwwResponseOutResponses OBJECT-TYPE
+          SYNTAX          Counter32
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The number of responses of this type generated by this
+                       WWW service."
+          ::= { wwwResponseOutEntry 2 }
+
+   wwwResponseOutBytes OBJECT-TYPE
+          SYNTAX          Counter32
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The number of content bytes per response type generated
+
+
+
+
+                       by this WWW service."
+          ::= { wwwResponseOutEntry 3 }
+
+   wwwResponseOutLastTime OBJECT-TYPE
+          SYNTAX          DateAndTime
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The date and time when the first byte of the last response of
+                       this type was sent by this WWW service. The value SHALL be
+                       '0000000000000000'H if response of this type has been send
+                       yet."
+          ::= { wwwResponseOutEntry 4 }
+
+
+   -- The WWW Document Statistics Group
+   --
+   -- The WWW document statistics group contains statistics about
+   -- document read attempts.
+
+   wwwDocumentStatistics OBJECT IDENTIFIER ::= { wwwMIBObjects 3 }
+
+   wwwDocCtrlTable OBJECT-TYPE
+          SYNTAX          SEQUENCE OF WwwDocCtrlEntry
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "A table which controls how the MIB implementation
+                       collects and maintains document statistics."
+          ::= { wwwDocumentStatistics 1 }
+
+   wwwDocCtrlEntry OBJECT-TYPE
+          SYNTAX          WwwDocCtrlEntry
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "An entry used to configure the wwwDocLastNTable,
+                       the wwwDocBucketTable, the wwwDocAccessTopNTable,
+                       and the wwwDocBytesTopNTable."
+          INDEX           { wwwServiceIndex }
+          ::= { wwwDocCtrlTable 1 }
+
+   WwwDocCtrlEntry ::= SEQUENCE {
+          wwwDocCtrlLastNSize                   Unsigned32,
+          wwwDocCtrlLastNLock                   TimeTicks,
+          wwwDocCtrlBuckets                     Unsigned32,
+          wwwDocCtrlBucketTimeInterval  TimeInterval,
+          wwwDocCtrlTopNSize                    Unsigned32
+   }
+
+
+
+
+   wwwDocCtrlLastNSize OBJECT-TYPE
+          SYNTAX          Unsigned32
+          MAX-ACCESS  read-write
+          STATUS          current
+          DESCRIPTION
+                  "The maximum number of entries in the wwwDocLastNTable."
+          DEFVAL { 25 }
+          ::= { wwwDocCtrlEntry 1 }
+
+   wwwDocCtrlLastNLock OBJECT-TYPE
+          SYNTAX          TimeTicks
+          MAX-ACCESS  read-write
+          STATUS          current
+          DESCRIPTION
+                  "This object allows a manager to lock the wwwDocLastNTable
+                       in order to retrieve the wwwDocLastNTable in a consistent
+                       state. The agent is expected to take a snapshot of the
+                       wwwDocLastNTable when it is locked and to continue updating
+                       the real wwwDocLastNTable table so that recent information is
+                       available as soon as the wwwDocLastNTable is unlocked again.
+
+                       Setting this object to a value greater than 0 will lock
+                       the table. The timer ticks backwards until it reaches 0.
+                       The table unlocks automatically once the timer reaches 0
+                       and the timer stops ticking.
+
+                       A manager can increase the timer to request more time to
+                       read the table. However, any attempt to decrease the timer
+                       will fail with an inconsistentValue error. This rule ensures
+                       that multiple managers can simultaneously lock and retrieve
+                       the wwwDocLastNTable. Note that managers must cooperate in
+                       using wwwDocCtrlLastNLock. In particular, a manager MUST not
+                       keep the wwwDocLastNTable locked when it is not necessary to
+                       finish a retrieval operation."
+          ::= { wwwDocCtrlEntry 2 }
+
+   wwwDocCtrlBuckets OBJECT-TYPE
+          SYNTAX          Unsigned32
+          MAX-ACCESS  read-write
+          STATUS          current
+          DESCRIPTION
+                  "The maximum number of buckets maintained by the agent
+                       before the oldest bucket is deleted. The buckets are
+                       used to populate the wwwDocAccessTopNTable and the
+                       wwwDocBytesTopNTable. The time interval captured in
+                       each bucket can be configured by setting the
+                       wwwDocCtrlBucketTimeInterval object."
+          DEFVAL { 4 }            -- 4 buckets times 15 minutes = 1 hour
+          ::= { wwwDocCtrlEntry 3 }
+
+
+
+
+   wwwDocCtrlBucketTimeInterval OBJECT-TYPE
+          SYNTAX          TimeInterval
+          MAX-ACCESS  read-write
+          STATUS          current
+          DESCRIPTION
+                  "The time interval after which a new bucket is created.
+                       Changing this object has no effect on existing buckets."
+          DEFVAL { 90000 }    -- 15 minutes (resolution .01 s)
+          ::= { wwwDocCtrlEntry 4 }
+
+   wwwDocCtrlTopNSize OBJECT-TYPE
+          SYNTAX          Unsigned32
+          MAX-ACCESS  read-write
+          STATUS          current
+          DESCRIPTION
+                  "The maximum number of entries shown in the
+                       wwwDocAccessTopNTable and the wwwDocBytesTopNTable.
+                       Changing this object has no effect on existing buckets."
+          DEFVAL { 25 }
+          ::= { wwwDocCtrlEntry 5 }
+
+
+   wwwDocLastNTable OBJECT-TYPE
+          SYNTAX          SEQUENCE OF WwwDocLastNEntry
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "The table which logs the last N access attempts."
+          ::= { wwwDocumentStatistics 2 }
+
+   wwwDocLastNEntry OBJECT-TYPE
+          SYNTAX          WwwDocLastNEntry
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "An entry which describes a recent access attempt."
+          INDEX           { wwwServiceIndex, wwwDocLastNIndex }
+          ::= { wwwDocLastNTable 1 }
+
+   WwwDocLastNEntry ::= SEQUENCE {
+          wwwDocLastNIndex                Unsigned32,
+          wwwDocLastNName                         WwwDocName,
+          wwwDocLastNTimeStamp            DateAndTime,
+          wwwDocLastNRequestType          WwwRequestType,
+          wwwDocLastNResponseType         WwwResponseType,
+          wwwDocLastNStatusMsg            Utf8String,
+          wwwDocLastNBytes                Unsigned32
+   }
+
+   wwwDocLastNIndex OBJECT-TYPE
+
+
+
+
+          SYNTAX          Unsigned32 (1..4294967295)
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "An arbitrary monotonically increasing integer number used
+                       for indexing the wwwDocLastNTable. The first document
+                       accessed appears in the table with this index value equal
+                       to one. Each subsequent document is indexed with the next
+                       sequential index value. The Nth document accessed will be
+                       indexed by N. This table presents a sliding window of the
+                       last wwwDocCtrlLastNSize documents accessed. Thus, entries
+                       in this table will be indexed by N-wwwDocCtrlLastNSize
+                       thru N if N > wwwDocCtrlLastNSize and 1 thru N if
+                       N <= wwwDocCtrlLastNSize.
+
+                       The wwwDocCtrlLastNLock attribute can be used to lock
+                       this table to allow the manager to read its contents."
+          ::= { wwwDocLastNEntry 1 }
+
+   wwwDocLastNName OBJECT-TYPE
+          SYNTAX          WwwDocName
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The name of the document for which access was attempted."
+          ::= { wwwDocLastNEntry 2 }
+
+   wwwDocLastNTimeStamp OBJECT-TYPE
+          SYNTAX          DateAndTime
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The date and time of the last attempt to access this
+                       document."
+          ::= { wwwDocLastNEntry 3 }
+
+   wwwDocLastNRequestType OBJECT-TYPE
+          SYNTAX          WwwRequestType
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The protocol request type which was received by the
+                       server when this document access was attempted."
+          ::= { wwwDocLastNEntry 4 }
+
+   wwwDocLastNResponseType OBJECT-TYPE
+          SYNTAX          WwwResponseType
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+
+
+
+
+                  "The protocol response type which was sent to the client
+                       as a result of this attempt to access a document. This
+                       object contains the type of the primary response if
+                       there were multiple responses to a single request."
+          ::= { wwwDocLastNEntry 5 }
+
+   wwwDocLastNStatusMsg OBJECT-TYPE
+          SYNTAX          Utf8String
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "This object contains a human readable description of the
+                       reason why the wwwDocLastNResponseType was returned to the
+                       client. This object defines the implementation-specific
+                       reason if the value of wwwDocLastNResponseType indicates
+                       an error. For example, this object can indicate that the
+                       requested document could not be transferred due to a
+                       timeout condition or the document could not be transferred
+                       because a 'soft link' pointing to the document could not be
+                       resolved."
+          ::= { wwwDocLastNEntry 6 }
+
+   wwwDocLastNBytes OBJECT-TYPE
+          SYNTAX          Unsigned32
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The number of content bytes that were returned as a
+                       result of this attempt to access a document."
+          ::= { wwwDocLastNEntry 7 }
+
+
+   wwwDocBucketTable OBJECT-TYPE
+          SYNTAX          SEQUENCE OF WwwDocBucketEntry
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "This table provides administrative summary information for
+                       the buckets maintained per WWW service."
+          ::= { wwwDocumentStatistics 3 }
+
+   wwwDocBucketEntry OBJECT-TYPE
+          SYNTAX          WwwDocBucketEntry
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "An entry which describes the parameters associated with a
+                       particular bucket."
+          INDEX           { wwwServiceIndex, wwwDocBucketIndex }
+          ::= { wwwDocBucketTable 1 }
+
+
+
+
+   WwwDocBucketEntry ::= SEQUENCE {
+          wwwDocBucketIndex               Unsigned32,
+          wwwDocBucketTimeStamp           DateAndTime,
+          wwwDocBucketAccesses            Unsigned32,
+          wwwDocBucketDocuments           Unsigned32,
+          wwwDocBucketBytes               Unsigned32
+   }
+
+   wwwDocBucketIndex OBJECT-TYPE
+          SYNTAX          Unsigned32 (1..4294967295)
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "An arbitrary monotonically increasing integer number
+                       used for indexing the wwwDocBucketTable. The index number
+                       wraps to 1 whenever the maximum value is reached."
+          ::= { wwwDocBucketEntry 1 }
+
+   wwwDocBucketTimeStamp OBJECT-TYPE
+          SYNTAX          DateAndTime
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The date and time when the bucket was made available."
+          ::= { wwwDocBucketEntry 2 }
+
+   wwwDocBucketAccesses OBJECT-TYPE
+          SYNTAX          Unsigned32
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The total number of access attempts for any document
+                       provided by this WWW service during the time interval
+                       over which this bucket was created."
+          ::= { wwwDocBucketEntry 3 }
+
+   wwwDocBucketDocuments OBJECT-TYPE
+          SYNTAX          Unsigned32
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The total number of different documents for which access
+                       was attempted this this WWW service during the time interval
+                       over which this bucket was created."
+          ::= { wwwDocBucketEntry 4 }
+
+   wwwDocBucketBytes OBJECT-TYPE
+          SYNTAX          Unsigned32
+          MAX-ACCESS  read-only
+          STATUS          current
+
+
+
+
+          DESCRIPTION
+                  "The total number of content bytes which were transferred
+                       from this WWW service during the time interval over which
+                       this bucket was created."
+          ::= { wwwDocBucketEntry 5 }
+
+
+   wwwDocAccessTopNTable OBJECT-TYPE
+          SYNTAX          SEQUENCE OF WwwDocAccessTopNEntry
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "The table of the most frequently accessed documents in a
+                       given bucket. This table is sorted by the column
+                       wwwDocAccessTopNAccesses. Entries having the same number
+                       of accesses are secondarily sorted by wwwDocAccessTopNBytes.
+                       Entries with the same number of accesses and the same
+                       number of bytes will have an arbitrary order."
+          ::= { wwwDocumentStatistics 4 }
+
+   wwwDocAccessTopNEntry OBJECT-TYPE
+          SYNTAX          WwwDocAccessTopNEntry
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "An entry in the top N table sorted by document accesses."
+          INDEX           { wwwServiceIndex, wwwDocBucketIndex,
+                                        wwwDocAccessTopNIndex }
+          ::= { wwwDocAccessTopNTable 1 }
+
+   WwwDocAccessTopNEntry ::= SEQUENCE {
+          wwwDocAccessTopNIndex                         Unsigned32,
+          wwwDocAccessTopNName                          WwwDocName,
+          wwwDocAccessTopNAccesses              Unsigned32,
+          wwwDocAccessTopNBytes                         Unsigned32,
+          wwwDocAccessTopNLastResponseType  WwwResponseType
+   }
+
+   wwwDocAccessTopNIndex OBJECT-TYPE
+          SYNTAX          Unsigned32 (1..4294967295)
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "An arbitrary monotonically increasing integer number
+                       used for indexing the wwwDocAccessTopNTable. The index is
+                       inversely correlated to the sorting order of the table. The
+                       document with the highest access count will get the index
+                       value 1."
+          ::= { wwwDocAccessTopNEntry 1 }
+
+
+
+
+   wwwDocAccessTopNName OBJECT-TYPE
+          SYNTAX          WwwDocName
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The name of the document for which access was attempted."
+          ::= { wwwDocAccessTopNEntry 2 }
+
+   wwwDocAccessTopNAccesses OBJECT-TYPE
+          SYNTAX          Unsigned32
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The total number of access attempts for this document."
+          ::= { wwwDocAccessTopNEntry 3 }
+
+   wwwDocAccessTopNBytes OBJECT-TYPE
+          SYNTAX          Unsigned32
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The total number of content bytes that were transmitted
+                       as a result of attempts to access this document."
+          ::= { wwwDocAccessTopNEntry 4 }
+
+   wwwDocAccessTopNLastResponseType OBJECT-TYPE
+          SYNTAX          WwwResponseType
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The protocol response type which was sent to the client
+                       as a result of the last attempt to access this document.
+                       This object contains the type of the primary response if
+                       there were multiple responses to a single request."
+          ::= { wwwDocAccessTopNEntry 5 }
+
+
+   wwwDocBytesTopNTable OBJECT-TYPE
+          SYNTAX          SEQUENCE OF WwwDocBytesTopNEntry
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "The table of the documents which caused most network
+                       traffic in a given bucket. This table is sorted by the
+                       column wwwDocBytesTopNBytes. Entries having the same number
+                       bytes are secondarily sorted by wwwDocBytesTopNAccesses.
+                       Entries with the same number of accesses and the same
+                       number of bytes will have an arbitrary order."
+          ::= { wwwDocumentStatistics 5 }
+
+
+
+
+   wwwDocBytesTopNEntry OBJECT-TYPE
+          SYNTAX          WwwDocBytesTopNEntry
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "An entry in the top N table sorted by network traffic."
+          INDEX           { wwwServiceIndex, wwwDocBucketIndex,
+                                        wwwDocBytesTopNIndex }
+          ::= { wwwDocBytesTopNTable 1 }
+
+   WwwDocBytesTopNEntry ::= SEQUENCE {
+          wwwDocBytesTopNIndex                         Unsigned32,
+          wwwDocBytesTopNName                          WwwDocName,
+          wwwDocBytesTopNAccesses                      Unsigned32,
+          wwwDocBytesTopNBytes                         Unsigned32,
+          wwwDocBytesTopNLastResponseType      WwwResponseType
+   }
+
+   wwwDocBytesTopNIndex OBJECT-TYPE
+          SYNTAX          Unsigned32 (1..4294967295)
+          MAX-ACCESS  not-accessible
+          STATUS          current
+          DESCRIPTION
+                  "An arbitrary monotonically increasing integer number
+                       used for indexing the wwwDocBytesTopNTable. The index is
+                       inversely correlated to the sorting order of the table. The
+                       document with the highest byte count will get the index
+                       value 1."
+          ::= { wwwDocBytesTopNEntry 1 }
+
+   wwwDocBytesTopNName OBJECT-TYPE
+          SYNTAX          WwwDocName
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The name of the document for which access was attempted."
+          ::= { wwwDocBytesTopNEntry 2 }
+
+   wwwDocBytesTopNAccesses OBJECT-TYPE
+          SYNTAX          Unsigned32
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The total number of access attempts for this document."
+          ::= { wwwDocBytesTopNEntry 3 }
+
+   wwwDocBytesTopNBytes OBJECT-TYPE
+          SYNTAX          Unsigned32
+          MAX-ACCESS  read-only
+          STATUS          current
+
+
+
+
+          DESCRIPTION
+                  "The total number of content bytes that were transmitted
+                       as a result of attempts to access this document."
+          ::= { wwwDocBytesTopNEntry 4 }
+
+   wwwDocBytesTopNLastResponseType OBJECT-TYPE
+          SYNTAX          WwwResponseType
+          MAX-ACCESS  read-only
+          STATUS          current
+          DESCRIPTION
+                  "The protocol response type which was sent to the client
+                       as a result of the last attempt to access this document.
+                       This object contains the type of the primary response if
+                       there were multiple responses to a single request."
+          ::= { wwwDocBytesTopNEntry 5 }
+
+   --
+   -- Conformance Definitions
+   --
+
+   wwwMIBCompliances OBJECT IDENTIFIER ::= { wwwMIBConformance 1 }
+   wwwMIBGroups         OBJECT IDENTIFIER ::= { wwwMIBConformance 2 }
+
+   wwwMinimalCompliance MODULE-COMPLIANCE
+          STATUS          current
+          DESCRIPTION
+                  "The compliance statement for SNMP agents which implement
+                       the minimal subset of the WWW-MIB. Implementors might
+                       choose this subset for high-performance server where
+                       full compliance might be to expensive."
+          MODULE  -- this module
+          MANDATORY-GROUPS {
+                  wwwServiceGroup,
+                  wwwSummaryGroup
+          }
+          OBJECT wwwSummaryOutRequests
+          DESCRIPTION
+                  "Instances of wwwSummaryOutRequests do not exist on pure
+                       WWW server implementations."
+          OBJECT wwwSummaryInResponses
+          DESCRIPTION
+                  "Instances of wwwSummaryOutRequests do not exist on pure
+                       WWW server implementations."
+          OBJECT wwwSummaryInRequests
+          DESCRIPTION
+                  "Instances of wwwSummaryInRequests do not exist on pure
+                       WWW client implementations."
+          OBJECT wwwSummaryOutResponses
+          DESCRIPTION
+                  "Instances of wwwSummaryOutResponses do not exist on pure
+
+
+
+
+                       WWW client implementations."
+          ::= { wwwMIBCompliances 1 }
+
+   wwwFullCompliance MODULE-COMPLIANCE
+          STATUS          current
+          DESCRIPTION
+                  "The compliance statement for SNMP agents which implement
+                       the full WWW-MIB."
+          MODULE  -- this module
+          MANDATORY-GROUPS {
+                  wwwServiceGroup,
+                  wwwSummaryGroup
+          }
+          GROUP  wwwRequestInGroup
+          DESCRIPTION
+                  "The wwwRequestInGroup is mandatory only for WWW server
+                       or proxy server implementations."
+          GROUP wwwResponseOutGroup
+          DESCRIPTION
+                  "The wwwResponseOutGroup is mandatory only for WWW server
+                       or proxy server implementations."
+          GROUP wwwRequestOutGroup
+          DESCRIPTION
+                  "The wwwRequestOutGroup is mandatory only for WWW client
+                       or proxy server implementations."
+          GROUP wwwResponseInGroup
+          DESCRIPTION
+                  "The wwwRequestOutGroup is mandatory only for WWW client
+                       or proxy server implementations."
+          GROUP wwwDocumentGroup
+          DESCRIPTION
+                  "The wwwDocumentGroup is mandatory only for WWW server
+                       or proxy server implementations."
+          OBJECT wwwSummaryOutRequests
+          DESCRIPTION
+                  "Instances of wwwSummaryOutRequests do not exist on pure
+                       WWW server implementations."
+          OBJECT wwwSummaryInResponses
+          DESCRIPTION
+                  "Instances of wwwSummaryOutRequests do not exist on pure
+                       WWW server implementations."
+          OBJECT wwwSummaryInRequests
+          DESCRIPTION
+                  "Instances of wwwSummaryInRequests do not exist on pure
+                       WWW client implementations."
+          OBJECT wwwSummaryOutResponses
+          DESCRIPTION
+                  "Instances of wwwSummaryOutResponses do not exist on pure
+                       WWW client implementations."
+          ::= { wwwMIBCompliances 2 }
+
+
+
+
+   wwwServiceGroup OBJECT-GROUP
+          OBJECTS {
+                  wwwServiceDescription,
+                  wwwServiceContact,
+                  wwwServiceProtocol,
+                  wwwServiceName,
+                  wwwServiceType,
+                  wwwServiceStartTime,
+                  wwwServiceOperStatus,
+                  wwwServiceLastChange
+          }
+          STATUS          current
+          DESCRIPTION
+                  "A collection of objects providing information about
+                       the WWW services known by the SNMP agent."
+          ::= { wwwMIBGroups 1 }
+
+   wwwSummaryGroup OBJECT-GROUP
+          OBJECTS {
+                  wwwSummaryInRequests,
+                  wwwSummaryOutRequests,
+                  wwwSummaryInResponses,
+                  wwwSummaryOutResponses,
+                  wwwSummaryInBytes,
+                  wwwSummaryInLowBytes,
+                  wwwSummaryOutBytes,
+                  wwwSummaryOutLowBytes
+          }
+          STATUS          current
+          DESCRIPTION
+                  "A collection of objects providing summary statistics
+                       about requests and responses generated and received
+                       by a WWW service."
+          ::= { wwwMIBGroups 2 }
+
+   wwwRequestInGroup OBJECT-GROUP
+          OBJECTS {
+                  wwwRequestInRequests,
+                  wwwRequestInBytes,
+                  wwwRequestInLastTime
+          }
+          STATUS          current
+          DESCRIPTION
+                  "A collection of objects providing detailed statistics
+                       about requests received by a WWW service."
+          ::= { wwwMIBGroups 3 }
+
+   wwwRequestOutGroup OBJECT-GROUP
+          OBJECTS {
+                  wwwRequestOutRequests,
+
+
+
+
+                  wwwRequestOutBytes,
+                  wwwRequestOutLastTime
+          }
+          STATUS          current
+          DESCRIPTION
+                  "A collection of objects providing detailed statistics
+                       about requests generated by a WWW service."
+          ::= { wwwMIBGroups 4 }
+
+   wwwResponseInGroup OBJECT-GROUP
+          OBJECTS {
+                  wwwResponseInResponses,
+                  wwwResponseInBytes,
+                  wwwResponseInLastTime
+          }
+          STATUS          current
+          DESCRIPTION
+                  "A collection of objects providing detailed statistics
+                       about responses received by a WWW service."
+          ::= { wwwMIBGroups 5 }
+
+   wwwResponseOutGroup OBJECT-GROUP
+          OBJECTS {
+                  wwwResponseOutResponses,
+                  wwwResponseOutBytes,
+                  wwwResponseOutLastTime
+          }
+          STATUS          current
+          DESCRIPTION
+                  "A collection of objects providing detailed statistics
+                       about responses generated by a WWW service."
+          ::= { wwwMIBGroups 6 }
+
+   wwwDocumentGroup OBJECT-GROUP
+          OBJECTS {
+                  wwwDocCtrlLastNSize,
+                  wwwDocCtrlLastNLock,
+                  wwwDocCtrlBuckets,
+                  wwwDocCtrlBucketTimeInterval,
+                  wwwDocCtrlTopNSize,
+                  wwwDocLastNName,
+                  wwwDocLastNTimeStamp,
+                  wwwDocLastNRequestType,
+                  wwwDocLastNResponseType,
+                  wwwDocLastNStatusMsg,
+                  wwwDocLastNBytes,
+                  wwwDocBucketTimeStamp,
+                  wwwDocBucketAccesses,
+                  wwwDocBucketDocuments,
+                  wwwDocBucketBytes,
+
+
+
+
+                  wwwDocAccessTopNName,
+                  wwwDocAccessTopNAccesses,
+                  wwwDocAccessTopNBytes,
+                  wwwDocAccessTopNLastResponseType,
+                  wwwDocBytesTopNName,
+                  wwwDocBytesTopNAccesses,
+                  wwwDocBytesTopNBytes,
+                  wwwDocBytesTopNLastResponseType
+          }
+          STATUS  current
+          DESCRIPTION
+                  "A collection of objects providing information about
+                       accesses to documents."
+          ::= { wwwMIBGroups 7 }
+
+   END