-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
--
-- Trend Micro, Inc.
-- Copyright information is in the DESCRIPTION section of the MODULE-IDENTITY.
-- 
-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

TPT-NGFW-SYSTEM-INFO-MIB

DEFINITIONS ::= BEGIN

IMPORTS
  MODULE-IDENTITY, 
  OBJECT-TYPE, 
  NOTIFICATION-TYPE,
  TimeTicks
    FROM SNMPv2-SMI

  DateAndTime,
  TEXTUAL-CONVENTION,
  TruthValue
    FROM SNMPv2-TC

  InetAddress,
  InetAddressType
    FROM INET-ADDRESS-MIB

  SnmpAdminString
    FROM SNMP-FRAMEWORK-MIB

  MODULE-COMPLIANCE,
  OBJECT-GROUP,
  NOTIFICATION-GROUP
    FROM SNMPv2-CONF

  tpt-ngfw-compls,
  tpt-ngfw-groups,
  tpt-ngfw-objs,
  tpt-ngfw-eventsV2,
  tptNgfwNotifySeverity
    FROM TPT-NGFW-REG-MIB
;

tptNgfwSystemInfo MODULE-IDENTITY
  LAST-UPDATED "201605251854Z" -- May 25, 2016
  ORGANIZATION "Trend Micro, Inc."
  CONTACT-INFO "www.trendmicro.com"
  DESCRIPTION
    "
     Hardware and system software version and runtime information for 
     TippingPoint Next-Generation Firewall products.

     Copyright (C) 2016 Trend Micro Incorporated. All Rights Reserved.
     
     Trend Micro makes no warranty of any kind with regard to this material,
     including, but not limited to, the implied warranties of merchantability
     and fitness for a particular purpose. Trend Micro shall not be liable for
     errors contained herein or for incidental or consequential damages in
     connection with the furnishing, performance, or use of this material. This
     document contains proprietary information, which is protected by copyright. No
     part of this document may be photocopied, reproduced, or translated into
     another language without the prior written consent of Trend Micro. The
     information is provided 'as is' without warranty of any kind and is subject to
     change without notice. The only warranties for Trend Micro products and
     services are set forth in the express warranty statements accompanying such
     products and services. Nothing herein should be construed as constituting an
     additional warranty. Trend Micro shall not be liable for technical or editorial
     errors or omissions contained herein. TippingPoint(R), the TippingPoint logo, and
     Digital Vaccine(R) are registered trademarks of Trend Micro. All other company
     and product names may be trademarks of their respective holders. All rights
     reserved. This document contains confidential information, trade secrets or
     both, which are the property of Trend Micro. No part of this documentation may
     be reproduced in any form or by any means or used to make any derivative work
     (such as translation, transformation, or adaptation) without written permission
     from Trend Micro or one of its subsidiaries. All other company and product
     names may be trademarks of their respective holders.
    "

  REVISION "201605251854Z" -- May 25, 2016 
  DESCRIPTION "Updated copyright information. Minor MIB syntax fixes."
  
  REVISION    "201301031739Z" -- January 3, 2013
  DESCRIPTION "Initial version of NGFW System MIB."

::= { tpt-ngfw-objs 1 } 

-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
--
-- Textual Conventions
--
-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

FipsState ::= TEXTUAL-CONVENTION
  STATUS      current
  DESCRIPTION "The state of FIPS (140-2) encryption (disabled, crypto, or full)."
  SYNTAX      INTEGER { disabled(1), crypto(2), full(3) }

BuildType ::= TEXTUAL-CONVENTION
  STATUS      current
  DESCRIPTION 
    "
     The type of build installed and running (production, or development).
    "
  SYNTAX      INTEGER { production(1), development(2) }

-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
--
-- Objects
--
-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

tptNgfwSystemSerial OBJECT-TYPE
  SYNTAX      SnmpAdminString (SIZE (0..31))
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION "The installed software serial number."
::= { tptNgfwSystemInfo 1 }

tptNgfwSystemSoftwareVersion OBJECT-TYPE
  SYNTAX      SnmpAdminString (SIZE (0..31))
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION "The installed software version."
::= { tptNgfwSystemInfo 2 }

tptNgfwSystemBuildDate OBJECT-TYPE
  SYNTAX      DateAndTime
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION "The software build date & time."
::= { tptNgfwSystemInfo 3 }

tptNgfwSystemBuildType OBJECT-TYPE
  SYNTAX      BuildType
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION 
    "
     The software build type (production, or development). If a 
     development build, the revision object is populated with the source
     code revision otherwise it's not provided.
    "
::= { tptNgfwSystemInfo 4 }

tptNgfwSystemBuildRevision OBJECT-TYPE
  SYNTAX      SnmpAdminString (SIZE (0..31))
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION 
    "
     The software build revision. This object reports the source code
     revision of the development build that's installed and running. This 
     object is empty if a production build is installed.
    "
::= { tptNgfwSystemInfo 5 }

tptNgfwSystemDigitalVaccineVersion OBJECT-TYPE
  SYNTAX      SnmpAdminString (SIZE (0..31))
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION "The installed Digital Vaccine version."
::= { tptNgfwSystemInfo 6 }

tptNgfwSystemModel OBJECT-TYPE
  SYNTAX      SnmpAdminString (SIZE (0..31))
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION "The model number."
::= { tptNgfwSystemInfo 7 }

tptNgfwSystemHardwareSerial OBJECT-TYPE
  SYNTAX      SnmpAdminString (SIZE (0..31))
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION "The hardware serial number."
::= { tptNgfwSystemInfo 8 }

tptNgfwSystemHardwareRevision OBJECT-TYPE
  SYNTAX      SnmpAdminString (SIZE (0..31))
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION "The hardware revision."
::= { tptNgfwSystemInfo 9 }

tptNgfwSystemFailsafeVersion OBJECT-TYPE
  SYNTAX      SnmpAdminString (SIZE (0..31))
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION "The fail-safe boot image version."
::= { tptNgfwSystemInfo 10 }

tptNgfwSystemBootTime OBJECT-TYPE
  SYNTAX      DateAndTime
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION "The local date and time when the device was powered on."
::= { tptNgfwSystemInfo 11 }

tptNgfwSystemUpTime OBJECT-TYPE
  SYNTAX      TimeTicks
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION "The time (in 100th/second) since the system was powered on."
::= { tptNgfwSystemInfo 12 }

tptNgfwSystemSmsManaged OBJECT-TYPE
  SYNTAX      TruthValue
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION 
    "
     Indicates if this device is under SMS management control. This object is
     set to true when the device is under SMS control, false otherwise.
    "
::= { tptNgfwSystemInfo 13 }

tptNgfwSystemSmsIpAddressType OBJECT-TYPE
  SYNTAX      InetAddressType
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION "The SMS IP address type."
::= { tptNgfwSystemInfo 14 }

tptNgfwSystemSmsIpAddress OBJECT-TYPE
  SYNTAX      InetAddress
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION 
    "
     The SMS IP address that is managing this device. Only set if SMS is 
     managing the device.
    "
::= { tptNgfwSystemInfo 15 }

tptNgfwSystemFipsAdminState OBJECT-TYPE
  SYNTAX      FipsState
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION 
    "
      The administrative state of FIPS (140-2) encryption (disabled, crypto, 
      or full)
    "
::= { tptNgfwSystemInfo 16 }

tptNgfwSystemFipsOperState OBJECT-TYPE
  SYNTAX      FipsState
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION 
    "
     The operational state of FIPS (140-2) encryption (disabled, crypto,
     or full.)
    "
::= { tptNgfwSystemInfo 17 }

tptNgfwSystemMasterKeySet OBJECT-TYPE
  SYNTAX      TruthValue
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION 
    "
     Indicates if a master key (or password) has been set for the device.
     The value is true when a master key is set (configured), false otherwise.
    "
::= { tptNgfwSystemInfo 18 }

-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
--
-- Notifications
--
-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

tptNgfwSystemReadyNotify NOTIFICATION-TYPE
  OBJECTS     { tptNgfwSystemSerial, tptNgfwNotifySeverity }
  STATUS      current
  DESCRIPTION "A notification that the system has achieved the system ready state.
              "
::= { tpt-ngfw-eventsV2 11 }

tptNgfwSystemShutdownNotify NOTIFICATION-TYPE
  OBJECTS     { tptNgfwSystemSerial, tptNgfwNotifySeverity }
  STATUS      current
  DESCRIPTION "A notification that the system is performing a controlled 
               shutdown or reboot.
              "
::= { tpt-ngfw-eventsV2 12 }

tptNgfwSystemSmsNotAuthNotify NOTIFICATION-TYPE
  OBJECTS     { 
                tptNgfwSystemSerial,
                tptNgfwSystemSmsIpAddressType,
                tptNgfwSystemSmsIpAddress,
                tptNgfwNotifySeverity
              }
  STATUS      current
  DESCRIPTION "A notification that a management station was denied control
               of the system because it did not have an authorized IP address.
               Notification includes the IP address of the management station
               that attempted control.
              "
::= { tpt-ngfw-eventsV2 13 }

-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
--
-- Groups
--
-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

tptNgfwSystemInfoGroup OBJECT-GROUP
  OBJECTS      {
                 tptNgfwSystemSerial,
                 tptNgfwSystemSoftwareVersion,
                 tptNgfwSystemBuildDate,
                 tptNgfwSystemBuildType,
                 tptNgfwSystemBuildRevision,
                 tptNgfwSystemDigitalVaccineVersion,
                 tptNgfwSystemModel,
                 tptNgfwSystemHardwareSerial,
                 tptNgfwSystemHardwareRevision,
                 tptNgfwSystemFailsafeVersion,
                 tptNgfwSystemBootTime,
                 tptNgfwSystemUpTime,
                 tptNgfwSystemSmsManaged,
                 tptNgfwSystemSmsIpAddressType,
                 tptNgfwSystemSmsIpAddress,
                 tptNgfwSystemFipsAdminState,
                 tptNgfwSystemFipsOperState,
                 tptNgfwSystemMasterKeySet
               }

  STATUS       current
  DESCRIPTION  
    "
     System group for Next-generation Firewall products consisting of hardware
     and software version information.
    "
::= { tpt-ngfw-groups 1 }

tptNgfwSystemNotificationGroup NOTIFICATION-GROUP
    NOTIFICATIONS {
                    tptNgfwSystemReadyNotify,
                    tptNgfwSystemShutdownNotify,
                    tptNgfwSystemSmsNotAuthNotify
                  }

    STATUS        current
    DESCRIPTION   "A group of notifications related to NGFW system status.
                  "
::= { tpt-ngfw-groups 9 }


-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
--
-- Compliances
--
-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

tptNgfwSystemInfoCompl MODULE-COMPLIANCE
    STATUS      current
    DESCRIPTION "Compliance for TippingPoint Next-generation Firewall products."

    MODULE
      MANDATORY-GROUPS { tptNgfwSystemInfoGroup, tptNgfwSystemNotificationGroup }
::= { tpt-ngfw-compls 1 }

END
