-- Copyright (C) 2008-2014 Super Micro Computer Inc. All Rights Reserved

-- $Id: fstacacs.mib,v 1.3 2012/09/07 09:44:14 siva Exp $

-- TACACS-CLIENT-MIB DEFINITIONS ::= BEGIN

SUPERMICRO-TACACS-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE,
    Integer32, Unsigned32, enterprises,
    IpAddress, Counter32             FROM SNMPv2-SMI
    DisplayString, RowStatus         FROM SNMPv2-TC;


futureTacacsClientMIB MODULE-IDENTITY
    LAST-UPDATED "201209050000Z"
    ORGANIZATION "Super Micro Computer Inc."
    CONTACT-INFO "support@Supermicro.com"
    DESCRIPTION " The TACACS+ Client MIB is placed under supermicro MIB
                  branch."
    REVISION "201209050000Z"
    DESCRIPTION " The TACACS+ Client MIB is placed under supermicro MIB 
                  branch."
    ::= { enterprises supermicro-computer-inc(10876) super-switch(101) basic(1) 77 }

futureTacacsClientScalarGroup   OBJECT IDENTIFIER 
                                                ::= { futureTacacsClientMIB 1 }
futureTacacsClientTableGroup   OBJECT IDENTIFIER 
                                                ::= { futureTacacsClientMIB 2 }

-- Scalar MIB definitions 
-- ***********************

fsTacClntActiveServer   OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
      "Maximim 5 server information could be configured for TACACS
      This object indicates the active server among those 5 servers. The 
      TACACS+ client interacts with the server with this IP address. Setting 
      this object to zero disables the active server concept."
    ::= { futureTacacsClientScalarGroup 1 }

fsTacClntTraceLevel   OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
      "The debug trace level for TACACS+ client implementation. This is bit
      mapped data. Each bit of this object reprsent a trace level.
       0x00000001 - Infomation
       0x00000002 - Errors
       0x00000004 - Tx. packet dump
       0x00000008 - Rx. packet dump
       0xffffffff - All of the above
       0x00000000 - No trace"
    ::= { futureTacacsClientScalarGroup 2 }

fsTacClntRetransmit   OBJECT-TYPE
    SYNTAX      Integer32 (1..100)
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
      " number of times the tacacs+ client searches the list of TACACS+ servers"
    DEFVAL { 2 }
    ::= { futureTacacsClientScalarGroup 3 }

-- ----------------------------------
-- Statistics scalar MIB definitions
-- ----------------------------------

fsTacClntStatisticsGroup   OBJECT IDENTIFIER 
                                        ::= { futureTacacsClientScalarGroup 4 }

fsTacClntAuthenStartRequests   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of authentication start requests sent to server"
    ::= { fsTacClntStatisticsGroup 1 }

fsTacClntAuthenContinueRequests   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of authentication continue requests sent to server"
    ::= { fsTacClntStatisticsGroup 2 }

fsTacClntAuthenEnableRequests   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of authentication enable requests sent to server"
    ::= { fsTacClntStatisticsGroup 3 }

fsTacClntAuthenAbortRequests   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of authentication abort requests sent to server"
    ::= { fsTacClntStatisticsGroup 4 }

fsTacClntAuthenPassReceived   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of authentication pass received from server"
    ::= { fsTacClntStatisticsGroup 5 }

fsTacClntAuthenFailReceived   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of authentication fails received from server"
    ::= { fsTacClntStatisticsGroup 6 }

fsTacClntAuthenGetUserReceived   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of authentication get users received from server"
    ::= { fsTacClntStatisticsGroup 7 }

fsTacClntAuthenGetPassReceived   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of authentication get passwords received from server"
    ::= { fsTacClntStatisticsGroup 8 }

fsTacClntAuthenGetDataReceived   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of authentication get data received from server"
    ::= { fsTacClntStatisticsGroup 9 }

fsTacClntAuthenErrorReceived   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of authentication errors received from server"
    ::= { fsTacClntStatisticsGroup 10 }

fsTacClntAuthenFollowReceived   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of authentication follows received from server"
    ::= { fsTacClntStatisticsGroup 11 }

fsTacClntAuthenRestartReceived   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of authentication re starts received from server"
    ::= { fsTacClntStatisticsGroup 12 }

fsTacClntAuthenSessionTimouts   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of authentication session time outs"
    ::= { fsTacClntStatisticsGroup 13 }

fsTacClntAuthorRequests   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of authorization requests sent to server"
    ::= { fsTacClntStatisticsGroup 14 }

fsTacClntAuthorPassAddReceived   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of authorization pass adds received from server"
    ::= { fsTacClntStatisticsGroup 15 }

fsTacClntAuthorPassReplReceived   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of authorization pass replaces received from server"
    ::= { fsTacClntStatisticsGroup 16 }

fsTacClntAuthorFailReceived   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of authorization fails received from server"
    ::= { fsTacClntStatisticsGroup 17 }

fsTacClntAuthorErrorReceived   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of authorization errors received from server"
    ::= { fsTacClntStatisticsGroup 18 }

fsTacClntAuthorFollowReceived   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of authorization errors received from server"
    ::= { fsTacClntStatisticsGroup 19 }

fsTacClntAuthorSessionTimeouts   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of authorization session time outs"
    ::= { fsTacClntStatisticsGroup 20 }

fsTacClntAcctStartRequests   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of accounting start requests sent to server"
    ::= { fsTacClntStatisticsGroup 21 }

fsTacClntAcctWdRequests   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of accounting watch dog requests sent to server"
    ::= { fsTacClntStatisticsGroup 22 }

fsTacClntAcctStopRequests   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of accounting stop requests sent to server"
    ::= { fsTacClntStatisticsGroup 23 }

fsTacClntAcctSuccessReceived   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of accounting success received from server"
    ::= { fsTacClntStatisticsGroup 24 }

fsTacClntAcctErrorReceived   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of accounting errors received from server"
    ::= { fsTacClntStatisticsGroup 25 }

fsTacClntAcctFollowReceived   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of accounting follow  received from server"
    ::= { fsTacClntStatisticsGroup 26 }

fsTacClntAcctSessionTimeouts   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of accounting session time outs"
    ::= { fsTacClntStatisticsGroup 27 }

fsTacClntMalformedPktsReceived   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of Malformed packets received from server"
    ::= { fsTacClntStatisticsGroup 28 }

fsTacClntSocketFailures   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of socket failures occured"
    ::= { fsTacClntStatisticsGroup 29 }

fsTacClntConnectionFailures   OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "No. of connection failures occured"
    ::= { fsTacClntStatisticsGroup 30 }

--------------------------------------
--Authorization scalar MIB definitions
--------------------------------------
fsTacClntAuthorStatus      OBJECT-TYPE
    SYNTAX      INTEGER {
                        disable(0), 
                        enable(1),
                        enable_fallback(2)
                        }
     MAX-ACCESS   read-write
     STATUS       current
     DESCRIPTION
        "Tacacs authorization status:
         disable: disable TACACS authoration
         enable: enable TACACS authoration
         enable_fallback: enable and allow fallback from local
         when TACACS+ server down or doesn't response"
     DEFVAL { disable }
     ::= { futureTacacsClientScalarGroup 6 }

-- Tabular MIB definitions 
-- ***********************

-- -----------------------------
-- Table 1: TACACS+ Server Table
-- -----------------------------

fsTacClntServerTable   OBJECT-TYPE
    SYNTAX SEQUENCE OF FsTacClntServerEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
      "The TACACS+ server table of server information entries. The entries have
      server information like server IP address, secretkey, port no, timeout"
   ::= { futureTacacsClientTableGroup 1 }

fsTacClntServerEntry OBJECT-TYPE
   SYNTAX      FsTacClntServerEntry
   MAX-ACCESS  not-accessible
   STATUS      current
   DESCRIPTION
      "The entry has server IP address, port no. secret key and timeout"
   INDEX { fsTacClntServerAddress }
   ::= { fsTacClntServerTable 1 }
      
FsTacClntServerEntry ::= SEQUENCE {
      fsTacClntServerAddress
         IpAddress,
      fsTacClntServerStatus
         RowStatus,
      fsTacClntServerSingleConnect
         INTEGER,
      fsTacClntServerPort
         Integer32,
      fsTacClntServerTimeout
         Integer32,
      fsTacClntServerKey
         DisplayString
      }

fsTacClntServerAddress OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
      "Server IP address"
   ::= { fsTacClntServerEntry 1 }

fsTacClntServerStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
      "Row status of the server entry"
   ::= { fsTacClntServerEntry 2 }

fsTacClntServerSingleConnect   OBJECT-TYPE
    SYNTAX      INTEGER {
                        yes(1), 
                        no(2) 
                        }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
      "To inform whether single connect support is enabled for this server or
      not. When this is enabled multiple sessions are handled over single TCP
      connection"
    DEFVAL { no }
   ::= { fsTacClntServerEntry 3 }

fsTacClntServerPort OBJECT-TYPE
    SYNTAX      Integer32 (1..65535)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
      "Server port no. for TACACS+ protocol. The default value is 49"
    DEFVAL { 49 }
   ::= { fsTacClntServerEntry 4 }

fsTacClntServerTimeout OBJECT-TYPE
    SYNTAX      Integer32 (1..255)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
      "The time out value within which a response is expected from server. If
      response is not received within this time out, the session will be
      released"
    DEFVAL { 5 }
   ::= { fsTacClntServerEntry 5 }

fsTacClntServerKey OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
      "Secret key shared between the client and server for encryption and
      decryption"
   ::= { fsTacClntServerEntry 6 }

END
