   TPLINK-DHCP6FILTER-MIB DEFINITIONS ::= BEGIN

         IMPORTS
            MODULE-IDENTITY, OBJECT-TYPE
          	  	        FROM SNMPv2-SMI
          	ifIndex
						FROM RFC1213-MIB
			TPRowStatus
						FROM TPLINK-TC-MIB				
            tplinkMgmt
						FROM TPLINK-MIB 
			InetAddress
				FROM INET-ADDRESS-MIB;
				
			tplinkDhcp6FilterMIB MODULE-IDENTITY
				LAST-UPDATED    "201212171014Z"
				ORGANIZATION    "TPLINK"
				CONTACT-INFO    "www.tplink.com"
				DESCRIPTION	    "Private MIB for DHCPv6 Filter configuration."
				REVISION        "201212171014Z"
				DESCRIPTION
				"Initial version of this MIB module."
			::= { tplinkMgmt 67 }
		
			tplinkDhcp6FilterMIBObjects		OBJECT IDENTIFIER	::= { tplinkDhcp6FilterMIB 1 }
			tplinkDhcp6FilterNotifications		OBJECT IDENTIFIER	::= { tplinkDhcp6FilterMIB 2 }
                
  			dhcp6FilterGlobalConfig		OBJECT IDENTIFIER	::= { tplinkDhcp6FilterMIBObjects 1 }
            dhcp6FilterPortConfig     		OBJECT IDENTIFIER	::= { tplinkDhcp6FilterMIBObjects 2}
			dhcp6FilterServerPermitEntryCofig 	OBJECT IDENTIFIER	::= { tplinkDhcp6FilterMIBObjects 3}
				
				dhcp6FilterEnable OBJECT-TYPE
	          		SYNTAX  INTEGER{
	      				disable(0), 						
	      				enable(1)						
	      			}
	            MAX-ACCESS  read-write
	            STATUS  current
	            DESCRIPTION
	                    "0. disable 
	                     1. enable
	                     Enable or disable the DHCPv6 Filter function globally."
	            ::= { dhcp6FilterGlobalConfig 1 }
       
       -- the DHCPv6 Filter port config
         
       			dhcp6FilterPortConfigTable OBJECT-TYPE
          			SYNTAX  SEQUENCE OF Dhcp6FilterPortConfigEntry
          			MAX-ACCESS  not-accessible
          			STATUS  current
          			DESCRIPTION
                  		"A list of DHCPv6 Filter port config entries.
                   		Here you can configure the port parameters for the DHCPv6 Filter."
          		::= { dhcp6FilterPortConfig 1 }

      			dhcp6FilterPortConfigEntry OBJECT-TYPE
          			SYNTAX  Dhcp6FilterPortConfigEntry
          			MAX-ACCESS  not-accessible
          			STATUS  current
          			DESCRIPTION
                  		"An entry contains of the information of DHCPv6 Filter port config."
          			INDEX   {ifIndex}
          		::= { dhcp6FilterPortConfigTable 1 }
  
      			Dhcp6FilterPortConfigEntry ::=
          			SEQUENCE {
          					dhcp6FilterPort
          							OCTET STRING (SIZE (0..255)),
							dhcp6FilterPortConfigState
									INTEGER, 
							dhcp6FilterPortConfigRateLimit
									INTEGER, 
							dhcp6FilterPortConfigDeclineRateLimit
									INTEGER,
							dhcp6FilterPortConfigPortLag
									OCTET STRING  
          			}
          			
               	dhcp6FilterPort OBJECT-TYPE
					SYNTAX  	OCTET STRING (SIZE (0..255))
					MAX-ACCESS  read-only
					STATUS  	current
					DESCRIPTION
						"Display port number"
				::= { dhcp6FilterPortConfigEntry 1 }
				               
      			dhcp6FilterPortConfigState OBJECT-TYPE
          			SYNTAX  INTEGER{
      					disable(0), 						
      					enable(1)			
      				}
          			MAX-ACCESS  read-write
          			STATUS  current
          			DESCRIPTION
                  		"0. disable
                   		 1. enable
                   		 Select Enable/Disable DHCPv6 Filter function of the specified port."
          		::= { dhcp6FilterPortConfigEntry 2 }
     
      			dhcp6FilterPortConfigRateLimit OBJECT-TYPE
           			SYNTAX  INTEGER{
			      		disable(0), 						
			      		value5pps(5),
			      		value10pps(10),
			      		value15pps(15),
			      		value20pps(20),						
			      		value25pps(25),
			      		value30pps(30)
			      	}
	            	MAX-ACCESS  read-write
	            	STATUS  current
	            	DESCRIPTION
	                    "0. disable 
	                     1. 5pps
	                     2. 10pps
	                     3. 15pps
	                     4. 20pps
	                     5. 25pps
	                     6. 30pps
	                     Select Enable/Disable the Flow Control feature for the DHCPv6 packets. 
	                     The excessive DHCPv6 packets will be discarded. "
          		::= { dhcp6FilterPortConfigEntry 3 }      
          
      			dhcp6FilterPortConfigDeclineRateLimit OBJECT-TYPE
          			SYNTAX  INTEGER{
			      		disable(0), 						
			      		value5pps(5),
			      		value10pps(10),
			      		value15pps(15),
			      		value20pps(20),						
			      		value25pps(25),
			      		value30pps(30)
      				}
          			MAX-ACCESS  read-write
          			STATUS  current
          			DESCRIPTION
	                    "0. disable 
	                     1. 5pps
	                     2. 10pps
	                     3. 15pps
	                     4. 20pps
	                     5. 25pps
	                     6. 30pps
	                     Select Enable/Disable the Flow Control feature for the DHCPv6 decline packets. 
	                     The excessive DHCPv6 decline packets will be discarded. "          		
          		::= { dhcp6FilterPortConfigEntry 4 }
          		  
      			dhcp6FilterPortConfigPortLag OBJECT-TYPE
            		SYNTAX  OCTET STRING (SIZE (1..255))  
            		MAX-ACCESS  read-only
            		STATUS  current
            		DESCRIPTION
                    	"The LAG to which the port belongs to."
            	::= { dhcp6FilterPortConfigEntry 5 }

            dhcp6FilterServerPermitEntryTable OBJECT-TYPE
            SYNTAX  SEQUENCE OF DHCP6FILTERSERVERPERMITENTRY
            MAX-ACCESS  not-accessible
            STATUS  current
            DESCRIPTION
                "A list of DHCPv6 Filter DHCPv6 Server permit entries.
                 Here you can add or delete entries."
            ::= { dhcp6FilterServerPermitEntryCofig 1 }
        
            dhcp6FilterServerPermitEntry OBJECT-TYPE
            SYNTAX  DHCP6FILTERSERVERPERMITENTRY
            MAX-ACCESS  not-accessible
            STATUS  current
            DESCRIPTION
                "An entry contains server ip address and interface ."
            INDEX   {dhcp6FilterServerIp,
					dhcp6FilterInterface}
            ::= { dhcp6FilterServerPermitEntryTable 1 }
        
            DHCP6FILTERSERVERPERMITENTRY ::=
            SEQUENCE {
                dhcp6FilterServerIp
                    InetAddress,
                dhcp6FilterInterface
                    OCTET STRING (SIZE (1..20)),
                dhcp6FilterRowStatus
                    TPRowStatus
            }
			
            dhcp6FilterServerIp OBJECT-TYPE
                SYNTAX InetAddress
                MAX-ACCESS read-create
                STATUS current
                DESCRIPTION
                    "IP address of the permit entry."
                ::= {dhcp6FilterServerPermitEntry 1}
        
            dhcp6FilterInterface OBJECT-TYPE
                SYNTAX OCTET STRING (SIZE (1..20))
                MAX-ACCESS read-create
                STATUS current
                DESCRIPTION
                    "Interface of the permit entry."
                ::= {dhcp6FilterServerPermitEntry 2}
                        
            dhcp6FilterRowStatus OBJECT-TYPE
                SYNTAX  TPRowStatus
                MAX-ACCESS  read-create
                STATUS  current
                DESCRIPTION
                    "the following value are states:
                    these values may be read or written
                    active(1),
                    notInService(2),
        
                    the following value is a state:
                    this value may be read, but not written
                    notReady(3),
        
                    the following three values are
                    actions: these values may be written,
                    but are never read
                    createAndGo(4),
                    createAndWait(5),
                    destroy(6)"
                ::= {dhcp6FilterServerPermitEntry 3}				
          
END

