-- ****************************************************************************
--  ALVARION-DEVICE-EVENT-MIB definitions
--
--  Copyright (c) 2007, Alvarion Ltd.
--  All Rights Reserved.
--
--  Alvarion Device Event MIB file.
--
-- ****************************************************************************


ALVARION-DEVICE-EVENT-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE,
    Integer32, Unsigned32
        FROM    SNMPv2-SMI
    DisplayString, MacAddress
        FROM    SNMPv2-TC
    MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP
        FROM    SNMPv2-CONF
    alvarionMgmtV2
        FROM    ALVARION-SMI
    AlvarionSSIDOrNone
        FROM    ALVARION-TC
    coDevDisIndex
        FROM    ALVARION-DEVICE-MIB
    AlvarionNotificationEnable
        FROM    ALVARION-TC
;


alvarionDeviceEventMIB MODULE-IDENTITY
    LAST-UPDATED    "200710310000Z"
    ORGANIZATION    "Alvarion Ltd."
    CONTACT-INFO    "Alvarion Ltd.
                     Postal: 21a HaBarzel St.
                             P.O. Box 13139
                             Tel-Aviv 69710
                             Israel
                     Phone:  +972 3 645 6262"
    DESCRIPTION     "Alvarion Device Event MIB."

    ::= { alvarionMgmtV2 26 }


-- alvarionDeviceEventMIB definition
alvarionDeviceEventMIBObjects OBJECT IDENTIFIER ::= { alvarionDeviceEventMIB 1 }

-- alvarion Device Event groups
coDeviceEventConfigGroup OBJECT IDENTIFIER ::= { alvarionDeviceEventMIBObjects 1 }
coDeviceEventInfoGroup   OBJECT IDENTIFIER ::= { alvarionDeviceEventMIBObjects 2 }

-- The Device Event Config Group
coDevEvSuccessfulAssociationNotificationEnabled OBJECT-TYPE
    SYNTAX      AlvarionNotificationEnable
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION "Specifies if coDeviceEventSuccessfulAssociation notifications
                 are generated."
    DEFVAL      { disable }
    ::= { coDeviceEventConfigGroup 1 }

coDevEvAssociationFailureNotificationEnabled OBJECT-TYPE
    SYNTAX      AlvarionNotificationEnable
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION "Specifies if coDeviceEventAssociationFailure notifications
                 are generated."
    DEFVAL      { disable }
    ::= { coDeviceEventConfigGroup 2 }

coDevEvSuccessfulReAssociationNotificationEnabled OBJECT-TYPE
    SYNTAX      AlvarionNotificationEnable
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION "Specifies if coDeviceEventSuccessfulReAssociation
                 notifications are generated."
    DEFVAL      { disable }
    ::= { coDeviceEventConfigGroup 3 }

coDevEvReAssociationFailureNotificationEnabled OBJECT-TYPE
    SYNTAX      AlvarionNotificationEnable
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION "Specifies if coDeviceEventReAssociationFailure notifications
                 are generated."
    DEFVAL      { disable }
    ::= { coDeviceEventConfigGroup 4 }

coDevEvSuccessfulAuthenticationNotificationEnabled OBJECT-TYPE
    SYNTAX      AlvarionNotificationEnable
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION "Specifies if coDeviceEventSuccessfulAuthentication
                 notifications are generated."
    DEFVAL      { disable }
    ::= { coDeviceEventConfigGroup 5 }

coDevEvAuthenticationFailureNotificationEnabled OBJECT-TYPE
    SYNTAX      AlvarionNotificationEnable
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION "Specifies if coDeviceEventAuthenticationFailure
                 notifications are generated."
    DEFVAL      { disable }
    ::= { coDeviceEventConfigGroup 6 }

coDevEvSuccessfulDisAssociationNotificationEnabled OBJECT-TYPE
    SYNTAX      AlvarionNotificationEnable
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION "Specifies if coDeviceEventSuccessfulDisAssociation notifications
                 are generated."
    DEFVAL      { disable }
    ::= { coDeviceEventConfigGroup 7 }

coDevEvDisAssociationFailureNotificationEnabled OBJECT-TYPE
    SYNTAX      AlvarionNotificationEnable
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION "Specifies if coDeviceEventDisAssociationFailure notifications
                 are generated."
    DEFVAL      { disable }
    ::= { coDeviceEventConfigGroup 8 }

coDevEvSuccessfulDeAuthenticationNotificationEnabled OBJECT-TYPE
    SYNTAX      AlvarionNotificationEnable
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION "Specifies if coDeviceEventSuccessfulDeAuthentication
                 notifications are generated."
    DEFVAL      { disable }
    ::= { coDeviceEventConfigGroup 9 }

coDevEvDeAuthenticationFailureNotificationEnabled OBJECT-TYPE
    SYNTAX      AlvarionNotificationEnable
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION "Specifies if coDeviceEventDeAuthenticationFailure
                 notifications are generated."
    DEFVAL      { disable }
    ::= { coDeviceEventConfigGroup 10 }

-- The Device Event Info Group
coDeviceEventTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF CoDeviceEventEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION "The list of devices available in the Event system."
    ::= { coDeviceEventInfoGroup 1 }

coDeviceEventEntry OBJECT-TYPE
    SYNTAX      CoDeviceEventEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION "An entry in the coDeviceEventTable.
                 coDevDisIndex - Uniquely identify a device in the
                                 MultiService Access Controller.
                 coDevEvIndex - Uniquely identify a device in the
                                Event system."
    INDEX       { coDevDisIndex, coDevEvIndex }
    ::= { coDeviceEventTable 1 }

CoDeviceEventEntry ::= SEQUENCE
{
    coDevEvIndex       Integer32,
    coDevEvMacAddress  MacAddress
}

coDevEvIndex OBJECT-TYPE
    SYNTAX      Integer32 (1..2147483647)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION "Specifies the index associated to a device in the
                 Event system."
    ::= { coDeviceEventEntry 1 }

coDevEvMacAddress OBJECT-TYPE
    SYNTAX      MacAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "MAC address of the device's generating the events."
    ::= { coDeviceEventEntry 2 }

coDeviceEventDetailTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF CoDeviceEventDetailEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION "The Event for each devices."
    ::= { coDeviceEventInfoGroup 2 }

coDeviceEventDetailEntry OBJECT-TYPE
    SYNTAX      CoDeviceEventDetailEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION "An entry in the coDeviceEventDetailTable.
                 coDevDisIndex - Uniquely identifies a device on the
                                 MultiService Access Controller.
                 coDevEvIndex - Uniquely identifies a device on the
                                Event system.
                 coDevEvLogIndex - Uniquely identifies a log for a
                                   specific device in the Event
                                   system. "
    INDEX       { coDevDisIndex, coDevEvIndex, coDevEvLogIndex }
    ::= { coDeviceEventDetailTable 1 }

CoDeviceEventDetailEntry ::= SEQUENCE
{
    coDevEvLogIndex        Integer32,
    coDevEvDetMacAddress   MacAddress,
    coDevEvTime            DisplayString,
    coDevEvSSID            AlvarionSSIDOrNone,
    coDevEvRadioIndex      Integer32,
    coDevEvDuplicateCount  Unsigned32,
    coDevEvCategory        INTEGER,
    coDevEvOperation       INTEGER,
    coDevEvStatus          DisplayString,
    coDevEvOptionalData    DisplayString
}

coDevEvLogIndex OBJECT-TYPE
    SYNTAX      Integer32 (1..2147483647)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION "Uniquely identifies a log for a specific device in the
                 Event system."
    ::= { coDeviceEventDetailEntry 1 }

coDevEvDetMacAddress OBJECT-TYPE
    SYNTAX      MacAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "MAC address of the device generating the events."
    ::= { coDeviceEventDetailEntry 2 }

coDevEvTime OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Date and time of the event."
    ::= { coDeviceEventDetailEntry 3 }

coDevEvSSID OBJECT-TYPE
    SYNTAX      AlvarionSSIDOrNone
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "The SSID used by the wireless device."
    ::= { coDeviceEventDetailEntry 4 }

coDevEvRadioIndex OBJECT-TYPE
    SYNTAX      Integer32 (1..2147483647)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Radio index where the wireless device is connected."
    ::= { coDeviceEventDetailEntry 5 }

coDevEvDuplicateCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Number of times this event is repeated."
    ::= { coDeviceEventDetailEntry 6 }

coDevEvCategory OBJECT-TYPE
    SYNTAX      INTEGER
                {
                    wireless(1),
                    ieee802dot1x(2),
                    wpa(3),
                    macAuthentication(4),
                    dhcpServer(5),
                    pptpL2tp(6),
                    ipSec(7),
                    unknown(8)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "The module that sent the message."
    ::= { coDeviceEventDetailEntry 7 }

coDevEvOperation OBJECT-TYPE
    SYNTAX      INTEGER
                {
                    association(1),
                    authentication(2),
                    authorization(3),
                    encryption(4),
                    addressAllocation(5),
                    vpnAuthentication(6),
                    vpnAddressAllocation(7),
                    unknown(8)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "The action that has occured."
    ::= { coDeviceEventDetailEntry 8 }

coDevEvStatus OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "The status itself."
    ::= { coDeviceEventDetailEntry 9 }

coDevEvOptionalData OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Additional data that may be supplied (reason codes,
                 etc)."
    ::= { coDeviceEventDetailEntry 10 }


-- Device Event notifications
alvarionDeviceEventMIBNotificationPrefix OBJECT IDENTIFIER ::= { alvarionDeviceEventMIB 2 }
alvarionDeviceEventMIBNotifications OBJECT IDENTIFIER ::= { alvarionDeviceEventMIBNotificationPrefix 0 }


coDeviceEventSuccessfulAssociation NOTIFICATION-TYPE
    OBJECTS     {
                    coDevEvMacAddress,
                    coDevEvSSID,
                    coDevEvStatus,
                    coDevEvOptionalData
                }
    STATUS      current
    DESCRIPTION "Sent when a client station is successfully associated with the AP."
    ::= { alvarionDeviceEventMIBNotifications 1 }

coDeviceEventAssociationFailure NOTIFICATION-TYPE
    OBJECTS     {
                    coDevEvMacAddress,
                    coDevEvSSID,
                    coDevEvStatus,
                    coDevEvOptionalData
                }
    STATUS      current
    DESCRIPTION "Sent when a client station has failed to associate with the AP."
    ::= { alvarionDeviceEventMIBNotifications 2 }

coDeviceEventSuccessfulReAssociation NOTIFICATION-TYPE
    OBJECTS     {
                    coDevEvMacAddress,
                    coDevEvSSID,
                    coDevEvStatus,
                    coDevEvOptionalData
                }
    STATUS      current
    DESCRIPTION "Sent when a client station is successfully reassociated with the AP."
    ::= { alvarionDeviceEventMIBNotifications 3 }

coDeviceEventReAssociationFailure NOTIFICATION-TYPE
    OBJECTS     {
                    coDevEvMacAddress,
                    coDevEvSSID,
                    coDevEvStatus,
                    coDevEvOptionalData
                }
    STATUS      current
    DESCRIPTION "Sent when a client station has failed to reassociate with the AP."
    ::= { alvarionDeviceEventMIBNotifications 4 }

coDeviceEventSuccessfulAuthentication NOTIFICATION-TYPE
    OBJECTS     {
                    coDevEvMacAddress,
                    coDevEvSSID,
                    coDevEvStatus,
                    coDevEvOptionalData
                }
    STATUS      current
    DESCRIPTION "Sent when a client station is successfully authenticated."
    ::= { alvarionDeviceEventMIBNotifications 5 }

coDeviceEventAuthenticationFailure NOTIFICATION-TYPE
    OBJECTS     {
                    coDevEvMacAddress,
                    coDevEvSSID,
                    coDevEvStatus,
                    coDevEvOptionalData
                }
    STATUS      current
    DESCRIPTION "Sent when a client station has failed to authenticate."
    ::= { alvarionDeviceEventMIBNotifications 6 }

coDeviceEventSuccessfulDisAssociation NOTIFICATION-TYPE
    OBJECTS     {
                    coDevEvMacAddress,
                    coDevEvSSID,
                    coDevEvStatus,
                    coDevEvOptionalData
                }
    STATUS      current
    DESCRIPTION "Sent when a client station is successfully disassociated from the AP."
    ::= { alvarionDeviceEventMIBNotifications 7 }

coDeviceEventDisAssociationFailure NOTIFICATION-TYPE
    OBJECTS     {
                    coDevEvMacAddress,
                    coDevEvSSID,
                    coDevEvStatus,
                    coDevEvOptionalData
                }
    STATUS      current
    DESCRIPTION "Sent when a client station has failed to disassociate from the AP."
    ::= { alvarionDeviceEventMIBNotifications 8 }

coDeviceEventSuccessfulDeAuthentication NOTIFICATION-TYPE
    OBJECTS     {
                    coDevEvMacAddress,
                    coDevEvSSID,
                    coDevEvStatus,
                    coDevEvOptionalData
                }
    STATUS      current
    DESCRIPTION "Sent when a client station is successfully deauthenticated."
    ::= { alvarionDeviceEventMIBNotifications 9 }

coDeviceEventDeAuthenticationFailure NOTIFICATION-TYPE
    OBJECTS     {
                    coDevEvMacAddress,
                    coDevEvSSID,
                    coDevEvStatus,
                    coDevEvOptionalData
                }
    STATUS      current
    DESCRIPTION "Sent when a client station has failed to deauthenticate."
    ::= { alvarionDeviceEventMIBNotifications 10 }


-- conformance information
alvarionDeviceEventMIBConformance OBJECT IDENTIFIER ::= { alvarionDeviceEventMIB 3 }
alvarionDeviceEventMIBCompliances OBJECT IDENTIFIER ::= { alvarionDeviceEventMIBConformance 1 }
alvarionDeviceEventMIBGroups      OBJECT IDENTIFIER ::= { alvarionDeviceEventMIBConformance 2 }


-- compliance statements
alvarionDeviceEventMIBCompliance MODULE-COMPLIANCE
    STATUS      current
    DESCRIPTION "The compliance statement for the Event Log MIB."
    MODULE      MANDATORY-GROUPS
                    {
                        alvarionDeviceEventConfigMIBGroup,
                        alvarionDeviceEventInfoMIBGroup,
                        alvarionDeviceEventNotificationGroup
                    }
    ::= { alvarionDeviceEventMIBCompliances 1 }

-- units of conformance
alvarionDeviceEventConfigMIBGroup OBJECT-GROUP
    OBJECTS     {
                    coDevEvSuccessfulAssociationNotificationEnabled,
                    coDevEvAssociationFailureNotificationEnabled,
                    coDevEvSuccessfulReAssociationNotificationEnabled,
                    coDevEvReAssociationFailureNotificationEnabled,
                    coDevEvSuccessfulAuthenticationNotificationEnabled,
                    coDevEvAuthenticationFailureNotificationEnabled,
                    coDevEvSuccessfulDisAssociationNotificationEnabled,
                    coDevEvDisAssociationFailureNotificationEnabled,
                    coDevEvSuccessfulDeAuthenticationNotificationEnabled,
                    coDevEvDeAuthenticationFailureNotificationEnabled
                }
    STATUS      current
    DESCRIPTION "A collection of objects for Device Event configuration."
    ::= { alvarionDeviceEventMIBGroups 1 }

alvarionDeviceEventInfoMIBGroup OBJECT-GROUP
    OBJECTS     {
                    coDevEvMacAddress,
                    coDevEvDetMacAddress,
                    coDevEvTime,
                    coDevEvSSID,
                    coDevEvRadioIndex,
                    coDevEvDuplicateCount,
                    coDevEvCategory,
                    coDevEvOperation,
                    coDevEvStatus,
                    coDevEvOptionalData
                }
    STATUS      current
    DESCRIPTION "A collection of objects for Device Event status."
    ::= { alvarionDeviceEventMIBGroups 2 }

alvarionDeviceEventNotificationGroup NOTIFICATION-GROUP
    NOTIFICATIONS   {
                        coDeviceEventSuccessfulAssociation,
                        coDeviceEventAssociationFailure,
                        coDeviceEventSuccessfulReAssociation,
                        coDeviceEventReAssociationFailure,
                        coDeviceEventSuccessfulAuthentication,
                        coDeviceEventAuthenticationFailure,
                        coDeviceEventSuccessfulDisAssociation,
                        coDeviceEventDisAssociationFailure,
                        coDeviceEventSuccessfulDeAuthentication,
                        coDeviceEventDeAuthenticationFailure
                    }
    STATUS      current
    DESCRIPTION "A collection of supported Device Event
                 notifications."
    ::= { alvarionDeviceEventMIBGroups 3 }

END
