-- *****************************************************************
-- USERS-MIB:  Cisco private MIB
-- ****************************************************************

CIE1000-USERS-MIB DEFINITIONS ::= BEGIN

IMPORTS
    NOTIFICATION-GROUP, MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF
    NOTIFICATION-TYPE, MODULE-IDENTITY, OBJECT-TYPE FROM SNMPv2-SMI
    TEXTUAL-CONVENTION FROM SNMPv2-TC
    cie1000SwitchMgmt FROM CISCO-IE1000-MIB
    CIE1000DisplayString FROM CIE1000-TC
    CIE1000RowEditorState FROM CIE1000-TC
    Unsigned32 FROM SNMPv2-SMI
    TruthValue FROM SNMPv2-TC
    ;

cie1000UsersMib MODULE-IDENTITY
    LAST-UPDATED "201601190000Z"
    ORGANIZATION
        "Cisco Systems, Inc."
    CONTACT-INFO
        "Cisco Systems
	 Customer Service

	 Postal: 170 West Tasman Drive
	 San Jose, CA  95134
	 USA

	 Tel: +1 800 553-NETS

	 E-mail: cs-snmp@cisco.com"
    DESCRIPTION
        "This is a private version of Users"
    REVISION    "201601190000Z"
    DESCRIPTION
        "Updated the maximum length of password"
    REVISION    "201407010000Z"
    DESCRIPTION
        "Initial version"
    ::= { cie1000SwitchMgmt 58 }


cie1000UsersMibObjects OBJECT IDENTIFIER
    ::= { cie1000UsersMib 1 }

cie1000UsersConfig OBJECT IDENTIFIER
    ::= { cie1000UsersMibObjects 2 }

cie1000UsersConfigTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF CIE1000UsersConfigEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The table is Users onfiguration table. The index is user name."
    ::= { cie1000UsersConfig 1 }

cie1000UsersConfigEntry OBJECT-TYPE
    SYNTAX      CIE1000UsersConfigEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each entry has a set of parameters"
    INDEX       { cie1000UsersConfigUsername }
    ::= { cie1000UsersConfigTable 1 }

CIE1000UsersConfigEntry ::= SEQUENCE {
    cie1000UsersConfigUsername   CIE1000DisplayString,
    cie1000UsersConfigPrivilege  Unsigned32,
    cie1000UsersConfigEncrypted  TruthValue,
    cie1000UsersConfigPassword   CIE1000DisplayString,
    cie1000UsersConfigAction     CIE1000RowEditorState
}

cie1000UsersConfigUsername OBJECT-TYPE
    SYNTAX      CIE1000DisplayString (SIZE(0..31))
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "Name of user."
    ::= { cie1000UsersConfigEntry 1 }

cie1000UsersConfigPrivilege OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Privilege level of the user."
    ::= { cie1000UsersConfigEntry 2 }

cie1000UsersConfigEncrypted OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The flag indicates the password is encrypted or not. TRUE means the
         password is encrypted. FALSE means the password is plain text."
    ::= { cie1000UsersConfigEntry 3 }

cie1000UsersConfigPassword OBJECT-TYPE
    SYNTAX      CIE1000DisplayString (SIZE(0..128))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Password of the user. The password length depends on the type of
         password. If the password is encrypted, then the length is 128. If it
         is unencrypted, then the maximum length is VTSS_SYS_INPUT_PASSWD_LEN."
    ::= { cie1000UsersConfigEntry 4 }

cie1000UsersConfigAction OBJECT-TYPE
    SYNTAX      CIE1000RowEditorState
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Action"
    ::= { cie1000UsersConfigEntry 100 }

cie1000UsersConfigTableRowEditor OBJECT IDENTIFIER
    ::= { cie1000UsersConfig 2 }

cie1000UsersConfigTableRowEditorUsername OBJECT-TYPE
    SYNTAX      CIE1000DisplayString (SIZE(0..31))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Name of user."
    ::= { cie1000UsersConfigTableRowEditor 1 }

cie1000UsersConfigTableRowEditorPrivilege OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Privilege level of the user."
    ::= { cie1000UsersConfigTableRowEditor 2 }

cie1000UsersConfigTableRowEditorEncrypted OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The flag indicates the password is encrypted or not. TRUE means the
         password is encrypted. FALSE means the password is plain text."
    ::= { cie1000UsersConfigTableRowEditor 3 }

cie1000UsersConfigTableRowEditorPassword OBJECT-TYPE
    SYNTAX      CIE1000DisplayString (SIZE(0..128))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Password of the user. The password length depends on the type of
         password. If the password is encrypted, then the length is 128. If it
         is unencrypted, then the maximum length is VTSS_SYS_INPUT_PASSWD_LEN."
    ::= { cie1000UsersConfigTableRowEditor 4 }

cie1000UsersConfigTableRowEditorAction OBJECT-TYPE
    SYNTAX      CIE1000RowEditorState
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Action"
    ::= { cie1000UsersConfigTableRowEditor 100 }

cie1000UsersMibConformance OBJECT IDENTIFIER
    ::= { cie1000UsersMib 2 }

cie1000UsersMibCompliances OBJECT IDENTIFIER
    ::= { cie1000UsersMibConformance 1 }

cie1000UsersMibGroups OBJECT IDENTIFIER
    ::= { cie1000UsersMibConformance 2 }

cie1000UsersConfigTableInfoGroup OBJECT-GROUP
    OBJECTS     { cie1000UsersConfigUsername,
                  cie1000UsersConfigPrivilege,
                  cie1000UsersConfigEncrypted,
                  cie1000UsersConfigPassword,
                  cie1000UsersConfigAction }
    STATUS      current
    DESCRIPTION
        "A collection of objects."
    ::= { cie1000UsersMibGroups 1 }

cie1000UsersConfigTableRowEditorInfoGroup OBJECT-GROUP
    OBJECTS     { cie1000UsersConfigTableRowEditorUsername,
                  cie1000UsersConfigTableRowEditorPrivilege,
                  cie1000UsersConfigTableRowEditorEncrypted,
                  cie1000UsersConfigTableRowEditorPassword,
                  cie1000UsersConfigTableRowEditorAction }
    STATUS      current
    DESCRIPTION
        "A collection of objects."
    ::= { cie1000UsersMibGroups 2 }

cie1000UsersMibCompliance MODULE-COMPLIANCE
    STATUS      current
    DESCRIPTION
        "The compliance statement for the implementation."

    MODULE      -- this module

    MANDATORY-GROUPS { cie1000UsersConfigTableInfoGroup,
                       cie1000UsersConfigTableRowEditorInfoGroup }

    ::= { cie1000UsersMibCompliances 1 }

END
