MPIPSG DEFINITIONS ::= BEGIN

IMPORTS
        MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, enterprises, Counter32, Gauge32,
        Integer32, Unsigned32, TimeTicks,IpAddress,Counter64
        	                                    FROM SNMPv2-SMI
        TEXTUAL-CONVENTION, TruthValue, MacAddress, 
	RowStatus, DisplayString, DateAndTime 
                                                 FROM SNMPv2-TC
        MODULE-COMPLIANCE, OBJECT-GROUP         
        	FROM SNMPv2-CONF        
        mpMgmt
        	FROM MAIPU-SMI
        ObjectName, ObjectSyntax, NetworkAddress
                FROM RFC1155-SMI;


maipu               	OBJECT IDENTIFIER ::= { enterprises 5651 }
mpMgmt2             	OBJECT IDENTIFIER ::= { maipu 6 }
mpSwitchTech        	OBJECT IDENTIFIER ::= { mpMgmt2 3 }

mpIPSourceGuardMIB  OBJECT IDENTIFIER ::= {mpSwitchTech 23}

mpIpsgPortTable  OBJECT-TYPE
    SYNTAX  SEQUENCE OF   MpIpsgPortEntry
    ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
            "The IP source guard port configuration table"
    ::= {mpIPSourceGuardMIB 10}

mpIpsgPortEntry  OBJECT-TYPE
    SYNTAX  MpIpsgPortEntry
    ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
            "The IP source guard port configuration table"
    INDEX   {mpIpsgPortId}
    ::= {mpIpsgPortTable 1}

mpIpsgPortId  OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "The port ID is the index of IP source guard port configuration table,"
    ::= {mpIpsgPortEntry 1}

mpIpsgPortEnableStatus  OBJECT-TYPE
    SYNTAX  EnabledStatus
    ACCESS  read-write
    STATUS  current
    DESCRIPTION
            "The enable status of IP source guard for the port"
    ::= {mpIpsgPortEntry 2}

mpIpsgPortVerifyType  OBJECT-TYPE
    SYNTAX  INTEGER  {
            unknown(1),
            ipOnly(2),
            ipAndMac(3)
            }
    ACCESS  read-write
    STATUS  current
    DESCRIPTION
            "The verify type of the port IPSG."
    ::= {mpIpsgPortEntry 3}

mpIpsgPortName  OBJECT-TYPE
    SYNTAX  DisplayString(SIZE(0..40))
    ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "Name of the port,such as port 0/0/0."
    ::= {mpIpsgPortEntry 4}

mpIpsgBindingTable  OBJECT-TYPE
    SYNTAX  SEQUENCE OF   MpIpsgBindingEntry
    ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
            ""
    ::= {mpIPSourceGuardMIB 11}

mpIpsgBindingEntry  OBJECT-TYPE
    SYNTAX  MpIpsgBindingEntry
    ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
            ""
    INDEX   {mpIpsgBindingPortId, mpIpsgBindingMacAddress, mpIpsgBindingIpAddress, mpIpsgBindingVlanId}
    ::= {mpIpsgBindingTable 1}

mpIpsgBindingPortId  OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "The port ID of the binding entry configured."
    ::= {mpIpsgBindingEntry 1}

mpIpsgBindingMacAddress  OBJECT-TYPE
    SYNTAX  MacAddress
    ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "The MAC address of the binding entry."
    ::= {mpIpsgBindingEntry 2}

mpIpsgBindingIpAddress  OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "The IP address of binding entry."
    ::= {mpIpsgBindingEntry 3}

mpIpsgBindingVlanId  OBJECT-TYPE
    SYNTAX  INTEGER(1..4094)
    ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "Vlan ID of the binding entry"
    ::= {mpIpsgBindingEntry 4}

mpIpsgBindingType  OBJECT-TYPE
    SYNTAX  INTEGER  {
            unknown(1),
            static(2),
            dynamic(3),
            both(4)
            }
    ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "The configuration type of binding entry. static: the binding entry is configured by management dynamic: the binding entry is acquried from DHCP database both: the binding entry is both configured by management and acquried from DHCP database"
    ::= {mpIpsgBindingEntry 5}

mpIpsgBindingFlag  OBJECT-TYPE
    SYNTAX  INTEGER  {
            writed(1),
            notWrite(2)
            }
    ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "The flag of the binding entry indicated whether or not has been writed to hardware."
    ::= {mpIpsgBindingEntry 6}

mpIpsgBindingRowStatus  OBJECT-TYPE
    SYNTAX  RowStatus
    ACCESS  read-only
    STATUS  current
    DESCRIPTION
            "The row status of table entries acceptable value: CREATEANDGO, DESTROY,ACTIVE"
    ::= {mpIpsgBindingEntry 7}
END
