FSM7326-ROUTING-MIB DEFINITIONS ::= BEGIN

-- Copyright 2003 LVL7 Systems, Inc.  All rights reserved.

-- This SNMP Management Information Specification
-- embodies LVL7 System's confidential and proprietary
-- intellectual property.  LVL7 Systems retains all title
-- and ownership in the Specification including any revisions.

-- This Specification is supplied "AS IS", LVL7 Systems
-- makes no warranty, either expressed or implied,
-- as to the use, operation, condition, or performance of the
-- Specification.
    
    IMPORTS
      MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, 
      IpAddress, Integer32                              FROM SNMPv2-SMI
      RowStatus                                         FROM SNMPv2-TC
      fsm7326                                           FROM FSM7326-REF-MIB
      TimeTicks                                         FROM RFC1155-SMI
      DisplayString,PhysAddress                         FROM RFC1213-MIB
      ospfIfEntry, ospfVirtIfEntry, ospfAreaEntry       FROM OSPF-MIB
      rip2IfConfEntry                                   FROM RIPv2-MIB;

    fsm7326Routing MODULE-IDENTITY
           LAST-UPDATED "200311101200Z" -- 10 Nov 2003 12:00:00 GMT
    ORGANIZATION "Netgear"

    CONTACT-INFO
        ""
    DESCRIPTION
        ""
-- revision history
    REVISION
        "200311101200Z" -- 10 Nov 2003 12:00:00 GMT

    DESCRIPTION
        "Initial revision."
    ::= { fsm7326 2 }

    --**************************************************************************************
    -- agentSwitchArpGroup
    --
    
    --**************************************************************************************
    agentSwitchArpGroup                       OBJECT IDENTIFIER ::= { fsm7326Routing 1 }
    
    agentSwitchArpAgeoutTime OBJECT-TYPE
         SYNTAX      Integer32 (15..21600)
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Configures the ARP entry ageout time in seconds.
                     Allowable range: 15-21600"
         DEFVAL      { 1200 }

         ::= { agentSwitchArpGroup 1 }
         
    agentSwitchArpResponseTime OBJECT-TYPE
         SYNTAX      Integer32 (1..10)
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Configures the ARP request response timeout in seconds.
                     Allowable range: 1-10"
         ::= { agentSwitchArpGroup 2 }
    
    agentSwitchArpMaxRetries OBJECT-TYPE
         SYNTAX      Integer32 (0..10)
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Configures the ARP count of maximum request for retries.
                     Allowable range: 0-10"
         ::= { agentSwitchArpGroup 3 }
    
    agentSwitchArpCacheSize OBJECT-TYPE
         SYNTAX      Integer32
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Configures the ARP maximum number of entries in the cache.
		     Allowable range is platform-specific."
         ::= { agentSwitchArpGroup 4 }
   
     agentSwitchArpDynamicRenew OBJECT-TYPE
         SYNTAX      INTEGER {
                      enable(1),
                      disable(2)
                     }
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "This indicates the current setting of ARP dynamic renew mode. "   
         DEFVAL      { disable }
         ::= { agentSwitchArpGroup 5 } 
         
      agentSwitchArpTotalEntryCountCurrent OBJECT-TYPE
         SYNTAX      Gauge32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
                     "Current number of entries in the ARP cache."
         ::= { agentSwitchArpGroup 6 }    

      agentSwitchArpTotalEntryCountPeak OBJECT-TYPE
         SYNTAX      Gauge32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
                     "Peak number of entries recorded in the ARP cache over
		     time.  This value is restarted whenever the ARP cache
		     size is changed."
         ::= { agentSwitchArpGroup 7 }

     agentSwitchArpStaticEntryCountCurrent OBJECT-TYPE
         SYNTAX      Gauge32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
                     "Current number of configured static ARP entries."
         ::= { agentSwitchArpGroup 8 }

     agentSwitchArpStaticEntryCountMax OBJECT-TYPE
         SYNTAX      Integer32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
                     "Maximum number of configurable static ARP entries."
         ::= { agentSwitchArpGroup 9 }

    --**************************************************************************************
         
    agentSwitchArpTable OBJECT-TYPE
         SYNTAX      SEQUENCE OF AgentSwitchArpEntry
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION 
                     "This table augments the MIB-II ipNetToMediaTable by providing
                     per-interface ARP entry information."
         ::= { agentSwitchArpGroup 10 }

    agentSwitchArpEntry OBJECT-TYPE
         SYNTAX      AgentSwitchArpEntry
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION 
                     ""
         INDEX       { agentSwitchArpIpAddress }
         ::= { agentSwitchArpTable 1 }
         
    AgentSwitchArpEntry ::= SEQUENCE {         
           agentSwitchArpAge
               TimeTicks,        
           agentSwitchArpIpAddress
               IpAddress,
           agentSwitchArpMacAddress
               PhysAddress,
           agentSwitchArpInterface
               Integer32,
           agentSwitchArpType
               INTEGER,
           agentSwitchArpStatus
               RowStatus
           }
    
    agentSwitchArpAge OBJECT-TYPE
         SYNTAX      TimeTicks
         MAX-ACCESS  read-only
         STATUS      current 
         DESCRIPTION
                     "This defines the time (in seconds) since the ARP entry 
		     was last refreshed.  This value is 0 for ARP entries of
		     type local(1) or static(3), since these entries are 
		     not subject to aging."
         ::= { agentSwitchArpEntry 1 }  
         
    agentSwitchArpIpAddress OBJECT-TYPE
         SYNTAX      IpAddress
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
                     "The IP Address assigned to each interface."
         ::= { agentSwitchArpEntry 2 }
    
    agentSwitchArpMacAddress OBJECT-TYPE
         SYNTAX      PhysAddress
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
                     "The hardware MAX Address that each interface maps to."
         ::= { agentSwitchArpEntry 3 }
         
    agentSwitchArpInterface OBJECT-TYPE
         SYNTAX      Integer32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
                     "The Associated IfIndex which identified the ARP Entry."
         ::= { agentSwitchArpEntry 4 }
         
    agentSwitchArpType OBJECT-TYPE
         SYNTAX      INTEGER {
                        local(1),
                        gateway(2),
                        static(3),
                        dynamic(4)
                     }
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
                     "The type of ARP entry."
         ::= { agentSwitchArpEntry 5 }
    
    agentSwitchArpStatus OBJECT-TYPE
         SYNTAX      RowStatus
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "The status of this ARP entry.  Setting this object destroy will remove the entry."
         ::= { agentSwitchArpEntry 6 }
         

    --**************************************************************************************
    -- agentSwitchIpGroup
    --
    --**************************************************************************************
    
    agentSwitchIpGroup                       OBJECT IDENTIFIER ::= { fsm7326Routing 2 }
    
    agentSwitchIpRoutingMode OBJECT-TYPE
         SYNTAX      INTEGER {
                      enable(1),
                      disable(2)
                     }
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Administratively enables/disables routing on the switch."
         ::= { agentSwitchIpGroup 1 }

    --**************************************************************************************
    -- agentSwitchIpInterfaceTable
    --
    --**************************************************************************************
        
    agentSwitchIpInterfaceTable OBJECT-TYPE
         SYNTAX      SEQUENCE OF AgentSwitchIpInterfaceEntry
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION 
                     ""
         ::= { agentSwitchIpGroup 3 }

    agentSwitchIpInterfaceEntry OBJECT-TYPE
         SYNTAX      AgentSwitchIpInterfaceEntry
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION 
                     ""
         INDEX       { agentSwitchIpInterfaceIfIndex }
         ::= { agentSwitchIpInterfaceTable 1 }
         
    AgentSwitchIpInterfaceEntry ::= SEQUENCE {         
          agentSwitchIpInterfaceIfIndex
              Integer32,
          agentSwitchIpInterfaceIpAddress
              IpAddress,
          agentSwitchIpInterfaceNetMask
              IpAddress,
          agentSwitchIpInterfaceClearIp
              INTEGER,
          agentSwitchIpInterfaceRoutingMode
              INTEGER
          }
          
    agentSwitchIpInterfaceIfIndex OBJECT-TYPE
         SYNTAX      Integer32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
                     "The IfIndex associated with this instance."
         ::= { agentSwitchIpInterfaceEntry 1 }
          
    agentSwitchIpInterfaceIpAddress OBJECT-TYPE
         SYNTAX      IpAddress
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "The IpAddress assigned to this interface.  When setting this value,
                     the value of agentSwitchIpInterfaceNetMask must be set at the same time."
         ::= { agentSwitchIpInterfaceEntry 2 }
          
    agentSwitchIpInterfaceNetMask OBJECT-TYPE
         SYNTAX      IpAddress
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "The NetMask assigned to this interface.  When setting this value, the 
                     value of agentSwitchIpInterfaceIpAddress must be set at the same time."
         ::= { agentSwitchIpInterfaceEntry 3 }
          
    agentSwitchIpInterfaceClearIp OBJECT-TYPE
         SYNTAX      INTEGER {
                      enable(1),
                      disable(2)
                     }
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Sets the interfaces IpAddress and NetMask back to 0.0.0.0"
         ::= { agentSwitchIpInterfaceEntry 4 }
         
    agentSwitchIpInterfaceRoutingMode OBJECT-TYPE
         SYNTAX      INTEGER {
                      enable(1),
                      disable(2)
                     }
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Enables or disables routing for this interface."
         ::= { agentSwitchIpInterfaceEntry 5 }
          
    
    --**************************************************************************************
    -- agentSwitchIpRouterDiscoveryTable
    --
    --**************************************************************************************
        
    agentSwitchIpRouterDiscoveryTable OBJECT-TYPE
         SYNTAX      SEQUENCE OF AgentSwitchIpRouterDiscoveryEntry
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION 
                     "There is no global administrative flag for router discovery.  The global
                     routing flag (agentSwitchIpRoutingMode) will be used for this purpose.  If routing
                     is disabled, router discovery is disabled as well."
         ::= { agentSwitchIpGroup 4 }

    agentSwitchIpRouterDiscoveryEntry OBJECT-TYPE
         SYNTAX      AgentSwitchIpRouterDiscoveryEntry
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION 
                     ""
         INDEX       { agentSwitchIpRouterDiscoveryIfIndex }
         ::= { agentSwitchIpRouterDiscoveryTable 1 }
         
    AgentSwitchIpRouterDiscoveryEntry ::= SEQUENCE {         
          agentSwitchIpRouterDiscoveryIfIndex
              Integer32,
          agentSwitchIpRouterDiscoveryAdvertiseMode
              INTEGER,
          agentSwitchIpRouterDiscoveryMaxAdvertisementInterval
              Integer32,
          agentSwitchIpRouterDiscoveryMinAdvertisementInterval
              Integer32,
          agentSwitchIpRouterDiscoveryAdvertisementLifetime
              Integer32,
          agentSwitchIpRouterDiscoveryPreferenceLevel
              Integer32,
          agentSwitchIpRouterDiscoveryAdvertisementAddress
              IpAddress
          }
          
    agentSwitchIpRouterDiscoveryIfIndex OBJECT-TYPE
         SYNTAX      Integer32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
                     "Interface Number to configure Router Discovery on."
         ::= { agentSwitchIpRouterDiscoveryEntry 1 }
         
    agentSwitchIpRouterDiscoveryAdvertiseMode OBJECT-TYPE
         SYNTAX      INTEGER {
                      enable(1),
                      disable(2)
                     }
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Enable or disable router discovery on the interface."
         DEFVAL      { enable }
         ::= { agentSwitchIpRouterDiscoveryEntry 2 }
         
    agentSwitchIpRouterDiscoveryMaxAdvertisementInterval OBJECT-TYPE
         SYNTAX      Integer32 (4..1800)
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Maximum time allowed between sending router advertisements 
                     from the interface."
         DEFVAL      { 600 }
         ::= { agentSwitchIpRouterDiscoveryEntry 3 }
         
    agentSwitchIpRouterDiscoveryMinAdvertisementInterval OBJECT-TYPE
         SYNTAX      Integer32 (3..1800)
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Minimum time allowed between sending router advertisements from the interface.
                     
                     This value must be less than or equal to 
                     agentSwitchIpRouterDiscoveryMaxAdvertisementInterval."
         DEFVAL      { 450 }
         ::= { agentSwitchIpRouterDiscoveryEntry 4 }
         
    agentSwitchIpRouterDiscoveryAdvertisementLifetime OBJECT-TYPE
         SYNTAX      Integer32 (4..9000)
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Value of lifetime field of router advertsisement sent from 
                     the interface.
                     
                     This value must be greater than or equal to 
                     agentSwitchIpRouterDiscoveryMaxAdvertisementInterval."
         DEFVAL      { 1800 }
         ::= { agentSwitchIpRouterDiscoveryEntry 5 }
         
    agentSwitchIpRouterDiscoveryPreferenceLevel OBJECT-TYPE
         SYNTAX      Integer32
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Preferability of the address as a default router address,
                     related to other addresses on the same subnet.  This is defined
                     as the larger the number, the higher the preference."
         DEFVAL      { 0 }
         ::= { agentSwitchIpRouterDiscoveryEntry 6 }
         
    agentSwitchIpRouterDiscoveryAdvertisementAddress OBJECT-TYPE
         SYNTAX      IpAddress
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Address used when sending router advertisements from the interface."
         DEFVAL      { 'E0000001'H } -- 224.0.0.1
         ::= { agentSwitchIpRouterDiscoveryEntry 7 }
         
    --**************************************************************************************
    -- agentSwitchIpVlanTable
    --
    --**************************************************************************************
        
    agentSwitchIpVlanTable OBJECT-TYPE
         SYNTAX      SEQUENCE OF AgentSwitchIpVlanEntry
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION 
                     ""
         ::= { agentSwitchIpGroup 5 }

    agentSwitchIpVlanEntry OBJECT-TYPE
         SYNTAX      AgentSwitchIpVlanEntry
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION 
                     "A Static VLAN for which routing can be enabled/disabled"
         INDEX       { agentSwitchIpVlanId }
         ::= { agentSwitchIpVlanTable 1 }
         
    AgentSwitchIpVlanEntry ::= SEQUENCE {         
          agentSwitchIpVlanId
              Integer32,
          agentSwitchIpVlanIfIndex
              Integer32,
          agentSwitchIpVlanRoutingStatus
              RowStatus
          }
          
    agentSwitchIpVlanId OBJECT-TYPE
         SYNTAX      Integer32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
                     "The Vlan's Id."
         ::= { agentSwitchIpVlanEntry 1 }
         
    agentSwitchIpVlanIfIndex OBJECT-TYPE
         SYNTAX      Integer32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
                     "The IfIndex associated with this VLAN."
         ::= { agentSwitchIpVlanEntry 2 }
         
    agentSwitchIpVlanRoutingStatus OBJECT-TYPE
         SYNTAX      RowStatus
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
                     "Status of Routing mode per Vlan.
                     active(1)       - Vlan is enabled for routing
                     createAndGo(4)  - Adds Vlan entry for routing
                     destroy(6)      - Removes Vlan from routing"
         ::= { agentSwitchIpVlanEntry 3 }
         
    --**************************************************************************************
    -- agentRouterRipConfigGroup
    --
    --**************************************************************************************
    
    agentRouterRipConfigGroup                 OBJECT IDENTIFIER ::= { fsm7326Routing 3 }
    
    agentRouterRipAdminState OBJECT-TYPE
         SYNTAX      INTEGER {
                     enable(1),
                     disable(2)
                  }
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Sets the administrative mode of RIP in the router."
         ::= { agentRouterRipConfigGroup 1 }
         
    agentRouterRipSplitHorizonMode OBJECT-TYPE
         SYNTAX      INTEGER {
                     none(1),
                     simple(2),
                     poisonReverse(3)
                  }
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Sets the RIP split horizon operating mode in the router.
		      A value of none(1) means split horizon processing is
		      disabled.  When set to simple(2), the simple split 
		      horizon technique is used.  When set to poisonReverse(3),
		      the split horizon with poison reverse technique is used.
		      The default split horizon mode is simple(2)."
         DEFVAL { simple }
         ::= { agentRouterRipConfigGroup 2 }
         
    agentRouterRipAutoSummaryMode OBJECT-TYPE
         SYNTAX      INTEGER {
                     enable(1),
                     disable(2)
                  }
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Sets the RIP auto summarization mode in the router.
		      A value of enable(1) means that routes advertized by
		      this RIP router are combined, or summarized, whenever
		      possible into aggregates. When set to disable(2),
		      routes are not aggregated in RIP updates generated
		      by this router.  The default auto summary mode is 
		      enable(1)."
         DEFVAL { enable }
         ::= { agentRouterRipConfigGroup 3 }
         
    agentRouterRipHostRoutesAcceptMode OBJECT-TYPE
         SYNTAX      INTEGER {
                     enable(1),
                     disable(2)
                  }
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Sets the RIP host route acceptance mode in the router.
		      A value of enable(1) means that host routes advertized
		      to this RIP router will be accepted (learned) into its
		      routing table.  When set to disable(2), host routes 
		      advertized in RIP updates from neighboring routers
		      are ignored.  The default host routes accept mode is
		      enable(1)."
         DEFVAL { enable }
         ::= { agentRouterRipConfigGroup 4 }
         
         
    --************************************************************************************  
    agentRouterRipDefaultMetric  OBJECT-TYPE
       SYNTAX      Integer32 (0..15)
       MAX-ACCESS  read-write
       STATUS      current
       DESCRIPTION
               "Default metric of redistributed routes, when RIP redistributes 
                from other protocols."
            ::= { agentRouterRipConfigGroup 5 }

    agentRouterRipDefaultMetricConfigured OBJECT-TYPE
         SYNTAX      TruthValue
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Flag to determine whether RIP default-metric is configured or not."
         ::= { agentRouterRipConfigGroup 6 } 
            
    agentRouterRipDefaultInfoOriginate  OBJECT-TYPE
       SYNTAX      TruthValue
       MAX-ACCESS  read-write
       STATUS      current
       DESCRIPTION
               "Flag to determine, whether RIP can advertise a default-route learned
                from another protocol." 
       DEFVAL { false }
            ::= { agentRouterRipConfigGroup 7 }   
                                
    -- Agent RIP Route-redistribution table.  This table contains, one entry per
    -- source(bgp, ospf, static, connected) from which BGP redistributes routes. 
	
    agentRipRouteRedistTable OBJECT-TYPE
         SYNTAX      SEQUENCE OF AgentRipRouteRedistEntry
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION 
                     "This table contains the MIB objects required to configure 
                      route-redistribution for RIP. Here, RIP is the Destination
                      protocol and the source protocols can be any of : BGP, OSPF,
                      Static, Connected."
         ::= { agentRouterRipConfigGroup 8 }

    agentRipRouteRedistEntry OBJECT-TYPE
         SYNTAX      AgentRipRouteRedistEntry
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION 
                     ""
         INDEX       { agentRipRouteRedistSource }
         ::= { agentRipRouteRedistTable 1 }
         
    AgentRipRouteRedistEntry ::= SEQUENCE {         
          agentRipRouteRedistSource
              INTEGER,
          agentRipRouteRedistMode
              INTEGER,
          agentRipRouteRedistMetric
              Integer32,
          agentRipRouteRedistMetricConfigured
              TruthValue,
          agentRipRouteRedistMatchInternal
              INTEGER,
          agentRipRouteRedistMatchExternal1
              INTEGER, 
          agentRipRouteRedistMatchExternal2
              INTEGER,
          agentRipRouteRedistMatchNSSAExternal1
              INTEGER, 
          agentRipRouteRedistMatchNSSAExternal2
              INTEGER,
          agentRipRouteRedistDistList
              Unsigned32,
          agentRipRouteRedistDistListConfigured
              TruthValue
          } 
         
    agentRipRouteRedistSource OBJECT-TYPE
         SYNTAX      INTEGER{
                     connected(1),
                     static(2),                     
                     ospf(3),
                     bgp(4)                                        
                     }
         
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
                     "Source route, from which RIP can redistribute routes.
                      This object also acts as the identifier for  the 
                      RIP redistribution Table entry."
         ::= { agentRipRouteRedistEntry 1 }
                                                   
    agentRipRouteRedistMode OBJECT-TYPE
                 SYNTAX      INTEGER {
                      enable(1),
                      disable(2)
                     }
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "User enabels/disables route-redistribution for a particular source
                      protocol."
         DEFVAL { disable }
         ::= { agentRipRouteRedistEntry 2 }
     
    agentRipRouteRedistMetric OBJECT-TYPE
         SYNTAX      Integer32 (0..15)
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Metric used for redistributing a particular source protocol route
                      into RIP."
         ::= { agentRipRouteRedistEntry 3 } 
         
    agentRipRouteRedistMetricConfigured OBJECT-TYPE
         SYNTAX      TruthValue
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Flag to determine whether RIP redistribute-metric is configured or not."
         ::= { agentRipRouteRedistEntry 4 } 

         
    agentRipRouteRedistMatchInternal OBJECT-TYPE
         SYNTAX      INTEGER {
                      true(1),
                      false(2),
                      not-applicable(3)
                     }
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "If this flag is true, RIP redistributes OSPF internal routes.
                      It will be non-applicable, when source protocol is other than ospf."
         ::= { agentRipRouteRedistEntry 5 }
         
    agentRipRouteRedistMatchExternal1 OBJECT-TYPE
         SYNTAX      INTEGER {
                      true(1),
                      false(2),
                      not-applicable(3)
                     }
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "If this flag is true, RIP redistributes OSPF External1 routes.
                      It will be non-applicable, when source protocol is other than ospf."
         ::= { agentRipRouteRedistEntry 6 }
         
    agentRipRouteRedistMatchExternal2 OBJECT-TYPE
         SYNTAX      INTEGER {
                      true(1),
                      false(2),
                      not-applicable(3)
                     }
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "If this flag is true, RIP redistributes OSPF External2 routes.
                      It will be non-applicable, when source protocol is other than ospf."
         ::= { agentRipRouteRedistEntry 7 } 
         
    agentRipRouteRedistMatchNSSAExternal1 OBJECT-TYPE
         SYNTAX      INTEGER {
                      true(1),
                      false(2),
                      not-applicable(3)
                     }
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "If this flag is true, RIP redistributes OSPF NSSA-External1 routes.
                      It will be non-applicable, when source protocol is other than ospf."
         ::= { agentRipRouteRedistEntry 8 }
         
    agentRipRouteRedistMatchNSSAExternal2 OBJECT-TYPE
         SYNTAX      INTEGER {
                      true(1),
                      false(2),
                      not-applicable(3)
                     }
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "If this flag is true, RIP redistributes OSPF NSSA-External2 routes.
                      It will be non-applicable, when source protocol is other than ospf."
         ::= { agentRipRouteRedistEntry 9 } 
         
    agentRipRouteRedistDistList OBJECT-TYPE
         SYNTAX      Unsigned32 (1..199)
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Access-list number of the access-list, which filters routes received
                      from a source-protocol."
         ::= { agentRipRouteRedistEntry 10 } 
         
     agentRipRouteRedistDistListConfigured OBJECT-TYPE
         SYNTAX      TruthValue
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Flag to determine whether Access-list is configured or not."
         ::= { agentRipRouteRedistEntry 11 }


         

    -- The RIP Interface Configuration Table (augmented information).

    agentRip2IfConfTable OBJECT-TYPE
        SYNTAX   SEQUENCE OF AgentRip2IfConfEntry
        MAX-ACCESS   not-accessible
        STATUS   current
        DESCRIPTION
           "A list of subnets which require separate
           configuration in RIP.  Augments rip2IfConfTable
	   in the RIPv2-MIB."
       ::= { agentRouterRipConfigGroup 9 }

    agentRip2IfConfEntry OBJECT-TYPE
        SYNTAX   AgentRip2IfConfEntry
        MAX-ACCESS   not-accessible
        STATUS   current
        DESCRIPTION
           "A Single Routing Domain in a single Subnet.
	   Augments rip2IfConfEntry in RIPv2-MIB."
       AUGMENTS { rip2IfConfEntry }
       ::= { agentRip2IfConfTable 1 }

    AgentRip2IfConfEntry ::=
        SEQUENCE {
            agentRip2IfConfAuthKeyId
                INTEGER
                  }

    agentRip2IfConfAuthKeyId OBJECT-TYPE
        SYNTAX   INTEGER (0..255)
        MAX-ACCESS   read-create
        STATUS   current
        DESCRIPTION
           "The identifier for the authentication key used
           on this interface.  This field is only meaningful 
           when the RIPv2-MIB rip2IfConfAuthType is md5(3); 
	   otherwise, the value is not used."
      ::= { agentRip2IfConfEntry 1 }  
             


    --**************************************************************************************
    -- agentRouterOspfConfigGroup
    --
    --**************************************************************************************
    
    agentRouterOspfConfigGroup                 OBJECT IDENTIFIER ::= { fsm7326Routing 4 }
    
     --***********************************************************************        
     agentOspfDefaultMetric  OBJECT-TYPE
       SYNTAX      Integer32 (1..16777215)
       MAX-ACCESS  read-write
       STATUS      current
       DESCRIPTION
               "Default metric of redistributed routes, when OSPF redistributes 
                from other protocols."
            ::= { agentRouterOspfConfigGroup 1 }

     agentOspfDefaultMetricConfigured OBJECT-TYPE
         SYNTAX      TruthValue
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Flag to determine whether OSPF default-metric is configured or not."
         ::= { agentRouterOspfConfigGroup 2 } 
 
            
     agentOspfDefaultInfoOriginate  OBJECT-TYPE
       SYNTAX      TruthValue
       MAX-ACCESS  read-write
       STATUS      current
       DESCRIPTION
               "Flag to determine, whether OSPF can advertise a default-route learned
                from another protocol."
       DEFVAL { false }
            ::= { agentRouterOspfConfigGroup 3 }     
            
     agentOspfDefaultInfoOriginateAlways  OBJECT-TYPE
       SYNTAX      TruthValue
       MAX-ACCESS  read-write
       STATUS      current
       DESCRIPTION
               "When this flag is true, the router advertises 0.0.0.0/0.0.0.0 always.
                Without this option, OSPF will only advertise 0.0.0.0/0.0.0.0 if the
                router's forwarding table contains a default route."
       DEFVAL { false }
            ::= { agentRouterOspfConfigGroup 4 } 
            
     agentOspfDefaultInfoOriginateMetric  OBJECT-TYPE
       SYNTAX      Integer32 (0..16777215)
       MAX-ACCESS  read-write
       STATUS      current
       DESCRIPTION
               "Metric of the default route,which OSPF advertises when learned from
                other protocol." 
       DEFVAL { 10 }
            ::= { agentRouterOspfConfigGroup 5 } 
            
     agentOspfDefaultInfoOriginateMetricConfigured OBJECT-TYPE
         SYNTAX      TruthValue
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Flag to determine whether OSPF default-info originate metric 
                      is configured or not."
         ::= { agentRouterOspfConfigGroup 6 }
            
     agentOspfDefaultInfoOriginateMetricType  OBJECT-TYPE
       SYNTAX      INTEGER {
                   externalType1(1),
                   externalType2(2)
                   }
       MAX-ACCESS  read-write
       STATUS      current
       DESCRIPTION
               "Metric Type of the default route,which OSPF advertises when learned from
                other protocol. It can be 1(external type 1) or 2(external type 2)." 
       DEFVAL { 2 }
            ::= { agentRouterOspfConfigGroup 7 } 
            
    -- Agent OSPF Route-redistribution table.  This table contains, one entry per
    -- source(bgp, rip, static, connected) from which OSPF redistributes routes.
    
    agentOspfRouteRedistTable OBJECT-TYPE
         SYNTAX      SEQUENCE OF AgentOspfRouteRedistEntry
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION 
                     "This table contains the MIB objects required to configure 
                      route-redistribution for OSPF. Here, OSPF is the Destination
                      protocol and the source protocols can be any of : BGP, RIP,
                      Static, Connected."
         ::= { agentRouterOspfConfigGroup 8 }

    agentOspfRouteRedistEntry OBJECT-TYPE
         SYNTAX      AgentOspfRouteRedistEntry
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION 
                     ""
         INDEX       { agentOspfRouteRedistSource }
         ::= { agentOspfRouteRedistTable 1 }
         
   AgentOspfRouteRedistEntry ::= SEQUENCE {  
          
          agentOspfRouteRedistSource
              INTEGER,
          agentOspfRouteRedistMode
              INTEGER,
          agentOspfRouteRedistMetric
              Integer32,
          agentOspfRouteRedistMetricConfigured
              TruthValue,
          agentOspfRouteRedistMetricType
              INTEGER,
          agentOspfRouteRedistTag
              Unsigned32,
          agentOspfRouteRedistSubnets
              TruthValue,
          agentOspfRouteRedistDistList
              Unsigned32,
          agentOspfRouteRedistDistListConfigured
              TruthValue
              }
              
    agentOspfRouteRedistSource OBJECT-TYPE
         SYNTAX      INTEGER{
                     connected(1),
                     static(2),                     
                     rip(3),
                     bgp(4)                                        
                     }
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
                     "Source protocol, from which OSPF can redistribute routes.
                      This object also acts as the identifier for  the 
                      OSPF redistribution Table entry."
         ::= { agentOspfRouteRedistEntry 1 }
                                                   
    agentOspfRouteRedistMode OBJECT-TYPE
                 SYNTAX      INTEGER {
                      enable(1),
                      disable(2)
                     }
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "User enabels/disables route-redistribution for a particular source
                      protocol." 
         DEFVAL { disable }
         ::= { agentOspfRouteRedistEntry 2 }
     
    agentOspfRouteRedistMetric OBJECT-TYPE
         SYNTAX      Integer32 (0..16777215)
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Metric used for redistributing a particular source protocol route
                      into OSPF."
         ::= { agentOspfRouteRedistEntry 3 } 

    agentOspfRouteRedistMetricConfigured OBJECT-TYPE
         SYNTAX      TruthValue
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Flag to determine whether OSPF redistribute-metric is configured or not."
         ::= { agentOspfRouteRedistEntry 4 } 

         
    agentOspfRouteRedistMetricType OBJECT-TYPE
         SYNTAX      INTEGER {
                     externalType1(1),
                     externalType2(2)
                     }
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Metric Type of routes,which OSPF redistributes from other source protocols.
                      It can be 1(external type 1) or 2(external type 2)."
         DEFVAL { externalType2 }
         ::= { agentOspfRouteRedistEntry 5 }
         
    agentOspfRouteRedistTag OBJECT-TYPE
         SYNTAX      Unsigned32(0..4294967295)
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "It specifies the tag field in routes redistributed by OSPF."
         ::= { agentOspfRouteRedistEntry 6 } 
         
    agentOspfRouteRedistSubnets OBJECT-TYPE
         SYNTAX      TruthValue
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "If this value is false, then OSPF will not redistribute subnetted routes."
         DEFVAL { false }
         ::= { agentOspfRouteRedistEntry 7 }
         
    agentOspfRouteRedistDistList OBJECT-TYPE
         SYNTAX      Unsigned32 (1..199) 
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Access-list number of the access-list, which filters routes received
                      from a source-protocol."
         ::= { agentOspfRouteRedistEntry 8 } 
         
    agentOspfRouteRedistDistListConfigured OBJECT-TYPE
         SYNTAX      TruthValue
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
                     "Flag to determine whether Access-list is configured or not."
         ::= { agentOspfRouteRedistEntry 9 }

         
    --  OSPF Interface Table (augmented information)

    agentOspfIfTable OBJECT-TYPE
        SYNTAX   SEQUENCE OF AgentOspfIfEntry
        MAX-ACCESS   not-accessible
        STATUS   current
        DESCRIPTION
           "The OSPF Interface Table describes the  inter-
           faces from the viewpoint of OSPF.  Augments 
	   ospfIfTable from the OSPF-MIB."
      ::= { agentRouterOspfConfigGroup 9 }

    agentOspfIfEntry OBJECT-TYPE
        SYNTAX   AgentOspfIfEntry
        MAX-ACCESS   not-accessible
        STATUS   current
        DESCRIPTION
           "The OSPF Interface Entry describes one  inter-
           face from the viewpoint of OSPF.  Augments
	   ospfIfEntry in OSPF-MIB."
       AUGMENTS { ospfIfEntry }
       ::= { agentOspfIfTable 1 }

    AgentOspfIfEntry ::=
        SEQUENCE {
            agentOspfIfAuthKeyId
                INTEGER
                  }

    agentOspfIfAuthKeyId OBJECT-TYPE
        SYNTAX   INTEGER (0..255)
        MAX-ACCESS   read-create
        STATUS   current
        DESCRIPTION
           "The identifier for the authentication key used
           on this interface.  This field is only meaningful 
           when the OSPF-MIB ospfIfAuthType is md5(2); 
	   otherwise, the value is not used."
      ::= { agentOspfIfEntry 1 }


    --  OSPF Virtual Interface Table (augmented information)

    agentOspfVirtIfTable OBJECT-TYPE
        SYNTAX   SEQUENCE OF AgentOspfVirtIfEntry
        MAX-ACCESS   not-accessible
        STATUS   current
        DESCRIPTION
           "Information about this router's virtual inter-
           faces.  Augments ospfVirtIfTable from the OSPF-MIB."
      ::= { agentRouterOspfConfigGroup 10 }

    agentOspfVirtIfEntry OBJECT-TYPE
        SYNTAX   AgentOspfVirtIfEntry
        MAX-ACCESS   not-accessible
        STATUS   current
        DESCRIPTION
           "Information about a single Virtual Interface.
	   Augments ospfVirtIfEntry in OSPF-MIB."
       AUGMENTS { ospfVirtIfEntry }
       ::= { agentOspfVirtIfTable 1 }

    AgentOspfVirtIfEntry ::=
        SEQUENCE {
            agentOspfVirtIfAuthKeyId
                INTEGER
                  }

    agentOspfVirtIfAuthKeyId OBJECT-TYPE
        SYNTAX   INTEGER (0..255)
        MAX-ACCESS   read-create
        STATUS   current
        DESCRIPTION
           "The identifier for the authentication key used
           on this virtual interface.  This field is only meaningful 
           when the OSPF-MIB ospfVirtIfAuthType is md5(2); 
	   otherwise, the value is not used."
      ::= { agentOspfVirtIfEntry 1 }


    --**************************************************************************************
    

    agentRouterOspfRFC1583CompatibilityMode OBJECT-TYPE
         SYNTAX      INTEGER {
                     enable(1),
                     disable(2)
                  }
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
           "From RFC2328: 
            Controls the preference rules used in Section 16.4 when
            choosing among multiple AS-external-LSAs advertising the
            same destination. When set to 'enabled', the preference
            rules remain those specified by RFC 1583 ([Ref9]). When set
            to 'disabled', the preference rules are those stated in

            Section 16.4.1, which prevent routing loops when AS-
            external-LSAs for the same destination have been originated
            from different areas. Set to 'enabled' by default.

            In order to minimize the chance of routing loops, all OSPF
            routers in an OSPF routing domain should have
            RFC1583Compatibility set identically. When there are routers
            present that have not been updated with the functionality
            specified in Section 16.4.1 of this memo, all routers should
            have RFC1583Compatibility set to 'enabled'. Otherwise, all
            routers should have RFC1583Compatibility set to 'disabled',
            preventing all routing loops."
         DEFVAL { enable }
         ::= { agentRouterOspfConfigGroup 11 }
         
    agentOspfAreaTable OBJECT-TYPE
        SYNTAX   SEQUENCE OF AgentOspfAreaEntry
        MAX-ACCESS   not-accessible
        STATUS   current
        DESCRIPTION
           "Information describing the additional configured 
           parameters and cumulative statistics of the router's
           attached areas."
      ::= { agentRouterOspfConfigGroup 12 }


    agentOspfAreaEntry OBJECT-TYPE
        SYNTAX   AgentOspfAreaEntry
        MAX-ACCESS   not-accessible
        STATUS   current
        DESCRIPTION
           "Information describing the additional configured 
           parameters and cumulative statistics of the router's
           attached areas."
        AUGMENTS { ospfAreaEntry }
        ::= { agentOspfAreaTable 1 }

        AgentOspfAreaEntry ::=
        SEQUENCE {
            agentOspfAuthType
                Integer32
                  }

    agentOspfAuthType OBJECT-TYPE
        SYNTAX   Integer32
                    -- none (0),
                    -- simplePassword (1)
                    -- md5 (2)
                    -- reserved for specification by IANA (> 2)
        MAX-ACCESS   read-write
        STATUS   current
        DESCRIPTION
           "The authentication type specified for an area.
           Additional authentication types may be assigned
           locally on a per Area basis."
        DEFVAL { 0 }        -- no authentication, by default
        ::= { agentOspfAreaEntry 2 }        
    
    

    --**************************************************************************************
    -- agentSnmpTrapFlagsConfigGroupLayer3
    --
    --**************************************************************************************
    
    agentSnmpTrapFlagsConfigGroupLayer3       OBJECT IDENTIFIER ::= { fsm7326Routing 5 }
    
    agentSnmpVRRPNewMasterTrapFlag OBJECT-TYPE
         SYNTAX      INTEGER {
                     enable(1),
                     disable(2)
                  }
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION 
                     "This flag enables the sending of VRRP new master notification
                     traps."
         ::= { agentSnmpTrapFlagsConfigGroupLayer3 1 }
         
    agentSnmpVRRPAuthFailureTrapFlag OBJECT-TYPE
         SYNTAX      INTEGER {
                     enable(1),
                     disable(2)
                  }
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION 
                     "This flag enables the sending of VRRP authentication failure
                     notification traps."
         ::= { agentSnmpTrapFlagsConfigGroupLayer3 2 }
         
    --**************************************************************************************
    -- agentBootpDhcpRelayGroup
    --
    --**************************************************************************************
    
    agentBootpDhcpRelayGroup       OBJECT IDENTIFIER ::= { fsm7326Routing 6 }
    
    agentBootpDhcpRelayMaxHopCount OBJECT-TYPE
      SYNTAX     Integer32 (1..16)
      MAX-ACCESS read-write
      STATUS     current
      DESCRIPTION
        "The BOOTP/DHCP Max Hop Count.
         The relay agent silently discards BOOTREQUEST messages whose hops field exceeds the value 16 
         assuming that the request is looped through the intermediate agents. The default value is 4."
      DEFVAL { 4 }
    ::= { agentBootpDhcpRelayGroup 1 }

    agentBootpDhcpRelayForwardingIp  OBJECT-TYPE
      SYNTAX     IpAddress
      MAX-ACCESS read-write
      STATUS     current
      DESCRIPTION
        "The BOOTP/DHCP Server IP Address. 
         All the requests will be forwarded and the replies expected from this address."
    ::= { agentBootpDhcpRelayGroup 2 }

    agentBootpDhcpRelayForwardMode OBJECT-TYPE
      SYNTAX     INTEGER { enable(1),  disable(2) }
      MAX-ACCESS read-write
      STATUS     current
      DESCRIPTION     
        "The BOOTP/DHCP Admin Mode. 
         The relaying functionality can be administratively enabled or disabled by this object"
    ::= { agentBootpDhcpRelayGroup 3 }

    agentBootpDhcpRelayMinWaitTime OBJECT-TYPE
      SYNTAX     Integer32 (0..100)
      MAX-ACCESS read-write
      STATUS     current
      DESCRIPTION
        "The BOOTP/DHCP Minimum Wait Time. 
         When the BOOTP relay agent receives a BOOTREQUEST message, it MAY use the value of the 'secs' 
         (seconds since client began booting) field of the request as a factor in deciding whether to 
         relay the request or not."
    ::= { agentBootpDhcpRelayGroup 4 }


    agentBootpDhcpRelayCircuitIdOptionMode OBJECT-TYPE
      SYNTAX     INTEGER { enable(1), disable(2) }
      MAX-ACCESS read-write
      STATUS     current
      DESCRIPTION
        "The BOOTP/DHCP Circuit ID Option Mode. 
         This flag is set to enable/disable the network element to add/remove the DHCP Relay agent
         Circuit ID sub-options."
    ::= { agentBootpDhcpRelayGroup 5 }

    agentBootpDhcpRelayNumOfRequestsReceived OBJECT-TYPE
      SYNTAX     Integer32
      MAX-ACCESS read-only
      STATUS     current
      DESCRIPTION
        "The Number of BOOTP/DHCP Requests Received. 
         Total number of BOOTREQUESTs received from all clients."
    ::= { agentBootpDhcpRelayGroup 6 }


    agentBootpDhcpRelayNumOfRequestsForwarded OBJECT-TYPE
      SYNTAX     Integer32
      MAX-ACCESS read-only
      STATUS     current
      DESCRIPTION
        "The Number of BOOTP/DHCP Requests Forwarded. 
         Total number of BOOTREQUESTs forwarded to the next agents/servers."
    ::= { agentBootpDhcpRelayGroup 7 }


    agentBootpDhcpRelayNumOfDiscards OBJECT-TYPE
      SYNTAX     Integer32
      MAX-ACCESS read-only
      STATUS     current
      DESCRIPTION
        "The Number of BOOTP/DHCP Discards. 
         Total number of packets discarded by the network element because of error in the packet."
    ::= { agentBootpDhcpRelayGroup 8 }
         
END
