--
-- MODULE-IDENTITY
--  OrgName
--     Fortinet Technologies, Inc.
--  ContactInfo
--     Technical Support
--     e-mail: support@fortinet.com
--     http://www.fortinet.com
--

FORTINET-FORTIGATE-MIB DEFINITIONS ::= BEGIN

IMPORTS
    FnBoolState, FnIndex, fnAdminEntry, fnSysSerial, fortinet
        FROM FORTINET-CORE-MIB
    ifEntry, ifName
        FROM IF-MIB
    InetAddress, InetAddressPrefixLength, InetAddressType, InetPortNumber
        FROM INET-ADDRESS-MIB
    MODULE-COMPLIANCE, NOTIFICATION-GROUP, OBJECT-GROUP
        FROM SNMPv2-CONF
    sysName
        FROM SNMPv2-MIB
    Counter32, Counter64, Gauge32, Unsigned32, Integer32, IpAddress,
    MODULE-IDENTITY, NOTIFICATION-TYPE, OBJECT-TYPE, TimeTicks, OBJECT-IDENTITY
        FROM SNMPv2-SMI
    CounterBasedGauge64
        FROM HCNUM-TC
    DisplayString, TEXTUAL-CONVENTION, AutonomousType
        FROM SNMPv2-TC;

fnFortiGateMib MODULE-IDENTITY
    LAST-UPDATED "201101100000Z"
    ORGANIZATION 
        "Fortinet Technologies, Inc."
    CONTACT-INFO 
        "
         Technical Support
         email: support@fortinet.com
         http://www.fortinet.com"
    DESCRIPTION 
        "MIB module for Fortinet FortiGate devices."
    REVISION    "201101100000Z"
    DESCRIPTION
        "Added OIDs for session setup rates and VPN tunnel stats"
    REVISION    "200911030000Z"
    DESCRIPTION
        "Added OIDs for Proxy information, CPU and low-memory usage"
    REVISION    "200910010000Z"
    DESCRIPTION
        "Added new FortiGate models."
    REVISION    "200907070000Z"
    DESCRIPTION 
        "Added fgTrapFazDisconnect."
    REVISION    "200811030000Z"
    DESCRIPTION 
        "Added fgVdTpTable. Re-ordered MIB tree to improve readability.
         Replaced indexes for tables that had a dependent relationship
         with another table."
    REVISION    "200809020000Z"
    DESCRIPTION 
        "Added OIDs for compatibility with FORTIOS-300-MIB."
    REVISION    "200808190000Z"
    DESCRIPTION 
        "Conformance statements."
    REVISION    "200806160000Z"
    DESCRIPTION 
        "Spelling corrections."
    REVISION    "200804140000Z"
    DESCRIPTION 
        "Initial version of FORTINET-FORTIGATE-MIB."
    ::= { fortinet 101 }


FgVdIndex ::= TEXTUAL-CONVENTION
    DISPLAY-HINT "d"
    STATUS      current
    DESCRIPTION 
        "data type for virtual-domain indexes"
    SYNTAX      Integer32 (1..2147483647)

FgOpMode ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION 
        "enumerated type for device operation modes"
    SYNTAX      INTEGER { nat(1), transparent(2) }

FgHaMode ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION 
        "enumerated type for HA cluster modes"
    SYNTAX      INTEGER { standalone(1), activeActive(2), 
                    activePassive(3) }

FgHaLBSchedule ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION 
        "enumerated type for HA load-balancing schedules"
    SYNTAX      INTEGER { none(1), hub(2), leastConnections(3), 
                    roundRobin(4), weightedRoundRobin(5), random(6), 
                    ipBased(7), ipPortBased(8) }

FgAdminPermLevel ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION 
        "enumerated type for administrative permissions"
    SYNTAX      INTEGER { readAdmin(0), writeAdmin(1), domainAdmin(15), 
                    superAdmin(255) }

FgFwUserAuthType ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION 
        "enumerated type for user authentication types"
    SYNTAX      INTEGER { local(1), radiusSingle(2), radiusMultiple(3), 
                    ldap(4) }

FgSessProto ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION 
        "data type for session protocols"
    SYNTAX      INTEGER { ip(0), icmp(1), igmp(2), ipip(4), tcp(6), 
                    egp(8), pup(12), udp(17), idp(22), ipv6(41), 
                    rsvp(46), gre(47), esp(50), ah(51), ospf(89), 
                    pim(103), comp(108), raw(255) }

FgP2PProto ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION 
        "data type for session protocols"
    SYNTAX      INTEGER { bitTorrent(0), eDonkey(1), gnutella(2), 
                    kaZaa(3), skype(4), winNY(5) }

FgScanAvDisposition ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION 
        "Scan AV Disposition for detected anomalies"
    SYNTAX      INTEGER { detected(1), blocked(2) }

FgWanOptProtocols ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION 
        "WAN optimization protocol types"
    SYNTAX      INTEGER { http(1), mapi(2), cifs(3), 
                    ftp(4), tcp(5) }

FgWanOptHistPeriods ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION 
        "WAN optimization history statistics time period types"
    SYNTAX      INTEGER { last10Min(1), lastHour(2), lastDay(3), 
                    lastMonth(4) }

--
-- fortinet.fnFortiGateMib.fgModel
--

fgModel OBJECT IDENTIFIER ::= { fnFortiGateMib 1 }

fwf20C         OBJECT IDENTIFIER ::= { fgModel 210 }
fgt20C         OBJECT IDENTIFIER ::= { fgModel 212 }
fgt30B         OBJECT IDENTIFIER ::= { fgModel 302 }
fwf30B         OBJECT IDENTIFIER ::= { fgModel 310 }
fgt40C         OBJECT IDENTIFIER ::= { fgModel 410 }
fwf40C         OBJECT IDENTIFIER ::= { fgModel 411 }
fgt50A         OBJECT IDENTIFIER ::= { fgModel 500 }
fgt50AM        OBJECT IDENTIFIER ::= { fgModel 501 }
fgt50B         OBJECT IDENTIFIER ::= { fgModel 502 }
fgt51B         OBJECT IDENTIFIER ::= { fgModel 504 }
fwf50B         OBJECT IDENTIFIER ::= { fgModel 510 }
fgt60          OBJECT IDENTIFIER ::= { fgModel 600 }
fgt60M         OBJECT IDENTIFIER ::= { fgModel 601 }
fgt60ADSL      OBJECT IDENTIFIER ::= { fgModel 602 }
fgt60B         OBJECT IDENTIFIER ::= { fgModel 603 }
fgt60C         OBJECT IDENTIFIER ::= { fgModel 605 }
fwf60          OBJECT IDENTIFIER ::= { fgModel 610 }
fwf60A         OBJECT IDENTIFIER ::= { fgModel 611 }
fwf60AM        OBJECT IDENTIFIER ::= { fgModel 612 }
fwf60B         OBJECT IDENTIFIER ::= { fgModel 613 }
fwf60C         OBJECT IDENTIFIER ::= { fgModel 615 }
fw60CM         OBJECT IDENTIFIER ::= { fgModel 616 }
fw60CA         OBJECT IDENTIFIER ::= { fgModel 618 }
fw60CB         OBJECT IDENTIFIER ::= { fgModel 617 }
fw6XMB         OBJECT IDENTIFIER ::= { fgModel 619 }
fgt80C         OBJECT IDENTIFIER ::= { fgModel 800 }
fgt80CM        OBJECT IDENTIFIER ::= { fgModel 801 }
fgt82C         OBJECT IDENTIFIER ::= { fgModel 802 }
fwf80CM        OBJECT IDENTIFIER ::= { fgModel 810 }
fwf81CM        OBJECT IDENTIFIER ::= { fgModel 811 }
fgt100         OBJECT IDENTIFIER ::= { fgModel 1000 }
fgt100A        OBJECT IDENTIFIER ::= { fgModel 1001 }
fgt110C        OBJECT IDENTIFIER ::= { fgModel 1002 }
fgt111C        OBJECT IDENTIFIER ::= { fgModel 1003 }
fgt200         OBJECT IDENTIFIER ::= { fgModel 2000 }
fgt200A        OBJECT IDENTIFIER ::= { fgModel 2001 }
fgt224B        OBJECT IDENTIFIER ::= { fgModel 2002 }
fgt200B        OBJECT IDENTIFIER ::= { fgModel 2003 }
fgt200BPOE     OBJECT IDENTIFIER ::= { fgModel 2004 }
fgt300         OBJECT IDENTIFIER ::= { fgModel 3000 }
fgt300A        OBJECT IDENTIFIER ::= { fgModel 3001 }
fgt310B        OBJECT IDENTIFIER ::= { fgModel 3002 }
fgt300D        OBJECT IDENTIFIER ::= { fgModel 3003 }
fgt311B        OBJECT IDENTIFIER ::= { fgModel 3004 }
fgt300C        OBJECT IDENTIFIER ::= { fgModel 3005 }
fgt400         OBJECT IDENTIFIER ::= { fgModel 4000 }
fgt400A        OBJECT IDENTIFIER ::= { fgModel 4001 }
fgt500         OBJECT IDENTIFIER ::= { fgModel 5000 }
fgt500A        OBJECT IDENTIFIER ::= { fgModel 5001 }
fgt620B        OBJECT IDENTIFIER ::= { fgModel 6200 }
fgt621B        OBJECT IDENTIFIER ::= { fgModel 6210 }
fgt600D        OBJECT IDENTIFIER ::= { fgModel 6201 }
fgt600C        OBJECT IDENTIFIER ::= { fgModel 6003 }
fgt800         OBJECT IDENTIFIER ::= { fgModel 8000 }
fgt800F        OBJECT IDENTIFIER ::= { fgModel 8001 }
fgt1000        OBJECT IDENTIFIER ::= { fgModel 10000 }
fgt1000A       OBJECT IDENTIFIER ::= { fgModel 10001 }
fgt1000AFA2    OBJECT IDENTIFIER ::= { fgModel 10002 }
fgt1000ALENC   OBJECT IDENTIFIER ::= { fgModel 10003 }
fgt1000C       OBJECT IDENTIFIER ::= { fgModel 10004 }
fgt1240B       OBJECT IDENTIFIER ::= { fgModel 12400 }
fgt2000        OBJECT IDENTIFIER ::= { fgModel 20000 }
fgt3000        OBJECT IDENTIFIER ::= { fgModel 30000 }
fgt3016B       OBJECT IDENTIFIER ::= { fgModel 30160 }
fgtONE         OBJECT IDENTIFIER ::= { fgModel 10    }
fgtVM          OBJECT IDENTIFIER ::= { fgModel 20    }
fgtVM64        OBJECT IDENTIFIER ::= { fgModel 30    }
fgt3040B       OBJECT IDENTIFIER ::= { fgModel 30400 }
fgt3140B       OBJECT IDENTIFIER ::= { fgModel 30401 }
fgt3600        OBJECT IDENTIFIER ::= { fgModel 36000 }
fgt3600A       OBJECT IDENTIFIER ::= { fgModel 36003 }
fgt3810A       OBJECT IDENTIFIER ::= { fgModel 38100 }
fgt3950B       OBJECT IDENTIFIER ::= { fgModel 39500 }
fgt3951B       OBJECT IDENTIFIER ::= { fgModel 39501 }
fgt4000        OBJECT IDENTIFIER ::= { fgModel 40000 }
fgt5000        OBJECT IDENTIFIER ::= { fgModel 50000 }
fgt5001        OBJECT IDENTIFIER ::= { fgModel 50010 }
fgt5001A       OBJECT IDENTIFIER ::= { fgModel 50011 }
fgt5001FA2     OBJECT IDENTIFIER ::= { fgModel 50012 }
fgt5001B       OBJECT IDENTIFIER ::= { fgModel 50013 }
fgt5002A       OBJECT IDENTIFIER ::= { fgModel 50021 }
fgt5002FB2     OBJECT IDENTIFIER ::= { fgModel 50001 }
fgt5004        OBJECT IDENTIFIER ::= { fgModel 50040 }
fgt5005        OBJECT IDENTIFIER ::= { fgModel 50050 }
fgt5005FA2     OBJECT IDENTIFIER ::= { fgModel 50051 }

--
-- fortinet.fnFortiGateMib.fgTraps
--

fgTraps OBJECT IDENTIFIER
    ::= { fnFortiGateMib 2 }

fgTrapPrefix OBJECT IDENTIFIER
    ::= { fgTraps 0 }

--
-- fortinet.fnFortiGateMib.fgVirtualDomain
--

fgVirtualDomain OBJECT IDENTIFIER
    ::= { fnFortiGateMib 3 }

--
-- fortinet.fnFortiGateMib.fgVirtualDomain.fgVdInfo
--

fgVdInfo OBJECT IDENTIFIER
    ::= { fgVirtualDomain 1 }

fgVdNumber OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The number of virtual domains in vdTable"
    ::= { fgVdInfo 1 }

fgVdMaxVdoms OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The maximum number of virtual domains allowed on the device as allowed by hardware and/or licensing"
    ::= { fgVdInfo 2 }

fgVdEnabled OBJECT-TYPE
    SYNTAX      FnBoolState
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Whether virtual domains are enabled on this device"
    ::= { fgVdInfo 3 }

--
-- fortinet.fnFortiGateMib.fgVirtualDomain.fgVdTables
--

fgVdTables OBJECT IDENTIFIER
    ::= { fgVirtualDomain 2 }

--
-- fortinet.fnFortiGateMib.fgVirtualDomain.fgVdTables.fgVdTable
--

fgVdTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgVdEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table of virtual domains configured on the device"
    ::= { fgVdTables 1 }

fgVdEntry OBJECT-TYPE
    SYNTAX      FgVdEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "An entry containing information applicable
         to a particular virtual domain"
    INDEX       { fgVdEntIndex }
    ::= { fgVdTable 1 }

FgVdEntry ::= SEQUENCE {
    fgVdEntIndex    FgVdIndex,
    fgVdEntName     DisplayString,
    fgVdEntOpMode   FgOpMode
}

fgVdEntIndex OBJECT-TYPE
    SYNTAX      FgVdIndex
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "Internal virtual domain index used to uniquely identify rows in this table. This index is also used by other tables referencing a virtual domain."
    ::= { fgVdEntry 1 }

fgVdEntName OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The name of the virtual domain"
    ::= { fgVdEntry 2 }

fgVdEntOpMode OBJECT-TYPE
    SYNTAX      FgOpMode
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Operation mode of the virtual domain (NAT or Transparent)"
    ::= { fgVdEntry 3 }

--
-- fortinet.fnFortiGateMib.fgVirtualDomain.fgVdTables.fgVdTpTable
--

fgVdTpTable OBJECT-TYPE
    SYNTAX SEQUENCE OF FgVdTpEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION 
        "A table of virtual domains in transparent operation mode.  This table has a
         sparse dependent relationship with fgVdTable."    
    ::= { fgVdTables 2 }

fgVdTpEntry OBJECT-TYPE
    SYNTAX FgVdTpEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION 
        "An entry containing information applicable
         to a particular virtual domain in transparent mode"
    INDEX { fgVdEntIndex }
    ::= { fgVdTpTable 1 }

FgVdTpEntry ::= SEQUENCE {
    fgVdTpMgmtAddrType InetAddressType,
    fgVdTpMgmtAddr InetAddress,
    fgVdTpMgmtMask InetAddressPrefixLength
}

fgVdTpMgmtAddrType OBJECT-TYPE
    SYNTAX InetAddressType
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION 
        "The type of address stored in fgVdTpMgmtAddr, in compliance with INET-ADDRESS-MIB"
    ::= { fgVdTpEntry 1 }

fgVdTpMgmtAddr OBJECT-TYPE
    SYNTAX InetAddress
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION 
        "The management IP address of the virtual domain in transparent mode,
         typically an IPv4 address. The address type/format is determined by fgVdTpMgmtAddrType."
    ::= { fgVdTpEntry 2 }

fgVdTpMgmtMask OBJECT-TYPE
    SYNTAX InetAddressPrefixLength
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION 
        "The address prefix length (or network mask) applied to the fgVdTpMgmtAddr"
    ::= { fgVdTpEntry 3 }

--
-- fortinet.fnFortiGateMib.fgSystem
--

fgSystem OBJECT IDENTIFIER
    ::= { fnFortiGateMib 4 }

--
-- fortinet.fnFortiGateMib.fgSystem.fgSystemInfo
--

fgSystemInfo OBJECT IDENTIFIER
    ::= { fgSystem 1 }

fgSysVersion OBJECT-TYPE
    SYNTAX      DisplayString (SIZE(0..128))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Firmware version of the device"
    ::= { fgSystemInfo 1 }

fgSysMgmtVdom OBJECT-TYPE
    SYNTAX      FgVdIndex
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "Index that identifies the management virtual domain. This index corresponds to the index used by fgVdTable."
    ::= { fgSystemInfo 2 }

fgSysCpuUsage OBJECT-TYPE
    SYNTAX      Gauge32 (0..100)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Current CPU usage (percentage)"
    ::= { fgSystemInfo 3 }

fgSysMemUsage OBJECT-TYPE
    SYNTAX      Gauge32 (0..100)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Current memory utilization (percentage)"
    ::= { fgSystemInfo 4 }

fgSysMemCapacity OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Total physical memory (RAM) installed (KB)"
    ::= { fgSystemInfo 5 }

fgSysDiskUsage OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Current hard disk usage (MB), if disk is present"
    ::= { fgSystemInfo 6 }

fgSysDiskCapacity OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Total hard disk capacity (MB), if disk is present"
    ::= { fgSystemInfo 7 }

fgSysSesCount OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of active sessions on the device"
    ::= { fgSystemInfo 8 }

fgSysLowMemUsage OBJECT-TYPE
    SYNTAX      Gauge32 (0..100)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Current lowmem utilization (percentage). Lowmem is memory available
         for the kernel's own data structures and kernel specific tables. The
         system can get into a bad state if it runs out of lowmem."
    ::= { fgSystemInfo 9 }

fgSysLowMemCapacity OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Total lowmem capacity (KB). See fgSysLowMemUsage for the description
         of lowmem." 
    ::= { fgSystemInfo 10 }

fgSysSesRate1 OBJECT-TYPE
    SYNTAX      Gauge32
    UNITS       "Sessions Per Second"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The average session setup rate over the past minute."
    ::= { fgSystemInfo 11 }

fgSysSesRate10 OBJECT-TYPE
    SYNTAX      Gauge32
    UNITS       "Sessions Per Second"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The average session setup rate over the past 10 minutes."
    ::= { fgSystemInfo 12 }

fgSysSesRate30 OBJECT-TYPE
    SYNTAX      Gauge32
    UNITS       "Sessions Per Second"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The average session setup rate over the past 30 minutes."
    ::= { fgSystemInfo 13 }

fgSysSesRate60 OBJECT-TYPE
    SYNTAX      Gauge32
    UNITS       "Sessions Per Second"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The average session setup rate over the past 60 minutes."
    ::= { fgSystemInfo 14 }

--
-- fortinet.fnFortiGateMib.fgSystem.fgSoftware
--

fgSoftware OBJECT IDENTIFIER
    ::= { fgSystem 2 }

fgSysVersionAv OBJECT-TYPE
    SYNTAX      DisplayString (SIZE(0..128))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Virus signature database version installed on the device"
    ::= { fgSoftware 1 }

fgSysVersionIps OBJECT-TYPE
    SYNTAX      DisplayString (SIZE(0..128))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "IPS signature database version installed on the device"
    ::= { fgSoftware 2 }

--
-- fortinet.fnFortiGateMib.fgSystem.fgHwSensors
--

fgHwSensors OBJECT IDENTIFIER
    ::= { fgSystem 3 }

fgHwSensorCount OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The number of entries in fgHwSensorTable"
    ::= { fgHwSensors 1 }

fgHwSensorTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgHwSensorEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A list of device specific hardware sensors and values. Because different devices have different hardware sensor capabilities, this table may or may not contain any values."
    ::= { fgHwSensors 2 }

fgHwSensorEntry OBJECT-TYPE
    SYNTAX      FgHwSensorEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "An entry containing the name, value, and alarm status of a given hardware sensor"
    INDEX       { fgHwSensorEntIndex }
    ::= { fgHwSensorTable 1 }

FgHwSensorEntry ::= SEQUENCE {
    fgHwSensorEntIndex          FnIndex,
    fgHwSensorEntName           DisplayString,
    fgHwSensorEntValue          DisplayString,
    fgHwSensorEntAlarmStatus    INTEGER
}

fgHwSensorEntIndex OBJECT-TYPE
    SYNTAX      FnIndex
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A unique identifier within the fgHwSensorTable"
    ::= { fgHwSensorEntry 1 }

fgHwSensorEntName OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "A string identifying the sensor by name"
    ::= { fgHwSensorEntry 2 }

fgHwSensorEntValue OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "A string representation of the value of the sensor. Because sensors can present data in different formats, string representation is most general format. Interpretation of the value (units of measure, for example) is dependent on the individual sensor."
    ::= { fgHwSensorEntry 3 }

fgHwSensorEntAlarmStatus OBJECT-TYPE
    SYNTAX      INTEGER { false(0), true(1) }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "If the sensor has an alarm threshold and has exceeded it, this will indicate its status. Not all sensors have alarms."
    ::= { fgHwSensorEntry 4 }

--
-- fortinet.fnFortiGateMib.fgSystem.fgProcessors
--

fgProcessors OBJECT IDENTIFIER
    ::= { fgSystem 4 }

fgProcessorCount OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The number of entries in fgProcessorTable"
    ::= { fgProcessors 1 }

fgProcessorTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgProcessorEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table that lists information for each processor"
    ::= { fgProcessors 2 }

fgProcessorEntry OBJECT-TYPE
    SYNTAX      FgProcessorEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "An entry containing information for a particular processor"
    INDEX       { fgProcessorEntIndex }
    ::= { fgProcessorTable 1 }

FgProcessorEntry ::= SEQUENCE {
    fgProcessorEntIndex    FnIndex,
    fgProcessorUsage       Gauge32,
    fgProcessorUsage5sec   Gauge32,
    fgProcessorType        AutonomousType,
    fgProcessorContainedIn FnIndex,
    fgProcessorPktRxCount  Counter64,
    fgProcessorPktTxCount  Counter64,
    fgProcessorPktDroppedCount Counter64
}

fgProcessorEntIndex OBJECT-TYPE
    SYNTAX      FnIndex
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A unique identifier within the fgProcessorTable"
    ::= { fgProcessorEntry 1 }

fgProcessorUsage OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The processor's CPU usage (percentage), which is an average
        calculated over the last minute."
    ::= { fgProcessorEntry 2 }

fgProcessorUsage5sec OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The processor's CPU usage (percentage), which is an average
        calculated over the last 5 sec."
    ::= { fgProcessorEntry 3 }

fgProcessorType OBJECT-TYPE
    SYNTAX      AutonomousType
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "An indication of the type of the processor.
        Types are defined in fgProcessorTypes."
    ::= { fgProcessorEntry 4 }

fgProcessorContainedIn OBJECT-TYPE
    SYNTAX      FnIndex
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The index to the processor module entry in the fgProcessorModuleTable
        that contains this processor."
    ::= { fgProcessorEntry 5 }

fgProcessorPktRxCount OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The total number of packets received by this processor
         (only valid for processors types that support this statistic)."
    ::= { fgProcessorEntry 6 }

fgProcessorPktTxCount OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The total number of packets transmitted by this processor
         (only valid for processors types that support this statistic)."
    ::= { fgProcessorEntry 7 }

fgProcessorPktDroppedCount OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The total number of packets dropped by this processor
         (only valid for processors types that support this statistic)."
    ::= { fgProcessorEntry 8 }

--
-- Registrations for processor types, for use with fgProcessorType
--
fgProcessorTypes OBJECT IDENTIFIER
    ::= { fgProcessors 3 }

fgProcessorOther OBJECT-IDENTITY
    STATUS current
    DESCRIPTION
        "The processor type identifier used when no other defined
        type is appropriate."
    ::= { fgProcessorTypes 1 }

fgProcessorIntel OBJECT-IDENTITY
    STATUS current
    DESCRIPTION
        "The processor type identifier used for Intel CPU."
    ::= { fgProcessorTypes 2 }

fgProcessorAMD OBJECT-IDENTITY
    STATUS current
    DESCRIPTION
        "The processor type identifier used for AMD CPU."
    ::= { fgProcessorTypes 3 }

fgProcessorXlr OBJECT-IDENTITY
    STATUS current
    DESCRIPTION
        "The processor type identifier used for RMI XLR processor."
    ::= { fgProcessorTypes 4 }

fgProcessorFnSoc OBJECT-IDENTITY
    STATUS current
    DESCRIPTION
        "The processor type identifier used for Fortinet FortiSoc processor."
    ::= { fgProcessorTypes 5 }


--
-- fortinet.fnFortiGateMib.fgSystem.fgProcessorModules
--

fgProcessorModules OBJECT IDENTIFIER
    ::= { fgSystem 5 }

--
-- Registrations for processor module types, for use with fgProcModType
--
fgProcessorModuleTypes OBJECT IDENTIFIER
    ::= { fgProcessorModules 1 }

fgProcModOther OBJECT-IDENTITY
    STATUS current
    DESCRIPTION
        "The processor module type identifier used when no other defined
        type is appropriate."
    ::= { fgProcessorModuleTypes 1 }

fgProcModIntegrated OBJECT-IDENTITY
    STATUS current
    DESCRIPTION
        "The processor module type identifier used for the main CPUs
        built in the device."
    ::= { fgProcessorModuleTypes 2 }

fgProcModFnXE2 OBJECT-IDENTITY
    STATUS current
    DESCRIPTION
        "The processor module type identifier used for
        Fortinet AMC module ADM-XE2."
    ::= { fgProcessorModuleTypes 3 }

fgProcModFnCE4 OBJECT-IDENTITY
    STATUS current
    DESCRIPTION
        "The processor module type identifier used for
        Fortinet AMC module ASM-CE4."
    ::= { fgProcessorModuleTypes 4 }

fgProcModFnFE8 OBJECT-IDENTITY
    STATUS current
    DESCRIPTION
        "The processor module type identifier used for
        Fortinet AMC module ADM-FE8."
    ::= { fgProcessorModuleTypes 5 }

fgProcModFnXG2 OBJECT-IDENTITY
    STATUS current
    DESCRIPTION
        "The processor module type identifier used for
        Fortinet FMC module FMC-XG2."
    ::= { fgProcessorModuleTypes 6 }


fgProcessorModuleCount OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The number of entries in fgProcessorModuleTable"
    ::= { fgProcessorModules 2 }

fgProcessorModuleTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgProcModEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table that lists information for each processor module"
    ::= { fgProcessorModules 3 }

fgProcessorModuleEntry OBJECT-TYPE
    SYNTAX      FgProcModEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "An entry containing information for a particular processor module"
    INDEX       { fgProcModIndex }
    ::= { fgProcessorModuleTable 1 }


FgProcModEntry ::= SEQUENCE {
    fgProcModIndex          FnIndex,
    fgProcModType           AutonomousType,
    fgProcModName           DisplayString,
    fgProcModDescr          DisplayString,
    fgProcModProcessorCount Integer32,
    fgProcModMemCapacity    Gauge32,
    fgProcModMemUsage       Gauge32,
    fgProcModSessionCount   Gauge32,
    fgProcModSACount        Gauge32
}

fgProcModIndex OBJECT-TYPE
    SYNTAX      FnIndex
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A unique identifier within the fgProcessorModuleTable"
    ::= { fgProcessorModuleEntry 1 }

fgProcModType OBJECT-TYPE
    SYNTAX     AutonomousType
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "An indication of the type of the processor module.
        Types are defined in fgProcessorModuleTypes."
    ::= { fgProcessorModuleEntry 2 }

fgProcModName OBJECT-TYPE
    SYNTAX     DisplayString (SIZE (0..32))
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "A textual name of this processor module."
    ::= { fgProcessorModuleEntry 3 }

fgProcModDescr OBJECT-TYPE
    SYNTAX     DisplayString (SIZE (0..64))
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "A textual description of this processor module."
    ::= { fgProcessorModuleEntry 4 }

fgProcModProcessorCount OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Total number of processors contained by this module."
    ::= { fgProcessorModuleEntry 5}

fgProcModMemCapacity OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Total physical memory (RAM) installed (KB) on this processor module."
    ::= { fgProcessorModuleEntry 6 }

fgProcModMemUsage OBJECT-TYPE
    SYNTAX      Gauge32 (0..100)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Current memory utilization (percentage) on this processor module."
    ::= { fgProcessorModuleEntry 7 }

fgProcModSessionCount OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of active sessions on this processor module
         (only valid for processors types that support this statistic)."
    ::= { fgProcessorModuleEntry 8}

fgProcModSACount OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of IPsec Security Associations on this processor module
         (only valid for processors types that support this statistic)."
    ::= { fgProcessorModuleEntry 9}

--
-- fortinet.fnFortiGateMib.fgFirewall
--

fgFirewall OBJECT IDENTIFIER
    ::= { fnFortiGateMib 5 }

--
-- fortinet.fnFortiGateMib.fgFirewall.fgFwPolicies
--

fgFwPolicies OBJECT IDENTIFIER
    ::= { fgFirewall 1 }

fgFwPolInfo OBJECT IDENTIFIER
    ::= { fgFwPolicies 1 }

fgFwPolTables OBJECT IDENTIFIER
    ::= { fgFwPolicies 2 }

fgFwPolStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgFwPolStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "Firewall policy statistics table.  This table has a dependent expansion relationship with fgVdTable.
         Only virtual domains with enabled policies are present in this table."
    ::= { fgFwPolTables 1 }

fgFwPolStatsEntry OBJECT-TYPE
    SYNTAX      FgFwPolStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "Firewall policy statistics on a virtual domain"
    INDEX       { fgVdEntIndex, fgFwPolID }
    ::= { fgFwPolStatsTable 1 }

FgFwPolStatsEntry ::= SEQUENCE {
    fgFwPolID               FnIndex,
    fgFwPolPktCount         Counter32,
    fgFwPolByteCount        Counter32
}

fgFwPolID OBJECT-TYPE
    SYNTAX      FnIndex
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "Firewall policy ID. Only enabled policies are present in this table. Policy IDs are only unique within a virtual domain."
    ::= { fgFwPolStatsEntry 1 }

fgFwPolPktCount OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of packets matched to policy (passed or blocked, depending on policy action). Count is from the time the policy became active."
    ::= { fgFwPolStatsEntry 2 }

fgFwPolByteCount OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of bytes in packets matching the policy. See fgFwPolPktCount."
    ::= { fgFwPolStatsEntry 3 }

--
-- fortinet.fnFortiGateMib.fgFirewall.fgFwUsers
--

fgFwUsers OBJECT IDENTIFIER
    ::= { fgFirewall 2 }

fgFwUserInfo OBJECT IDENTIFIER
    ::= { fgFwUsers 1 }

fgFwUserNumber OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The number of user accounts in fgFwUserTable"
    ::= { fgFwUserInfo 1 }

fgFwUserAuthTimeout OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Idle period after which a firewall-authentication user's session
         is automatically expired"
    ::= { fgFwUserInfo 2 }

fgFwUserTables OBJECT IDENTIFIER
    ::= { fgFwUsers 2 }

fgFwUserTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgFwUserEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A list of local and proxy (Radius server)
         user accounts for use with firewall user authentication"
    ::= { fgFwUserTables 1 }

fgFwUserEntry OBJECT-TYPE
    SYNTAX      FgFwUserEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "An entry containing information applicable
         to a particular user account"
    INDEX       { fgFwUserIndex }
    ::= { fgFwUserTable 1 }

FgFwUserEntry ::= SEQUENCE {
    fgFwUserIndex   FnIndex,
    fgFwUserName    DisplayString,
    fgFwUserAuth    FgFwUserAuthType,
    fgFwUserState   FnBoolState,
    fgFwUserVdom    FgVdIndex
}

fgFwUserIndex OBJECT-TYPE
    SYNTAX      FnIndex
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "An index for uniquely identifying the users in fgFwUserTable"
    ::= { fgFwUserEntry 1 }

fgFwUserName OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "User-name of the specified account"
    ::= { fgFwUserEntry 2 }

fgFwUserAuth OBJECT-TYPE
    SYNTAX      FgFwUserAuthType
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Type of authentication the account uses (local, RADIUS, LDAP, etc.)"
    ::= { fgFwUserEntry 3 }

fgFwUserState OBJECT-TYPE
    SYNTAX      FnBoolState
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Status of the user account (enable/disable)"
    ::= { fgFwUserEntry 4 }

fgFwUserVdom OBJECT-TYPE
    SYNTAX      FgVdIndex
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Virtual domain the user account exists in. This index corresponds to the index used in fgVdTable."
    ::= { fgFwUserEntry 5 }

--
-- fortinet.fnFortiGateMib.fgMgmt
--

fgMgmt OBJECT IDENTIFIER
    ::= { fnFortiGateMib 6 }

fgFmTrapPrefix OBJECT IDENTIFIER
    ::= { fgMgmt 0 }

fgAdmin OBJECT IDENTIFIER
    ::= { fgMgmt 1 }

--
-- fortinet.fnFortiGateMib.fgMgmt.fgAdmin.fgAdminOptions
--

fgAdminOptions OBJECT IDENTIFIER
    ::= { fgAdmin 1 }

fgAdminIdleTimeout OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Idle period after which an administrator
         is automatically logged out of the system"
    ::= { fgAdminOptions 1 }

fgAdminLcdProtection OBJECT-TYPE
    SYNTAX      FnBoolState
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Status of the LCD protection (enabled/disabled)"
    ::= { fgAdminOptions 2 }

--
-- fortinet.fnFortiGateMib.fgMgmt.fgAdmin.fgAdminTables
--

fgAdminTables OBJECT IDENTIFIER
    ::= { fgAdmin 2 }

fgAdminTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgAdminEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table of administrator accounts on the device"
    ::= { fgAdminTables 1 }

fgAdminEntry OBJECT-TYPE
    SYNTAX      FgAdminEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "An entry containing information applicable
         to a particular admin account"
    AUGMENTS    { fnAdminEntry }
    ::= { fgAdminTable 1 }

FgAdminEntry ::= SEQUENCE {
    fgAdminVdom     FgVdIndex
}

fgAdminVdom OBJECT-TYPE
    SYNTAX      FgVdIndex
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The virtual domain the administrator belongs to"
    ::= { fgAdminEntry 1 }

--
-- fortinet.fnFortiGateMib.fgMgmt.fgAdmin.fgMgmtTrapObjects
--

fgMgmtTrapObjects OBJECT IDENTIFIER
    ::= { fgMgmt 2 }

fgManIfIp OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION 
        "IP address of the interface listed in the trap"
    ::= { fgMgmtTrapObjects 1 }

fgManIfMask OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION 
        "Mask of subnet the interface belongs to"
    ::= { fgMgmtTrapObjects 2 }

--
-- fortinet.fnFortiGateMib.fgIntf
--

fgIntf OBJECT IDENTIFIER
    ::= { fnFortiGateMib 7 }

fgIntfInfo OBJECT IDENTIFIER
    ::= { fgIntf 1 }

fgIntfTables OBJECT IDENTIFIER
    ::= { fgIntf 2 }

fgIntfTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgIntfEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "Fortinet specific extensions to MIB-2 ifTable"
    ::= { fgIntfTables 1 }

fgIntfEntry OBJECT-TYPE
    SYNTAX      FgIntfEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "Fortinet specific information about an ifEntry. This table augments the standard ifTable, so the same indexing is used."
    AUGMENTS    { ifEntry }
    ::= { fgIntfTable 1 }

FgIntfEntry ::= SEQUENCE {
    fgIntfEntVdom   FgVdIndex
}

fgIntfEntVdom OBJECT-TYPE
    SYNTAX      FgVdIndex
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The virtual domain the interface belongs to. This index corresponds to the index used by fgVdTable."
    ::= { fgIntfEntry 1 }

--
-- fortinet.fnFortiGateMib.fgAntivirus
--

fgAntivirus OBJECT IDENTIFIER
    ::= { fnFortiGateMib 8 }

fgAvInfo OBJECT IDENTIFIER
    ::= { fgAntivirus 1 }

fgAvTables OBJECT IDENTIFIER
    ::= { fgAntivirus 2 }

fgAvStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgAvStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table of Anti-virus statistics per virtual domain"
    ::= { fgAvTables 1 }

fgAvStatsEntry OBJECT-TYPE
    SYNTAX      FgAvStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "Anti-virus statistics for a particular virtual domain"
    AUGMENTS    { fgVdEntry }
    ::= { fgAvStatsTable 1 }

FgAvStatsEntry ::= SEQUENCE {
    fgAvVirusDetected       Counter32,
    fgAvVirusBlocked        Counter32,
    fgAvHTTPVirusDetected   Counter32,
    fgAvHTTPVirusBlocked    Counter32,
    fgAvSMTPVirusDetected   Counter32,
    fgAvSMTPVirusBlocked    Counter32,
    fgAvPOP3VirusDetected   Counter32,
    fgAvPOP3VirusBlocked    Counter32,
    fgAvIMAPVirusDetected   Counter32,
    fgAvIMAPVirusBlocked    Counter32,
    fgAvFTPVirusDetected    Counter32,
    fgAvFTPVirusBlocked     Counter32,
    fgAvIMVirusDetected     Counter32,
    fgAvIMVirusBlocked      Counter32,
    fgAvNNTPVirusDetected   Counter32,
    fgAvNNTPVirusBlocked    Counter32,
    fgAvOversizedDetected   Counter32,
    fgAvOversizedBlocked    Counter32
}

fgAvVirusDetected OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of virus transmissions detected in the virtual domain since start-up"
    ::= { fgAvStatsEntry 1 }

fgAvVirusBlocked OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of virus transmissions blocked in the virtual domain since start-up"
    ::= { fgAvStatsEntry 2 }

fgAvHTTPVirusDetected OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of virus transmissions over HTTP detected in the virtual domain since start-up"
    ::= { fgAvStatsEntry 3 }

fgAvHTTPVirusBlocked OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of virus transmissions over HTTP blocked in the virtual domain since start-up"
    ::= { fgAvStatsEntry 4 }

fgAvSMTPVirusDetected OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of virus transmissions over SMTP detected in the virtual domain since start-up"
    ::= { fgAvStatsEntry 5 }

fgAvSMTPVirusBlocked OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of virus transmissions over SMTP blocked in the virtual domain since start-up"
    ::= { fgAvStatsEntry 6 }

fgAvPOP3VirusDetected OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of virus transmissions over POP3 detected in the virtual domain since start-up"
    ::= { fgAvStatsEntry 7 }

fgAvPOP3VirusBlocked OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of virus transmissions over POP3 blocked in the virtual domain since start-up"
    ::= { fgAvStatsEntry 8 }

fgAvIMAPVirusDetected OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of virus transmissions over IMAP detected in the virtual domain since start-up"
    ::= { fgAvStatsEntry 9 }

fgAvIMAPVirusBlocked OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of virus transmissions over IMAP blocked in the virtual domain since start-up"
    ::= { fgAvStatsEntry 10 }

fgAvFTPVirusDetected OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of virus transmissions over FTP detected in the virtual domain since start-up"
    ::= { fgAvStatsEntry 11 }

fgAvFTPVirusBlocked OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of virus transmissions over FTP blocked in the virtual domain since start-up"
    ::= { fgAvStatsEntry 12 }

fgAvIMVirusDetected OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of virus transmissions over IM protocols detected in the virtual domain since start-up"
    ::= { fgAvStatsEntry 13 }

fgAvIMVirusBlocked OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of virus transmissions over IM protocols blocked in the virtual domain since start-up"
    ::= { fgAvStatsEntry 14 }

fgAvNNTPVirusDetected OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of virus transmissions over NNTP detected in the virtual domain since start-up"
    ::= { fgAvStatsEntry 15 }

fgAvNNTPVirusBlocked OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of virus transmissions over NNTP blocked in the virtual domain since start-up"
    ::= { fgAvStatsEntry 16 }

fgAvOversizedDetected OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of over-sized file transmissions detected in the virtual domain since start-up"
    ::= { fgAvStatsEntry 17 }

fgAvOversizedBlocked OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of over-sized file transmissions blocked in the virtual domain since start-up"
    ::= { fgAvStatsEntry 18 }

--
-- fortinet.fnFortiGateMib.fgAntivirus.fgAvTrapObjects
--

fgAvTrapObjects OBJECT IDENTIFIER
    ::= { fgAntivirus 3 }

fgAvTrapVirName OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION 
        "Virus name that triggered event"
    ::= { fgAvTrapObjects 1 }

--
-- fortinet.fnFortiGateMib.fgIps
--

fgIps OBJECT IDENTIFIER
    ::= { fnFortiGateMib 9 }

fgIpsInfo OBJECT IDENTIFIER
    ::= { fgIps 1 }

fgIpsTables OBJECT IDENTIFIER
    ::= { fgIps 2 }

fgIpsStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgIpsStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table of IPS/IDS statistics per virtual domain"
    ::= { fgIpsTables 1 }

fgIpsStatsEntry OBJECT-TYPE
    SYNTAX      FgIpsStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "IPS/IDS statistics for a particular virtual domain"
    AUGMENTS    { fgVdEntry }
    ::= { fgIpsStatsTable 1 }

FgIpsStatsEntry ::= SEQUENCE {
    fgIpsIntrusionsDetected     Counter32,
    fgIpsIntrusionsBlocked      Counter32,
    fgIpsCritSevDetections      Counter32,
    fgIpsHighSevDetections      Counter32,
    fgIpsMedSevDetections       Counter32,
    fgIpsLowSevDetections       Counter32,
    fgIpsInfoSevDetections      Counter32,
    fgIpsSignatureDetections    Counter32,
    fgIpsAnomalyDetections      Counter32
}

fgIpsIntrusionsDetected OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of intrusions detected since start-up in this virtual domain"
    ::= { fgIpsStatsEntry 1 }

fgIpsIntrusionsBlocked OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of intrusions blocked since start-up in this virtual domain"
    ::= { fgIpsStatsEntry 2 }

fgIpsCritSevDetections OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of critical severity intrusions
         detected since start-up in this virtual domain"
    ::= { fgIpsStatsEntry 3 }

fgIpsHighSevDetections OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of high severity intrusions 
         detected since start-up in this virtual domain"
    ::= { fgIpsStatsEntry 4 }

fgIpsMedSevDetections OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of medium severity intrusions
         detected since start-up in this virtual domain"
    ::= { fgIpsStatsEntry 5 }

fgIpsLowSevDetections OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of low severity intrusions 
         detected since start-up in this virtual domain"
    ::= { fgIpsStatsEntry 6 }

fgIpsInfoSevDetections OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of informational severity intrusions
         detected since start-up in this virtual domain"
    ::= { fgIpsStatsEntry 7 }

fgIpsSignatureDetections OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of intrusions detected by signature
         since start-up in this virtual domain"
    ::= { fgIpsStatsEntry 8 }

fgIpsAnomalyDetections OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of intrusions DECed as anomalies 
         since start-up in this virtual domain"
    ::= { fgIpsStatsEntry 9 }

--
-- fortinet.fnFortiGateMib.fgIps.fgIpsTrapObjects
--

fgIpsTrapObjects OBJECT IDENTIFIER
    ::= { fgIps 3 }

fgIpsTrapSigId OBJECT-TYPE
    SYNTAX      FnIndex
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION 
        "ID of IPS signature identified in trap"
    ::= { fgIpsTrapObjects 1 }

fgIpsTrapSrcIp OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION 
        "Source IP Address of the IPS signature trigger"
    ::= { fgIpsTrapObjects 2 }

fgIpsTrapSigMsg OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION 
        "Message associated with IPS event"
    ::= { fgIpsTrapObjects 3 }

--
-- fortinet.fnFortiGateMib.fgApplications
--

fgApplications OBJECT IDENTIFIER
    ::= { fnFortiGateMib 10 }

fgWebfilter OBJECT IDENTIFIER
    ::= { fgApplications 1 }

fgWebfilterInfo OBJECT IDENTIFIER
    ::= { fgWebfilter 1 }

fgWebfilterTables OBJECT IDENTIFIER
    ::= { fgWebfilter 2 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgWebfilter.fgWebfilterTables.fgWebfilterStatsTable
--

fgWebfilterStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgWebfilterStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table of Web-filter statistics per virtual domain"
    ::= { fgWebfilterTables 1 }

fgWebfilterStatsEntry OBJECT-TYPE
    SYNTAX      FgWebfilterStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "Web-filter statistics for a particular virtual domain"
    AUGMENTS    { fgVdEntry }
    ::= { fgWebfilterStatsTable 1 }

FgWebfilterStatsEntry ::= SEQUENCE {
    fgWfHTTPBlocked         Counter32,
    fgWfHTTPSBlocked        Counter32,
    fgWfHTTPURLBlocked      Counter32,
    fgWfHTTPSURLBlocked     Counter32,
    fgWfActiveXBlocked      Counter32,
    fgWfCookieBlocked       Counter32,
    fgWfAppletBlocked       Counter32
}

fgWfHTTPBlocked OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of HTTP sessions blocked by Web-filter since start-up"
    ::= { fgWebfilterStatsEntry 1 }

fgWfHTTPSBlocked OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of HTTPS sessions blocked by Web-filter since start-up"
    ::= { fgWebfilterStatsEntry 2 }

fgWfHTTPURLBlocked OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of HTTP URLs blocked by Web-filter since start-up"
    ::= { fgWebfilterStatsEntry 3 }

fgWfHTTPSURLBlocked OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of HTTPS URLs blocked by Web-filter since start-up"
    ::= { fgWebfilterStatsEntry 4 }

fgWfActiveXBlocked OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of ActiveX downloads blocked by Web-filter since start-up"
    ::= { fgWebfilterStatsEntry 5 }

fgWfCookieBlocked OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of HTTP Cookies blocked by Web-filter since start-up"
    ::= { fgWebfilterStatsEntry 6 }

fgWfAppletBlocked OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of Applets blocked by Web-filter since start-up"
    ::= { fgWebfilterStatsEntry 7 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgWebfilter.fgWebfilterTables.fgFortiGuardStatsTable
--

fgFortiGuardStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgFortiGuardStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table of FortiGuard statistics per virtual domain"
    ::= { fgWebfilterTables 2 }

fgFortiGuardStatsEntry OBJECT-TYPE
    SYNTAX      FgFortiGuardStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "FortiGuard statistics for a particular virtual domain"
    AUGMENTS    { fgVdEntry }
    ::= { fgFortiGuardStatsTable 1 }

FgFortiGuardStatsEntry ::= SEQUENCE {
    fgFgWfHTTPExamined      Counter32,
    fgFgWfHTTPSExamined     Counter32,
    fgFgWfHTTPAllowed       Counter32,
    fgFgWfHTTPSAllowed      Counter32,
    fgFgWfHTTPBlocked       Counter32,
    fgFgWfHTTPSBlocked      Counter32,
    fgFgWfHTTPLogged        Counter32,
    fgFgWfHTTPSLogged       Counter32,
    fgFgWfHTTPOverridden    Counter32,
    fgFgWfHTTPSOverridden   Counter32
}

fgFgWfHTTPExamined OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of HTTP requests examined using FortiGuard since start-up"
    ::= { fgFortiGuardStatsEntry 1 }

fgFgWfHTTPSExamined OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of HTTPS requests examined using FortiGuard since start-up"
    ::= { fgFortiGuardStatsEntry 2 }

fgFgWfHTTPAllowed OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of HTTP requests allowed to proceed using FortiGuard since start-up"
    ::= { fgFortiGuardStatsEntry 3 }

fgFgWfHTTPSAllowed OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of HTTPS requests allowed to proceed using FortiGuard since start-up"
    ::= { fgFortiGuardStatsEntry 4 }

fgFgWfHTTPBlocked OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of HTTP requests blocked using FortiGuard since start-up"
    ::= { fgFortiGuardStatsEntry 5 }

fgFgWfHTTPSBlocked OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of HTTPS requests blocked using FortiGuard since start-up"
    ::= { fgFortiGuardStatsEntry 6 }

fgFgWfHTTPLogged OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of HTTP requests logged using FortiGuard since start-up"
    ::= { fgFortiGuardStatsEntry 7 }

fgFgWfHTTPSLogged OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of HTTPS requests logged using FortiGuard since start-up"
    ::= { fgFortiGuardStatsEntry 8 }

fgFgWfHTTPOverridden OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of HTTP requests overridden using FortiGuard since start-up"
    ::= { fgFortiGuardStatsEntry 9 }

fgFgWfHTTPSOverridden OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of HTTPS requests overridden using FortiGuard since start-up"
    ::= { fgFortiGuardStatsEntry 10 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppProxyHTTP
--

fgAppProxyHTTP OBJECT IDENTIFIER
    ::= { fgApplications 100 }

fgApHTTPUpTime OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION 
        "HTTP proxy up-time (in seconds)"
    ::= { fgAppProxyHTTP 1 }

fgApHTTPMemUsage OBJECT-TYPE
    SYNTAX      Gauge32 (0..100)
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION 
        "HTTP proxy memory usage (percentage of system total)"
    ::= { fgAppProxyHTTP 2 }

fgApHTTPConnections OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "HTTP proxy current connections"
    ::= { fgAppProxyHTTP 4 }

fgApHTTPMaxConnections OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Maximum number of connections supported by HTTP proxy"
    ::= { fgAppProxyHTTP 5 }

fgApHTTPStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgApHTTPStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table of HTTP Proxy statistics per virtual domain"
    ::= { fgAppProxyHTTP 3 }

fgApHTTPStatsEntry OBJECT-TYPE
    SYNTAX      FgApHTTPStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "HTTP Proxy statistics for a particular virtual domain"
    AUGMENTS    { fgVdEntry }
    ::= { fgApHTTPStatsTable 1 }

FgApHTTPStatsEntry ::= SEQUENCE {
    fgApHTTPReqProcessed    Counter32
}

fgApHTTPReqProcessed OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of HTTP requests in this virtual domain processed by the HTTP proxy since start-up"
    ::= { fgApHTTPStatsEntry 1 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppProxySMTP
--

fgAppProxySMTP OBJECT IDENTIFIER
    ::= { fgApplications 101 }

fgApSMTPUpTime OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION 
        "SMTP Proxy up-time, in seconds"
    ::= { fgAppProxySMTP 1 }

fgApSMTPMemUsage OBJECT-TYPE
    SYNTAX      Gauge32 (0..100)
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION 
        "SMTP Proxy memory utilization (percentage of system total)"
    ::= { fgAppProxySMTP 2 }

fgApSMTPConnections OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "SMTP proxy current connections"
    ::= { fgAppProxySMTP 4 }

fgApSMTPMaxConnections OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Maximum number of connections supported by SMTP proxy"
    ::= { fgAppProxySMTP 5 }

fgApSMTPStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgApSMTPStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table of SMTP proxy statistics per virtual domain"
    ::= { fgAppProxySMTP 3 }

fgApSMTPStatsEntry OBJECT-TYPE
    SYNTAX      FgApSMTPStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "SMTP Proxy statistics for a particular virtual domain"
    AUGMENTS    { fgVdEntry }
    ::= { fgApSMTPStatsTable 1 }

FgApSMTPStatsEntry ::= SEQUENCE {
    fgApSMTPReqProcessed    Counter32,
    fgApSMTPSpamDetected    Counter32
}

fgApSMTPReqProcessed OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of requests in this virtual domain processed by the SMTP proxy since start-up"
    ::= { fgApSMTPStatsEntry 1 }

fgApSMTPSpamDetected OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of spam detected in this virtual domain by the SMTP proxy since start-up"
    ::= { fgApSMTPStatsEntry 2 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppProxyPOP3
--

fgAppProxyPOP3 OBJECT IDENTIFIER
    ::= { fgApplications 102 }

fgApPOP3UpTime OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION 
        "Up-time of the POP3 proxy, in seconds"
    ::= { fgAppProxyPOP3 1 }

fgApPOP3MemUsage OBJECT-TYPE
    SYNTAX      Gauge32 (0..100)
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION 
        "Memory usage of the POP3 Proxy (percentage of system total)"
    ::= { fgAppProxyPOP3 2 }

fgApPOP3Connections OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "POP3 proxy current connections"
    ::= { fgAppProxyPOP3 4 }

fgApPOP3MaxConnections OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Maximum number of connections supported by POP3 proxy"
    ::= { fgAppProxyPOP3 5 }

fgApPOP3StatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgApPOP3StatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table of POP3 proxy statistics per virtual domain"
    ::= { fgAppProxyPOP3 3 }

fgApPOP3StatsEntry OBJECT-TYPE
    SYNTAX      FgApPOP3StatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "Proxy pop3 statistics for a particular virtual domain"
    AUGMENTS    { fgVdEntry }
    ::= { fgApPOP3StatsTable 1 }

FgApPOP3StatsEntry ::= SEQUENCE {
    fgApPOP3ReqProcessed    Counter32,
    fgApPOP3SpamDetected    Counter32
}

fgApPOP3ReqProcessed OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of requests in this virtual domain processed by the POP3 proxy since start-up"
    ::= { fgApPOP3StatsEntry 1 }

fgApPOP3SpamDetected OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of spam detected in this virtual domain by the POP3 Proxy since start-up"
    ::= { fgApPOP3StatsEntry 2 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppProxyIMAP
--

fgAppProxyIMAP OBJECT IDENTIFIER
    ::= { fgApplications 103 }

fgApIMAPUpTime OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION 
        "Up-time of the IMAP proxy, in seconds"
    ::= { fgAppProxyIMAP 1 }

fgApIMAPMemUsage OBJECT-TYPE
    SYNTAX      Gauge32 (0..100)
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION 
        "Memory utilization of the IMAP Proxy (as a percentage of the system total)"
    ::= { fgAppProxyIMAP 2 }

fgApIMAPConnections OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "IMAP proxy current connections"
    ::= { fgAppProxyIMAP 4 }

fgApIMAPMaxConnections OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Maximum number of connections supported by IMAP proxy"
    ::= { fgAppProxyIMAP 5 }

fgApIMAPStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgApIMAPStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table of IMAP proxy statistics per virtual domain"
    ::= { fgAppProxyIMAP 3 }

fgApIMAPStatsEntry OBJECT-TYPE
    SYNTAX      FgApIMAPStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "IMAP Proxy statistics for a particular virtual domain"
    AUGMENTS    { fgVdEntry }
    ::= { fgApIMAPStatsTable 1 }

FgApIMAPStatsEntry ::= SEQUENCE {
    fgApIMAPReqProcessed    Counter32,
    fgApIMAPSpamDetected    Counter32
}

fgApIMAPReqProcessed OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of requests in this virtual domain processed by the IMAP proxy since start-up"
    ::= { fgApIMAPStatsEntry 1 }

fgApIMAPSpamDetected OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of spam detected in this virtual domain by the IMAP proxy since start-up"
    ::= { fgApIMAPStatsEntry 2 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppProxyNNTP
--

fgAppProxyNNTP OBJECT IDENTIFIER
    ::= { fgApplications 104 }

fgApNNTPUpTime OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION 
        "Up-time of the NNTP proxy, in seconds"
    ::= { fgAppProxyNNTP 1 }

fgApNNTPMemUsage OBJECT-TYPE
    SYNTAX      Gauge32 (0..100)
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION 
        "Memory utilization of the NNTP proxy, as a percentage of the system total"
    ::= { fgAppProxyNNTP 2 }

fgApNNTPConnections OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "NNTP proxy current connections"
    ::= { fgAppProxyNNTP 4 }

fgApNNTPMaxConnections OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Maximum number of connections supported by NNTP proxy"
    ::= { fgAppProxyNNTP 5 }

fgApNNTPStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgApNNTPStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table of NNTP proxy statistics per virtual domain"
    ::= { fgAppProxyNNTP 3 }

fgApNNTPStatsEntry OBJECT-TYPE
    SYNTAX      FgApNNTPStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "NNTP Proxy statistics for a particular virtual domain"
    AUGMENTS    { fgVdEntry }
    ::= { fgApNNTPStatsTable 1 }

FgApNNTPStatsEntry ::= SEQUENCE {
    fgApNNTPReqProcessed    Counter32
}

fgApNNTPReqProcessed OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of requests in the virtual domain processed by the NNTP proxy since start-up"
    ::= { fgApNNTPStatsEntry 1 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppProxyIM
--

fgAppProxyIM OBJECT IDENTIFIER
    ::= { fgApplications 105 }

fgApIMUpTime OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Up-time of the IM proxy, in seconds"
    ::= { fgAppProxyIM 1 }

fgApIMMemUsage OBJECT-TYPE
    SYNTAX      Gauge32 (0..100)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "IM Proxy memory usage, as a percentage of the system total"
    ::= { fgAppProxyIM 2 }

fgApIMStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgApIMStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table of IM proxy statistics per virtual domain"
    ::= { fgAppProxyIM 3 }

fgApIMStatsEntry OBJECT-TYPE
    SYNTAX      FgApIMStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "IM Proxy statistics for a particular virtual domain"
    AUGMENTS    { fgVdEntry }
    ::= { fgApIMStatsTable 1 }

FgApIMStatsEntry ::= SEQUENCE {
    fgApIMReqProcessed  Counter32
}

fgApIMReqProcessed OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of requests in this virtual domain processed by the IM proxy since start-up"
    ::= { fgApIMStatsEntry 1 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppProxySIP
--

fgAppProxySIP OBJECT IDENTIFIER
    ::= { fgApplications 106 }

fgApSIPUpTime OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Up-time of the SIP Proxy, in seconds"
    ::= { fgAppProxySIP 1 }

fgApSIPMemUsage OBJECT-TYPE
    SYNTAX      Gauge32 (0..100)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "SIP Proxy memory utilization, as a percentage of the system total"
    ::= { fgAppProxySIP 2 }

fgApSIPStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgApSIPStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table of SIP proxy statistics per virtual domain"
    ::= { fgAppProxySIP 3 }

fgApSIPStatsEntry OBJECT-TYPE
    SYNTAX      FgApSIPStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "SIP Proxy statistics for a particular virtual domain"
    AUGMENTS    { fgVdEntry }
    ::= { fgApSIPStatsTable 1 }

FgApSIPStatsEntry ::= SEQUENCE {
    fgApSIPClientReg        Counter32,
    fgApSIPCallHandling     Counter32,
    fgApSIPServices         Counter32,
    fgApSIPOtherReq         Counter32
}

fgApSIPClientReg OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of client registration requests (Register and Options) in this virtual domain
         processed by the SIP proxy since start-up"
    ::= { fgApSIPStatsEntry 1 }

fgApSIPCallHandling OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of call handling requests (Invite, Ack, Bye, Cancel and Refer) in this virtual domain
         processed by the SIP proxy since start-up"
    ::= { fgApSIPStatsEntry 2 }

fgApSIPServices OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of service requests (Subscribe, notify and Message) in this virtual domain
         processed by the SIP proxy since start-up"
    ::= { fgApSIPStatsEntry 3 }

fgApSIPOtherReq OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of other sip requests in this virtual domain processed by the SIP proxy since start-up"
    ::= { fgApSIPStatsEntry 4 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppScanUnit
--

fgAppScanUnit OBJECT IDENTIFIER
    ::= { fgApplications 107 }

fgAppSuNumber OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The number of scan units in the fgAppSuStatsTable"
    ::= { fgAppScanUnit 1 }

fgAppSuStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgAppSuStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table of scan unit statistics"
    ::= { fgAppScanUnit 2 }

fgAppSuStatsEntry OBJECT-TYPE
    SYNTAX      FgAppSuStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "Statistics entry for a particular scan unit"
    INDEX       { fgAppSuIndex }
    ::= { fgAppSuStatsTable 1 }

FgAppSuStatsEntry ::= SEQUENCE {
    fgAppSuIndex        FnIndex,
    fgAppSuFileScanned  Counter32
}

fgAppSuIndex OBJECT-TYPE
    SYNTAX      FnIndex
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "Index that uniquely identifies a scan unit in the fgAppSuStatsTable"
    ::= { fgAppSuStatsEntry 1 }

fgAppSuFileScanned OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of files scanned by this scan unit"
    ::= { fgAppSuStatsEntry 2 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppVoIP
--

fgAppVoIP OBJECT IDENTIFIER
    ::= { fgApplications 108 }

fgAppVoIPStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgAppVoIPStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table of VoIP related statistics per virtual domain"
    ::= { fgAppVoIP 1 }

fgAppVoIPStatsEntry OBJECT-TYPE
    SYNTAX      FgAppVoIPStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "VoIP statistics for a particular virtual domain"
    AUGMENTS    { fgVdEntry }
    ::= { fgAppVoIPStatsTable 1 }

FgAppVoIPStatsEntry ::= SEQUENCE {
    fgAppVoIPConn           Counter32,
    fgAppVoIPCallBlocked    Counter32
}

fgAppVoIPConn OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The current number of VoIP connections on the virtual domain"
    ::= { fgAppVoIPStatsEntry 1 }

fgAppVoIPCallBlocked OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of VoIP calls blocked (SIP Invites blocked and
         SCCP calls blocked) in this virtual domain"
    ::= { fgAppVoIPStatsEntry 2 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppP2P
--

fgAppP2P OBJECT IDENTIFIER
    ::= { fgApplications 109 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppP2P.fgAppP2PStatsTable
--

fgAppP2PStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgAppP2PStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table of P2P protocol related statistics per virtual domain"
    ::= { fgAppP2P 1 }

fgAppP2PStatsEntry OBJECT-TYPE
    SYNTAX      FgAppP2PStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "P2P statistics for a particular virtual domain"
    AUGMENTS    { fgVdEntry }
    ::= { fgAppP2PStatsTable 1 }

FgAppP2PStatsEntry ::= SEQUENCE {
    fgAppP2PConnBlocked     Counter32
}

fgAppP2PConnBlocked OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of P2P connections blocked in this virtual domain"
    ::= { fgAppP2PStatsEntry 1 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppP2P.fgAppP2PProtoTable
--

fgAppP2PProtoTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgAppP2PProtoEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table of peer to peer statistics per virtual domain per protocol.
         This table has a dependent expansion relationship with fgVdTable."
    ::= { fgAppP2P 2 }

fgAppP2PProtoEntry OBJECT-TYPE
    SYNTAX      FgAppP2PProtoEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "P2P statistics for a particular virtual domain and protocol"
    INDEX       { fgVdEntIndex, fgAppP2PProtEntProto }
    ::= { fgAppP2PProtoTable 1 }

FgAppP2PProtoEntry ::= SEQUENCE {
    fgAppP2PProtEntProto        FgP2PProto,
    fgAppP2PProtEntBytes        Counter64,
    fgAppP2PProtoEntLastReset   TimeTicks
}

fgAppP2PProtEntProto OBJECT-TYPE
    SYNTAX      FgP2PProto
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "P2P protocol this row of statistics is for, within the specified virtual domain"
    ::= { fgAppP2PProtoEntry 1 }

fgAppP2PProtEntBytes OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of bytes transferred through this virtual domain on this P2P protocol since last reset"
    ::= { fgAppP2PProtoEntry 2 }

fgAppP2PProtoEntLastReset OBJECT-TYPE
    SYNTAX      TimeTicks
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Time elapsed since the corresponding fgAppP2PProtEntBytes was
         last reset to 0."
    ::= { fgAppP2PProtoEntry 3 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppIM
--

fgAppIM OBJECT IDENTIFIER
    ::= { fgApplications 110 }

fgAppIMStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgAppIMStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table of instant messaging statistics per virtual domain"
    ::= { fgAppIM 1 }

fgAppIMStatsEntry OBJECT-TYPE
    SYNTAX      FgAppIMStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "IM statistics for a particular virtual domain"
    AUGMENTS    { fgVdEntry }
    ::= { fgAppIMStatsTable 1 }

FgAppIMStatsEntry ::= SEQUENCE {
    fgAppIMMessages         Counter32,
    fgAppIMFileTransfered   Counter32,
    fgAppIMFileTxBlocked    Counter32,
    fgAppIMConnBlocked      Counter32
}

fgAppIMMessages OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Total number of IM messages processed in this virtual domain"
    ::= { fgAppIMStatsEntry 1 }

fgAppIMFileTransfered OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of files transferred through this virtual domain"
    ::= { fgAppIMStatsEntry 2 }

fgAppIMFileTxBlocked OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of blocked file transfers in this virtual domain"
    ::= { fgAppIMStatsEntry 3 }

fgAppIMConnBlocked OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of connections blocked in this virtual domain"
    ::= { fgAppIMStatsEntry 4 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppProxyFTP
--

fgAppProxyFTP OBJECT IDENTIFIER
    ::= { fgApplications 111 }

fgApFTPUpTime OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION 
        "Up-time of the FTP proxy, in seconds"
    ::= { fgAppProxyFTP 1 }

fgApFTPMemUsage OBJECT-TYPE
    SYNTAX      Gauge32 (0..100)
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION 
        "FTP Proxy memory utilization, as a percentage of the system total"
    ::= { fgAppProxyFTP 2 }

fgApFTPConnections OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "FTP proxy current connections"
    ::= { fgAppProxyFTP 4 }

fgApFTPMaxConnections OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Maximum number of connections supported by FTP proxy"
    ::= { fgAppProxyFTP 5 }

fgApFTPStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgApFTPStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table of FTP proxy statistics per virtual domain"
    ::= { fgAppProxyFTP 3 }

fgApFTPStatsEntry OBJECT-TYPE
    SYNTAX      FgApFTPStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "FTP Proxy statistics for a particular virtual domain"
    AUGMENTS    { fgVdEntry }
    ::= { fgApFTPStatsTable 1 }

FgApFTPStatsEntry ::= SEQUENCE {
    fgApFTPReqProcessed     Counter32
}

fgApFTPReqProcessed OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of requests in this virtual domain processed by the FTP proxy since start-up"
    ::= { fgApFTPStatsEntry 1 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppExplicitProxy
--

fgAppExplicitProxy OBJECT IDENTIFIER
    ::= { fgApplications 112 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppExplicitProxy.fgExplicitProxyInfo
--

fgExplicitProxyInfo OBJECT IDENTIFIER
    ::= { fgAppExplicitProxy 1 }

fgExplicitProxyUpTime OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Explicit proxy up-time (in seconds)"
    ::= { fgExplicitProxyInfo 1 }

fgExplicitProxyMemUsage OBJECT-TYPE
    SYNTAX      Gauge32 (0..100)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Explicit proxy memory usage (percentage of system total)"
    ::= { fgExplicitProxyInfo 2 }

fgExplicitProxyRequests OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Explicit proxy total number of requests"
    ::= { fgExplicitProxyInfo 3 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppExplicitProxy.fgExplicitProxyStatsTable
--

fgExplicitProxyStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgExplicitProxyStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table of explicit proxy statistics per virtual domain"
    ::= { fgAppExplicitProxy 2 }

fgExplicitProxyStatsEntry OBJECT-TYPE
    SYNTAX      FgExplicitProxyStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "Explicit proxy statistics for a particular virtual domain"
    INDEX       { fgVdEntIndex }
    ::= { fgExplicitProxyStatsTable 1 }

FgExplicitProxyStatsEntry ::= SEQUENCE {
    fgExplicitProxyUsers     Integer32,
    fgExplicitProxySessions  Integer32
}

fgExplicitProxyUsers OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of current users in this virtual domain"
    ::= { fgExplicitProxyStatsEntry 1 }

fgExplicitProxySessions OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of current sessions in this virtual domain"
    ::= { fgExplicitProxyStatsEntry 2 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppExplicitProxy.fgExplicitProxyScanStatsTable
--

fgExplicitProxyScanStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgExplicitProxyScanStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table of explicit proxy scan statistics per virtual domain"
    ::= { fgAppExplicitProxy 3 }

fgExplicitProxyScanStatsEntry OBJECT-TYPE
    SYNTAX      FgExplicitProxyScanStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "Explicit proxy scan statistics for a particular virtual domain"
    INDEX       { fgVdEntIndex, fgExplicitProxyScanStatsDisp }
    ::= { fgExplicitProxyScanStatsTable 1 }

FgExplicitProxyScanStatsEntry ::= SEQUENCE {
    fgExplicitProxyScanStatsDisp     FgScanAvDisposition,
    fgExplicitProxyVirus             Counter32,
    fgExplicitProxyBannedWords       Counter32,
    fgExplicitProxyPolicy            Counter32,
    fgExplicitProxyOversized         Counter32,
    fgExplicitProxyArchNest          Counter32,
    fgExplicitProxyArchSize          Counter32,
    fgExplicitProxyArchEncrypted     Counter32,
    fgExplicitProxyArchMultiPart     Counter32,
    fgExplicitProxyArchUnsupported   Counter32,
    fgExplicitProxyArchBomb          Counter32,
    fgExplicitProxyArchCorrupt       Counter32
}

fgExplicitProxyScanStatsDisp OBJECT-TYPE
    SYNTAX      FgScanAvDisposition
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "Disposition of an Scan result"
   ::= { fgExplicitProxyScanStatsEntry 1 }

fgExplicitProxyVirus OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of viruses in this virtual domain"
    ::= { fgExplicitProxyScanStatsEntry 2 }

fgExplicitProxyBannedWords OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of elements containing banned words in this virtual domain"
    ::= { fgExplicitProxyScanStatsEntry 3 }

fgExplicitProxyPolicy OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of elements violating policy (e.g. filename or file type rules) in this virtual domain"
    ::= { fgExplicitProxyScanStatsEntry 4 }

fgExplicitProxyOversized OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of oversized elements in this virtual domain"
    ::= { fgExplicitProxyScanStatsEntry 5 }

fgExplicitProxyArchNest OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of too deeply nested archives in this virtual domain"
    ::= { fgExplicitProxyScanStatsEntry 6 }

fgExplicitProxyArchSize OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of archives that decompress beyond size limit in this virtual domain"
    ::= { fgExplicitProxyScanStatsEntry 7 }

fgExplicitProxyArchEncrypted OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of encrypted archives in this virtual domain"
    ::= { fgExplicitProxyScanStatsEntry 8 }

fgExplicitProxyArchMultiPart OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of multipart archives in this virtual domain"
    ::= { fgExplicitProxyScanStatsEntry 9 }

fgExplicitProxyArchUnsupported OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of archives with unsupported (but known) formats in this virtual domain"
    ::= { fgExplicitProxyScanStatsEntry 10 }

fgExplicitProxyArchBomb OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of archive bombs in this virtual domain"
    ::= { fgExplicitProxyScanStatsEntry 11 }

fgExplicitProxyArchCorrupt OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of corrupt archives in this virtual domain"
    ::= { fgExplicitProxyScanStatsEntry 12 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppExplicitProxy.fgExplicitProxyScriptStatsTable
--

fgExplicitProxyScriptStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgExplicitProxyScriptStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table of explicit proxy script filtering statistics per virtual domain"
    ::= { fgAppExplicitProxy 4 }

fgExplicitProxyScriptStatsEntry OBJECT-TYPE
    SYNTAX      FgExplicitProxyScriptStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "Explicit proxy scan statistics for a particular virtual domain"
    INDEX       { fgVdEntIndex }
    ::= { fgExplicitProxyScriptStatsTable 1 }

FgExplicitProxyScriptStatsEntry ::= SEQUENCE {
    fgExplicitProxyFilteredApplets   Counter32,
    fgExplicitProxyFilteredActiveX   Counter32,
    fgExplicitProxyFilteredJScript   Counter32,
    fgExplicitProxyFilteredJS        Counter32,
    fgExplicitProxyFilteredVBS       Counter32,
    fgExplicitProxyFilteredOthScript Counter32
}

fgExplicitProxyFilteredApplets OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of applets filtered from files in this virtual domain"
    ::= { fgExplicitProxyScriptStatsEntry 1 }

fgExplicitProxyFilteredActiveX OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of ActiveX scripts filtered from files in this virtual domain"
    ::= { fgExplicitProxyScriptStatsEntry 2 }

fgExplicitProxyFilteredJScript OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of JScript scripts filtered from files in this virtual domain"
    ::= { fgExplicitProxyScriptStatsEntry 3 }

fgExplicitProxyFilteredJS OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of JavaScript scripts filtered from files in this virtual domain"
    ::= { fgExplicitProxyScriptStatsEntry 4 }

fgExplicitProxyFilteredVBS OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of Visual Basic scripts filtered from files in this virtual domain"
    ::= { fgExplicitProxyScriptStatsEntry 5 }

fgExplicitProxyFilteredOthScript OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of other types of scripts filtered from files in this virtual domain"
    ::= { fgExplicitProxyScriptStatsEntry 6 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppExplicitProxy.fgExplicitProxyFilterStatsTable
--

fgExplicitProxyFilterStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgExplicitProxyFilterStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table of explicit proxy policy enforcement statistics per virtual domain"
    ::= { fgAppExplicitProxy 5 }

fgExplicitProxyFilterStatsEntry OBJECT-TYPE
    SYNTAX      FgExplicitProxyFilterStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "Explicit proxy scan statistics for a particular virtual domain"
    INDEX       { fgVdEntIndex }
    ::= { fgExplicitProxyFilterStatsTable 1 }

FgExplicitProxyFilterStatsEntry ::= SEQUENCE {
    fgExplicitProxyBlockedDLP        Counter32,
    fgExplicitProxyBlockedConType    Counter32,
    fgExplicitProxyExaminedURLs      Counter32,
    fgExplicitProxyAllowedURLs       Counter32,
    fgExplicitProxyBlockedURLs       Counter32,
    fgExplicitProxyLoggedURLs        Counter32,
    fgExplicitProxyOverriddenURLs    Counter32
}

fgExplicitProxyBlockedDLP OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of elements blocked due to Data Leak Prevention in this virtual domain"
    ::= { fgExplicitProxyFilterStatsEntry 1 }

fgExplicitProxyBlockedConType OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of elements blocked due to Content-Type filtering rules in this virtual domain"
    ::= { fgExplicitProxyFilterStatsEntry 2 }

fgExplicitProxyExaminedURLs OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of URLs inspected against filtering rules in this virtual domain"
    ::= { fgExplicitProxyFilterStatsEntry 3 }

fgExplicitProxyAllowedURLs OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of URLs explicitly allowed due to filtering rules in this virtual domain"
    ::= { fgExplicitProxyFilterStatsEntry 4 }

fgExplicitProxyBlockedURLs OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of URLs explicitly blocked due to filtering rules in this virtual domain"
    ::= { fgExplicitProxyFilterStatsEntry 5 }

fgExplicitProxyLoggedURLs OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of URLs logged due to filtering rules in this virtual domain"
    ::= { fgExplicitProxyFilterStatsEntry 6 }

fgExplicitProxyOverriddenURLs OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of URLs access due to overriding filtering rules in this virtual domain"
    ::= { fgExplicitProxyFilterStatsEntry 7 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppWebCache
--

fgAppWebCache OBJECT IDENTIFIER
    ::= { fgApplications 113 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppWebCache.fgWebCacheInfo
--

fgWebCacheInfo OBJECT IDENTIFIER
    ::= { fgAppWebCache 1 }

fgWebCacheRAMLimit OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "RAM available for web cache in bytes"
    ::= { fgWebCacheInfo 1 }

fgWebCacheRAMUsage OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "RAM used by web cache in bytes"
    ::= { fgWebCacheInfo 2 }

fgWebCacheRAMHits OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of cache hits in RAM since last reset"
    ::= { fgWebCacheInfo 3 }

fgWebCacheRAMMisses OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of cache misses in RAM since last reset"
    ::= { fgWebCacheInfo 4 }

fgWebCacheRequests OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of cache requests since last reset"
    ::= { fgWebCacheInfo 5 }

fgWebCacheBypass OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of cache bypasses since last reset"
    ::= { fgWebCacheInfo 6 }

fgWebCacheUpTime OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Web Cache up-time (in seconds)"
    ::= { fgWebCacheInfo 7 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppWebCache.fgWebCacheDiskStatsTable
--

fgWebCacheDiskStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgWebCacheDiskStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table of the Web Cache disk statistics per disk"
    ::= { fgAppWebCache 2 }

fgWebCacheDiskStatsEntry OBJECT-TYPE
    SYNTAX      FgWebCacheDiskStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The Web Cache disk statistics for a particular disk"
    INDEX       { fgWebCacheDisk }
    ::= { fgWebCacheDiskStatsTable 1 }

FgWebCacheDiskStatsEntry ::= SEQUENCE {
    fgWebCacheDisk              Unsigned32,
    fgWebCacheDiskLimit         CounterBasedGauge64,
    fgWebCacheDiskUsage         CounterBasedGauge64,
    fgWebCacheDiskHits          Counter32,
    fgWebCacheDiskMisses        Counter32
}

fgWebCacheDisk OBJECT-TYPE
    SYNTAX     Unsigned32
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "The Web Cache Disk index"
    ::= { fgWebCacheDiskStatsEntry 1 }

fgWebCacheDiskLimit OBJECT-TYPE
    SYNTAX     CounterBasedGauge64
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The about of storage (in bytes) available for the Web Cache on a particular disk"
    ::= { fgWebCacheDiskStatsEntry 2 }

fgWebCacheDiskUsage OBJECT-TYPE
    SYNTAX     CounterBasedGauge64
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The about of storage (in bytes) in use by the Web Cache on a paricular disk"
    ::= { fgWebCacheDiskStatsEntry 3 }

fgWebCacheDiskHits OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The number of cache hits on a paricular disk"
    ::= { fgWebCacheDiskStatsEntry 4 }

fgWebCacheDiskMisses OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The number of cache misses on a paricular disk"
    ::= { fgWebCacheDiskStatsEntry 5 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppWanOpt
--

fgAppWanOpt OBJECT IDENTIFIER
    ::= { fgApplications 114 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppWanOpt.fgWanOptInfo
--

fgWanOptInfo OBJECT IDENTIFIER
    ::= { fgAppWanOpt 1 }

fgMemCacheLimit OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "RAM available for mem cache in bytes"
    ::= { fgWanOptInfo 1 }

fgMemCacheUsage OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "RAM used by mem cache in bytes"
    ::= { fgWanOptInfo 2 }

fgMemCacheHits OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of hits in mem cache since last reset"
    ::= { fgWanOptInfo 3 }

fgMemCacheMisses OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of misses in mem cache since last reset"
    ::= { fgWanOptInfo 4 }

fgByteCacheRAMLimit OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "RAM available for byte cache in bytes"
    ::= { fgWanOptInfo 5 }

fgByteCacheRAMUsage OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "RAM used by byte cache in bytes"
    ::= { fgWanOptInfo 6 }

fgWanOptUpTime OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Wan Optimization up-time (in seconds)"
    ::= { fgWanOptInfo 7 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppWanOpt.fgWanOptStatsTable
--

fgWanOptStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgWanOptStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table of WAN optimization statistics per virtual domain"
    ::= { fgAppWanOpt 2 }

fgWanOptStatsEntry OBJECT-TYPE
    SYNTAX      FgWanOptStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "WAN optimization statistics for a particular virtual domain"
    INDEX       { fgVdEntIndex }
    ::= { fgWanOptStatsTable 1 }

FgWanOptStatsEntry ::= SEQUENCE {
    fgWanOptTunnels     Gauge32,
    fgWanOptLANBytesIn  Gauge32,
    fgWanOptLANBytesOut Gauge32,
    fgWanOptWANBytesIn  Gauge32,
    fgWanOptWANBytesOut Gauge32
}

fgWanOptTunnels OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of current tunnels in this virtual domain"
    ::= { fgWanOptStatsEntry 1 }

fgWanOptLANBytesIn OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of bytes received on LAN in last 5 seconds"
    ::= { fgWanOptStatsEntry 2 }

fgWanOptLANBytesOut OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of bytes sent on LAN in last 5 seconds"
    ::= { fgWanOptStatsEntry 3 }

fgWanOptWANBytesIn OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of bytes received on WAN in last 5 seconds"
    ::= { fgWanOptStatsEntry 4 }

fgWanOptWANBytesOut OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of bytes sent on WAN in last 5 seconds"
    ::= { fgWanOptStatsEntry 5 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppWanOpt.fgWanOptHistoryStatsTable
--

fgWanOptHistoryStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgWanOptHistoryStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table of the WAN optimization history per protocol"
    ::= { fgAppWanOpt 3 }

fgWanOptHistoryStatsEntry OBJECT-TYPE
    SYNTAX      FgWanOptHistoryStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The WAN optimization history for a particular virtual domain, period, and protocol"
    INDEX       { fgVdEntIndex, fgWanOptHistPeriod, fgWanOptProtocol }
    ::= { fgWanOptHistoryStatsTable 1 }

FgWanOptHistoryStatsEntry ::= SEQUENCE {
    fgWanOptHistPeriod          FgWanOptHistPeriods,
    fgWanOptProtocol            FgWanOptProtocols,
    fgWanOptReductionRate       Gauge32,
    fgWanOptLanTraffic          CounterBasedGauge64,
    fgWanOptWanTraffic          CounterBasedGauge64
}

fgWanOptHistPeriod OBJECT-TYPE
    SYNTAX      FgWanOptHistPeriods
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "WAN optimization table entry period"
    ::= { fgWanOptHistoryStatsEntry 1 }

fgWanOptProtocol OBJECT-TYPE
    SYNTAX      FgWanOptProtocols
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "Internal WAN optimization table entry protocol"
    ::= { fgWanOptHistoryStatsEntry 2 }

fgWanOptReductionRate OBJECT-TYPE
    SYNTAX      Gauge32 (0..100)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Reduction rate achieved by WAN optimization"
    ::= { fgWanOptHistoryStatsEntry 3 }

fgWanOptLanTraffic OBJECT-TYPE
    SYNTAX      CounterBasedGauge64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of bytes transferred via LAN"
    ::= { fgWanOptHistoryStatsEntry 4 }

fgWanOptWanTraffic OBJECT-TYPE
    SYNTAX      CounterBasedGauge64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of bytes transferred via WAN"
    ::= { fgWanOptHistoryStatsEntry 5 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppWanOpt.fgWanOptTrafficStatsTable
--

fgWanOptTrafficStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgWanOptTrafficStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table of the WAN optimization traffic for a particular virtual domain and protocol"
    ::= { fgAppWanOpt 4 }

fgWanOptTrafficStatsEntry OBJECT-TYPE
    SYNTAX      FgWanOptTrafficStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The WAN optimization history for a particular protocol"
    INDEX       { fgVdEntIndex, fgWanOptProtocol }
    ::= { fgWanOptTrafficStatsTable 1 }

FgWanOptTrafficStatsEntry ::= SEQUENCE {
    fgWanOptLanInTraffic        Counter64,
    fgWanOptLanOutTraffic       Counter64,
    fgWanOptWanInTraffic        Counter64,
    fgWanOptWanOutTraffic       Counter64
}

fgWanOptLanInTraffic OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Amount of traffic received from the LAN by WAN optimization"
    ::= { fgWanOptTrafficStatsEntry 1 }

fgWanOptLanOutTraffic OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Amount of traffic sent to the LAN by WAN optimization"
    ::= { fgWanOptTrafficStatsEntry 2 }

fgWanOptWanInTraffic OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Amount of traffic received from the WAN by WAN optimization"
    ::= { fgWanOptTrafficStatsEntry 3 }

fgWanOptWanOutTraffic OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Amount of traffic sent to the WAN by WAN optimization"
    ::= { fgWanOptTrafficStatsEntry 4 }

--
-- fortinet.fnFortiGateMib.fgApplications.fgAppWanOpt.fgWanOptDiskStatsTable
--

fgWanOptDiskStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgWanOptDiskStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A table of the Web Cache disk statistics per disk"
    ::= { fgAppWanOpt 5 }

fgWanOptDiskStatsEntry OBJECT-TYPE
    SYNTAX      FgWanOptDiskStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "The Web Cache disk statistics for a particular disk"
    INDEX       { fgWanOptDisk }
    ::= { fgWanOptDiskStatsTable 1 }

FgWanOptDiskStatsEntry ::= SEQUENCE {
    fgWanOptDisk              Unsigned32,
    fgWanOptDiskLimit         CounterBasedGauge64,
    fgWanOptDiskUsage         CounterBasedGauge64,
    fgWanOptDiskHits          Counter32,
    fgWanOptDiskMisses        Counter32
}

fgWanOptDisk OBJECT-TYPE
    SYNTAX     Unsigned32
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "The Web Cache Disk index"
    ::= { fgWanOptDiskStatsEntry 1 }

fgWanOptDiskLimit OBJECT-TYPE
    SYNTAX     CounterBasedGauge64
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The about of storage (in bytes) available for the Web Cache on a particular disk"
    ::= { fgWanOptDiskStatsEntry 2 }

fgWanOptDiskUsage OBJECT-TYPE
    SYNTAX     CounterBasedGauge64
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The about of storage (in bytes) in use by the Web Cache on a paricular disk"
    ::= { fgWanOptDiskStatsEntry 3 }

fgWanOptDiskHits OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The number of cache hits on a paricular disk"
    ::= { fgWanOptDiskStatsEntry 4 }

fgWanOptDiskMisses OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The number of cache misses on a paricular disk"
    ::= { fgWanOptDiskStatsEntry 5 }

--
-- fortinet.fnFortiGateMib.fgInetProto
--

fgInetProto OBJECT IDENTIFIER
    ::= { fnFortiGateMib 11 }

fgInetProtoInfo OBJECT IDENTIFIER
    ::= { fgInetProto 1 }

fgInetProtoTables OBJECT IDENTIFIER
    ::= { fgInetProto 2 }

--
-- fortinet.fnFortiGateMib.fgInetProto.fgInetProtoTables.fgIpSessTable
--

fgIpSessTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgIpSessEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "Information on the IP sessions active on the device"
    ::= { fgInetProtoTables 1 }

fgIpSessEntry OBJECT-TYPE
    SYNTAX      FgIpSessEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "Information on a specific session, including source and destination"
    INDEX       { fgIpSessIndex }
    ::= { fgIpSessTable 1 }

FgIpSessEntry ::= SEQUENCE {
    fgIpSessIndex       FnIndex,
    fgIpSessProto       FgSessProto,
    fgIpSessFromAddr    IpAddress,
    fgIpSessFromPort    InetPortNumber,
    fgIpSessToAddr      IpAddress,
    fgIpSessToPort      InetPortNumber,
    fgIpSessExp         Counter32,
    fgIpSessVdom        FgVdIndex
}

fgIpSessIndex OBJECT-TYPE
    SYNTAX      FnIndex
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "An index value that uniquely identifies
         an IP session within the fgIpSessTable"
    ::= { fgIpSessEntry 1 }

fgIpSessProto OBJECT-TYPE
    SYNTAX      FgSessProto
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The protocol the session is using (IP, TCP, UDP, etc.)"
    ::= { fgIpSessEntry 2 }

fgIpSessFromAddr OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Source IP address (IPv4 only) of the session"
    ::= { fgIpSessEntry 3 }

fgIpSessFromPort OBJECT-TYPE
    SYNTAX      InetPortNumber
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Source port number (UDP and TCP only) of the session"
    ::= { fgIpSessEntry 4 }

fgIpSessToAddr OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Destination IP address (IPv4 only) of the session"
    ::= { fgIpSessEntry 5 }

fgIpSessToPort OBJECT-TYPE
    SYNTAX      InetPortNumber
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Destination Port number (UDP and TCP only) of the session"
    ::= { fgIpSessEntry 6 }

fgIpSessExp OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of seconds remaining before the session expires (if idle)"
    ::= { fgIpSessEntry 7 }

fgIpSessVdom OBJECT-TYPE
    SYNTAX      FgVdIndex
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Virtual domain the session is part of. This index corresponds to the index used by fgVdTable."
    ::= { fgIpSessEntry 8 }

--
-- fortinet.fnFortiGateMib.fgInetProto.fgInetProtoTables.fgIpSessStatsTable
--

fgIpSessStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgIpSessStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "IP session statistics table"
    ::= { fgInetProtoTables 2 }

fgIpSessStatsEntry OBJECT-TYPE
    SYNTAX      FgIpSessStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "IP session statistics on a virtual domain"
    AUGMENTS    { fgVdEntry }
    ::= { fgIpSessStatsTable 1 }

FgIpSessStatsEntry ::= SEQUENCE {
    fgIpSessNumber  Counter32
}

fgIpSessNumber OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Current number of sessions on the virtual domain"
    ::= { fgIpSessStatsEntry 1 }

--
-- fortinet.fnFortiGateMib.fgVpn
--

fgVpn OBJECT IDENTIFIER
    ::= { fnFortiGateMib 12 }

--
-- fortinet.fnFortiGateMib.fgVpn.fgVpnInfo
--

fgVpnInfo OBJECT IDENTIFIER
    ::= { fgVpn 1 }

fgVpnTunnelUpCount OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The number of IPsec VPN tunnels with at least one SA"
    ::= { fgVpnInfo 1 }

--
-- fortinet.fnFortiGateMib.fgVpn.fgVpnTables
--

fgVpnTables OBJECT IDENTIFIER
    ::= { fgVpn 2 }

--
-- fortinet.fnFortiGateMib.fgVpn.fgVpnTables.fgVpnDialupTable
--

fgVpnDialupTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgVpnDialupEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "Dial-up VPN peers information"
    ::= { fgVpnTables 1 }

fgVpnDialupEntry OBJECT-TYPE
    SYNTAX      FgVpnDialupEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "Dial-up VPN peer info"
    INDEX       { fgVpnDialupIndex }
    ::= { fgVpnDialupTable 1 }

FgVpnDialupEntry ::= SEQUENCE {
    fgVpnDialupIndex        FnIndex,
    fgVpnDialupGateway      IpAddress,
    fgVpnDialupLifetime     Integer32,
    fgVpnDialupTimeout      Integer32,
    fgVpnDialupSrcBegin     IpAddress,
    fgVpnDialupSrcEnd       IpAddress,
    fgVpnDialupDstAddr      IpAddress,
    fgVpnDialupVdom         FgVdIndex,
    fgVpnDialupInOctets     Counter64,
    fgVpnDialupOutOctets    Counter64
}

fgVpnDialupIndex OBJECT-TYPE
    SYNTAX      FnIndex
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "An index value that uniquely identifies
         an VPN dial-up peer within the fgVpnDialupTable"
    ::= { fgVpnDialupEntry 1 }

fgVpnDialupGateway OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Remote gateway IP address of the tunnel"
    ::= { fgVpnDialupEntry 2 }

fgVpnDialupLifetime OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Tunnel life time (seconds) of the tunnel"
    ::= { fgVpnDialupEntry 3 }

fgVpnDialupTimeout OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Time before the next key exchange (seconds) of the tunnel"
    ::= { fgVpnDialupEntry 4 }

fgVpnDialupSrcBegin OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Remote subnet address of the tunnel"
    ::= { fgVpnDialupEntry 5 }

fgVpnDialupSrcEnd OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Remote subnet mask of the tunnel"
    ::= { fgVpnDialupEntry 6 }

fgVpnDialupDstAddr OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Local subnet address of the tunnel"
    ::= { fgVpnDialupEntry 7 }

fgVpnDialupVdom OBJECT-TYPE
    SYNTAX      FgVdIndex
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Virtual domain tunnel is part of. This index corresponds to the index used by fgVdTable."
    ::= { fgVpnDialupEntry 8 }

fgVpnDialupInOctets OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of bytes received on tunnel since instantiation."
    ::= { fgVpnDialupEntry 9 }

fgVpnDialupOutOctets OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of bytes sent on tunnel since instantiation."
    ::= { fgVpnDialupEntry 10 }

--
-- fortinet.fnFortiGateMib.fgVpn.fgVpnTables.fgVpnTunTable
--

fgVpnTunTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgVpnTunEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "Table of non-dial-up IPsec VPN tunnels"
    ::= { fgVpnTables 2 }

fgVpnTunEntry OBJECT-TYPE
    SYNTAX      FgVpnTunEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "Tunnel VPN peer info"
    INDEX       { fgVpnTunEntIndex }
    ::= { fgVpnTunTable 1 }

FgVpnTunEntry ::= SEQUENCE {
    fgVpnTunEntIndex                FnIndex,
    fgVpnTunEntPhase1Name           DisplayString,
    fgVpnTunEntPhase2Name           DisplayString,
    fgVpnTunEntRemGwyIp             IpAddress,
    fgVpnTunEntRemGwyPort           InetPortNumber,
    fgVpnTunEntLocGwyIp             IpAddress,
    fgVpnTunEntLocGwyPort           InetPortNumber,
    fgVpnTunEntSelectorSrcBeginIp   IpAddress,
    fgVpnTunEntSelectorSrcEndIp     IpAddress,
    fgVpnTunEntSelectorSrcPort      InetPortNumber,
    fgVpnTunEntSelectorDstBeginIp   IpAddress,
    fgVpnTunEntSelectorDstEndIp     IpAddress,
    fgVpnTunEntSelectorDstPort      InetPortNumber,
    fgVpnTunEntSelectorProto        Integer32,
    fgVpnTunEntLifeSecs             Gauge32,
    fgVpnTunEntLifeBytes            Gauge32,
    fgVpnTunEntTimeout              Gauge32,
    fgVpnTunEntInOctets             Counter64,
    fgVpnTunEntOutOctets            Counter64,
    fgVpnTunEntStatus               INTEGER,
    fgVpnTunEntVdom                 FgVdIndex
}

fgVpnTunEntIndex OBJECT-TYPE
    SYNTAX      FnIndex
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "An index value that uniquely identifies
         a VPN tunnel within the fgVpnTunTable"
    ::= { fgVpnTunEntry 1 }

fgVpnTunEntPhase1Name OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Descriptive name of phase1 configuration for the tunnel"
    ::= { fgVpnTunEntry 2 }

fgVpnTunEntPhase2Name OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Descriptive name of phase2 configuration for the tunnel"
    ::= { fgVpnTunEntry 3 }

fgVpnTunEntRemGwyIp OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "IP of remote gateway used by the tunnel"
    ::= { fgVpnTunEntry 4 }

fgVpnTunEntRemGwyPort OBJECT-TYPE
    SYNTAX      InetPortNumber
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "port of remote gateway used by tunnel, if UDP"
    ::= { fgVpnTunEntry 5 }

fgVpnTunEntLocGwyIp OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "IP of local gateway used by the tunnel"
    ::= { fgVpnTunEntry 6 }

fgVpnTunEntLocGwyPort OBJECT-TYPE
    SYNTAX      InetPortNumber
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "port of local gateway used by tunnel, if UDP"
    ::= { fgVpnTunEntry 7 }

fgVpnTunEntSelectorSrcBeginIp OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Beginning of address range of source selector"
    ::= { fgVpnTunEntry 8 }

fgVpnTunEntSelectorSrcEndIp OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "End of address range of source selector"
    ::= { fgVpnTunEntry 9 }

fgVpnTunEntSelectorSrcPort OBJECT-TYPE
    SYNTAX      InetPortNumber
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Source selector port"
    ::= { fgVpnTunEntry 10 }

fgVpnTunEntSelectorDstBeginIp OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Beginning of address range of destination
         selector"
    ::= { fgVpnTunEntry 11 }

fgVpnTunEntSelectorDstEndIp OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "End of address range of destination selector"
    ::= { fgVpnTunEntry 12 }

fgVpnTunEntSelectorDstPort OBJECT-TYPE
    SYNTAX      InetPortNumber
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Destination selector port"
    ::= { fgVpnTunEntry 13 }

fgVpnTunEntSelectorProto OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Protocol number for selector"
    ::= { fgVpnTunEntry 14 }

fgVpnTunEntLifeSecs OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Lifetime of tunnel in seconds, if time based lifetime used"
    ::= { fgVpnTunEntry 15 }

fgVpnTunEntLifeBytes OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Lifetime of tunnel in bytes, if byte transfer based lifetime used"
    ::= { fgVpnTunEntry 16 }

fgVpnTunEntTimeout OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Timeout of tunnel in seconds"
    ::= { fgVpnTunEntry 17 }

fgVpnTunEntInOctets OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of bytes received on tunnel"
    ::= { fgVpnTunEntry 18 }

fgVpnTunEntOutOctets OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of bytes sent out on tunnel"
    ::= { fgVpnTunEntry 19 }

fgVpnTunEntStatus OBJECT-TYPE
    SYNTAX      INTEGER { down(1), up(2) }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Current status of tunnel (up or down)"
    ::= { fgVpnTunEntry 20 }

fgVpnTunEntVdom OBJECT-TYPE
    SYNTAX      FgVdIndex
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Virtual domain the tunnel is part of. This index corresponds to the index used by fgVdTable."
    ::= { fgVpnTunEntry 21 }

--
-- fortinet.fnFortiGateMib.fgVpn.fgVpnTables.fgVpnSslStatsTable
--

fgVpnSslStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgVpnSslStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "SSL VPN statistics table"
    ::= { fgVpnTables 3 }

fgVpnSslStatsEntry OBJECT-TYPE
    SYNTAX      FgVpnSslStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "SSL VPN statistics for a given virtual domain"
    AUGMENTS    { fgVdEntry }
    ::= { fgVpnSslStatsTable 1 }

FgVpnSslStatsEntry ::= SEQUENCE {
    fgVpnSslState                   FnBoolState,
    fgVpnSslStatsLoginUsers         Counter32,
    fgVpnSslStatsMaxUsers           Counter32,
    fgVpnSslStatsActiveWebSessions  Counter32,
    fgVpnSslStatsMaxWebSessions     Counter32,
    fgVpnSslStatsActiveTunnels      Counter32,
    fgVpnSslStatsMaxTunnels         Counter32
}

fgVpnSslState OBJECT-TYPE
    SYNTAX      FnBoolState
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Whether SSL-VPN is enabled on this virtual domain"
    ::= { fgVpnSslStatsEntry 1 }

fgVpnSslStatsLoginUsers OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The current number of users logged in through SSL-VPN tunnels in the virtual domain"
    ::= { fgVpnSslStatsEntry 2 }

fgVpnSslStatsMaxUsers OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The maximum number of total users that can be logged in
         at any one time on the virtual domain"
    ::= { fgVpnSslStatsEntry 3 }

fgVpnSslStatsActiveWebSessions OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The current number of active SSL web sessions in the virtual domain"
    ::= { fgVpnSslStatsEntry 4 }

fgVpnSslStatsMaxWebSessions OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The maximum number of active SSL web sessions
         at any one time within the virtual domain"
    ::= { fgVpnSslStatsEntry 5 }

fgVpnSslStatsActiveTunnels OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The current number of active SSL tunnels in the virtual domain"
    ::= { fgVpnSslStatsEntry 6 }

fgVpnSslStatsMaxTunnels OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The maximum number of active SSL tunnels
         at any one time in the virtual domain"
    ::= { fgVpnSslStatsEntry 7 }

--
-- fortinet.fnFortiGateMib.fgVpn.fgVpnTables.fgVpnSslTunnelTable
--

fgVpnSslTunnelTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgVpnSslTunnelEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A list of active SSL VPN tunnel entries"
    ::= { fgVpnTables 4 }

fgVpnSslTunnelEntry OBJECT-TYPE
    SYNTAX      FgVpnSslTunnelEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "An SSL VPN tunnel entry containing connection information
         and traffic statistics"
    INDEX       { fgVpnSslTunnelIndex }
    ::= { fgVpnSslTunnelTable 1 }

FgVpnSslTunnelEntry ::= SEQUENCE {
    fgVpnSslTunnelIndex     FnIndex,
    fgVpnSslTunnelVdom      FgVdIndex,
    fgVpnSslTunnelUserName  DisplayString,
    fgVpnSslTunnelSrcIp     IpAddress,
    fgVpnSslTunnelIp        IpAddress,
    fgVpnSslTunnelUpTime    Counter32,
    fgVpnSslTunnelBytesIn   Counter64,
    fgVpnSslTunnelBytesOut  Counter64
}

fgVpnSslTunnelIndex OBJECT-TYPE
    SYNTAX      FnIndex
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "An index value that uniquely identifies
         an active SSL VPN tunnel within the fgVpnSslTunnelTable"
    ::= { fgVpnSslTunnelEntry 1 }

fgVpnSslTunnelVdom OBJECT-TYPE
    SYNTAX      FgVdIndex
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The index of the virtual domain this tunnel belongs to. This index corresponds to the index used by fgVdTable."
    ::= { fgVpnSslTunnelEntry 2 }

fgVpnSslTunnelUserName OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The user name used to authenticate the tunnel"
    ::= { fgVpnSslTunnelEntry 3 }

fgVpnSslTunnelSrcIp OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The source IP address of this tunnel"
    ::= { fgVpnSslTunnelEntry 4 }

fgVpnSslTunnelIp OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The connection IP address of this tunnel"
    ::= { fgVpnSslTunnelEntry 5 }

fgVpnSslTunnelUpTime OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The up-time of this tunnel in seconds"
    ::= { fgVpnSslTunnelEntry 6 }

fgVpnSslTunnelBytesIn OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The number of incoming bytes of L2 traffic through this tunnel since it was established"
    ::= { fgVpnSslTunnelEntry 7 }

fgVpnSslTunnelBytesOut OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "The number of outgoing bytes of L2 traffic through this tunnel since it was established"
    ::= { fgVpnSslTunnelEntry 8 }

--
-- fortinet.fnFortiGateMib.fgVpn.fgVpnTrapObjects
--

fgVpnTrapObjects OBJECT IDENTIFIER
    ::= { fgVpn 3 }

fgVpnTrapLocalGateway OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION 
        "Local gateway IP address. Used in VPN related traps."
    ::= { fgVpnTrapObjects 2 }

fgVpnTrapRemoteGateway OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION 
        "Remote gateway IP address. Used in VPN related traps."
    ::= { fgVpnTrapObjects 3 }

--
-- fortinet.fnFortiGateMib.fgHighAvailability
--

fgHighAvailability OBJECT IDENTIFIER
    ::= { fnFortiGateMib 13 }

--
-- fortinet.fnFortiGateMib.fgHighAvailability.fgHaInfo
--

fgHaInfo OBJECT IDENTIFIER
    ::= { fgHighAvailability 1 }

fgHaSystemMode OBJECT-TYPE
    SYNTAX      FgHaMode
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "High-availability mode (Standalone, A-A or A-P)"
    ::= { fgHaInfo 1 }

fgHaGroupId OBJECT-TYPE
    SYNTAX      FnIndex
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "HA cluster group ID device is configured for"
    ::= { fgHaInfo 2 }

fgHaPriority OBJECT-TYPE
    SYNTAX      Integer32 (0..255)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "HA clustering priority of the device (default = 127)"
    ::= { fgHaInfo 3 }

fgHaOverride OBJECT-TYPE
    SYNTAX      FnBoolState
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Status of a master override flag"
    ::= { fgHaInfo 4 }

fgHaAutoSync OBJECT-TYPE
    SYNTAX      FnBoolState
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Configuration of an automatic configuration
         synchronization (enabled or disabled)"
    ::= { fgHaInfo 5 }

fgHaSchedule OBJECT-TYPE
    SYNTAX      FgHaLBSchedule
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Load-balancing schedule of cluster (in A-A mode)"
    ::= { fgHaInfo 6 }

fgHaGroupName OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "HA cluster group name"
    ::= { fgHaInfo 7 }

--
-- fortinet.fnFortiGateMib.fgHighAvailability.fgHaTables
--

fgHaTables OBJECT IDENTIFIER
    ::= { fgHighAvailability 2 }

fgHaStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FgHaStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "Some useful statistics for all members of a cluster. This table is also available in standalone mode."
    ::= { fgHaTables 1 }

fgHaStatsEntry OBJECT-TYPE
    SYNTAX      FgHaStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "Statistics for a particular HA cluster's unit"
    INDEX       { fgHaStatsIndex }
    ::= { fgHaStatsTable 1 }

FgHaStatsEntry ::= SEQUENCE {
    fgHaStatsIndex      FnIndex,
    fgHaStatsSerial     DisplayString,
    fgHaStatsCpuUsage   Gauge32,
    fgHaStatsMemUsage   Gauge32,
    fgHaStatsNetUsage   Gauge32,
    fgHaStatsSesCount   Gauge32,
    fgHaStatsPktCount   Counter32,
    fgHaStatsByteCount  Counter32,
    fgHaStatsIdsCount   Counter32,
    fgHaStatsAvCount    Counter32,
    fgHaStatsHostname   DisplayString
}

fgHaStatsIndex OBJECT-TYPE
    SYNTAX      FnIndex
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "An index value that uniquely identifies an
         unit in the HA Cluster"
    ::= { fgHaStatsEntry 1 }

fgHaStatsSerial OBJECT-TYPE
    SYNTAX      DisplayString (SIZE(0..32))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Serial number of the HA cluster member for this row"
    ::= { fgHaStatsEntry 2 }

fgHaStatsCpuUsage OBJECT-TYPE
    SYNTAX      Gauge32 (0..100)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "CPU usage of the specified cluster member (percentage)"
    ::= { fgHaStatsEntry 3 }

fgHaStatsMemUsage OBJECT-TYPE
    SYNTAX      Gauge32 (0..100)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Memory usage of the specified cluster member (percentage)"
    ::= { fgHaStatsEntry 4 }

fgHaStatsNetUsage OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Network bandwidth usage of specified cluster member (kbps)"
    ::= { fgHaStatsEntry 5 }

fgHaStatsSesCount OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Current session count of specified cluster member"
    ::= { fgHaStatsEntry 6 }

fgHaStatsPktCount OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of packets processed by the specified cluster member since start-up"
    ::= { fgHaStatsEntry 7 }

fgHaStatsByteCount OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of bytes processed by the specified cluster member since start-up"
    ::= { fgHaStatsEntry 8 }

fgHaStatsIdsCount OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of IDS/IPS events triggered on the specified cluster member since start-up"
    ::= { fgHaStatsEntry 9 }

fgHaStatsAvCount OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of anti-virus events triggered on the specified cluster member since start-up"
    ::= { fgHaStatsEntry 10 }

fgHaStatsHostname OBJECT-TYPE
    SYNTAX      DisplayString (SIZE(0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Host name of the specified cluster member"
    ::= { fgHaStatsEntry 11 }

--
-- fortinet.fnFortiGateMib.fgHighAvailability.fgHaTrapObjects
--

fgHaTrapObjects OBJECT IDENTIFIER
    ::= { fgHighAvailability 3 }

fgHaTrapMemberSerial OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION 
        "Serial number of an HA cluster member. Used to identify the origin of a trap when a cluster is configured."
    ::= { fgHaTrapObjects 1 }

--
-- fortinet.fnFortiGateMib.fgMibConformance
--

fgMibConformance OBJECT IDENTIFIER
    ::= { fnFortiGateMib 100 }

--
-- fortinet.fnFortiGateMib.fgTraps
--

fgTrapVpnTunUp NOTIFICATION-TYPE
    OBJECTS     { fnSysSerial, sysName, fgVpnTrapLocalGateway, 
                  fgVpnTrapRemoteGateway }
    STATUS      current
    DESCRIPTION 
        "Indicates that the specified VPN tunnel has been brought up."
    ::= { fgTrapPrefix 301 }

fgTrapVpnTunDown NOTIFICATION-TYPE
    OBJECTS     { fnSysSerial, sysName, fgVpnTrapLocalGateway, 
                  fgVpnTrapRemoteGateway }
    STATUS      current
    DESCRIPTION 
        "The specified VPN tunnel has been brought down."
    ::= { fgTrapPrefix 302 }

fgTrapHaSwitch NOTIFICATION-TYPE
    OBJECTS     { fnSysSerial, sysName }
    STATUS      current
    DESCRIPTION 
        "The specified cluster member has transitioned from a slave role to a master role."
    ::= { fgTrapPrefix 401 }

fgTrapHaStateChange NOTIFICATION-TYPE
    OBJECTS     { fnSysSerial }
    STATUS      deprecated
    DESCRIPTION 
        "Trap being sent when the HA cluster
         member changes its state"
    ::= { fgTrapPrefix 402 }

fgTrapHaHBFail NOTIFICATION-TYPE
    OBJECTS     { fnSysSerial }
    STATUS      current
    DESCRIPTION 
        "The heartbeat device failure count has exceeded the configured threshold."
    ::= { fgTrapPrefix 403 }

fgTrapHaMemberDown NOTIFICATION-TYPE
    OBJECTS     { fnSysSerial }
    STATUS      current
    DESCRIPTION 
        "The specified device (by serial number) is moving to a down state."
    ::= { fgTrapPrefix 404 }

fgTrapHaMemberUp NOTIFICATION-TYPE
    OBJECTS     { fnSysSerial }
    STATUS      current
    DESCRIPTION 
        "A new cluster member has joined the cluster."
    ::= { fgTrapPrefix 405 }

fgTrapIpsSignature NOTIFICATION-TYPE
    OBJECTS     { fnSysSerial, sysName, fgIpsTrapSigId, fgIpsTrapSrcIp, fgIpsTrapSigMsg }
    STATUS      current
    DESCRIPTION 
        "An IPS signature has been triggered"
    ::= { fgTrapPrefix 503 }

fgTrapIpsAnomaly NOTIFICATION-TYPE
    OBJECTS     { fnSysSerial, sysName, fgIpsTrapSigId, fgIpsTrapSrcIp, fgIpsTrapSigMsg }
    STATUS      current
    DESCRIPTION 
        "An IPS anomaly has been detected"
    ::= { fgTrapPrefix 504 }

fgTrapIpsPkgUpdate NOTIFICATION-TYPE
    OBJECTS     { fnSysSerial, sysName }
    STATUS      current
    DESCRIPTION 
        "The IPS signature database has been updated"
    ::= { fgTrapPrefix 505 }

fgTrapAvVirus NOTIFICATION-TYPE
    OBJECTS     { fnSysSerial, sysName, fgAvTrapVirName }
    STATUS      current
    DESCRIPTION 
        "A virus has been detected by the anti-virus engine"
    ::= { fgTrapPrefix 601 }

fgTrapAvOversize NOTIFICATION-TYPE
    OBJECTS     { fnSysSerial, sysName }
    STATUS      current
    DESCRIPTION 
        "An over-sized file has been detected by the anti-virus engine"
    ::= { fgTrapPrefix 602 }

fgTrapAvPattern NOTIFICATION-TYPE
    OBJECTS     { fnSysSerial, sysName }
    STATUS      current
    DESCRIPTION 
        "The anti-virus engine has blocked a file because it matched a configured pattern"
    ::= { fgTrapPrefix 603 }

fgTrapAvFragmented NOTIFICATION-TYPE
    OBJECTS     { fnSysSerial, sysName }
    STATUS      current
    DESCRIPTION 
        "The anti-virus engine has detected a fragmented file"
    ::= { fgTrapPrefix 604 }

fgTrapAvEnterConserve NOTIFICATION-TYPE
    OBJECTS     { fnSysSerial, sysName }
    STATUS      current
    DESCRIPTION 
        "The anti-virus engine has entered conservation mode due to low memory conditions"
    ::= { fgTrapPrefix 605 }

fgTrapAvBypass NOTIFICATION-TYPE
    OBJECTS     { fnSysSerial, sysName }
    STATUS      current
    DESCRIPTION 
        "The anti-virus engine has been bypassed due to conservation mode"
    ::= { fgTrapPrefix 606 }

fgTrapAvOversizePass NOTIFICATION-TYPE
    OBJECTS     { fnSysSerial, sysName }
    STATUS      current
    DESCRIPTION 
        "An over-sized file has been detected,
         but has been passed due to configuration"
    ::= { fgTrapPrefix 607 }

fgTrapAvOversizeBlock NOTIFICATION-TYPE
    OBJECTS     { fnSysSerial, sysName }
    STATUS      current
    DESCRIPTION 
        "An over-sized file has been detected
         and has been blocked"
    ::= { fgTrapPrefix 608 }

fgTrapFazDisconnect NOTIFICATION-TYPE
    OBJECTS     { fnSysSerial }
    STATUS      current
    DESCRIPTION 
        "The device has been disconnected from the FortiAnalyzer."
    ::= { fgTrapPrefix 701 }

fgFmTrapDeployComplete NOTIFICATION-TYPE
    OBJECTS     { fnSysSerial }
    STATUS      current
    DESCRIPTION 
        "Indicates when deployment of a new configuration has been completed. Used for verification by FortiManager."
    ::= { fgFmTrapPrefix 1000 }

fgFmTrapDeployInProgress NOTIFICATION-TYPE
    OBJECTS     { fnSysSerial }
    STATUS      current
    DESCRIPTION 
        "Indicates that a configuration change was not immediate and that the change is currently in progress. Used for verification by FortiManager."
    ::= { fgFmTrapPrefix 1002 }

fgFmTrapConfChange NOTIFICATION-TYPE
    OBJECTS     { fnSysSerial }
    STATUS      current
    DESCRIPTION 
        "The device configuration has been changed by something other than the managing FortiManager device."
    ::= { fgFmTrapPrefix 1003 }

fgFmTrapIfChange NOTIFICATION-TYPE
    OBJECTS     { fnSysSerial, ifName, fgManIfIp, fgManIfMask }
    STATUS      current
    DESCRIPTION 
        "Trap is sent to the managing FortiManager if an interface IP is changed"
    ::= { fgFmTrapPrefix 1004 }

--
-- fortinet.fnFortiGateMib.fgMibConformance
--

fgFmTrapGroup NOTIFICATION-GROUP
    NOTIFICATIONS { fgFmTrapDeployComplete, fgFmTrapDeployInProgress, 
                  fgFmTrapConfChange, fgFmTrapIfChange }
    STATUS      current
    DESCRIPTION 
        "Traps are intended for use in conjunction with a FortiManager."
    ::= { fgMibConformance 1 }

fgFmTrapObjectGroup OBJECT-GROUP
    OBJECTS     { fgManIfIp, fgManIfMask }
    STATUS      current
    DESCRIPTION 
        "These objects support the traps in the fgFmTrapGroup."
    ::= { fgMibConformance 2 }

fgAdminObjectGroup OBJECT-GROUP
    OBJECTS     { fgAdminIdleTimeout, fgAdminLcdProtection }
    STATUS      current
    DESCRIPTION 
        "Objects pertaining to administration of the device."
    ::= { fgMibConformance 3 }

fgSystemObjectGroup OBJECT-GROUP
    OBJECTS     { fgSysVersion, fgSysCpuUsage,
                  fgSysMemUsage, fgSysMemCapacity,
                  fgSysDiskUsage, fgSysDiskCapacity,
                  fgSysSesCount, fgSysLowMemUsage,
                  fgSysLowMemCapacity, fgSysSesRate1,
                  fgSysSesRate10, fgSysSesRate30,
                  fgSysSesRate60 }
    STATUS      current
    DESCRIPTION
        "Objects pertaining to the system status of the device."
    ::= { fgMibConformance 4 }

fgSoftwareObjectGroup OBJECT-GROUP
    OBJECTS     { fgSysVersionAv, fgSysVersionIps }
    STATUS      current
    DESCRIPTION 
        "Objects pertaining to software running on the device."
    ::= { fgMibConformance 5 }

fgHwSensorsObjectGroup OBJECT-GROUP
    OBJECTS     { fgHwSensorCount, fgHwSensorEntName,
                  fgHwSensorEntValue, fgHwSensorEntAlarmStatus }
    STATUS      current
    DESCRIPTION
        "Object pertaining to hardware sensors on the device."
    ::= { fgMibConformance 6 }

fgHighAvailabilityObjectGroup OBJECT-GROUP
    OBJECTS     { fgHaSystemMode, fgHaGroupId, fgHaPriority, fgHaOverride,
                  fgHaAutoSync, fgHaSchedule, fgHaGroupName, fgHaStatsSerial, 
                  fgHaStatsCpuUsage, fgHaStatsMemUsage, 
                  fgHaStatsNetUsage, fgHaStatsSesCount, 
                  fgHaStatsPktCount, fgHaStatsByteCount, 
                  fgHaStatsIdsCount, fgHaStatsAvCount, fgHaStatsHostname, 
                  fgHaTrapMemberSerial }
    STATUS      current
    DESCRIPTION 
        "Objects pertaining to High Availability clustering of FortiGate devices."
    ::= { fgMibConformance 7 }

fgVpnObjectGroup OBJECT-GROUP
    OBJECTS     { fgVpnDialupGateway, fgVpnDialupLifetime, 
                  fgVpnDialupTimeout, fgVpnDialupSrcBegin, 
                  fgVpnDialupSrcEnd, fgVpnDialupDstAddr, fgVpnDialupVdom, 
                  fgVpnDialupInOctets, fgVpnDialupOutOctets, 
                  fgVpnTunEntPhase1Name, fgVpnTunEntPhase2Name, 
                  fgVpnTunEntRemGwyIp, fgVpnTunEntRemGwyPort, 
                  fgVpnTunEntLocGwyIp, fgVpnTunEntLocGwyPort, 
                  fgVpnTunEntSelectorSrcBeginIp, 
                  fgVpnTunEntSelectorSrcEndIp, 
                  fgVpnTunEntSelectorSrcPort, 
                  fgVpnTunEntSelectorDstBeginIp, 
                  fgVpnTunEntSelectorDstEndIp, 
                  fgVpnTunEntSelectorDstPort, fgVpnTunEntSelectorProto, 
                  fgVpnTunEntLifeSecs, fgVpnTunEntLifeBytes, 
                  fgVpnTunEntTimeout, fgVpnTunEntInOctets, 
                  fgVpnTunEntOutOctets, fgVpnTunEntStatus, 
                  fgVpnTunEntVdom, fgVpnSslState, 
                  fgVpnSslStatsLoginUsers, fgVpnSslStatsMaxUsers, 
                  fgVpnSslStatsActiveWebSessions, 
                  fgVpnSslStatsMaxWebSessions, 
                  fgVpnSslStatsActiveTunnels, fgVpnSslStatsMaxTunnels, 
                  fgVpnSslTunnelVdom, fgVpnSslTunnelUserName, 
                  fgVpnSslTunnelSrcIp, fgVpnSslTunnelIp, 
                  fgVpnSslTunnelUpTime, fgVpnSslTunnelBytesIn, 
                  fgVpnSslTunnelBytesOut, fgVpnTrapLocalGateway, 
                  fgVpnTrapRemoteGateway, fgVpnTunnelUpCount }
    STATUS      current
    DESCRIPTION 
        "Objects pertaining to Virtual Priavet Networking on FortiGate devices."
    ::= { fgMibConformance 8 }

fgFirewallObjectGroup OBJECT-GROUP
    OBJECTS     { fgFwPolPktCount, fgFwPolByteCount, fgFwUserNumber, 
                  fgFwUserAuthTimeout, fgFwUserName, fgFwUserAuth, 
                  fgFwUserState, fgFwUserVdom, fgIpSessProto, 
                  fgIpSessFromAddr, fgIpSessFromPort, fgIpSessToAddr, 
                  fgIpSessToPort, fgIpSessExp, fgIpSessVdom, 
                  fgIpSessNumber }
    STATUS      current
    DESCRIPTION 
        "Objects pertaining to Firewall functionality on FortiGate devices."
    ::= { fgMibConformance 9 }

fgAppServicesObjectGroup OBJECT-GROUP
    OBJECTS     { fgApHTTPReqProcessed,
                  fgApSMTPReqProcessed, fgApSMTPSpamDetected,
                  fgApPOP3ReqProcessed, fgApPOP3SpamDetected,
                  fgApIMAPReqProcessed, fgApIMAPSpamDetected,
                  fgApNNTPReqProcessed, fgApIMUpTime, fgApIMMemUsage, 
                  fgApIMReqProcessed, fgApSIPUpTime, fgApSIPMemUsage, 
                  fgApSIPClientReg, fgApSIPCallHandling, fgApSIPServices, 
                  fgApSIPOtherReq, fgAppSuNumber, fgAppSuFileScanned, 
                  fgAppVoIPConn, fgAppVoIPCallBlocked, 
                  fgAppP2PConnBlocked, fgAppP2PProtEntBytes, 
                  fgAppP2PProtoEntLastReset, fgAppIMMessages, 
                  fgAppIMFileTransfered, fgAppIMFileTxBlocked, 
                  fgAppIMConnBlocked, 
                  fgApFTPReqProcessed, fgApHTTPConnections, fgApFTPConnections,
                  fgApSMTPConnections, fgApPOP3Connections, fgApIMAPConnections,
                  fgApNNTPConnections, fgApHTTPMaxConnections,
                  fgApFTPMaxConnections, fgApSMTPMaxConnections,
                  fgApPOP3MaxConnections, fgApIMAPMaxConnections,
                  fgApNNTPMaxConnections }
    STATUS      current
    DESCRIPTION 
        "Objects pertaining to application proxy and filtering services on FortiGate devices."
    ::= { fgMibConformance 10 }

fgAntivirusObjectGroup OBJECT-GROUP
    OBJECTS     { fgAvVirusDetected, fgAvVirusBlocked, 
                  fgAvHTTPVirusDetected, fgAvHTTPVirusBlocked, 
                  fgAvSMTPVirusDetected, fgAvSMTPVirusBlocked, 
                  fgAvPOP3VirusDetected, fgAvPOP3VirusBlocked, 
                  fgAvIMAPVirusDetected, fgAvIMAPVirusBlocked, 
                  fgAvFTPVirusDetected, fgAvFTPVirusBlocked, 
                  fgAvIMVirusDetected, fgAvIMVirusBlocked, 
                  fgAvNNTPVirusDetected, fgAvNNTPVirusBlocked, 
                  fgAvOversizedDetected, fgAvOversizedBlocked, 
                  fgAvTrapVirName }
    STATUS      current
    DESCRIPTION 
        "Objects pertaining to Antivirus services on FortiGate devices."
    ::= { fgMibConformance 11 }

fgIntrusionPrevtObjectGroup OBJECT-GROUP
    OBJECTS     { fgIpsTrapSigId, fgIpsTrapSrcIp, fgIpsTrapSigMsg, 
                  fgIpsIntrusionsDetected, fgIpsIntrusionsBlocked, 
                  fgIpsCritSevDetections, fgIpsHighSevDetections, 
                  fgIpsMedSevDetections, fgIpsLowSevDetections, 
                  fgIpsInfoSevDetections, fgIpsSignatureDetections, 
                  fgIpsAnomalyDetections }
    STATUS      current
    DESCRIPTION 
        "Objects pertaining to Intrusion Detection and Prevention services on FortiGate devices."
    ::= { fgMibConformance 12 }

fgWebFilterObjectGroup OBJECT-GROUP
    OBJECTS     { fgWfHTTPBlocked, fgWfHTTPSBlocked, fgWfHTTPURLBlocked, 
                  fgWfHTTPSURLBlocked, fgWfActiveXBlocked, 
                  fgWfCookieBlocked, fgWfAppletBlocked, 
                  fgFgWfHTTPExamined, fgFgWfHTTPSExamined, 
                  fgFgWfHTTPAllowed, fgFgWfHTTPSAllowed, 
                  fgFgWfHTTPBlocked, fgFgWfHTTPSBlocked, 
                  fgFgWfHTTPLogged, fgFgWfHTTPSLogged, 
                  fgFgWfHTTPOverridden, fgFgWfHTTPSOverridden }
    STATUS      current
    DESCRIPTION 
        "Objects pertaining to FortiGate and FortiGuard based Web Filtering services on FortiGate devices."
    ::= { fgMibConformance 13 }

fgVirtualDomainObjectGroup OBJECT-GROUP
    OBJECTS     { fgVdNumber, fgVdMaxVdoms, fgVdEnabled, fgVdEntName, 
                  fgVdEntOpMode, fgVdTpMgmtAddrType, fgVdTpMgmtAddr,
                  fgVdTpMgmtMask }
    STATUS      current
    DESCRIPTION 
        "Objects pertaining to Virtual Firewall Domain services on FortiGate devices."
    ::= { fgMibConformance 14 }

fgAdministrationObjectGroup OBJECT-GROUP
    OBJECTS     { fgAdminVdom }
    STATUS      current
    DESCRIPTION 
        "Objects pertaining to the administration of FortiGate device."
    ::= { fgMibConformance 15 }

fgIntfObjectGroup OBJECT-GROUP
    OBJECTS     { fgIntfEntVdom }
    STATUS      current
    DESCRIPTION 
        "Objects pertaining to the interface table of FortiGate device."
    ::= { fgMibConformance 16 }

fgProcessorsObjectGroup OBJECT-GROUP
    OBJECTS     { fgProcessorCount, fgProcessorUsage, fgProcessorUsage5sec,
                fgProcessorType, fgProcessorContainedIn, fgProcessorPktRxCount,
                fgProcessorPktTxCount, fgProcessorPktDroppedCount,
                fgProcessorModuleCount, fgProcModType,
                fgProcModName, fgProcModDescr, fgProcModProcessorCount,
                fgProcModMemCapacity, fgProcModMemUsage,
                fgProcModSessionCount, fgProcModSACount }
    STATUS      current
    DESCRIPTION 
        "Objects pertaining to the processors table of FortiGate device."
    ::= { fgMibConformance 17 }

fgNotificationGroup NOTIFICATION-GROUP
    NOTIFICATIONS { fgTrapVpnTunUp, fgTrapVpnTunDown, fgTrapHaSwitch, 
                  fgTrapHaHBFail, fgTrapHaMemberDown, fgTrapHaMemberUp, 
                  fgTrapIpsSignature, fgTrapIpsAnomaly, 
                  fgTrapIpsPkgUpdate, fgTrapAvVirus, fgTrapAvOversize, 
                  fgTrapAvPattern, fgTrapAvFragmented, 
                  fgTrapAvEnterConserve, fgTrapAvBypass, 
                  fgTrapAvOversizePass, fgTrapAvOversizeBlock, 
                  fgTrapFazDisconnect }
    STATUS      current
    DESCRIPTION 
        "Notifications that can be generated from a FortiGate device."
    ::= { fgMibConformance 18 }

fgObsoleteNotificationsGroup NOTIFICATION-GROUP
    NOTIFICATIONS { fgTrapHaStateChange }
    STATUS      deprecated
    DESCRIPTION 
        "Notifications that have been deprecated, but may still be generated by older models."
    ::= { fgMibConformance 19 }

fgExplicitProxyObjectGroup OBJECT-GROUP
    OBJECTS     { fgExplicitProxyUpTime, fgExplicitProxyMemUsage, fgExplicitProxyRequests,
                fgExplicitProxyUsers, fgExplicitProxySessions,
                fgExplicitProxyVirus, fgExplicitProxyBannedWords, fgExplicitProxyPolicy,
                fgExplicitProxyOversized, fgExplicitProxyArchNest, fgExplicitProxyArchSize,
                fgExplicitProxyArchEncrypted, fgExplicitProxyArchMultiPart,
                fgExplicitProxyArchUnsupported, fgExplicitProxyArchBomb, fgExplicitProxyArchCorrupt,
                fgExplicitProxyFilteredApplets, fgExplicitProxyFilteredActiveX,
                fgExplicitProxyFilteredJScript, fgExplicitProxyFilteredJS,
                fgExplicitProxyFilteredVBS, fgExplicitProxyFilteredOthScript,
                fgExplicitProxyBlockedDLP, fgExplicitProxyBlockedConType,
                fgExplicitProxyExaminedURLs, fgExplicitProxyAllowedURLs, fgExplicitProxyBlockedURLs,
                fgExplicitProxyLoggedURLs, fgExplicitProxyOverriddenURLs }
    STATUS      current
    DESCRIPTION 
        "Objects pertaining to explicit proxy"
    ::= { fgMibConformance 20 }

fgWebCacheObjectGroup OBJECT-GROUP
    OBJECTS     { fgWebCacheUpTime, 
                fgWebCacheRAMLimit, fgWebCacheRAMUsage, fgWebCacheRAMHits,
                fgWebCacheRAMMisses, fgWebCacheRequests, fgWebCacheBypass,
                fgWebCacheDiskLimit, fgWebCacheDiskUsage, fgWebCacheDiskHits,
                fgWebCacheDiskMisses }
    STATUS      current
    DESCRIPTION 
        "Objects pertaining to explicit proxy, web cache and wan optimization."
    ::= { fgMibConformance 21 }

fgWanOptObjectGroup OBJECT-GROUP
    OBJECTS     { fgMemCacheLimit, fgMemCacheUsage, fgMemCacheHits, fgMemCacheMisses,
                fgByteCacheRAMLimit, fgByteCacheRAMUsage,
                fgWanOptUpTime, fgWanOptReductionRate, fgWanOptLanTraffic, fgWanOptWanTraffic,
                fgWanOptLanInTraffic, fgWanOptLanOutTraffic, fgWanOptWanInTraffic, fgWanOptWanOutTraffic,
                fgWanOptTunnels, fgWanOptLANBytesIn, fgWanOptLANBytesOut,
                fgWanOptWANBytesIn, fgWanOptWANBytesOut, fgWanOptDiskLimit, fgWanOptDiskUsage,
                fgWanOptDiskHits, fgWanOptDiskMisses }
    STATUS      current
    DESCRIPTION 
        "Objects pertaining to explicit proxy, web cache and wan optimization."
    ::= { fgMibConformance 22 }

fgObsoleteAppServicesObjectGroup OBJECT-GROUP
    OBJECTS     { fgApHTTPUpTime, fgApHTTPMemUsage,
                  fgApSMTPUpTime, fgApSMTPMemUsage,
                  fgApPOP3UpTime, fgApPOP3MemUsage, 
                  fgApIMAPUpTime, fgApIMAPMemUsage,
                  fgApNNTPUpTime, fgApNNTPMemUsage,
                  fgApFTPUpTime, fgApFTPMemUsage }
    STATUS      deprecated
    DESCRIPTION 
        "Objects that have been deprecated, but may still be generated by older models."
    ::= { fgMibConformance 23 }

fgMIBCompliance MODULE-COMPLIANCE
    STATUS      current
    DESCRIPTION 
        "The compliance statement for the application MIB."

    MODULE      -- this module

        GROUP   fgFmTrapGroup
        DESCRIPTION   
              "This group is mandatory for any FortiGate device being managed by a FortiManager."

        GROUP   fgNotificationGroup
        DESCRIPTION   
              "Notifications are feature dependant. See manual for feature 
               information."

        GROUP   fgFmTrapObjectGroup
        DESCRIPTION   
              "Model and feature specific."

        GROUP   fgAdminObjectGroup
        DESCRIPTION   
              "Model and feature specific."

        GROUP   fgSystemObjectGroup
        DESCRIPTION
              "Model and feature specific."

        GROUP   fgSoftwareObjectGroup
        DESCRIPTION   
              "Model and feature specific."

        GROUP   fgHwSensorsObjectGroup
        DESCRIPTION
              "Model and feature specific."

        GROUP   fgHighAvailabilityObjectGroup
        DESCRIPTION   
              "Model and feature specific."

        GROUP   fgVpnObjectGroup
        DESCRIPTION   
              "Model and feature specific."

        GROUP   fgFirewallObjectGroup
        DESCRIPTION   
              "Model and feature specific."

        GROUP   fgAppServicesObjectGroup
        DESCRIPTION   
              "Model and feature specific."

        GROUP   fgAntivirusObjectGroup
        DESCRIPTION   
              "Model and feature specific."

        GROUP   fgIntrusionPrevtObjectGroup
        DESCRIPTION   
              "Model and feature specific."

        GROUP   fgWebFilterObjectGroup
        DESCRIPTION   
              "Model and feature specific."

        GROUP   fgVirtualDomainObjectGroup
        DESCRIPTION   
              "Model and feature specific."

        GROUP   fgAdministrationObjectGroup
        DESCRIPTION   
              "Model and feature specific."

        GROUP   fgIntfObjectGroup
        DESCRIPTION   
              "Model and feature specific."

        GROUP   fgProcessorsObjectGroup
        DESCRIPTION
              "Model and feature specific."

        GROUP   fgExplicitProxyObjectGroup
        DESCRIPTION
              "Model and feature specific."

        GROUP   fgWebCacheObjectGroup
        DESCRIPTION
              "Model and feature specific."

        GROUP   fgWanOptObjectGroup
        DESCRIPTION
              "Model and feature specific."

    ::= { fgMibConformance 100 }

fg300MibCompliance MODULE-COMPLIANCE
    STATUS      deprecated
    DESCRIPTION 
        "The backwards compatibility compliance statement for the application MIB."

    MODULE      -- this module

        GROUP   fgObsoleteNotificationsGroup
        DESCRIPTION   
              "Model and feature specific. May be implemented by some firmwares, but should not be relied on."

    ::= { fgMibConformance 101 }

fgObsolteMIBCompliance MODULE-COMPLIANCE
    STATUS      deprecated
    DESCRIPTION 
        "The compliance statement for the application MIB."

    MODULE      -- this module

        GROUP   fgObsoleteAppServicesObjectGroup 
        DESCRIPTION   
              "Deprecated AppService objects."

    ::= { fgMibConformance 102 }

END -- end of module FORTINET-FORTIGATE-MIB.
