#-MIBFILE: cisco-igmp-filter.mib CISCO-IGMP-FILTER-MIB DEFINITIONS ::= BEGIN DisplayString ::= OCTET STRING (SIZE(0..255)) PhysAddress ::= OCTET STRING MacAddress ::= OCTET STRING (SIZE(6)) TruthValue ::= INTEGER { true(1), false(2) } TestAndIncr ::= INTEGER (0..2147483647) AutonomousType ::= OBJECT IDENTIFIER InstancePointer ::= OBJECT IDENTIFIER VariablePointer ::= OBJECT IDENTIFIER RowPointer ::= OBJECT IDENTIFIER RowStatus ::= INTEGER { active(1), notInService(2), notReady(3), createAndGo(4), createAndWait(5), destroy(6) } TimeStamp ::= TimeTicks TimeInterval ::= INTEGER (0..2147483647) DateAndTime ::= OCTET STRING (SIZE(8|11)) StorageType ::= INTEGER { other(1), volatile(2), nonVolatile(3), permanent(4), readOnly(5) } TDomain ::= OBJECT IDENTIFIER TAddress ::= OCTET STRING (SIZE(1..255)) OwnerString ::= OCTET STRING (SIZE(0..255)) InterfaceIndex ::= INTEGER (1..2147483647) InterfaceIndexOrZero ::= INTEGER (0..2147483647) mib-2 OBJECT IDENTIFIER ::= { mgmt 1 } interfaces OBJECT IDENTIFIER ::= { mib-2 2 } ifTable OBJECT IDENTIFIER ::= { interfaces 2 } ifEntry OBJECT IDENTIFIER ::= { ifTable 1 } ifIndex OBJECT IDENTIFIER ::= { ifEntry 1 } cisco OBJECT IDENTIFIER ::= { enterprises 9 } ciscoMgmt OBJECT IDENTIFIER ::= { cisco 9 } InetAddressType ::= INTEGER { unknown(0), ipv4(1), ipv6(2), ipv4z(3), ipv6z(4), dns(16) } InetAddress ::= OCTET STRING (SIZE(0..255)) InetAddressIPv4 ::= OCTET STRING (SIZE(4)) InetAddressIPv6 ::= OCTET STRING (SIZE(16)) InetAddressIPv4z ::= OCTET STRING (SIZE(8)) InetAddressIPv6z ::= OCTET STRING (SIZE(20)) InetAddressDNS ::= OCTET STRING (SIZE(1..255)) InetAddressPrefixLength ::= OCTET STRING InetPortNumber ::= OCTET STRING InetAutonomousSystemNumber ::= OCTET STRING InetScopeType ::= INTEGER { interfaceLocal(1), linkLocal(2), subnetLocal(3), adminLocal(4), siteLocal(5), organizationLocal(8), global(14) } InetZoneIndex ::= OCTET STRING InetVersion ::= INTEGER { unknown(0), ipv4(1), ipv6(2) } ciscoIGMPFilterMIB OBJECT IDENTIFIER ::= { ciscoMgmt 238 } ciscoIgmpFilterMIBObjects OBJECT IDENTIFIER ::= { ciscoIGMPFilterMIB 1 } cIgmpFilterGeneral OBJECT IDENTIFIER ::= { ciscoIgmpFilterMIBObjects 1 } cIgmpFilterInfo OBJECT IDENTIFIER ::= { ciscoIgmpFilterMIBObjects 2 } cIgmpFilterEditor OBJECT IDENTIFIER ::= { ciscoIgmpFilterMIBObjects 3 } cIgmpFilterEnable OBJECT-TYPE SYNTAX TruthValue ACCESS read-only STATUS mandatory DESCRIPTION "This object controls whether the IGMP filtering is enabled on the device. A false(2) value will prevent the IGMP filtering action on the device." ::= { cIgmpFilterGeneral 1 } cIgmpFilterMaxProfiles OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "Indicates the maximum number of profiles supported by this device. A value of zero indicates no limitation on the number of profiles." ::= { cIgmpFilterGeneral 2 } cIgmpFilterTable OBJECT-TYPE SYNTAX SEQUENCE OF CIgmpFilterEntry ACCESS read-only STATUS mandatory DESCRIPTION "This table contains entries that identify lists of IP Multicast groups for each profile configured on the device. Each entry contains a range of contiguous IP Multicast groups associated to a profile index. Multiple cIgmpFilterEntry may be associated with the same cIgmpFilterProfileIndex. All the cIgmpFilterEntry with the same profile index are subjected to the same IGMP filtering action as defined in cIgmpFilterProfileAction. Each profile index may be associated with zero or more interfaces through cIgmpFilterInterfaceIfIndex object in cIgmpFilterInterfaceTable. The maximum number of entries is determined by cIgmpFilterMaxProfiles." ::= { cIgmpFilterInfo 1 } cIgmpFilterEntry OBJECT-TYPE SYNTAX CIgmpFilterEntry ACCESS read-only STATUS mandatory DESCRIPTION "An entry (conceptual row) in the cIgmpFilterTable. The creation, deletion or modification of an entry is controlled through the MIB objects defined under cIgmpFilterEditor group." INDEX { cIgmpFilterProfileIndex , cIgmpFilterStartAddressType, cIgmpFilterStartAddress } ::= { cIgmpFilterTable 1 } cIgmpFilterEntry ::= SEQUENCE { cIgmpFilterProfileIndex Unsigned32, cIgmpFilterStartAddressType InetAddressType, cIgmpFilterStartAddress InetAddress, cIgmpFilterEndAddressType InetAddressType, cIgmpFilterEndAddress InetAddress, cIgmpFilterProfileAction INTEGER } cIgmpFilterProfileIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "Index identifying this entry." ::= { cIgmpFilterEntry 1 } cIgmpFilterStartAddressType OBJECT-TYPE SYNTAX InetAddressType ACCESS read-only STATUS mandatory DESCRIPTION "This object describes the type of Internet address used to determine the start address of IP multicast group for a profile." ::= { cIgmpFilterEntry 2 } cIgmpFilterStartAddress OBJECT-TYPE SYNTAX InetAddress ACCESS read-only STATUS mandatory DESCRIPTION "This object describes the start of the IP multicast group address of a contiguous range which will be subjected to filtering operation." ::= { cIgmpFilterEntry 3 } cIgmpFilterEndAddressType OBJECT-TYPE SYNTAX InetAddressType ACCESS read-only STATUS mandatory DESCRIPTION "This object indicates the type of Internet address used to determine the end address of IP multicast group for a profile." ::= { cIgmpFilterEntry 4 } cIgmpFilterEndAddress OBJECT-TYPE SYNTAX InetAddress ACCESS read-only STATUS mandatory DESCRIPTION "This object indicates the end of the IP multicast group address of a contiguous range which will be subjected to filtering operation." ::= { cIgmpFilterEntry 5 } cIgmpFilterProfileAction OBJECT-TYPE SYNTAX INTEGER { permit(1), deny(2) } ACCESS read-only STATUS mandatory DESCRIPTION "This object defines the action for filtering IGMP reports for this profile. If the object is set to deny(2): then all IGMP reports associated to IP multicast groups included in the profile identified by cIgmpFilterInterfaceProfileIndex will be dropped. If the object is set to permit(1): then all IGMP reports associated to IP multicast groups not included in the profile identified by cIgmpFilterInterfaceProfileIndex will be dropped." ::= { cIgmpFilterEntry 6 } cIgmpFilterInterfaceTable OBJECT-TYPE SYNTAX SEQUENCE OF CIgmpFilterInterfaceEntry ACCESS read-only STATUS mandatory DESCRIPTION "This table contains the list of interfaces that can support IGMP filter feature." ::= { cIgmpFilterInfo 2 } cIgmpFilterInterfaceEntry OBJECT-TYPE SYNTAX CIgmpFilterInterfaceEntry ACCESS read-only STATUS mandatory DESCRIPTION "Each entry contains the configuration for associating the IGMP filter profile index with the interface. An entry is created for each of the IGMP filter capable interface on the system. The entry is removed on removal of corresponding interface from system." INDEX { ifIndex } ::= { cIgmpFilterInterfaceTable 1 } cIgmpFilterInterfaceEntry ::= SEQUENCE { cIgmpFilterInterfaceProfileIndex Unsigned32 } cIgmpFilterInterfaceProfileIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "Specifies which IGMP filter profile applies to this interface. If the value of this MIB object matches the value of cIgmpFilterProfileIndex in cIgmpFilterTable, the corresponding profile configuration will apply to this interface. Agent returns inconsistentValue if this profile does not exist in cIgmpFilterTable. A value of zero indicates no profile is associated with corresponding interface. The filtering action on each interface is also defined by the associated profile." ::= { cIgmpFilterInterfaceEntry 1 } cIgmpFilterEditSpinLock OBJECT-TYPE SYNTAX TestAndIncr ACCESS read-only STATUS mandatory DESCRIPTION "This object is used to facilitate modification of IGMP Filter Editor Group in the CISCO-IGMP-FILTER-MIB module by multiple managers. In particular, it is useful when modifying the value of the cIgmpFilterEditor object. The procedure for modifying the cIgmpFilterEditor object is as follows: 1. Retrieve the value of cIgmpFilterEditSpinLock and of object within cIgmpFilterEditor group. 2. Generate new values for 'writeable' objects in the cIgmpFilterEditor group except for cIgmpFilterEditSpinLock object. 3. Set the value of cIgmpFilterEditSpinLock to the retrieved value, and the value of objects in cIgmpFilterEditor to the new value. If the set fails for the cIgmpFilterEditSpinLock object, go back to step 1. The cIgmpFilterApplyStatus and cIgmpFilterEditSpinLock should be read together by NMS to make sure that the result is associated with its configuration request. To add/delete or modify a profile ( through cIgmpFilterEditor objects ) following procedure may be followed as an example.: 1. GET(cIgmpFilterEditSpinLock.0) and save in sValue. 2. SET(cIgmpFilterEditSpinLock.0 = sValue, cIgmpFilterEditProfileIndex.0 = validProfileNumber, cIgmpFilterEditStartAddress.0 = validStartAddress, cIgmpFilterEditEndAddress.0 = validEndAddress, cIgmpFilterEditOperation.0 = validOperation) 3. If the SET in step 2 is not successful go back to step 1. 4. If the SET in step 2 is successful, user should GET(cIgmpFilterEditSpinLock.0) and GET(cIgmpFilterApplyStatus.0) simultaneously. 5. The cIgmpFilterApplyStatus.0 reflects the outcome of step 2 only if cIgmpFilterEditSpinLock.0 = sValue + 1 or cIgmpFilterEditSpinLock.0 = 0 if sValue reaches value at which cIgmpFilterEditSpinLock wraps around." ::= { cIgmpFilterEditor 1 } cIgmpFilterEditProfileIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "Buffer object to edit corresponding object cIgmpFilterProfileIndex in cIgmpFilterTable. Maximum value this object can be set to is determined by cIgmpFilterMaxProfiles object." ::= { cIgmpFilterEditor 2 } cIgmpFilterEditStartAddressType OBJECT-TYPE SYNTAX InetAddressType ACCESS read-only STATUS mandatory DESCRIPTION "Buffer object to edit corresponding object cIgmpFilterStartAddressType in cIgmpFilterTable. This object describes the type of Internet address used to determine the start address of IP multicast group for a profile." ::= { cIgmpFilterEditor 3 } cIgmpFilterEditStartAddress OBJECT-TYPE SYNTAX InetAddress ACCESS read-only STATUS mandatory DESCRIPTION "Buffer object to edit corresponding object cIgmpFilterStartAddress in cIgmpFilterTable to establish start address of filtering range for a profile." ::= { cIgmpFilterEditor 4 } cIgmpFilterEditEndAddressType OBJECT-TYPE SYNTAX InetAddressType ACCESS read-only STATUS mandatory DESCRIPTION "Buffer object to edit corresponding object cIgmpFilterEndAddressType in cIgmpFilterTable. This object describes the type of Internet address used to determine the start address of IP multicast group for a profile." ::= { cIgmpFilterEditor 5 } cIgmpFilterEditEndAddress OBJECT-TYPE SYNTAX InetAddress ACCESS read-only STATUS mandatory DESCRIPTION "Buffer object to edit corresponding object cIgmpFilterEndAddress in cIgmpFilterTable to establish end address of filtering range for a profile." ::= { cIgmpFilterEditor 6 } cIgmpFilterEditProfileAction OBJECT-TYPE SYNTAX INTEGER { permit(1), deny(2) } ACCESS read-only STATUS mandatory DESCRIPTION "Buffer object to edit corresponding object in cIgmpFilterTable to determine filtering action of each profile." ::= { cIgmpFilterEditor 7 } cIgmpFilterEditOperation OBJECT-TYPE SYNTAX INTEGER { none(1), add(2), delete(3), modify(4) } ACCESS read-only STATUS mandatory DESCRIPTION "The function of this object is to allow user to apply the changes in cIgmpFilterEditor objects to cIgmpFilterTable. This object always has the value 'none' when read. When written each value causes the appropriate action: 'add' - tries to insert the information contained in cIgmpFilterEditor objects into cIgmpFilterTable. If the entry already exists in the table the 'add' fails. 'delete' - tries to delete corresponding entry from cIgmpFilterTable. If a user completely deletes a profile that has corresponding entries in the cIgmpFilterInterfaceTable, then all the interfaces mapped to corresponding profile will be cleared and set to zero. 'modify' - Mode of operation used to edit an entry in cIgmpFilterTable. If the corresponding entry does not exist, modify operation fails. This mode allows user to extend/truncate a contiguous filtered range, type of Internet addressing and filtering action for a profile. 'none' - no operation is performed." ::= { cIgmpFilterEditor 8 } cIgmpFilterApplyStatus OBJECT-TYPE SYNTAX INTEGER { someOtherError(1), succeeded(2), inconsistentEdit(3), entryPresentError(4), entryNotPresentError(5) } ACCESS read-only STATUS mandatory DESCRIPTION "The current status of an 'add', 'delete' or 'modify' operation. If no apply is currently active, the status represented is that of the most recently completed 'add', 'delete' or 'modify' operation. The value of this objects indicates succeeded(2) state initially when no 'add', 'delete', 'modify' operation has been carried out. The possible values are: someOtherError - the 'add', 'delete' or 'modify' failed due to undefined error(s) in apply operation. (e.g., insufficient memory). succeeded - the 'add', 'delete' or 'modify' operation was successful. (This value is also used when no apply has been invoked since the last time the local system restarted.) inconsistentEdit - the 'add', 'delete' or 'modify' failed due to inconsistency of the data. entryPresentError - the 'add' operation failed as the corresponding entry already exists in cIgmpFilterTable. entryNotPresentError - the 'modify' operation failed as no corresponding entry exists in cIgmpFilterTable." ::= { cIgmpFilterEditor 9 } ciscoIgmpFilterMIBConformance OBJECT IDENTIFIER ::= { ciscoIGMPFilterMIB 2 } ciscoIgmpFilterMIBCompliances OBJECT IDENTIFIER ::= { ciscoIgmpFilterMIBConformance 1 } ciscoIgmpFilterMIBGroups OBJECT IDENTIFIER ::= { ciscoIgmpFilterMIBConformance 2 } ciscoIgmpFilterGlobalGroup OBJECT IDENTIFIER ::= { ciscoIgmpFilterMIBGroups 1 } ciscoIgmpFilterInfoGroup OBJECT IDENTIFIER ::= { ciscoIgmpFilterMIBGroups 2 } ciscoIgmpFilterEditorGroup OBJECT IDENTIFIER ::= { ciscoIgmpFilterMIBGroups 3 } END