# PySNMP SMI module. Autogenerated from smidump -f python MPLS-TC-STD-MIB
# by libsmi2pysnmp-0.0.8-alpha at Tue Feb  5 21:05:14 2008,
# Python version (2, 4, 4, 'final', 0)

# Imported just in case new ASN.1 types would be created
from pyasn1.type import constraint, namedval

# Imports

( Integer, ObjectIdentifier, OctetString, ) = mibBuilder.importSymbols("ASN1", "Integer", "ObjectIdentifier", "OctetString")
( Bits, Integer32, Integer32, ModuleIdentity, MibIdentifier, TimeTicks, Unsigned32, transmission, ) = mibBuilder.importSymbols("SNMPv2-SMI", "Bits", "Integer32", "Integer32", "ModuleIdentity", "MibIdentifier", "TimeTicks", "Unsigned32", "transmission")
( TextualConvention, ) = mibBuilder.importSymbols("SNMPv2-TC", "TextualConvention")

# Types

class MplsAtmVcIdentifier(TextualConvention, Integer32):
    displayHint = "d"
    subtypeSpec = Integer32.subtypeSpec+constraint.ValueRangeConstraint(32,65535)
    pass

class MplsBitRate(TextualConvention, Unsigned32):
    displayHint = "d"
    subtypeSpec = Unsigned32.subtypeSpec+constraint.ValueRangeConstraint(0,4294967295L)
    pass

class MplsBurstSize(TextualConvention, Unsigned32):
    displayHint = "d"
    subtypeSpec = Unsigned32.subtypeSpec+constraint.ValueRangeConstraint(0,4294967295L)
    pass

class MplsExtendedTunnelId(Unsigned32):
    subtypeSpec = Unsigned32.subtypeSpec+constraint.ValueRangeConstraint(0,4294967295L)
    pass

class MplsLSPID(OctetString):
    subtypeSpec = OctetString.subtypeSpec+constraint.ConstraintsUnion(constraint.ValueSizeConstraint(2,2),constraint.ValueSizeConstraint(6,6),)
    pass

class MplsLabel(Unsigned32):
    subtypeSpec = Unsigned32.subtypeSpec+constraint.ValueRangeConstraint(0,4294967295L)
    pass

class MplsLabelDistributionMethod(Integer):
    subtypeSpec = Integer.subtypeSpec+constraint.SingleValueConstraint(2,1,)
    namedValues = namedval.NamedValues(("downstreamOnDemand", 1), ("downstreamUnsolicited", 2), )
    pass

class MplsLdpIdentifier(TextualConvention, OctetString):
    displayHint = "1d.1d.1d.1d:2d"
    subtypeSpec = OctetString.subtypeSpec+constraint.ValueSizeConstraint(6,6)
    fixedLength = 6
    pass

class MplsLdpLabelType(Integer):
    subtypeSpec = Integer.subtypeSpec+constraint.SingleValueConstraint(1,2,3,)
    namedValues = namedval.NamedValues(("generic", 1), ("atm", 2), ("frameRelay", 3), )
    pass

class MplsLspType(Integer):
    subtypeSpec = Integer.subtypeSpec+constraint.SingleValueConstraint(3,2,1,4,)
    namedValues = namedval.NamedValues(("unknown", 1), ("terminatingLsp", 2), ("originatingLsp", 3), ("crossConnectingLsp", 4), )
    pass

class MplsLsrIdentifier(OctetString):
    subtypeSpec = OctetString.subtypeSpec+constraint.ValueSizeConstraint(4,4)
    fixedLength = 4
    pass

class MplsOwner(Integer):
    subtypeSpec = Integer.subtypeSpec+constraint.SingleValueConstraint(5,1,3,7,4,2,6,)
    namedValues = namedval.NamedValues(("unknown", 1), ("other", 2), ("snmp", 3), ("ldp", 4), ("crldp", 5), ("rsvpTe", 6), ("policyAgent", 7), )
    pass

class MplsPathIndex(Unsigned32):
    subtypeSpec = Unsigned32.subtypeSpec+constraint.ValueRangeConstraint(1,4294967295L)
    pass

class MplsPathIndexOrZero(Unsigned32):
    subtypeSpec = Unsigned32.subtypeSpec+constraint.ValueRangeConstraint(0,4294967295L)
    pass

class MplsRetentionMode(Integer):
    subtypeSpec = Integer.subtypeSpec+constraint.SingleValueConstraint(2,1,)
    namedValues = namedval.NamedValues(("conservative", 1), ("liberal", 2), )
    pass

class MplsTunnelAffinity(Unsigned32):
    subtypeSpec = Unsigned32.subtypeSpec+constraint.ValueRangeConstraint(0,4294967295L)
    pass

class MplsTunnelIndex(Unsigned32):
    subtypeSpec = Unsigned32.subtypeSpec+constraint.ValueRangeConstraint(0,65535)
    pass

class MplsTunnelInstanceIndex(Unsigned32):
    subtypeSpec = Unsigned32.subtypeSpec+constraint.ValueRangeConstraint(0,4294967295L)
    pass

class TeHopAddress(OctetString):
    subtypeSpec = OctetString.subtypeSpec+constraint.ValueSizeConstraint(0,32)
    pass

class TeHopAddressAS(OctetString):
    subtypeSpec = OctetString.subtypeSpec+constraint.ValueSizeConstraint(4,4)
    fixedLength = 4
    pass

class TeHopAddressType(Integer):
    subtypeSpec = Integer.subtypeSpec+constraint.SingleValueConstraint(5,0,4,3,1,2,)
    namedValues = namedval.NamedValues(("unknown", 0), ("ipv4", 1), ("ipv6", 2), ("asnumber", 3), ("unnum", 4), ("lspid", 5), )
    pass

class TeHopAddressUnnum(OctetString):
    subtypeSpec = OctetString.subtypeSpec+constraint.ValueSizeConstraint(4,4)
    fixedLength = 4
    pass


# Objects

mplsStdMIB = MibIdentifier((1, 3, 6, 1, 2, 1, 10, 166))
mplsTCStdMIB = ModuleIdentity((1, 3, 6, 1, 2, 1, 10, 166, 1)).setRevisions(("2004-06-03 00:00",))
if mibBuilder.loadTexts: mplsTCStdMIB.setOrganization("IETF Multiprotocol Label Switching (MPLS) Working\nGroup.")
if mibBuilder.loadTexts: mplsTCStdMIB.setContactInfo("        Thomas D. Nadeau\n\n\n\nCisco Systems, Inc.\ntnadeau@cisco.com\n\nJoan Cucchiara\nMarconi Communications, Inc.\njcucchiara@mindspring.com\n\nCheenu Srinivasan\nBloomberg L.P.\ncheenu@bloomberg.net\n\nArun Viswanathan\nForce10 Networks, Inc.\narunv@force10networks.com\n\nHans Sjostrand\nipUnplugged\nhans@ipunplugged.com\n\nKireeti Kompella\nJuniper Networks\nkireeti@juniper.net\n\nEmail comments to the MPLS WG Mailing List at\nmpls@uu.net.")
if mibBuilder.loadTexts: mplsTCStdMIB.setDescription("Copyright (C) The Internet Society (2004). The\ninitial version of this MIB module was published\nin RFC 3811. For full legal notices see the RFC\nitself or see:\nhttp://www.ietf.org/copyrights/ianamib.html\n\nThis MIB module defines TEXTUAL-CONVENTIONs\nfor concepts used in Multiprotocol Label\nSwitching (MPLS) networks.")

# Augmentions

# Exports

# Module identity
mibBuilder.exportSymbols("MPLS-TC-STD-MIB", PYSNMP_MODULE_ID=mplsTCStdMIB)

# Types
mibBuilder.exportSymbols("MPLS-TC-STD-MIB", MplsAtmVcIdentifier=MplsAtmVcIdentifier, MplsBitRate=MplsBitRate, MplsBurstSize=MplsBurstSize, MplsExtendedTunnelId=MplsExtendedTunnelId, MplsLSPID=MplsLSPID, MplsLabel=MplsLabel, MplsLabelDistributionMethod=MplsLabelDistributionMethod, MplsLdpIdentifier=MplsLdpIdentifier, MplsLdpLabelType=MplsLdpLabelType, MplsLspType=MplsLspType, MplsLsrIdentifier=MplsLsrIdentifier, MplsOwner=MplsOwner, MplsPathIndex=MplsPathIndex, MplsPathIndexOrZero=MplsPathIndexOrZero, MplsRetentionMode=MplsRetentionMode, MplsTunnelAffinity=MplsTunnelAffinity, MplsTunnelIndex=MplsTunnelIndex, MplsTunnelInstanceIndex=MplsTunnelInstanceIndex, TeHopAddress=TeHopAddress, TeHopAddressAS=TeHopAddressAS, TeHopAddressType=TeHopAddressType, TeHopAddressUnnum=TeHopAddressUnnum)

# Objects
mibBuilder.exportSymbols("MPLS-TC-STD-MIB", mplsStdMIB=mplsStdMIB, mplsTCStdMIB=mplsTCStdMIB)

