-- *****************************************************************
-- FS-ACL-CONTEXT-MIB.mib:  FS Acl MIB file for multiple context
--
--
-- December 2009, rendh
--
-- Copyright (c) 2009 by FS.COM Inc..
-- All rights reserved.
-- 
-- *****************************************************************
--

FS-ACL-CONTEXT-MIB DEFINITIONS ::= BEGIN

IMPORTS
        MODULE-IDENTITY,
        OBJECT-TYPE,
        Integer32,
        Unsigned32,
        IpAddress
                FROM SNMPv2-SMI
        TruthValue,
        DisplayString,
        RowStatus,
        MacAddress
                FROM SNMPv2-TC
        MODULE-COMPLIANCE,
        OBJECT-GROUP
                FROM SNMPv2-CONF
        IfIndex,
        ConfigStatus
                FROM FS-TC        
        fsMgmt
                FROM FS-SMI;

fsAclVCMIB MODULE-IDENTITY
        LAST-UPDATED "200912060000Z"
        ORGANIZATION "FS.COM Inc.."
        CONTACT-INFO
                " 
                Tel: 400-865-2852 

                E-mail: https://www.fs.com/live_chat_service_mail.html"
        DESCRIPTION
                "This module defines fs acl mibs for multiple context."
        REVISION      "200912060000Z"
        DESCRIPTION
                "Initial version of this MIB module."
        ::= { fsMgmt 66}

--ACLNO ::= TEXTUAL-CONVENTION
--    STATUS current
--    DESCRIPTION
--        " Serial number of Access control list entry, Access control list entry of 
--          bigger ACL number will have  higher implement priority. One ACL number 
--          corresponding to only one entry."
--    SYNTAX      INTEGER

-- Access control list
fsAclVCMIBObjects OBJECT IDENTIFIER ::= { fsAclVCMIB 1 }


fsAclVCTable OBJECT-TYPE
        SYNTAX SEQUENCE OF FSAclVCEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
               "A table of acl request entries."
        ::= { fsAclVCMIBObjects 1 }
    
fsAclVCEntry OBJECT-TYPE
        SYNTAX FSAclVCEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
                "Entry contains acl name and mode."  
        INDEX { fsAclContextNameVC,  fsAclNameVC }
        ::= { fsAclVCTable 1 }
        
FSAclVCEntry ::= 
        SEQUENCE {
                fsAclContextNameVC   DisplayString,
                fsAclNameVC          DisplayString,
                fsAclModeVC          INTEGER,
                fsAclEntryStatusVC   ConfigStatus
        } 

fsAclContextNameVC OBJECT-TYPE
        SYNTAX DisplayString(SIZE (1..31))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "context name of this entry."
        ::= { fsAclVCEntry  1 }        
           
fsAclNameVC OBJECT-TYPE
        SYNTAX DisplayString(SIZE (1..32))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Access list name of this entry.This value is unique for every entry
            When this string be used as an index,Value of a sub-identifier equal 
            ASCII value of corresponding character(first sub-identifier corresponds
            first character of string). The number of sub-identifiers of this string
            must be 32,If length of string is less than 32 the sub-identifier(0x0) 
            will be filled in tail."
        ::= { fsAclVCEntry  2 }
                
fsAclModeVC OBJECT-TYPE
        SYNTAX INTEGER{
               acl-ip-standard(1),   
               acl-ip-extended(2),   
               acl-mac-extended(3),  
               acl-expert(4), 
               acl-ipv6-extended(5)
            }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
               " Config mode of this ACL"
        ::= { fsAclVCEntry 3 }    

fsAclEntryStatusVC OBJECT-TYPE
        SYNTAX ConfigStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Status of this entry, set its value to invalid will delete this entry.
            set its value to valid has no effect."
        ::= { fsAclVCEntry 4 }

-- if table ******************************************
    

        

fsAclIfVCTable OBJECT-TYPE
        SYNTAX SEQUENCE OF FSAclIfVCEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "list of ACL interface objects."
        ::= { fsAclVCMIBObjects 2 }
    
fsAclIfVCEntry OBJECT-TYPE
        SYNTAX FSAclIfVCEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Entry ACL interface information."
        INDEX { fsAclIfContextNameVC, fsAclIfIndexVC }
        ::= { fsAclIfVCTable 1 }
        
        

FSAclIfVCEntry ::=
        SEQUENCE {
            fsAclIfContextNameVC      DisplayString,
            fsAclIfIndexVC            IfIndex,
            fsAclIfMaxEntryNumVC      Integer32,
            fsAclIfCurruntEntryNumVC  Integer32,
            fsIfInAclNameVC           DisplayString,
            fsIfOutAclNameVC          DisplayString
        }

fsAclIfContextNameVC   OBJECT-TYPE
        SYNTAX DisplayString(SIZE (1..31))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "context name of this entry."
        ::= { fsAclIfVCEntry 1 }   
    

fsAclIfIndexVC OBJECT-TYPE
        SYNTAX IfIndex
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            " "
        ::= { fsAclIfVCEntry 2 }

fsAclIfMaxEntryNumVC OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
               "Max num of ACL entry(ACE) in a interface."
        ::= { fsAclIfVCEntry 3 }

fsAclIfCurruntEntryNumVC OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
               "Currunt valid num of ACL entry(ACE) in a interface."
        ::= { fsAclIfVCEntry 4 }
        
fsIfInAclNameVC OBJECT-TYPE
        SYNTAX DisplayString(SIZE (0..32))
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "Access list name of ACL of this interface match for input. 
            It indicate that this interface doesn't match any ACL for input 
            if this string is null"
        ::= { fsAclIfVCEntry  5 }        
        
fsIfOutAclNameVC OBJECT-TYPE
        SYNTAX DisplayString(SIZE (0..32))
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "Access list name of ACL of this interface match for output. 
            It indicate that this interface doesn't match any ACL for output 
            if this string is null
            
            This relation function apply only L3 interface."
        ::= { fsAclIfVCEntry  6 }
        
        
-- AceExt************************************************

fsAceExtVCTable OBJECT-TYPE
        SYNTAX SEQUENCE OF FSAceExtVCEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
               "A table of ACE request entries."
        ::= { fsAclVCMIBObjects 3 }
  
fsAceExtVCEntry OBJECT-TYPE
        SYNTAX FSAceExtVCEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
                "Entry contains ace parameters and results.
                
                A management station wishing to create an entry should
                first generate a pseudo-random serial number to be used
                as the index to a ace entry of a acl.  The station should
                then create the associated entry.
                
                We must set all specifies valid values for the 
                non-defaulted configuration objects, certainly, it should
                also modify  the default values for the other configuration 
                objects if the defaults are not appropriate.
                                       
                Once the appropriate instance of all the configuration
                objects have been created or set,the row status should be set
                to active to initiate the request."  
        INDEX {  fsAceExtContextNameVC, fsAceExtAclNameVC,fsAceExtIndexVC }
        ::= { fsAceExtVCTable 1 }
        
FSAceExtVCEntry ::= 
        SEQUENCE {
                fsAceExtContextNameVC DisplayString,
                fsAceExtAclNameVC DisplayString,
                fsAceExtIndexVC Integer32,
                fsAceExtIfAnyVIDVC TruthValue,
                fsAceExtVIDVC Unsigned32,
                fsAceExtIfAnySourceIpVC TruthValue,
                fsAceExtSourceIpVC IpAddress,
                fsAceExtIfAnySourceWildCardVC TruthValue,
                fsAceExtSourceWildCardVC IpAddress,
                fsAceExtIfAnySourceMacAddrVC TruthValue,
                fsAceExtSourceMacAddrVC MacAddress,
                fsAceExtIfAnyDestIpVC TruthValue,
                fsAceExtDestIpVC IpAddress,
                fsAceExtIfAnyDestWildCardVC TruthValue,
                fsAceExtDestIpWildCardVC IpAddress,
                fsAceExtIfAnyDestMacAddrVC TruthValue,
                fsAceExtDestMacAddrVC MacAddress,
                fsAceExtIfAnyEtherLikeTypeVC TruthValue,
                fsAceExtEtherLikeTypeVC Integer32,
                fsAceExtIfAnyIpProtocolFieldVC TruthValue,
                fsAceExtIpProtocolFieldVC Integer32,
                fsAceExtSourceProtocolPortVC Integer32,
                fsAceExtDestProtocolPortVC Integer32,
                fsAceExtIfAnyProtocolTypeVC TruthValue,
                fsAceExtProtocolTypeVC Integer32,
                fsAceExtFlowActionVC INTEGER,
                fsAceExtEntryStautsVC RowStatus,
                fsAceExtTimeRangeNameVC DisplayString,
                fsAceExtSourcePortOpVC INTEGER,
                fsAceExtSourceProtocolPortRangeVC Integer32,
                fsAceExtDestPortOpVC INTEGER,
                fsAceExtDestProtocolPortRangeVC Integer32,
                fsAceExtIfAnyCosVC TruthValue,
                fsAceExtCosVC Integer32,
                fsAceExtIfAnyIpPrecVC TruthValue,
                fsAceExtIpPrecVC Integer32,
                fsAceExtIfAnyDscpVC TruthValue,
                fsAceExtDscpVC Integer32,
                fsAceExtIfAnySourceMacAddrWildCardVC TruthValue,
                fsAceExtSourceMacAddrWildCardVC MacAddress,
                fsAceExtIfAnyDestMacAddrWildCardVC TruthValue,
                fsAceExtDestMacAddrWildCardVC MacAddress,
                fsAceExtIfAnyTcpFlagVC TruthValue,
                fsAceExtTcpFlagVC Integer32,
                fsAceExtIfAnySourceIp6VC TruthValue,
                fsAceExtSourceIp6VC OCTET STRING,
                fsAceExtIfAnySourceIp6WildCardVC TruthValue,
                fsAceExtSourceIp6WildCardVC OCTET STRING,
                fsAceExtIfAnyDestIp6VC TruthValue,
                fsAceExtDestIp6VC OCTET STRING,
                fsAceExtIfAnyDestIp6WildCardVC TruthValue,
                fsAceExtDestIp6WildCardVC OCTET STRING
        }
        
fsAceExtContextNameVC   OBJECT-TYPE
        SYNTAX DisplayString(SIZE (1..31))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "context name of this entry."
        ::= { fsAceExtVCEntry  1 }      

fsAceExtAclNameVC OBJECT-TYPE
        SYNTAX DisplayString(SIZE (1..32))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Access list name of this ace belong to.
            When this string be used as an index,Value of a sub-identifier equal 
            ASCII value of corresponding character(first sub-identifier corresponds
            first character of string). The number of sub-identifiers of this string
            must be 32,If length of string is less than 32 the sub-identifier(0x0) 
            will be filled in tail."
        ::= { fsAceExtVCEntry  2 }

fsAceExtIndexVC OBJECT-TYPE
        SYNTAX Integer32(1..2147483647)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
               "Object which specifies a unique entry in the
                fsAclTable.  A management station wishing
                to initiate a acl operation should use a
                pseudo-random value for this object when creating
                or modifying an instance of a fsAclEntry.
                The RowStatus semantics of the fsAclEntryStatus
                object will prevent access conflicts."
        ::= { fsAceExtVCEntry 3 }
   
fsAceExtIfAnyVIDVC OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "VID of class will not be checked if this value is true."
        DEFVAL{ true }
        ::= { fsAceExtVCEntry 4 }
   
fsAceExtVIDVC OBJECT-TYPE
        SYNTAX Unsigned32(0..4094)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "VID of Ace flow definition."
        ::= { fsAceExtVCEntry 5 }
    
fsAceExtIfAnySourceIpVC OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Source Ip of class will not be checked if this value is true."
        DEFVAL{ true }
        ::= { fsAceExtVCEntry 6 }
            
fsAceExtSourceIpVC OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Sourece ip address of Ace flow definition."
        ::= { fsAceExtVCEntry 7 }

fsAceExtIfAnySourceWildCardVC OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Source Ip wild card of class will not be checked if this value is true."
        DEFVAL{ true }
        ::= { fsAceExtVCEntry 8 }
                
fsAceExtSourceWildCardVC OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Sourece ip wild card(in reverse ip address mask)of Ace flow definition."
        ::= { fsAceExtVCEntry 9 }        

fsAceExtIfAnySourceMacAddrVC OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Source mac address of class will not be checked if this value is true."
        DEFVAL{ true }
        ::= { fsAceExtVCEntry 10 }
                
fsAceExtSourceMacAddrVC OBJECT-TYPE
        SYNTAX MacAddress
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Sourece Mac address of Ace flow definition."
        ::= { fsAceExtVCEntry 11 }                
 
fsAceExtIfAnyDestIpVC OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Destination Ip wild card of class will not be checked if this value is true."
        DEFVAL{ true }
        ::= { fsAceExtVCEntry 12 }
         
fsAceExtDestIpVC OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Destination ip address of Ace flow definition."
        ::= { fsAceExtVCEntry 13 }

fsAceExtIfAnyDestWildCardVC OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Source Ip wild card of class will not be checked if this value is true."
        DEFVAL{ true }
        ::= { fsAceExtVCEntry 14 }
                
fsAceExtDestIpWildCardVC OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Destination ip wild card(in reverse ip address mask) of Ace flow definition."
        ::= { fsAceExtVCEntry 15 }        

fsAceExtIfAnyDestMacAddrVC OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Source Ip wild card of class will not be checked if this value is true."
        DEFVAL{ true }
        ::= { fsAceExtVCEntry 16 }
                
fsAceExtDestMacAddrVC OBJECT-TYPE
        SYNTAX MacAddress
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Destination Mac address of Ace flow definition."
        ::= { fsAceExtVCEntry 17 }

fsAceExtIfAnyEtherLikeTypeVC OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Ether Like Type in MAC packet will not be checked if this value is true."
        DEFVAL{ true }
        ::= { fsAceExtVCEntry 18 }
            
fsAceExtEtherLikeTypeVC OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Ether Like Type in MAC packet of Ace flow definition. "
        ::= { fsAceExtVCEntry 19 }

fsAceExtIfAnyIpProtocolFieldVC OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Source Ip wild card of class will not be checked if this value is true."
        DEFVAL{ true }
        ::= { fsAceExtVCEntry 20 }
            
fsAceExtIpProtocolFieldVC OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "The value of protocol field in IP packet of Ace flow definition."
        ::= { fsAceExtVCEntry 21 }
      
fsAceExtSourceProtocolPortVC OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "The value of source protocol port in IP packet of Ace flow definition. It is 
             significative only to those protocol which support this field."
        ::= { fsAceExtVCEntry 22 }

fsAceExtDestProtocolPortVC OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "The value of destination protocol port in IP packet of Ace flow definition. It is 
             significative only to those protocol which support this field(tcp,udp)."
        ::= { fsAceExtVCEntry 23 }        

fsAceExtIfAnyProtocolTypeVC OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "The value of protocol type field in IP packet will not be checked if this 
            value is true."
        DEFVAL{ true }
        ::= { fsAceExtVCEntry 24 }
            
fsAceExtProtocolTypeVC OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "The value of protocol type field in IP packet of Ace flow definition. It is 
             significative only to those protocol which support this field(icmp,igmp)."
        ::= { fsAceExtVCEntry 25 }            
                
fsAceExtFlowActionVC OBJECT-TYPE
        SYNTAX INTEGER{
               permit(1),
               deny(2) 
        }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Permit indicate that the kind of  flow which entry define will be allow to access ,
             deny indicate that the kind of flow which entry define will be refuse to access"
        ::= { fsAceExtVCEntry 26 }
    
fsAceExtEntryStautsVC OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "entry status for this list."
        ::= { fsAceExtVCEntry 27 }

fsAceExtTimeRangeNameVC OBJECT-TYPE
    SYNTAX      DisplayString(SIZE (0..32))
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Name of time-range of this ACE match. It indicate that 
         this ACE doesn't match any time-range if this string is null"
    ::= { fsAceExtVCEntry 28 }

fsAceExtSourcePortOpVC OBJECT-TYPE
        SYNTAX   INTEGER {
               noOperator(1), 
               lt(2), 
               gt(3),
               eq(4), 
               neq(5), 
               range(6) 
        }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "noOperator(1), which is the default value, means that no
             comparison is to be made with the Source TCP/UDP port
             number.
             lt(2) means less than.
             gt(3) means greater than.
             eq(4) means equal. 
             neq(5) means not equal." 
        ::= { fsAceExtVCEntry 29 }

fsAceExtSourceProtocolPortRangeVC OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "The ending value of source protocol port in IP packet of Ace flow definition. It is 
             significative only to those protocol which support this field. The fsAceExtSourcePortOp
             must set to range(6)."
        ::= { fsAceExtVCEntry 30 }

fsAceExtDestPortOpVC OBJECT-TYPE
        SYNTAX   INTEGER {
               noOperator(1), 
               lt(2), 
               gt(3),
               eq(4), 
               neq(5), 
               range(6) 
        }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "noOperator(1), which is the default value, means that no
             comparison is to be made with the Dest TCP/UDP port
             number.
             lt(2) means less than.
             gt(3) means greater than.
             eq(4) means equal. 
             neq(5) means not equal." 
        ::= { fsAceExtVCEntry 31 }

fsAceExtDestProtocolPortRangeVC OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "The ending value of dest protocol port in IP packet of Ace flow definition. It is 
             significative only to those protocol which support this field. The fsAceExtSourcePortOp
             must set to range(6)."
        ::= { fsAceExtVCEntry 32 }

fsAceExtIfAnyCosVC OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Cos will not be checked if this value is true."
        DEFVAL{ true }
        ::= { fsAceExtVCEntry 33 }
   
fsAceExtCosVC OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Cos of Ace flow definition."
        ::= { fsAceExtVCEntry 34 }

fsAceExtIfAnyIpPrecVC OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Ip precedence will not be checked if this value is true."
        DEFVAL{ true }
        ::= { fsAceExtVCEntry 35 }
   
fsAceExtIpPrecVC OBJECT-TYPE
        SYNTAX Integer32 
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Ip precedence of Ace flow definition."
        ::= { fsAceExtVCEntry 36 }

fsAceExtIfAnyDscpVC OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Dscp will not be checked if this value is true."
        DEFVAL{ true }
        ::= { fsAceExtVCEntry 37 }
   
fsAceExtDscpVC OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Dscp of Ace flow definition."
        ::= { fsAceExtVCEntry 38 }

fsAceExtIfAnyTcpFlagVC OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Tcp flag will not be checked if this value is true."
        DEFVAL{ true }
        ::= { fsAceExtVCEntry 39 }
   
fsAceExtTcpFlagVC OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Tcp flag of Ace flow definition."
        ::= { fsAceExtVCEntry 40 }
        
fsAceExtIfAnySourceMacAddrWildCardVC OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Source mac address wildcard of class will not be checked if this value is true."
        DEFVAL{ true }
        ::= { fsAceExtVCEntry 41 }
                
fsAceExtSourceMacAddrWildCardVC OBJECT-TYPE
        SYNTAX MacAddress
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Sourece Mac address wildcard of Ace flow definition."
        ::= { fsAceExtVCEntry 42 }                

fsAceExtIfAnyDestMacAddrWildCardVC OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Dest mac address wildcard of class will not be checked if this value is true."
        DEFVAL{ true }
        ::= { fsAceExtVCEntry 43 }
                
fsAceExtDestMacAddrWildCardVC OBJECT-TYPE
        SYNTAX MacAddress
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Dest Mac address wildcard of Ace flow definition."
        ::= { fsAceExtVCEntry 44 }                

fsAceExtIfAnySourceIp6VC OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Source Ipv6 address of class will not be checked if this value is true."
        DEFVAL{ true }
        ::= { fsAceExtVCEntry 45 }
            
fsAceExtSourceIp6VC OBJECT-TYPE
        SYNTAX OCTET STRING (SIZE (16))
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Sourece ipv6 address of Ace flow definition."
        ::= { fsAceExtVCEntry 46 }

fsAceExtIfAnySourceIp6WildCardVC OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Source Ipv6 address wild card of class will not be checked if this value is true."
        DEFVAL{ true }
        ::= { fsAceExtVCEntry 47 }
                
fsAceExtSourceIp6WildCardVC OBJECT-TYPE
        SYNTAX OCTET STRING (SIZE (16))
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Sourece ipv6 address wild card(in reverse ip address mask)of Ace flow definition."
        ::= { fsAceExtVCEntry 48 }        

fsAceExtIfAnyDestIp6VC OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Dest Ipv6 address of class will not be checked if this value is true."
        DEFVAL{ true }
        ::= { fsAceExtVCEntry 49 }
            
fsAceExtDestIp6VC OBJECT-TYPE
        SYNTAX OCTET STRING (SIZE (16))
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Dest ipv6 address of Ace flow definition."
        ::= { fsAceExtVCEntry 50 }

fsAceExtIfAnyDestIp6WildCardVC OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Dest Ipv6 address wild card of class will not be checked if this value is true."
        DEFVAL{ true }
        ::= { fsAceExtVCEntry 51 }
                
fsAceExtDestIp6WildCardVC OBJECT-TYPE
        SYNTAX OCTET STRING (SIZE (16))
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Dest ipv6 address wild card(in reverse ip address mask)of Ace flow definition."
        ::= { fsAceExtVCEntry 52 }        



-- conformance information

fsAclVCMIBConformance OBJECT IDENTIFIER ::= { fsAclVCMIB 2 }
fsAclVCMIBCompliances OBJECT IDENTIFIER ::= { fsAclVCMIBConformance 1 }
fsAclVCMIBGroups      OBJECT IDENTIFIER ::= { fsAclVCMIBConformance 2 }


-- compliance statements

fsAclVCMIBCompliance MODULE-COMPLIANCE
        STATUS  current
        DESCRIPTION
                "The compliance statement for entities which implement
                the FS Acl MIB for multiple context"
        MODULE  -- this module
                MANDATORY-GROUPS { fsAclVCMIBGroup }
        ::= { fsAclVCMIBCompliances 1 }
        
        
-- units of conformance

fsAclVCMIBGroup OBJECT-GROUP
        OBJECTS {
                fsAclContextNameVC,
                fsAclNameVC,
                fsAclModeVC,
                fsAclEntryStatusVC,
                
                fsAceExtContextNameVC,
                fsAceExtAclNameVC,
                fsAceExtIndexVC,
                fsAceExtIfAnyVIDVC,
                fsAceExtVIDVC,
                fsAceExtIfAnySourceIpVC,
                fsAceExtSourceIpVC,
                fsAceExtIfAnySourceWildCardVC,
                fsAceExtSourceWildCardVC,
                fsAceExtIfAnySourceMacAddrVC,
                fsAceExtSourceMacAddrVC,
                fsAceExtIfAnyDestIpVC,
                fsAceExtDestIpVC,
                fsAceExtIfAnyDestWildCardVC,
                fsAceExtDestIpWildCardVC,
                fsAceExtIfAnyDestMacAddrVC,
                fsAceExtDestMacAddrVC,
                fsAceExtIfAnyEtherLikeTypeVC,
                fsAceExtEtherLikeTypeVC,
                fsAceExtIfAnyIpProtocolFieldVC,
                fsAceExtIpProtocolFieldVC,
                fsAceExtSourceProtocolPortVC,
                fsAceExtDestProtocolPortVC,
                fsAceExtProtocolTypeVC,
                fsAceExtProtocolTypeVC,
                fsAceExtFlowActionVC,
                fsAceExtEntryStautsVC,
                fsAceExtTimeRangeNameVC,
                fsAceExtSourcePortOpVC,
                fsAceExtSourceProtocolPortRangeVC,
                --fsAceExtIfAnySourceProtocolPortVC,
                fsAceExtDestPortOpVC,
                fsAceExtDestProtocolPortRangeVC,
                --fsAceExtIfAnyDestProtocolPortVC,
                fsAceExtIfAnyCosVC,
                fsAceExtCosVC,
                fsAceExtIfAnyIpPrecVC,
                fsAceExtIpPrecVC,
                fsAceExtIfAnyDscpVC,
                fsAceExtDscpVC,
                fsAceExtIfAnyTcpFlagVC,
                fsAceExtTcpFlagVC,
                fsAceExtIfAnySourceMacAddrWildCardVC,
                fsAceExtSourceMacAddrWildCardVC,
                fsAceExtIfAnyDestMacAddrWildCardVC,
                fsAceExtDestMacAddrWildCardVC,
                fsAceExtIfAnySourceIp6VC,
                fsAceExtSourceIp6VC,
                fsAceExtIfAnySourceIp6WildCardVC,
                fsAceExtSourceIp6WildCardVC,
                fsAceExtIfAnyDestIp6VC,
                fsAceExtDestIp6VC,
                fsAceExtIfAnyDestIp6WildCardVC,
                fsAceExtDestIp6WildCardVC,
                
                fsAclIfContextNameVC,
                fsAclIfIndexVC,
                fsAclIfMaxEntryNumVC,
                fsAclIfCurruntEntryNumVC,
                fsIfInAclNameVC,
                fsIfOutAclNameVC
        }
        STATUS  current
        DESCRIPTION
                "A collection of objects providing acl (echo) ability to a
                FS agent."
        ::= { fsAclVCMIBGroups 1 }        


--
        
END
