Merge remote-tracking branch 'origin/develop' into ent-5375-9442-Plugin-log-praser-no-funciona-multifichero

Conflicts:
	pandora_plugins/Advanced Log Parser/pandora_logparser.pl
This commit is contained in:
ismael.moreno 2020-03-11 11:54:03 +01:00
commit 1cb3fb54d7
268 changed files with 124727 additions and 28507 deletions

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 7.0NG.742, AIX version
# Version 7.0NG.744, AIX version
# Licensed under GPL license v2,
# Copyright (c) 2003-2010 Artica Soluciones Tecnologicas
# http://www.pandorafms.com

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 7.0NG.742, FreeBSD Version
# Version 7.0NG.744, FreeBSD Version
# Licensed under GPL license v2,
# Copyright (c) 2003-2010 Artica Soluciones Tecnologicas
# http://www.pandorafms.com

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 7.0NG.742, HP-UX Version
# Version 7.0NG.744, HP-UX Version
# Licensed under GPL license v2,
# Copyright (c) 2003-2009 Artica Soluciones Tecnologicas
# http://www.pandorafms.com

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 7.0NG.742, GNU/Linux
# Version 7.0NG.744, GNU/Linux
# Licensed under GPL license v2,
# Copyright (c) 2003-2009 Artica Soluciones Tecnologicas
# http://www.pandorafms.com

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 7.0NG.742, GNU/Linux
# Version 7.0NG.744, GNU/Linux
# Licensed under GPL license v2,
# Copyright (c) 2003-2009 Artica Soluciones Tecnologicas
# http://www.pandorafms.com

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 7.0NG.742, Solaris Version
# Version 7.0NG.744, Solaris Version
# Licensed under GPL license v2,
# Copyright (c) 2003-2009 Artica Soluciones Tecnologicas
# http://www.pandorafms.com

View File

@ -1,6 +1,6 @@
# Base config file for Pandora FMS Windows Agent
# (c) 2006-2010 Artica Soluciones Tecnologicas
# Version 7.0NG.742
# Version 7.0NG.744
# This program is Free Software, you can redistribute it and/or modify it
# under the terms of the GNU General Public Licence as published by the Free Software

View File

@ -1,6 +1,6 @@
# Fichero de configuracion base de agentes de Pandora
# Base config file for Pandora agents
# Version 7.0NG.742, AIX version
# Version 7.0NG.744, AIX version
# General Parameters
# ==================

View File

@ -1,6 +1,6 @@
# Fichero de configuracion base de agentes de Pandora
# Base config file for Pandora agents
# Version 7.0NG.742
# Version 7.0NG.744
# FreeBSD/IPSO version
# Licenced under GPL licence, 2003-2007 Sancho Lerena

View File

@ -1,6 +1,6 @@
# Fichero de configuracion base de agentes de Pandora
# Base config file for Pandora agents
# Version 7.0NG.742, HPUX Version
# Version 7.0NG.744, HPUX Version
# General Parameters
# ==================

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 7.0NG.742
# Version 7.0NG.744
# Licensed under GPL license v2,
# (c) 2003-2010 Artica Soluciones Tecnologicas
# please visit http://pandora.sourceforge.net

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 7.0NG.742
# Version 7.0NG.744
# Licensed under GPL license v2,
# (c) 2003-2009 Artica Soluciones Tecnologicas
# please visit http://pandora.sourceforge.net

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 7.0NG.742
# Version 7.0NG.744
# Licensed under GPL license v2,
# please visit http://pandora.sourceforge.net

View File

@ -1,6 +1,6 @@
# Fichero de configuracion base de agentes de Pandora
# Base config file for Pandora agents
# Version 7.0NG.742, Solaris version
# Version 7.0NG.744, Solaris version
# General Parameters
# ==================

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 7.0NG.742, AIX version
# Version 7.0NG.744, AIX version
# Licensed under GPL license v2,
# Copyright (c) 2003-2010 Artica Soluciones Tecnologicas
# http://www.pandorafms.com

View File

@ -1,5 +1,5 @@
package: pandorafms-agent-unix
Version: 7.0NG.742-200127
Version: 7.0NG.744-200311
Architecture: all
Priority: optional
Section: admin

View File

@ -14,14 +14,20 @@
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
pandora_version="7.0NG.742-200127"
pandora_version="7.0NG.744-200311"
echo "Test if you has the tools for to make the packages."
whereis dpkg-deb | cut -d":" -f2 | grep dpkg-deb > /dev/null
if [ $? = 1 ]
then
echo "No found \"dpkg-deb\" aplication, please install."
exit 1
if [ "$DPKG_DEB" == "" ]; then
echo "No found \"dpkg-deb\" aplication, please install."
exit 1
fi
echo ">> Using dockerized version of dpkg-deb: "
echo " $DPKG_DEB"
USE_DOCKER_APP=1
else
echo "Found \"dpkg-debs\"."
fi
@ -122,8 +128,12 @@ do
done
echo "END"
echo "Make the package \"Pandorafms console\"."
dpkg-deb --build temp_package
echo "Make the package \"Pandorafms agent\"."
if [ "$USE_DOCKER_APP" == "1" ]; then
eval $DPKG_DEB --build temp_package
else
dpkg-deb --build temp_package
fi
mv temp_package.deb pandorafms.agent_unix_$pandora_version.deb
echo "Delete the \"temp_package\" temp dir for job."

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 7.0NG.742, GNU/Linux
# Version 7.0NG.744, GNU/Linux
# Licensed under GPL license v2,
# Copyright (c) 2003-2012 Artica Soluciones Tecnologicas
# http://www.pandorafms.com

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 7.0NG.742, FreeBSD Version
# Version 7.0NG.744, FreeBSD Version
# Licensed under GPL license v2,
# Copyright (c) 2003-2016 Artica Soluciones Tecnologicas
# http://www.pandorafms.com

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 7.0NG.742, HP-UX Version
# Version 7.0NG.744, HP-UX Version
# Licensed under GPL license v2,
# Copyright (c) 2003-2009 Artica Soluciones Tecnologicas
# http://www.pandorafms.com

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 7.0NG.742, GNU/Linux
# Version 7.0NG.744, GNU/Linux
# Licensed under GPL license v2,
# Copyright (c) 2003-2014 Artica Soluciones Tecnologicas
# http://www.pandorafms.com

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 7.0NG.742, GNU/Linux
# Version 7.0NG.744, GNU/Linux
# Licensed under GPL license v2,
# Copyright (c) 2003-2009 Artica Soluciones Tecnologicas
# http://www.pandorafms.com

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 7.0NG.742, NetBSD Version
# Version 7.0NG.744, NetBSD Version
# Licensed under GPL license v2,
# Copyright (c) 2003-2010 Artica Soluciones Tecnologicas
# http://www.pandorafms.com

View File

@ -1,5 +1,5 @@
# Base config file for Pandora FMS agents
# Version 7.0NG.742, Solaris Version
# Version 7.0NG.744, Solaris Version
# Licensed under GPL license v2,
# Copyright (c) 2003-2009 Artica Soluciones Tecnologicas
# http://www.pandorafms.com

View File

@ -54,8 +54,8 @@ my $Sem = undef;
# Semaphore used to control the number of threads
my $ThreadSem = undef;
use constant AGENT_VERSION => '7.0NG.742';
use constant AGENT_BUILD => '200127';
use constant AGENT_VERSION => '7.0NG.744';
use constant AGENT_BUILD => '200311';
# Agent log default file size maximum and instances
use constant DEFAULT_MAX_LOG_SIZE => 600000;
@ -183,6 +183,7 @@ my %DefaultConf = (
'secondary_server_pwd' => '',
'secondary_server_ssl' => '0',
'secondary_server_opts' => '',
'secondary_temporal' => '/var/spool/pandora',
'autotime' => 0,
'temporal_min_size' => 1,
'timezone_offset' => 0,
@ -1058,6 +1059,16 @@ sub read_config (;$) {
$Conf{'secondary_server_opts'} = '-c ' . $Conf{'secondary_server_opts'} if ($Conf{'secondary_server_ssl'} eq '1');
}
# Set up the primary and secondary temporary directories.
if ($Conf{'secondary_mode'} eq 'always') {
$Conf{'secondary_temporal'} = $Conf{'temporal'} . '/pandorafms.secondary';
if (! -d $Conf{'secondary_temporal'}) {
mkdir($Conf{'secondary_temporal'}) || die("Error creating the secondary temporary directory $!");
}
} elsif ($Conf{'secondary_mode'} eq "on_error") {
$Conf{'secondary_temporal'} = $Conf{'temporal'};
}
}
#################################################################################
@ -1077,7 +1088,7 @@ sub fix_directory ($) {
# Sends a file to the server.
################################################################################
sub send_file {
my ($file, $secondary, $rc_primary, $flag_always, $relative) = @_;
my ($file, $relative) = @_;
my $output;
my $pid = fork();
@ -1131,108 +1142,82 @@ sub send_file {
waitpid ($pid, 0);
my $rc = $? >> 8;
if( ($Conf{'secondary_mode'} eq 'always') && ( !defined($flag_always) ) ){
# Send the file to the secondary server
return $rc unless ($Conf{'secondary_mode'} eq 'always');
if(defined ($secondary)){
if( ($rc != 0 && ($file =~ /\.data/)) ){
$rc_primary = 1;
}
swap_servers ();
$rc = send_file ($file, undef, $rc_primary, undef, $relative);
swap_servers ();
return $rc
}
return $rc;
}
else{
my $rc_secondary = 0;
if( ($rc != 0) && ($file =~ /\.data/)){
$rc_secondary = 1;
}
################################################################################
# Send buffered XML files.
################################################################################
sub send_xml_file ($) {
my ($file) = @_;
if ( $rc_secondary == 1 && defined($rc_primary) ){
return 1;
}
if ( $rc_secondary == 1 ){
if (! -d "$Conf{'temporal'}/secondary"){
mkdir "$Conf{'temporal'}/secondary";
}
eval {
copy("$file", "$Conf{'temporal'}/secondary/");
};
if ($@) {
# We shouldn't reach this point...
die ("Cannot write on $Conf{'temporal'}/secondary/");
}
return 0;
}
if ( defined($rc_primary) ){
if (! -d "$Conf{'temporal'}/primary"){
mkdir "$Conf{'temporal'}/primary";
}
eval {
copy("$file", "$Conf{'temporal'}/primary/");
};
if ($@) {
# We shouldn't reach this point...
die ("Cannot write on $Conf{'temporal'}/primary/");
}
return 0;
}
my $rc = send_file($file);
if ($rc != 0 && $Conf{'secondary_mode'} eq "on_error") {
swap_servers();
$rc = send_file($file);
swap_servers();
}
elsif ($Conf{'secondary_mode'} eq "always") {
swap_servers();
my $rc_sec = send_file($file);
swap_servers();
if ( $rc_secondary == 0 && !defined($rc_primary) ){
return 0;
}
# Secondary buffer.
if ($rc_sec != 0 && $Conf{'xml_buffer'} == 1 && temporal_freedisk () > $Conf{'temporal_min_size'}) {
copy($file, $Conf{'secondary_temporal'}) || die("Error copying file $file to " . $Conf{'secondary_temporal'} . ": $!");
}
}
elsif ( ($Conf{'secondary_mode'} eq 'always') && defined($flag_always) ){
return $rc;
}
else{
return $rc unless (defined ($secondary));
# Send the file to the secondary server
return $rc unless ($Conf{'secondary_mode'} eq 'always' || ($Conf{'secondary_mode'} eq 'on_error' && $rc != 0));
swap_servers ();
$rc = send_file ($file, undef, undef, undef, $relative);
swap_servers ();
return $rc;
# Primary buffer.
if ($rc == 0 || $Conf{'xml_buffer'} == 0 || temporal_freedisk () <= $Conf{'temporal_min_size'}) {
if ($Conf{'debug'} eq '1') {
rename($file, $file . "sent");
} else {
unlink ($file);
}
}
}
################################################################################
# Send buffered XML files.
################################################################################
sub send_buffered_xml_files ($;$) {
my ($temporal_file, $flag_always) = @_;
sub send_buffered_xml_files () {
my $temp_fh;
# Read XML files from the temporal directory
opendir(TEMPORAL, $temporal_file) or return;
if (defined($flag_always) && ($flag_always == 2)){
swap_servers ();
}
while (my $xml_file = readdir(TEMPORAL)) {
opendir($temp_fh, $Conf{'temporal'}) or return;
while (my $xml_file = readdir($temp_fh)) {
# Skip non data files and symlinks
next if ($xml_file !~ m/^$Conf{'agent_name'}\.[0-9]+\.data$/ || -l "$temporal_file/$xml_file");
my $rc = send_file ("$temporal_file/$xml_file", 1, undef, $flag_always);
next if ($xml_file !~ m/^$Conf{'agent_name'}\.[0-9]+\.data$/ || -l "$Conf{'temporal'}/$xml_file");
my $rc = send_file ("$Conf{'temporal'}/$xml_file");
if ($rc == 0) {
if ($Conf{'debug'} eq '1') {
rename "$temporal_file/$xml_file", "$temporal_file/$xml_file". "sent";
rename("$Conf{'temporal'}/$xml_file", "$Conf{'temporal'}/$xml_file". "sent");
} else {
unlink ("$temporal_file/$xml_file");
unlink ("$Conf{'temporal'}/$xml_file");
}
}
# Do not get stuck trying to send buffered XML files to a secondary server.
elsif ($flag_always == 2) {
} else {
last;
}
}
if (defined($flag_always) && ($flag_always == 2)){
swap_servers ();
closedir($temp_fh);
# Read XML files from the secondary temporal directory
return unless ($Conf{'secondary_mode'} ne "never");
opendir($temp_fh, $Conf{'secondary_temporal'}) or return;
swap_servers ();
while (my $xml_file = readdir($temp_fh)) {
# Skip non data files and symlinks
next if ($xml_file !~ m/^$Conf{'agent_name'}\.[0-9]+\.data$/ || -l "$Conf{'secondary_temporal'}/$xml_file");
my $rc = send_file ("$Conf{'secondary_temporal'}/$xml_file");
if ($rc == 0) {
unlink ("$Conf{'secondary_temporal'}/$xml_file") ;
} else {
last;
}
}
swap_servers ();
closedir($temp_fh);
}
################################################################################
@ -1341,8 +1326,8 @@ sub check_remote_config () {
chown ($uid, $gid, "$Conf{'temporal'}/$RemoteMD5File");
chown ($uid, $gid, "$Conf{'temporal'}/$RemoteConfFile");
}
send_file ("$Conf{'temporal'}/$RemoteConfFile", undef, undef, undef, $Conf{'server_path_conf'});
send_file ("$Conf{'temporal'}/$RemoteMD5File", undef, undef, undef, $Conf{'server_path_md5'});
send_file ("$Conf{'temporal'}/$RemoteConfFile", $Conf{'server_path_conf'});
send_file ("$Conf{'temporal'}/$RemoteMD5File", $Conf{'server_path_md5'});
unlink ("$Conf{'temporal'}/$RemoteConfFile");
unlink ("$Conf{'temporal'}/$RemoteMD5File");
return;
@ -2621,7 +2606,7 @@ sub cron_next_execution {
$nex_time = cron_next_execution_date ($cron, $nex_time, 0);
}
return $nex_time - time();
return $nex_time - $cur_time;
}
###############################################################################
@ -2652,7 +2637,7 @@ sub cron_check_interval {
if ($down < $up) {
return 0 if ($elem_curr_time < $down || $elem_curr_time > $up);
} else {
return 0 if ($elem_curr_time > $down || $elem_curr_time < $up);
return 0 if ($elem_curr_time < $down && $elem_curr_time > $up);
}
return 1;
@ -2676,15 +2661,11 @@ sub cron_next_execution_date {
}
}
# Get current time
if (! defined ($cur_time)) {
$cur_time = time();
}
# Check if current time + interval is on cron too
my $nex_time = $cur_time + $interval;
my ($cur_min, $cur_hour, $cur_mday, $cur_mon, $cur_year)
= (localtime ($nex_time))[1, 2, 3, 4, 5];
my @cron_array = ($min, $hour, $mday, $mon);
my @curr_time_array = ($cur_min, $cur_hour, $cur_mday, $cur_mon);
return ($nex_time) if cron_is_in_cron(\@cron_array, \@curr_time_array) == 1;
@ -2821,7 +2802,7 @@ sub cron_is_in_cron {
# * should returns floor data.
# 5 should returns 5.
# 10-55 should returns 10.
# 55-10 should retunrs floor data.
# 55-10 should returns elem_down.
################################################################################
sub cron_get_next_time_element {
# Default floor data is 0
@ -2829,7 +2810,7 @@ sub cron_get_next_time_element {
$floor_data = 0 unless defined($floor_data);
my ($elem_down, $elem_up) = cron_get_interval ($curr_element);
return ($elem_down eq '*' || (defined($elem_up) && $elem_down > $elem_up))
return ($elem_down eq '*')
? $floor_data
: $elem_down;
}
@ -3710,31 +3691,11 @@ while (1) {
}
# Send the XML data file
my $rc = send_file ($temp_file, 1);
if ($rc == 0 || $Conf{'xml_buffer'} == 0 || temporal_freedisk () < $Conf{'temporal_min_size'}) {
if ($Conf{'debug'} eq '1') {
rename $temp_file, $temp_file . "sent";
} else {
unlink ($temp_file);
}
}
send_xml_file ($temp_file);
# Send buffered XML data files
if ($Conf{'xml_buffer'} == 1) {
if($Conf{'secondary_mode'} eq 'always'){
$Conf{'__temporal_primary'} = "$Conf{'temporal'}/primary";
$Conf{'__temporal_secondary'} = "$Conf{'temporal'}/secondary";
if (-d "$Conf{'__temporal_primary'}"){
send_buffered_xml_files ($Conf{'__temporal_primary'}, 1);
}
if (-d "$Conf{'__temporal_secondary'}"){
send_buffered_xml_files ($Conf{'__temporal_secondary'}, 2);
}
send_buffered_xml_files ($Conf{'temporal'});
}
else{
send_buffered_xml_files ($Conf{'temporal'});
}
send_buffered_xml_files ();
}
}

View File

@ -2,8 +2,8 @@
#Pandora FMS Linux Agent
#
%define name pandorafms_agent_unix
%define version 7.0NG.742
%define release 200127
%define version 7.0NG.744
%define release 200311
Summary: Pandora FMS Linux agent, PERL version
Name: %{name}

View File

@ -2,8 +2,8 @@
#Pandora FMS Linux Agent
#
%define name pandorafms_agent_unix
%define version 7.0NG.742
%define release 200127
%define version 7.0NG.744
%define release 200311
Summary: Pandora FMS Linux agent, PERL version
Name: %{name}
@ -18,7 +18,8 @@ Packager: Sancho Lerena <slerena@artica.es>
Prefix: /usr/share
BuildRoot: %{_tmppath}/%{name}-%{version}-buildroot
BuildArch: noarch
PreReq: %fillup_prereq %insserv_prereq /usr/bin/sed /usr/bin/grep /usr/sbin/useradd
#PreReq: %fillup_prereq %insserv_prereq /usr/bin/sed /usr/bin/grep /usr/sbin/useradd
Requires(pre,preun):/usr/bin/sed /usr/bin/grep /usr/sbin/useradd
Requires: coreutils unzip perl perl(Sys::Syslog) perl(IO::Compress::Zip) perl(YAML::Tiny)
AutoReq: 0
Provides: %{name}-%{version}

View File

@ -9,8 +9,8 @@
# Please see http://www.pandorafms.org. This code is licensed under GPL 2.0 license.
# **********************************************************************
PI_VERSION="7.0NG.742"
PI_BUILD="200127"
PI_VERSION="7.0NG.744"
PI_BUILD="200311"
OS_NAME=`uname -s`
FORCE=0

View File

@ -49,7 +49,7 @@ else
# Store all "ext" fstypes in @lines array
my @lines = split /\n/, `df -khTP | tail -n +2 | awk '{print \$1";"\$2";"\$(NF-1)";"\$NF}' | grep -i "adfs\\|affs\\|autofs\\|btrfs\\|cifs\\|coda\\|coherent\\|efs\\|ext\\|hfs\\|hfsplus\\|hpfs\\|jfs\\|minix\\|msdos\\|ncpfs\\|nfs\\|nfs4\\|ntfs\\|proc\\|qnx4\\|reiserfs\\|smbfs\\|sysv\\|ubifs\\|udf\\|ufs\\|umsdos\\|usbfs\\|vfat\\|xenix\\|xfs\\|xiafs"`;
chomp (@lines);
# To skip indicated filesystems
@ -57,12 +57,16 @@ else
{
if (substr($fs,0,1) eq '-')
{
$excluded_filesystems{substr($fs,1,)} = '-1%';
my $mount_name=substr($fs,1,);
my @mount_all= split /\n/, `df -khTP | tail -n +2 | awk '{print \$7}'| grep -i "$mount_name"`;
foreach (@mount_all){
$excluded_filesystems{$_} = '-1%';
}
}
else
{
my @linesmanual = split /\n/, `df -khTP | tail -n +2 | awk '{print \$1";"\$2";"\$(NF-1)";"\$NF}' | grep -i $fs`;
chomp (@linesmanual);
$filesystems{$fs} = '-1%';

View File

@ -1,6 +1,6 @@
# Base config file for Pandora FMS Windows Agent
# (c) 2006-2017 Artica Soluciones Tecnologicas
# Version 7.0NG.742
# Version 7.0NG.744
# This program is Free Software, you can redistribute it and/or modify it
# under the terms of the GNU General Public Licence as published by the Free Software

File diff suppressed because it is too large Load Diff

View File

@ -3,7 +3,7 @@ AllowLanguageSelection
{Yes}
AppName
{Pandora FMS Windows Agent v7.0NG.742}
{Pandora FMS Windows Agent v7.0NG.744}
ApplicationID
{17E3D2CF-CA02-406B-8A80-9D31C17BD08F}
@ -186,7 +186,7 @@ UpgradeApplicationID
{}
Version
{200127}
{200311}
ViewReadme
{Yes}

View File

@ -31,6 +31,24 @@
using namespace std;
/**
* Checks if a directory exists.
*
* @param dirpath Path of the directory to check.
*
* @retval True if the directory exists.
**/
bool
Pandora_File::dirExists (const string dirpath) {
struct stat info;
if (stat(dirpath.c_str(), &info) == 0 && (info.st_mode & S_IFDIR)) {
return true;
}
return false;
}
/**
* Checks if a file exists.
*

View File

@ -51,6 +51,7 @@ namespace Pandora_File {
class Delete_Error : Pandora_File::File_Exception {
};
bool dirExists (const string dirpath);
bool fileExists (const string filename);
int readFile (const string filepath, string &result);
int readBinFile (const string filepath, char **buffer);

View File

@ -30,7 +30,7 @@ using namespace Pandora;
using namespace Pandora_Strutils;
#define PATH_SIZE _MAX_PATH+1
#define PANDORA_VERSION ("7.0NG.742(Build 200127)")
#define PANDORA_VERSION ("7.0NG.744(Build 200311)")
string pandora_path;
string pandora_dir;

View File

@ -47,6 +47,7 @@
using namespace std;
using namespace Pandora;
using namespace Pandora_File;
using namespace Pandora_Modules;
using namespace Pandora_Strutils;
@ -251,6 +252,22 @@ Pandora_Windows_Service::pandora_init (bool reload_modules) {
}
}
/* Set up the secondary buffer. */
if (conf->getValue ("secondary_mode") == "always") {
string secondary_temporal = conf->getValue("temporal");
if (secondary_temporal[secondary_temporal.length () - 1] != '\\') {
secondary_temporal += "\\";
}
secondary_temporal += SECONDARY_DIR;
if (!dirExists(secondary_temporal) && mkdir (secondary_temporal.c_str()) != 0) {
pandoraLog ("Pandora_Windows_Service::pandora_init: Can not create directory %s", secondary_temporal.c_str());
}
conf->setValue("secondary_temporal", secondary_temporal);
}
else if (conf->getValue ("secondary_mode") == "on_error") {
conf->setValue("secondary_temporal", conf->getValue("temporal"));
}
// Set the intensive interval
if (intensive_interval != "") {
try {
@ -980,7 +997,7 @@ Pandora_Windows_Service::copyFtpDataFile (string host,
}
int
Pandora_Windows_Service::copyDataFile (string filename)
Pandora_Windows_Service::copyDataFile (string filename, bool secondary_buffer)
{
int rc = 0, timeout;
unsigned char copy_to_secondary = 0;
@ -1020,19 +1037,18 @@ Pandora_Windows_Service::copyDataFile (string filename)
if (rc == 0) {
pandoraDebug ("Successfuly copied XML file to server.");
} else if (conf->getValue ("secondary_mode") == "on_error") {
copy_to_secondary = 1;
}
if (conf->getValue ("secondary_mode") == "always") {
copy_to_secondary = 1;
}
return rc;
}
int
Pandora_Windows_Service::copyToSecondary (string filename, bool secondary_buffer)
{
int rc = 0, timeout;
unsigned char copy_to_secondary = 0;
string mode, host, remote_path;
// Exit unless we have to send the file to a secondary server
if (copy_to_secondary == 0) {
return rc;
}
// Read secondary server configuration
mode = conf->getValue ("secondary_transfer_mode");
host = conf->getValue ("secondary_server_ip");
@ -1042,6 +1058,12 @@ Pandora_Windows_Service::copyDataFile (string filename)
timeout = 30;
}
// Adjust the path for the secondary buffer.
if (secondary_buffer) {
filename.insert(0, "\\");
filename.insert(0, SECONDARY_DIR);
}
// Fix remote path
if (mode != "local" && remote_path[remote_path.length () - 1] != '/') {
remote_path += "/";
@ -1061,7 +1083,7 @@ Pandora_Windows_Service::copyDataFile (string filename)
} else {
rc = PANDORA_EXCEPTION;
pandoraLog ("Invalid transfer mode: %s."
"Please recheck transfer_mode option "
"Please recheck secondary_transfer_mode option "
"in configuration file.");
}
@ -1671,10 +1693,11 @@ Pandora_Windows_Service::checkConfig (string file) {
int
Pandora_Windows_Service::sendXml (Pandora_Module_List *modules) {
int rc = 0, xml_buffer;
int rc = 0, rc_sec = 0, xml_buffer;
string data_xml;
string xml_filename, random_integer;
string tmp_filename, tmp_filepath;
string secondary_filename, secondary_filepath;
string encoding;
string ehorus_conf, eh_key;
static HANDLE mutex = 0;
@ -1779,8 +1802,19 @@ Pandora_Windows_Service::sendXml (Pandora_Module_List *modules) {
/* Allways reports to Data Server*/
rc = this->copyDataFile (tmp_filename);
if (rc != 0 && conf->getValue("secondary_mode") == "on_error") {
rc = this->copyToSecondary (tmp_filename, false);
} else if (conf->getValue("secondary_mode") == "always") {
rc_sec = this->copyToSecondary (tmp_filename, false);
/* Secondary buffer. */
if (rc_sec != 0 && xml_buffer == 1 && (GetDiskFreeSpaceEx (conf->getValue ("secondary_temporal").c_str (), &free_bytes, NULL, NULL) != 0 && free_bytes.QuadPart >= min_free_bytes)) {
secondary_filepath = conf->getValue ("secondary_temporal") + "\\" + tmp_filename;
CopyFile (tmp_filepath.c_str(), secondary_filepath.c_str(), false);
}
}
/* Delete the file if successfully copied, buffer disabled or not enough space available */
/* Primary buffer. Delete the file if successfully copied, buffer disabled or not enough space available. */
if (rc == 0 || xml_buffer == 0 || (GetDiskFreeSpaceEx (tmp_filepath.c_str (), &free_bytes, NULL, NULL) != 0 && free_bytes.QuadPart < min_free_bytes)) {
/* Rename the file if debug mode is enabled*/
if (getPandoraDebug ()) {
@ -1793,18 +1827,28 @@ Pandora_Windows_Service::sendXml (Pandora_Module_List *modules) {
/* Send any buffered data files */
if (xml_buffer == 1) {
this->sendBufferedXml (conf->getValue ("temporal"));
this->sendBufferedXml (conf->getValue ("temporal"), &Pandora_Windows_Service::copyDataFile, false);
if (conf->getValue ("secondary_mode") == "always") {
this->sendBufferedXml (conf->getValue ("secondary_temporal"), &Pandora_Windows_Service::copyToSecondary, true);
} else {
this->sendBufferedXml (conf->getValue ("temporal"), &Pandora_Windows_Service::copyToSecondary, false);
}
}
ReleaseMutex (mutex);
}
void
Pandora_Windows_Service::sendBufferedXml (string path) {
Pandora_Windows_Service::sendBufferedXml (string path, copy_func_p copy_func, bool secondary_buffer) {
string base_path = path, file_path;
WIN32_FIND_DATA file_data;
HANDLE find;
/* Nothing to do. */
if (path == "") {
return;
}
if (base_path[base_path.length () - 1] != '\\') {
base_path += "\\";
}
@ -1817,7 +1861,7 @@ Pandora_Windows_Service::sendBufferedXml (string path) {
}
/* Send data files as long as there are no errors */
if (this->copyDataFile (file_data.cFileName) != 0) {
if ((this->*copy_func) (file_data.cFileName, secondary_buffer) != 0) {
FindClose(find);
return;
}
@ -1832,7 +1876,7 @@ Pandora_Windows_Service::sendBufferedXml (string path) {
Pandora_File::removeFile (base_path + file_data.cFileName);
while (FindNextFile(find, &file_data) != 0) {
if (this->copyDataFile (file_data.cFileName) != 0) {
if ((this->*copy_func) (file_data.cFileName, secondary_buffer) != 0) {
FindClose(find);
return;
}

View File

@ -30,6 +30,7 @@
#define FTP_DEFAULT_PORT 21
#define SSH_DEFAULT_PORT 22
#define SECONDARY_DIR "secondary" /* Path of the secondary buffer relative to the primary buffer. */
using namespace std;
using namespace Pandora_Modules;
@ -39,6 +40,7 @@ namespace Pandora {
* Class to implement the Pandora Windows service.
*/
class Pandora_Windows_Service : public Windows_Service {
typedef int (Pandora::Pandora_Windows_Service::*copy_func_p)(string, bool);
private:
Pandora_Agent_Conf *conf;
Pandora_Module_List *modules;
@ -54,7 +56,8 @@ namespace Pandora {
list<string> collection_disk;
string getXmlHeader ();
int copyDataFile (string filename);
int copyDataFile (string filename, bool secondary_buffer = false);
int copyToSecondary (string filename, bool secondary_buffer = true);
string getValueFromCmdExec (string cmd_exec, int timeout);
string getAgentNameFromCmdExec (string cmd_exec);
string getCoordinatesFromCmdExec (string cmd_exec);
@ -115,7 +118,7 @@ namespace Pandora {
void start ();
int sendXml (Pandora_Module_List *modules);
void sendBufferedXml (string path);
void sendBufferedXml (string path, copy_func_p copy_func, bool secondary_buffer);
Pandora_Agent_Conf *getConf ();
string getEHKey (string ehorus_conf);
long getInterval ();

View File

@ -11,7 +11,7 @@ BEGIN
VALUE "LegalCopyright", "Artica ST"
VALUE "OriginalFilename", "PandoraAgent.exe"
VALUE "ProductName", "Pandora FMS Windows Agent"
VALUE "ProductVersion", "(7.0NG.742(Build 200127))"
VALUE "ProductVersion", "(7.0NG.744(Build 200311))"
VALUE "FileVersion", "1.0.0.0"
END
END

View File

@ -0,0 +1,2 @@
# pandora disable listing
Options -Indexes

View File

@ -1,5 +1,5 @@
package: pandorafms-console
Version: 7.0NG.742-200127
Version: 7.0NG.744-200311
Architecture: all
Priority: optional
Section: admin

View File

@ -14,7 +14,7 @@
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
pandora_version="7.0NG.742-200127"
pandora_version="7.0NG.744-200311"
package_pear=0
package_pandora=1
@ -44,8 +44,15 @@ then
whereis dpkg-deb | cut -d":" -f2 | grep dpkg-deb > /dev/null
if [ $? = 1 ]
then
echo "No found \"dpkg-deb\" aplication, please install."
exit 1
if [ "$DPKG_DEB" == "" ]; then
echo "No found \"dpkg-deb\" aplication, please install."
exit 1
fi
echo ">> Using dockerized version of dpkg-deb: "
echo " $DPKG_DEB"
# Use dockerized app.
USE_DOCKER_APP=1
else
echo "Found \"dpkg-debs\"."
fi
@ -70,15 +77,15 @@ then
else
echo "Found \"fakeroot\"."
fi
fi
whereis dpkg-buildpackage | cut -d":" -f2 | grep dpkg-buildpackage > /dev/null
if [ $? = 1 ]
then
echo " \"dpkg-buildpackage\" aplication not found, please install."
exit 1
else
echo "Found \"dpkg-buildpackage\"."
whereis dpkg-buildpackage | cut -d":" -f2 | grep dpkg-buildpackage > /dev/null
if [ $? = 1 ]
then
echo " \"dpkg-buildpackage\" aplication not found, please install."
exit 1
else
echo "Found \"dpkg-buildpackage\"."
fi
fi
cd ..
@ -141,7 +148,11 @@ then
echo "END"
echo "Make the package \"Pandorafms console\"."
dpkg-deb --build temp_package
if [ "$USE_DOCKER_APP" == "1" ]; then
eval $DPKG_DEB --build temp_package
else
dpkg-deb --build temp_package
fi
mv temp_package.deb pandorafms.console_$pandora_version.deb
fi

View File

@ -1,3 +1,11 @@
Order deny,allow
Deny from All
Allow from localhost
#Order deny,allow
#Deny from All
#Allow from localhost
#pandora disable phpexec
<FilesMatch "\.(txt|php)$">
Deny from all
Allow from localhost
</FilesMatch>
php_flag engine off

View File

@ -0,0 +1,938 @@
-- *****************************************************************
-- CISCO-ENVMON-MIB.my: CISCO Environmental Monitor MIB file
--
-- November 1994 Sandra C. Durham/Jeffrey T. Johnson
--
-- Copyright (c) 1994-2003, 2004 by cisco Systems, Inc.
-- All rights reserved.
--
-- *****************************************************************
--
CISCO-ENVMON-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY,
OBJECT-TYPE,
NOTIFICATION-TYPE,
Gauge32,
Integer32
FROM SNMPv2-SMI
TEXTUAL-CONVENTION,
DisplayString,
TruthValue
FROM SNMPv2-TC
MODULE-COMPLIANCE,
OBJECT-GROUP,
NOTIFICATION-GROUP
FROM SNMPv2-CONF
ciscoMgmt
FROM CISCO-SMI;
ciscoEnvMonMIB MODULE-IDENTITY
LAST-UPDATED "200312010000Z"
ORGANIZATION "Cisco Systems, Inc."
CONTACT-INFO
" Cisco Systems
Customer Service
Postal: 170 W Tasman Drive
San Jose, CA 95134
USA
Tel: +1 800 553-NETS
E-mail: cs-snmp@cisco.com"
DESCRIPTION
"The MIB module to describe the status of the Environmental
Monitor on those devices which support one."
REVISION "200312010000Z"
DESCRIPTION
"Added c37xx (13) and other (14) as values for
ciscoEnvMonPresent"
REVISION "200311250000Z"
DESCRIPTION
"Added ciscoEnvMonMIBMiscNotifGroup."
REVISION "200210150000Z"
DESCRIPTION
"Added c7600(12) as values for ciscoEnvMonPresent"
REVISION "200207170000Z"
DESCRIPTION
"Added optional groups ciscoEnvMonEnableStatChangeGroup
and ciscoEnvMonStatChangeNotifGroup."
REVISION "200202040000Z"
DESCRIPTION
"Added osr7600(11) as values
for ciscoEnvMonPresent"
REVISION "200108300000Z"
DESCRIPTION
"Added c10000(10) as values for ciscoEnvMonPresent"
REVISION "200108160000Z"
DESCRIPTION
"Added cat4000(9) as values for ciscoEnvMonPresent"
REVISION "200105070000Z"
DESCRIPTION
"Added cat6000(7),ubr7200(8)
as values for ciscoEnvMonPresent"
REVISION "200001310000Z"
DESCRIPTION
"Add notFunctioning to CiscoEnvMonState.
"
REVISION "9810220000Z"
DESCRIPTION
"Renamed enumerated value internalRPS(5) as
internalRedundant(5) and added description for
ciscoEnvMonSupplySource enumerated values.
"
REVISION "9808050000Z"
DESCRIPTION
"Add enumerated value internalRPS(5) to
ciscoEnvMonSupplySource.
"
REVISION "9611120000Z"
DESCRIPTION
"Add monitoring support for c3600 series router"
REVISION "9508150000Z"
DESCRIPTION
"Specify a correct (non-negative) range for several
index objects."
REVISION "9503130000Z"
DESCRIPTION
"Miscellaneous changes including monitoring support
for c7000 series redundant power supplies."
::= { ciscoMgmt 13 }
CiscoEnvMonState ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Represents the state of a device being monitored.
Valid values are:
normal(1): the environment is good, such as low
temperature.
warning(2): the environment is bad, such as temperature
above normal operation range but not too
high.
critical(3): the environment is very bad, such as
temperature much higher than normal
operation limit.
shutdown(4): the environment is the worst, the system
should be shutdown immediately.
notPresent(5): the environmental monitor is not present,
such as temperature sensors do not exist.
notFunctioning(6): the environmental monitor does not
function properly, such as a temperature
sensor generates a abnormal data like
1000 C.
"
SYNTAX INTEGER {
normal(1),
warning(2),
critical(3),
shutdown(4),
notPresent(5),
notFunctioning(6)
}
CiscoSignedGauge ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Represents the current value of an entity, as a signed
integer."
SYNTAX Integer32
ciscoEnvMonObjects OBJECT IDENTIFIER ::= { ciscoEnvMonMIB 1 }
ciscoEnvMonPresent OBJECT-TYPE
SYNTAX INTEGER {
oldAgs (1),
ags (2),
c7000 (3),
ci (4),
cAccessMon (6),
cat6000 (7),
ubr7200 (8),
cat4000 (9),
c10000 (10),
osr7600(11),
c7600 (12),
c37xx (13),
other (14)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The type of environmental monitor located in the chassis.
An oldAgs environmental monitor card is identical to an ags
environmental card except that it is not capable of supplying
data, and hence no instance of the remaining objects in this
MIB will be returned in response to an SNMP query. Note that
only a firmware upgrade is required to convert an oldAgs into
an ags card."
::= { ciscoEnvMonObjects 1 }
ciscoEnvMonVoltageStatusTable OBJECT-TYPE
SYNTAX SEQUENCE OF CiscoEnvMonVoltageStatusEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The table of voltage status maintained by the environmental
monitor."
::= { ciscoEnvMonObjects 2 }
ciscoEnvMonVoltageStatusEntry OBJECT-TYPE
SYNTAX CiscoEnvMonVoltageStatusEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry in the voltage status table, representing the status
of the associated testpoint maintained by the environmental
monitor."
INDEX { ciscoEnvMonVoltageStatusIndex }
::= { ciscoEnvMonVoltageStatusTable 1 }
CiscoEnvMonVoltageStatusEntry ::=
SEQUENCE {
ciscoEnvMonVoltageStatusIndex Integer32,
ciscoEnvMonVoltageStatusDescr DisplayString,
ciscoEnvMonVoltageStatusValue CiscoSignedGauge,
ciscoEnvMonVoltageThresholdLow Integer32,
ciscoEnvMonVoltageThresholdHigh Integer32,
ciscoEnvMonVoltageLastShutdown Integer32,
ciscoEnvMonVoltageState CiscoEnvMonState
}
ciscoEnvMonVoltageStatusIndex OBJECT-TYPE
SYNTAX Integer32 (0..2147483647)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Unique index for the testpoint being instrumented.
This index is for SNMP purposes only, and has no
intrinsic meaning."
::= { ciscoEnvMonVoltageStatusEntry 1 }
ciscoEnvMonVoltageStatusDescr OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..32))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Textual description of the testpoint being instrumented.
This description is a short textual label, suitable as a
human-sensible identification for the rest of the
information in the entry."
::= { ciscoEnvMonVoltageStatusEntry 2 }
ciscoEnvMonVoltageStatusValue OBJECT-TYPE
SYNTAX CiscoSignedGauge
UNITS "millivolts"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The current measurement of the testpoint being instrumented."
::= { ciscoEnvMonVoltageStatusEntry 3 }
ciscoEnvMonVoltageThresholdLow OBJECT-TYPE
SYNTAX Integer32
UNITS "millivolts"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The lowest value that the associated instance of the object
ciscoEnvMonVoltageStatusValue may obtain before an emergency
shutdown of the managed device is initiated."
::= { ciscoEnvMonVoltageStatusEntry 4 }
ciscoEnvMonVoltageThresholdHigh OBJECT-TYPE
SYNTAX Integer32
UNITS "millivolts"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The highest value that the associated instance of the object
ciscoEnvMonVoltageStatusValue may obtain before an emergency
shutdown of the managed device is initiated."
::= { ciscoEnvMonVoltageStatusEntry 5 }
ciscoEnvMonVoltageLastShutdown OBJECT-TYPE
SYNTAX Integer32
UNITS "millivolts"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of the associated instance of the object
ciscoEnvMonVoltageStatusValue at the time an emergency
shutdown of the managed device was last initiated. This
value is stored in non-volatile RAM and hence is able to
survive the shutdown."
::= { ciscoEnvMonVoltageStatusEntry 6 }
ciscoEnvMonVoltageState OBJECT-TYPE
SYNTAX CiscoEnvMonState
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The current state of the testpoint being instrumented."
::= { ciscoEnvMonVoltageStatusEntry 7 }
ciscoEnvMonTemperatureStatusTable OBJECT-TYPE
SYNTAX SEQUENCE OF CiscoEnvMonTemperatureStatusEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The table of ambient temperature status maintained by the
environmental monitor."
::= { ciscoEnvMonObjects 3 }
ciscoEnvMonTemperatureStatusEntry OBJECT-TYPE
SYNTAX CiscoEnvMonTemperatureStatusEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry in the ambient temperature status table, representing
the status of the associated testpoint maintained by the
environmental monitor."
INDEX { ciscoEnvMonTemperatureStatusIndex }
::= { ciscoEnvMonTemperatureStatusTable 1 }
CiscoEnvMonTemperatureStatusEntry ::=
SEQUENCE {
ciscoEnvMonTemperatureStatusIndex Integer32,
ciscoEnvMonTemperatureStatusDescr DisplayString,
ciscoEnvMonTemperatureStatusValue Gauge32,
ciscoEnvMonTemperatureThreshold Integer32,
ciscoEnvMonTemperatureLastShutdown Integer32,
ciscoEnvMonTemperatureState CiscoEnvMonState
}
ciscoEnvMonTemperatureStatusIndex OBJECT-TYPE
SYNTAX Integer32 (0..2147483647)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Unique index for the testpoint being instrumented.
This index is for SNMP purposes only, and has no
intrinsic meaning."
::= { ciscoEnvMonTemperatureStatusEntry 1 }
ciscoEnvMonTemperatureStatusDescr OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..32))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Textual description of the testpoint being instrumented.
This description is a short textual label, suitable as a
human-sensible identification for the rest of the
information in the entry."
::= { ciscoEnvMonTemperatureStatusEntry 2 }
ciscoEnvMonTemperatureStatusValue OBJECT-TYPE
SYNTAX Gauge32
UNITS "degrees Celsius"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The current measurement of the testpoint being instrumented."
::= { ciscoEnvMonTemperatureStatusEntry 3 }
ciscoEnvMonTemperatureThreshold OBJECT-TYPE
SYNTAX Integer32
UNITS "degrees Celsius"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The highest value that the associated instance of the
object ciscoEnvMonTemperatureStatusValue may obtain
before an emergency shutdown of the managed device is
initiated."
::= { ciscoEnvMonTemperatureStatusEntry 4 }
ciscoEnvMonTemperatureLastShutdown OBJECT-TYPE
SYNTAX Integer32
UNITS "degrees Celsius"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of the associated instance of the object
ciscoEnvMonTemperatureStatusValue at the time an emergency
shutdown of the managed device was last initiated. This
value is stored in non-volatile RAM and hence is able to
survive the shutdown."
::= { ciscoEnvMonTemperatureStatusEntry 5 }
ciscoEnvMonTemperatureState OBJECT-TYPE
SYNTAX CiscoEnvMonState
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The current state of the testpoint being instrumented."
::= { ciscoEnvMonTemperatureStatusEntry 6 }
ciscoEnvMonFanStatusTable OBJECT-TYPE
SYNTAX SEQUENCE OF CiscoEnvMonFanStatusEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The table of fan status maintained by the environmental
monitor."
::= { ciscoEnvMonObjects 4 }
ciscoEnvMonFanStatusEntry OBJECT-TYPE
SYNTAX CiscoEnvMonFanStatusEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry in the fan status table, representing the status of
the associated fan maintained by the environmental monitor."
INDEX { ciscoEnvMonFanStatusIndex }
::= { ciscoEnvMonFanStatusTable 1 }
CiscoEnvMonFanStatusEntry ::=
SEQUENCE {
ciscoEnvMonFanStatusIndex Integer32,
ciscoEnvMonFanStatusDescr DisplayString,
ciscoEnvMonFanState CiscoEnvMonState
}
ciscoEnvMonFanStatusIndex OBJECT-TYPE
SYNTAX Integer32 (0..2147483647)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Unique index for the fan being instrumented.
This index is for SNMP purposes only, and has no
intrinsic meaning."
::= { ciscoEnvMonFanStatusEntry 1 }
ciscoEnvMonFanStatusDescr OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..32))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Textual description of the fan being instrumented.
This description is a short textual label, suitable as a
human-sensible identification for the rest of the
information in the entry."
::= { ciscoEnvMonFanStatusEntry 2 }
ciscoEnvMonFanState OBJECT-TYPE
SYNTAX CiscoEnvMonState
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The current state of the fan being instrumented."
::= { ciscoEnvMonFanStatusEntry 3 }
ciscoEnvMonSupplyStatusTable OBJECT-TYPE
SYNTAX SEQUENCE OF CiscoEnvMonSupplyStatusEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The table of power supply status maintained by the
environmental monitor card."
::= { ciscoEnvMonObjects 5 }
ciscoEnvMonSupplyStatusEntry OBJECT-TYPE
SYNTAX CiscoEnvMonSupplyStatusEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry in the power supply status table, representing the
status of the associated power supply maintained by the
environmental monitor card."
INDEX { ciscoEnvMonSupplyStatusIndex }
::= { ciscoEnvMonSupplyStatusTable 1 }
CiscoEnvMonSupplyStatusEntry ::=
SEQUENCE {
ciscoEnvMonSupplyStatusIndex Integer32,
ciscoEnvMonSupplyStatusDescr DisplayString,
ciscoEnvMonSupplyState CiscoEnvMonState,
ciscoEnvMonSupplySource INTEGER
}
ciscoEnvMonSupplyStatusIndex OBJECT-TYPE
SYNTAX Integer32 (0..2147483647)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Unique index for the power supply being instrumented.
This index is for SNMP purposes only, and has no
intrinsic meaning."
::= { ciscoEnvMonSupplyStatusEntry 1 }
ciscoEnvMonSupplyStatusDescr OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..32))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Textual description of the power supply being instrumented.
This description is a short textual label, suitable as a
human-sensible identification for the rest of the
information in the entry."
::= { ciscoEnvMonSupplyStatusEntry 2 }
ciscoEnvMonSupplyState OBJECT-TYPE
SYNTAX CiscoEnvMonState
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The current state of the power supply being instrumented."
::= { ciscoEnvMonSupplyStatusEntry 3 }
ciscoEnvMonSupplySource OBJECT-TYPE
SYNTAX INTEGER {
unknown(1),
ac(2),
dc(3),
externalPowerSupply(4),
internalRedundant(5)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The power supply source.
unknown - Power supply source unknown
ac - AC power supply
dc - DC power supply
externalPowerSupply - External power supply
internalRedundant - Internal redundant power supply
"
::= { ciscoEnvMonSupplyStatusEntry 4 }
ciscoEnvMonAlarmContacts OBJECT-TYPE
SYNTAX BITS {
minorVisual(0),
majorVisual(1),
criticalVisual(2),
minorAudible(3),
majorAudible(4),
criticalAudible(5),
input(6)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Each bit is set to reflect the respective
alarm being set. The bit will be cleared
when the respective alarm is cleared."
::= { ciscoEnvMonObjects 6 }
ciscoEnvMonMIBNotificationEnables OBJECT IDENTIFIER ::= { ciscoEnvMonMIB 2 }
ciscoEnvMonEnableShutdownNotification OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This variable indicates whether the system
produces the ciscoEnvMonShutdownNotification. A false
value will prevent shutdown notifications
from being generated by this system."
DEFVAL { false }
::= { ciscoEnvMonMIBNotificationEnables 1 }
ciscoEnvMonEnableVoltageNotification OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-write
STATUS deprecated
DESCRIPTION
"This variable indicates whether the system
produces the ciscoEnvMonVoltageNotification. A false
value will prevent voltage notifications from being
generated by this system. This object is deprecated
in favour of ciscoEnvMonEnableStatChangeNotif."
DEFVAL { false }
::= { ciscoEnvMonMIBNotificationEnables 2 }
ciscoEnvMonEnableTemperatureNotification OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-write
STATUS deprecated
DESCRIPTION
"This variable indicates whether the system
produces the ciscoEnvMonTemperatureNotification.
A false value prevents temperature notifications
from being sent by this entity. This object is
deprecated in favour of
ciscoEnvMonEnableStatChangeNotif."
DEFVAL { false }
::= { ciscoEnvMonMIBNotificationEnables 3 }
ciscoEnvMonEnableFanNotification OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-write
STATUS deprecated
DESCRIPTION
"This variable indicates whether the system
produces the ciscoEnvMonFanNotification.
A false value prevents fan notifications
from being sent by this entity. This object is
deprecated in favour of
ciscoEnvMonEnableStatChangeNotif."
DEFVAL { false }
::= { ciscoEnvMonMIBNotificationEnables 4 }
ciscoEnvMonEnableRedundantSupplyNotification OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-write
STATUS deprecated
DESCRIPTION
"This variable indicates whether the system
produces the ciscoEnvMonRedundantSupplyNotification.
A false value prevents redundant supply notifications
from being generated by this system. This object is
deprecated in favour of
ciscoEnvMonEnableStatChangeNotif."
DEFVAL { false }
::= { ciscoEnvMonMIBNotificationEnables 5 }
ciscoEnvMonEnableStatChangeNotif OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This variable indicates whether the system
produces the ciscoEnvMonVoltStatusChangeNotif,
ciscoEnvMonTempStatusChangeNotif,
ciscoEnvMonFanStatusChangeNotif and
ciscoEnvMonSuppStatusChangeNotif. A false value will
prevent these notifications from being generated by
this system."
DEFVAL { false }
::= { ciscoEnvMonMIBNotificationEnables 6 }
-- the following two OBJECT IDENTIFIERS are used to define SNMPv2 Notifications
-- that are backward compatible with SNMPv1 Traps.
ciscoEnvMonMIBNotificationPrefix OBJECT IDENTIFIER ::= { ciscoEnvMonMIB 3 }
ciscoEnvMonMIBNotifications OBJECT IDENTIFIER ::= { ciscoEnvMonMIBNotificationPrefix 0 }
ciscoEnvMonShutdownNotification NOTIFICATION-TYPE
-- no OBJECTS
STATUS current
DESCRIPTION
"A ciscoEnvMonShutdownNotification is sent if the environmental
monitor detects a testpoint reaching a critical state
and is about to initiate a shutdown. This notification
contains no objects so that it may be encoded and sent in the
shortest amount of time possible. Even so, management
applications should not rely on receiving such a notification
as it may not be sent before the shutdown completes."
::= { ciscoEnvMonMIBNotifications 1 }
ciscoEnvMonVoltageNotification NOTIFICATION-TYPE
OBJECTS {
ciscoEnvMonVoltageStatusDescr,
ciscoEnvMonVoltageStatusValue,
ciscoEnvMonVoltageState
}
STATUS deprecated
DESCRIPTION
"A ciscoEnvMonVoltageNotification is sent if the voltage
measured at a given testpoint is outside the normal range
for the testpoint (i.e. is at the warning, critical, or
shutdown stage). Since such a notification is usually
generated before the shutdown state is reached, it can
convey more data and has a better chance of being sent
than does the ciscoEnvMonShutdownNotification.
This notification is deprecated in favour of
ciscoEnvMonVoltStatusChangeNotif."
::= { ciscoEnvMonMIBNotifications 2 }
ciscoEnvMonTemperatureNotification NOTIFICATION-TYPE
OBJECTS {
ciscoEnvMonTemperatureStatusDescr,
ciscoEnvMonTemperatureStatusValue,
ciscoEnvMonTemperatureState
}
STATUS deprecated
DESCRIPTION
"A ciscoEnvMonTemperatureNotification is sent if the
temperature measured at a given testpoint is outside
the normal range for the testpoint (i.e. is at the warning,
critical, or shutdown stage). Since such a Notification
is usually generated before the shutdown state is reached,
it can convey more data and has a better chance of being
sent than does the ciscoEnvMonShutdownNotification.
This notification is deprecated in favour of
ciscoEnvMonTempStatusChangeNotif."
::= { ciscoEnvMonMIBNotifications 3 }
ciscoEnvMonFanNotification NOTIFICATION-TYPE
OBJECTS {
ciscoEnvMonFanStatusDescr,
ciscoEnvMonFanState
}
STATUS deprecated
DESCRIPTION
"A ciscoEnvMonFanNotification is sent if any one of
the fans in the fan array (where extant) fails.
Since such a notification is usually generated before
the shutdown state is reached, it can convey more
data and has a better chance of being sent
than does the ciscoEnvMonShutdownNotification.
This notification is deprecated in favour of
ciscoEnvMonFanStatusChangeNotif."
::= { ciscoEnvMonMIBNotifications 4 }
ciscoEnvMonRedundantSupplyNotification NOTIFICATION-TYPE
OBJECTS {
ciscoEnvMonSupplyStatusDescr,
ciscoEnvMonSupplyState
}
STATUS deprecated
DESCRIPTION
"A ciscoEnvMonRedundantSupplyNotification is sent if
the redundant power supply (where extant) fails.
Since such a notification is usually generated before
the shutdown state is reached, it can convey more
data and has a better chance of being sent
than does the ciscoEnvMonShutdownNotification.
This notification is deprecated in favour of
ciscoEnvMonSuppStatusChangeNotif."
::= { ciscoEnvMonMIBNotifications 5 }
ciscoEnvMonVoltStatusChangeNotif NOTIFICATION-TYPE
OBJECTS {
ciscoEnvMonVoltageStatusDescr,
ciscoEnvMonVoltageStatusValue,
ciscoEnvMonVoltageState
}
STATUS current
DESCRIPTION
"A ciscoEnvMonVoltStatusChangeNotif is sent if there is
change in the state of a device being monitored
by ciscoEnvMonVoltageState."
::= { ciscoEnvMonMIBNotifications 6 }
ciscoEnvMonTempStatusChangeNotif NOTIFICATION-TYPE
OBJECTS {
ciscoEnvMonTemperatureStatusDescr,
ciscoEnvMonTemperatureStatusValue,
ciscoEnvMonTemperatureState
}
STATUS current
DESCRIPTION
"A ciscoEnvMonTempStatusChangeNotif is sent if there
is change in the state of a device being monitored
by ciscoEnvMonTemperatureState."
::= { ciscoEnvMonMIBNotifications 7 }
ciscoEnvMonFanStatusChangeNotif NOTIFICATION-TYPE
OBJECTS {
ciscoEnvMonFanStatusDescr,
ciscoEnvMonFanState
}
STATUS current
DESCRIPTION
"A ciscoEnvMonFanStatusChangeNotif is sent if there
is change in the state of a device being monitored
by ciscoEnvMonFanState."
::= { ciscoEnvMonMIBNotifications 8 }
ciscoEnvMonSuppStatusChangeNotif NOTIFICATION-TYPE
OBJECTS {
ciscoEnvMonSupplyStatusDescr,
ciscoEnvMonSupplyState
}
STATUS current
DESCRIPTION
"A ciscoEnvMonSupplyStatChangeNotif is sent if there
is change in the state of a device being monitored
by ciscoEnvMonSupplyState."
::= { ciscoEnvMonMIBNotifications 9 }
-- conformance information
ciscoEnvMonMIBConformance OBJECT IDENTIFIER ::= { ciscoEnvMonMIB 4 }
ciscoEnvMonMIBCompliances OBJECT IDENTIFIER ::= { ciscoEnvMonMIBConformance 1 }
ciscoEnvMonMIBGroups OBJECT IDENTIFIER ::= { ciscoEnvMonMIBConformance 2 }
-- compliance statements
ciscoEnvMonMIBCompliance MODULE-COMPLIANCE
STATUS deprecated
DESCRIPTION
"The compliance statement for entities which implement
the Cisco Environmental Monitor MIB. This is
deprecated and new compliance
ciscoEnvMonMIBComplianceRev1 is added."
MODULE -- this module
MANDATORY-GROUPS { ciscoEnvMonMIBGroup }
::= { ciscoEnvMonMIBCompliances 1 }
ciscoEnvMonMIBComplianceRev1 MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"The compliance statement for entities which implement
the Cisco Environmental Monitor MIB."
MODULE -- this module
MANDATORY-GROUPS { ciscoEnvMonMIBGroupRev,
ciscoEnvMonMIBNotifGroup }
GROUP ciscoEnvMonEnableStatChangeGroup
DESCRIPTION
"The ciscoEnvMonEnableStatChangeGroup is optional.
This group is applicable for implementations which
need status change notifications for environmental
monitoring."
GROUP ciscoEnvMonStatChangeNotifGroup
DESCRIPTION
"The ciscoEnvMonStatChangeNotifGroup is optional.
This group is applicable for implementations which
need status change notifications for environmental
monitoring."
::= { ciscoEnvMonMIBCompliances 2 }
-- units of conformance
ciscoEnvMonMIBGroup OBJECT-GROUP
OBJECTS {
ciscoEnvMonPresent,
ciscoEnvMonVoltageStatusDescr,
ciscoEnvMonVoltageStatusValue,
ciscoEnvMonVoltageThresholdLow,
ciscoEnvMonVoltageThresholdHigh,
ciscoEnvMonVoltageLastShutdown,
ciscoEnvMonVoltageState,
ciscoEnvMonTemperatureStatusDescr,
ciscoEnvMonTemperatureStatusValue,
ciscoEnvMonTemperatureThreshold,
ciscoEnvMonTemperatureLastShutdown,
ciscoEnvMonTemperatureState,
ciscoEnvMonFanStatusDescr,
ciscoEnvMonFanState,
ciscoEnvMonSupplyStatusDescr,
ciscoEnvMonSupplyState,
ciscoEnvMonSupplySource,
ciscoEnvMonAlarmContacts,
ciscoEnvMonEnableShutdownNotification,
ciscoEnvMonEnableVoltageNotification,
ciscoEnvMonEnableTemperatureNotification,
ciscoEnvMonEnableFanNotification,
ciscoEnvMonEnableRedundantSupplyNotification
}
STATUS deprecated
DESCRIPTION
"A collection of objects providing environmental
monitoring capability to a cisco chassis. This group
is deprecated in favour of ciscoEnvMonMIBGroupRev."
::= { ciscoEnvMonMIBGroups 1 }
ciscoEnvMonMIBGroupRev OBJECT-GROUP
OBJECTS {
ciscoEnvMonPresent,
ciscoEnvMonVoltageStatusDescr,
ciscoEnvMonVoltageStatusValue,
ciscoEnvMonVoltageThresholdLow,
ciscoEnvMonVoltageThresholdHigh,
ciscoEnvMonVoltageLastShutdown,
ciscoEnvMonVoltageState,
ciscoEnvMonTemperatureStatusDescr,
ciscoEnvMonTemperatureStatusValue,
ciscoEnvMonTemperatureThreshold,
ciscoEnvMonTemperatureLastShutdown,
ciscoEnvMonTemperatureState,
ciscoEnvMonFanStatusDescr,
ciscoEnvMonFanState,
ciscoEnvMonSupplyStatusDescr,
ciscoEnvMonSupplyState,
ciscoEnvMonSupplySource,
ciscoEnvMonAlarmContacts,
ciscoEnvMonEnableShutdownNotification
}
STATUS current
DESCRIPTION
"A collection of objects providing environmental
monitoring capability to a cisco chassis."
::= { ciscoEnvMonMIBGroups 2 }
ciscoEnvMonEnableStatChangeGroup OBJECT-GROUP
OBJECTS {
ciscoEnvMonEnableStatChangeNotif
}
STATUS current
DESCRIPTION
"A collection of objects providing enabling/disabling
of the status change notifications for environmental
monitoring."
::= { ciscoEnvMonMIBGroups 3 }
ciscoEnvMonMIBNotifGroup NOTIFICATION-GROUP
NOTIFICATIONS {
ciscoEnvMonShutdownNotification
}
STATUS current
DESCRIPTION
"A notification group providing shutdown notification
for environmental monitoring. "
::= { ciscoEnvMonMIBGroups 4 }
ciscoEnvMonStatChangeNotifGroup NOTIFICATION-GROUP
NOTIFICATIONS {
ciscoEnvMonVoltStatusChangeNotif,
ciscoEnvMonTempStatusChangeNotif,
ciscoEnvMonFanStatusChangeNotif,
ciscoEnvMonSuppStatusChangeNotif
}
STATUS current
DESCRIPTION
"A collection of notifications providing the status
change for environmental monitoring."
::= { ciscoEnvMonMIBGroups 5 }
ciscoEnvMonMIBMiscNotifGroup NOTIFICATION-GROUP
NOTIFICATIONS {
ciscoEnvMonVoltageNotification,
ciscoEnvMonTemperatureNotification,
ciscoEnvMonFanNotification,
ciscoEnvMonRedundantSupplyNotification
}
STATUS deprecated
DESCRIPTION
"A collection of various notifications for the
enviromental monitoring mib module. The notifications
the group and the group are both in deprecated state.
The notifications in the group were deprecated in
favour of notifications in
ciscoEnvMonStatChangeNotifGroup."
::= { ciscoEnvMonMIBGroups 6 }
END

View File

@ -0,0 +1,475 @@
-- *****************************************************************
-- CISCO-MEMORY-POOL-MIB
--
-- February 1996, Jeffrey T. Johnson
--
-- July 2001, Seth Wang
--
-- Copyright (c) 2001, 2013 by cisco Systems Inc.
-- All rights reserved.
-- *****************************************************************
CISCO-MEMORY-POOL-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY,
OBJECT-TYPE,
Integer32,
Gauge32,
NOTIFICATION-TYPE
FROM SNMPv2-SMI
MODULE-COMPLIANCE,
OBJECT-GROUP,
NOTIFICATION-GROUP
FROM SNMPv2-CONF
TEXTUAL-CONVENTION,
DisplayString,
TruthValue
FROM SNMPv2-TC
Percent
FROM CISCO-QOS-PIB-MIB
ciscoMgmt
FROM CISCO-SMI;
ciscoMemoryPoolMIB MODULE-IDENTITY
LAST-UPDATED "201309180000Z"
ORGANIZATION "Cisco Systems, Inc."
CONTACT-INFO
"Postal: Cisco Systems, Inc.
170 West Tasman Drive
San Jose, CA 95134-1706
USA
Tel: +1 408 526 4000
E-mail: cs-snmp@cisco.com"
DESCRIPTION
"MIB module for monitoring memory pools"
REVISION "201309180000Z"
DESCRIPTION
"Added new notification ciscoMemoryPoolLowMemoryNotif.
Added new notification ciscoMemoryPoolLowMemoryRecoveryNotif.
Added new object ciscoMemoryPoolLowMemoryNotifEnable.
Added new object ciscoMemoryPoolLowMemoryNotifThreshold.
Added new group ciscoMemoryPoolGroupRev1 which deprecates
ciscoMemoryPoolGroup.
Added new compliance ciscoMemoryPoolComplianceRev2 which
deprecates ciscoMemoryPoolComplianceRev1."
REVISION "200107310000Z"
DESCRIPTION
"Added a new table, ciscoMemoryPoolUtilizationTable, which
provides information about memory utilization."
REVISION "199602010000Z"
DESCRIPTION
"Initial version of this MIB module."
::= { ciscoMgmt 48 }
CiscoMemoryPoolTypes ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Represents the different types of memory pools that
may be present in a managed device. Memory pools can
be roughly categorized into two groups, predefined
pools and dynamic pools. The following pool types
are currently predefined:
1: processor memory
2: i/o memory
3: pci memory
4: fast memory
5: multibus memory
Dynamic pools will have a pool type value greater than
any of the predefined types listed above.
Note that only the processor pool is required to be
supported by all devices. Support for other pool types
is dependent on the device being managed."
SYNTAX Integer32 (1..65535)
ciscoMemoryPoolObjects OBJECT IDENTIFIER
::= { ciscoMemoryPoolMIB 1 }
ciscoMemoryPoolTable OBJECT-TYPE
SYNTAX SEQUENCE OF CiscoMemoryPoolEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of memory pool monitoring entries."
::= { ciscoMemoryPoolObjects 1 }
ciscoMemoryPoolEntry OBJECT-TYPE
SYNTAX CiscoMemoryPoolEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry in the memory pool monitoring table."
INDEX { ciscoMemoryPoolType }
::= { ciscoMemoryPoolTable 1 }
CiscoMemoryPoolEntry ::= SEQUENCE {
ciscoMemoryPoolType CiscoMemoryPoolTypes,
ciscoMemoryPoolName DisplayString,
ciscoMemoryPoolAlternate Integer32,
ciscoMemoryPoolValid TruthValue,
ciscoMemoryPoolUsed Gauge32,
ciscoMemoryPoolFree Gauge32,
ciscoMemoryPoolLargestFree Gauge32,
ciscoMemoryPoolLowMemoryNotifThreshold Percent
}
ciscoMemoryPoolType OBJECT-TYPE
SYNTAX CiscoMemoryPoolTypes
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The type of memory pool for which this entry
contains information."
::= { ciscoMemoryPoolEntry 1 }
ciscoMemoryPoolName OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A textual name assigned to the memory pool. This
object is suitable for output to a human operator,
and may also be used to distinguish among the various
pool types, especially among dynamic pools."
::= { ciscoMemoryPoolEntry 2 }
ciscoMemoryPoolAlternate OBJECT-TYPE
SYNTAX Integer32 (0..65535)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Indicates whether or not this memory pool has an
alternate pool configured. Alternate pools are
used for fallback when the current pool runs out
of memory.
If an instance of this object has a value of zero,
then this pool does not have an alternate. Otherwise
the value of this object is the same as the value of
ciscoMemoryPoolType of the alternate pool."
::= { ciscoMemoryPoolEntry 3 }
ciscoMemoryPoolValid OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Indicates whether or not the remaining objects in
this entry contain accurate data. If an instance
of this object has the value false (which in and of
itself indicates an internal error condition), the
values of the remaining objects in the conceptual row
may contain inaccurate information (specifically, the
reported values may be less than the actual values)."
::= { ciscoMemoryPoolEntry 4 }
ciscoMemoryPoolUsed OBJECT-TYPE
SYNTAX Gauge32
UNITS "bytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Indicates the number of bytes from the memory pool
that are currently in use by applications on the
managed device."
::= { ciscoMemoryPoolEntry 5 }
ciscoMemoryPoolFree OBJECT-TYPE
SYNTAX Gauge32
UNITS "bytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Indicates the number of bytes from the memory pool
that are currently unused on the managed device.
Note that the sum of ciscoMemoryPoolUsed and
ciscoMemoryPoolFree is the total amount of memory
in the pool"
::= { ciscoMemoryPoolEntry 6 }
ciscoMemoryPoolLargestFree OBJECT-TYPE
SYNTAX Gauge32
UNITS "bytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Indicates the largest number of contiguous bytes
from the memory pool that are currently unused on
the managed device."
::= { ciscoMemoryPoolEntry 7 }
ciscoMemoryPoolLowMemoryNotifThreshold OBJECT-TYPE
SYNTAX Percent
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This object is used to indicate the threshold value in
percentage of free memory remaining in a memory pool.
If the free memory available goes below this threshold value and
if ciscoMemoryPoolLowMemoryNotifEnable is set to 'true',
ciscoMemoryPoolLowMemoryNotif will be generated. When the
available free memory comes back to the threshold value
ciscoMemoryPoolLowMemoryRecoveryNotif will be generated."
::= { ciscoMemoryPoolEntry 8 }
ciscoMemoryPoolUtilizationTable OBJECT-TYPE
SYNTAX SEQUENCE OF CiscoMemoryPoolUtilizationEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of memory pool utilization entries. Each of the
objects provides a general idea of how much of the memory
pool has been used over a given period of time. It is
determined as a weighted decaying average."
::= { ciscoMemoryPoolObjects 2 }
ciscoMemoryPoolUtilizationEntry OBJECT-TYPE
SYNTAX CiscoMemoryPoolUtilizationEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry in the memory pool utilization table."
AUGMENTS { ciscoMemoryPoolEntry }
::= { ciscoMemoryPoolUtilizationTable 1 }
CiscoMemoryPoolUtilizationEntry ::= SEQUENCE {
ciscoMemoryPoolUtilization1Min Percent,
ciscoMemoryPoolUtilization5Min Percent,
ciscoMemoryPoolUtilization10Min Percent
}
ciscoMemoryPoolUtilization1Min OBJECT-TYPE
SYNTAX Percent
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This is the memory pool utilization for 1 minute."
::= { ciscoMemoryPoolUtilizationEntry 1 }
ciscoMemoryPoolUtilization5Min OBJECT-TYPE
SYNTAX Percent
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This is the memory pool utilization for 5 minutes."
::= { ciscoMemoryPoolUtilizationEntry 2 }
ciscoMemoryPoolUtilization10Min OBJECT-TYPE
SYNTAX Percent
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This is the memory pool utilization for 10 minutes."
::= { ciscoMemoryPoolUtilizationEntry 3 }
ciscoMemoryPoolLowMemoryNotifEnable OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This object is used to enable or disable the generation of
notification when the available memory in the system has fallen
below ciscoMemoryPoolLowMemoryNotifThreshold and on recovery.
Setting this object to 'true' will generate
ciscoMemoryPoolLowMemoryNotif and
ciscoMemoryPoolLowMemoryRecoveryNotif.
Setting this object to 'false' will disable the generation of
ciscoMemoryPoolLowMemoryNotif and
ciscoMemoryPoolLowMemoryRecoveryNotif."
::= { ciscoMemoryPoolObjects 3 }
-- notifications
ciscoMemoryPoolNotifications OBJECT IDENTIFIER
::= { ciscoMemoryPoolMIB 2 }
ciscoMemoryPoolMIBNotificationPrefix OBJECT IDENTIFIER
::= { ciscoMemoryPoolNotifications 0 }
ciscoMemoryPoolLowMemoryNotif NOTIFICATION-TYPE
OBJECTS {
ciscoMemoryPoolName,
ciscoMemoryPoolUsed
}
STATUS current
DESCRIPTION
"This notification is generated when the percentage of free
memory in the system has fallen below
ciscoMemoryPoolLowMemoryNotifThreshold and when the value of
ciscoMemoryPoolLowMemoryNotifEnable is set to 'true'.
ciscoMemoryPoolName indicates the name of the memory pool for
which the notification is being generated.
ciscoMemoryPoolUsed indicates the used memory in bytes for the
memory pool."
::= { ciscoMemoryPoolMIBNotificationPrefix 1 }
ciscoMemoryPoolLowMemoryRecoveryNotif NOTIFICATION-TYPE
OBJECTS {
ciscoMemoryPoolName,
ciscoMemoryPoolUsed
}
STATUS current
DESCRIPTION
"This notification is generated when the percentage of free
memory in the system has returned to
ciscoMemoryPoolLowMemoryNotifThreshold after suffering from a
low memory. This notification is generated when the value of
ciscoMemoryPoolLowMemoryNotifEnable is set to 'true'. This
notification is generated as a recovery notification for
ciscoMemoryPoolLowMemoryNotif.
ciscoMemoryPoolName indicates the name of the memory pool for
which the notification is being generated.
ciscoMemoryPoolUsed indicates the used memory in bytes for the
memory pool."
::= { ciscoMemoryPoolMIBNotificationPrefix 2 }
-- conformance information
ciscoMemoryPoolConformance OBJECT IDENTIFIER
::= { ciscoMemoryPoolMIB 3 }
ciscoMemoryPoolCompliances OBJECT IDENTIFIER
::= { ciscoMemoryPoolConformance 1 }
ciscoMemoryPoolGroups OBJECT IDENTIFIER
::= { ciscoMemoryPoolConformance 2 }
-- compliance statements
ciscoMemoryPoolCompliance MODULE-COMPLIANCE
STATUS deprecated
DESCRIPTION
"The compliance statement for entities which implement
the Cisco Memory Pool MIB"
MODULE -- this module
MANDATORY-GROUPS { ciscoMemoryPoolGroup }
::= { ciscoMemoryPoolCompliances 1 }
ciscoMemoryPoolComplianceRev1 MODULE-COMPLIANCE
STATUS deprecated
DESCRIPTION
"The compliance statement for entities which implement
the Cisco Memory Pool MIB"
MODULE -- this module
MANDATORY-GROUPS { ciscoMemoryPoolGroup }
GROUP ciscoMemoryPoolUtilizationGroup
DESCRIPTION
"Per memory pool utilization statistics is mandatory for
the managed system that supports memory pool utilization."
::= { ciscoMemoryPoolCompliances 2 }
ciscoMemoryPoolComplianceRev2 MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"The compliance statement for entities which implement
the Cisco Memory Pool MIB"
MODULE -- this module
MANDATORY-GROUPS { ciscoMemoryPoolGroupRev1 }
GROUP ciscoMemoryPoolUtilizationGroup
DESCRIPTION
"Per memory pool utilization statistics is mandatory for
the managed system that supports memory pool utilization."
GROUP ciscoMemoryPoolNotificationGroup
DESCRIPTION
"ciscoMemoryPoolNotificationGroup is mandatory for the managed
system that supports memory pool notifications."
GROUP ciscoMemoryPoolNotificationCtrlGroup
DESCRIPTION
"ciscoMemoryPoolNotificationCtrlGroup is mandatory for the
managed system that supports memory pool notifications."
::= { ciscoMemoryPoolCompliances 3 }
-- units of conformance
ciscoMemoryPoolGroup OBJECT-GROUP
OBJECTS {
ciscoMemoryPoolName,
ciscoMemoryPoolAlternate,
ciscoMemoryPoolValid,
ciscoMemoryPoolUsed,
ciscoMemoryPoolFree,
ciscoMemoryPoolLargestFree
}
STATUS deprecated
DESCRIPTION
"A collection of objects providing memory pool monitoring."
::= { ciscoMemoryPoolGroups 1 }
ciscoMemoryPoolUtilizationGroup OBJECT-GROUP
OBJECTS {
ciscoMemoryPoolUtilization1Min,
ciscoMemoryPoolUtilization5Min,
ciscoMemoryPoolUtilization10Min
}
STATUS current
DESCRIPTION
"An optional group providing a collection of memory pool
utilization objects."
::= { ciscoMemoryPoolGroups 2 }
ciscoMemoryPoolNotificationGroup NOTIFICATION-GROUP
NOTIFICATIONS {
ciscoMemoryPoolLowMemoryNotif,
ciscoMemoryPoolLowMemoryRecoveryNotif
}
STATUS current
DESCRIPTION
"A collection of all the notifications supported in the
CISCO-MEMORY-POOL-MIB."
::= { ciscoMemoryPoolGroups 3 }
ciscoMemoryPoolNotificationCtrlGroup OBJECT-GROUP
OBJECTS { ciscoMemoryPoolLowMemoryNotifEnable }
STATUS current
DESCRIPTION
"A collection of all the notification control objects."
::= { ciscoMemoryPoolGroups 4 }
ciscoMemoryPoolGroupRev1 OBJECT-GROUP
OBJECTS {
ciscoMemoryPoolName,
ciscoMemoryPoolAlternate,
ciscoMemoryPoolValid,
ciscoMemoryPoolUsed,
ciscoMemoryPoolFree,
ciscoMemoryPoolLargestFree,
ciscoMemoryPoolLowMemoryNotifThreshold
}
STATUS current
DESCRIPTION
"A collection of objects providing memory pool monitoring."
::= { ciscoMemoryPoolGroups 5 }
END

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,566 @@
-- *****************************************************************
-- CISCO-SMI.my: Cisco Enterprise Structure of Management Information
--
-- April 1994, Jeffrey T. Johnson
--
-- Copyright (c) 1994-1997, 2001, 2009, 2012, 2016 by cisco Systems Inc.
-- All rights reserved.
--
-- ****************************************************************
CISCO-SMI DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY,
OBJECT-IDENTITY,
enterprises
FROM SNMPv2-SMI;
cisco MODULE-IDENTITY
LAST-UPDATED "201601150000Z"
ORGANIZATION "Cisco Systems, Inc."
CONTACT-INFO
"Cisco Systems
Customer Service
Postal: 170 West Tasman Drive
San Jose, CA 95134
USA
Tel: +1 800 553-NETS
E-mail: cs-snmp@cisco.com"
DESCRIPTION
"The Structure of Management Information for the
Cisco enterprise."
REVISION "201601150000Z"
DESCRIPTION
"Added ciscoLDAP under cisco"
REVISION "201208290000Z"
DESCRIPTION
"Added ciscoSMB under otherEnterprises"
REVISION "200902030000Z"
DESCRIPTION
"Added ciscoSB under otherEnterprises"
REVISION "200203210000Z"
DESCRIPTION
"Added ciscoPKI for PKI policy and extension OIDs"
REVISION "200105220000Z"
DESCRIPTION
"Added transport protocol domains."
REVISION "200011012246Z"
DESCRIPTION
"Added ciscoDomains to define new transports. Also added
ciscoCpeCIB, which will contain managed objects that
contribute to the CPE Configuration Information Base (CIB)."
REVISION "200001110000Z"
DESCRIPTION
"Added ciscoPolicy, ciscoPolicyAuto, ciscoPIB, and
ciscoPibToMib."
REVISION "9704090000Z"
DESCRIPTION
"Added ciscoPartnerProducts to generate sysObjectID
for partner platforms"
REVISION "9505160000Z"
DESCRIPTION
"New oid assignments for Cisco REPEATER MIB and others."
REVISION "9404262000Z"
DESCRIPTION
"Initial version of this MIB module."
::= { enterprises 9 }
-- assigned by IANA
ciscoProducts OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoProducts is the root OBJECT IDENTIFIER from
which sysObjectID values are assigned. Actual
values are defined in CISCO-PRODUCTS-MIB."
::= { cisco 1 }
local OBJECT-IDENTITY
STATUS current
DESCRIPTION
"Subtree beneath which pre-10.2 MIBS were built."
::= { cisco 2 }
temporary OBJECT-IDENTITY
STATUS current
DESCRIPTION
"Subtree beneath which pre-10.2 experiments were
placed."
::= { cisco 3 }
pakmon OBJECT-IDENTITY
STATUS current
DESCRIPTION
"reserved for pakmon"
::= { cisco 4 }
workgroup OBJECT-IDENTITY
STATUS current
DESCRIPTION
"subtree reserved for use by the Workgroup Business Unit"
::= { cisco 5 }
otherEnterprises OBJECT-IDENTITY
STATUS current
DESCRIPTION
"otherEnterprises provides a root object identifier
from which mibs produced by other companies may be
placed. mibs produced by other enterprises are
typicially implemented with the object identifiers
as defined in the mib, but if the mib is deemed to
be uncontrolled, we may reroot the mib at this
subtree in order to have a controlled version."
::= { cisco 6 }
ciscoSB OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoSB provides root Object Identifier for Management
Information Base for products of Cisco Small Business.
This includes products rebranded from linksys aquisition.
MIB numbers under this root are managed and controlled
by ciscosb_mib@cisco.com."
::= { otherEnterprises 1 }
ciscoSMB OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoSMB provides root Object Identifier for Management
Information Base for products of Cisco built for Small and
Medium Business market.The MIB numbers under this root are
managed and controlled by ciscosmb_mib@cisco.com"
::= { otherEnterprises 2 }
ciscoAgentCapability OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoAgentCapability provides a root object identifier
from which AGENT-CAPABILITIES values may be assigned."
::= { cisco 7 }
ciscoConfig OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoConfig is the main subtree for configuration mibs."
::= { cisco 8 }
ciscoMgmt OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoMgmt is the main subtree for new mib development."
::= { cisco 9 }
ciscoExperiment OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoExperiment provides a root object identifier
from which experimental mibs may be temporarily
based. mibs are typicially based here if they
fall in one of two categories
1) are IETF work-in-process mibs which have not
been assigned a permanent object identifier by
the IANA.
2) are cisco work-in-process which has not been
assigned a permanent object identifier by the
cisco assigned number authority, typicially because
the mib is not ready for deployment.
NOTE WELL: support for mibs in the ciscoExperiment
subtree will be deleted when a permanent object
identifier assignment is made."
::= { cisco 10 }
ciscoAdmin OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoAdmin is reserved for administratively assigned
OBJECT IDENTIFIERS, i.e. those not associated with MIB
objects"
::= { cisco 11 }
ciscoModules OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoModules provides a root object identifier
from which MODULE-IDENTITY values may be assigned."
::= { cisco 12 }
lightstream OBJECT-IDENTITY
STATUS current
DESCRIPTION
"subtree reserved for use by Lightstream"
::= { cisco 13 }
ciscoworks OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoworks provides a root object identifier beneath
which mibs applicable to the CiscoWorks family of network
management products are defined."
::= { cisco 14 }
newport OBJECT-IDENTITY
STATUS current
DESCRIPTION
"subtree reserved for use by the former Newport Systems
Solutions, now a portion of the Access Business Unit."
::= { cisco 15 }
ciscoPartnerProducts OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoPartnerProducts is the root OBJECT IDENTIFIER from
which partner sysObjectID values may be assigned. Such
sysObjectID values are composed of the ciscoPartnerProducts
prefix, followed by a single identifier that is unique for
each partner, followed by the value of sysObjectID of the
Cisco product from which partner product is derived. Note
that the chassisPartner MIB object defines the value of the
identifier assigned to each partner."
::= { cisco 16 }
ciscoPolicy OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoPolicy is the root of the Cisco-assigned OID
subtree for use with Policy Management."
::= { cisco 17 }
-- Note that 1.3.6.1.4.1.9.17.1 is currently unassigned
ciscoPIB OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoPIB is the root of the Cisco-assigned OID
subtree for assignment to PIB (Policy Information
Base) modules."
::= { ciscoPolicy 2 }
ciscoPolicyAuto OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoPolicyAuto is the root of the Cisco-assigned
OID subtree for OIDs which are automatically assigned
for use in Policy Management."
::= { cisco 18 }
-- Note that 1.3.6.1.4.1.9.18.1 is currently unassigned
ciscoPibToMib OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoPibToMib is the root of the Cisco-assigned
OID subtree for MIBs which are algorithmically
generated/translated from Cisco PIBs with OIDs
assigned under the ciscoPIB subtree.
These generated MIBs allow management
entities (other the current Policy Server) to
read the downloaded policy. By convention, for PIB
'ciscoPIB.x', the generated MIB shall have the
name 'ciscoPibToMib.x'."
::= { ciscoPolicyAuto 2 }
ciscoDomains OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoDomains provides a root object identifier from which
different transport mapping values may be assigned."
::= { cisco 19 }
ciscoCIB OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoCIB is the root of the Cisco-assigned OID subtree for
assignment to MIB modules describing managed objects that
part of the CPE automatic configuration framework."
::= { cisco 20 }
ciscoCibMmiGroup OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoCibMmiGroup is the root of the Cisco-assigned OID
subtree for assignment to MIB modules describing managed
objects supporting the Modem Management Interface (MMI),
the interface that facilitates CPE automatic configuration."
::= { ciscoCIB 1 }
ciscoCibProvGroup OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoCibStoreGroup is the root of the Cisco-assigned OID
subtree for assignment to MIB modules describing managed
objects contributing to the Configuration Information Base
(CIB)."
::= { ciscoCIB 2 }
ciscoPKI OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoPKI is the root of cisco-assigned OID subtree for PKI
Certificate Policies and Certificate Extensions."
::= { cisco 21 }
ciscoLDAP OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoLDAP is the root of the Cisco-assigned OID
subtree for assignment to LDAP (Lightweight Directory
Access Protocol) modules."
::= { cisco 22 }
-- ciscoAdmin assignments follow
ciscoProxy OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoProxy OBJECT IDENTIFIERS are used to uniquely name
party mib records created to proxy for SNMPv1."
::= { ciscoAdmin 1 }
ciscoPartyProxy OBJECT IDENTIFIER
::= { ciscoProxy 1 }
ciscoContextProxy OBJECT IDENTIFIER
::= { ciscoProxy 2 }
-- Administrative assignments for repeaters
ciscoRptrGroupObjectID OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoRptrGroupObjectID OBJECT IDENTIFIERS are used to
uniquely identify groups of repeater ports for use by the
SNMP-REPEATER-MIB (RFC 1516) rptrGroupObjectID object."
::= { ciscoAdmin 2 }
ciscoUnknownRptrGroup OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The identity of an unknown repeater port group."
::= { ciscoRptrGroupObjectID 1 }
cisco2505RptrGroup OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The authoritative identity of the Cisco 2505 repeater
port group."
::= { ciscoRptrGroupObjectID 2 }
cisco2507RptrGroup OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The authoritative identity of the Cisco 2507 repeater
port group."
::= { ciscoRptrGroupObjectID 3 }
cisco2516RptrGroup OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The authoritative identity of the Cisco 2516 repeater
port group."
::= { ciscoRptrGroupObjectID 4 }
ciscoWsx5020RptrGroup OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The authoritative identity of the wsx5020 repeater
port group."
::= { ciscoRptrGroupObjectID 5 }
-- Administrative assignments for chip sets
ciscoChipSets OBJECT-IDENTITY
STATUS current
DESCRIPTION
"Numerous media-specific MIBS have an object, defined as
an OBJECT IDENTIFIER, which is the identity of the chipset
realizing the interface. Cisco-specific chipsets have their
OBJECT IDENTIFIERS assigned under this subtree."
::= { ciscoAdmin 3 }
ciscoChipSetSaint1 OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The identity of the Rev 1 SAINT ethernet chipset
manufactured for cisco by LSI Logic."
::= { ciscoChipSets 1 }
ciscoChipSetSaint2 OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The identity of the Rev 2 SAINT ethernet chipset
manufactured for cisco by LSI Logic."
::= { ciscoChipSets 2 }
ciscoChipSetSaint3 OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The identity of the Rev 3 SAINT ethernet chipset
manufactured for cisco by Plessey."
::= { ciscoChipSets 3 }
ciscoChipSetSaint4 OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The identity of the Rev 4 SAINT ethernet chipset
manufactured for cisco by Mitsubishi."
::= { ciscoChipSets 4 }
-- Transport protocol domains
--
-- The textual conventions for these domains are defined in CISCO-TM.
ciscoTDomains OBJECT IDENTIFIER
::= { ciscoDomains 99999 }
ciscoTDomainUdpIpv4 OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The UDP over IPv4 transport domain. The corresponding
transport address is of type CiscoTAddressIPv4."
::= { ciscoTDomains 1 }
ciscoTDomainUdpIpv6 OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The UDP over IPv6 transport domain. The corresponding
transport address is of type CiscoTAddressIPv6 for global IPv6
addresses and CiscoTAddressIPv6s for scoped IPv6 addresses."
::= { ciscoTDomains 2 }
ciscoTDomainTcpIpv4 OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The TCP over IPv4 transport domain. The corresponding
transport address is of type CiscoTAddressIPv4."
::= { ciscoTDomains 3 }
ciscoTDomainTcpIpv6 OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The TCP over IPv6 transport domain. The corresponding
transport address is of type CiscoTAddressIPv6 for global IPv6
addresses and CiscoTAddressIPv6s for scoped IPv6 addresses."
::= { ciscoTDomains 4 }
ciscoTDomainLocal OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The Posix Local IPC transport domain. The corresponding
transport address is of type CiscoTAddressLocal. The Posix
Local IPC transport domain incorporates the well known UNIX
domain sockets."
::= { ciscoTDomains 5 }
ciscoTDomainClns OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The CLNS transport domain. The corresponding transport
address is of type CiscoTAddressOSI."
::= { ciscoTDomains 6 }
ciscoTDomainCons OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The CONS transport domain. The corresponding transport
address is of type CiscoTAddressOSI."
::= { ciscoTDomains 7 }
ciscoTDomainDdp OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The DDP transport domain. The corresponding transport
address is of type CiscoTAddressNBP."
::= { ciscoTDomains 8 }
ciscoTDomainIpx OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The IPX transport domain. The corresponding transport
address is of type CiscoTAddressIPX."
::= { ciscoTDomains 9 }
ciscoTDomainSctpIpv4 OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The SCTP over IPv4 transport domain. The corresponding
transport address is of type CiscoTAddressIPv4."
REFERENCE
"RFC 2960 - Stream Control Transmission Protocol. R. Stewart,
Q. Xie, K. Morneault, C. Sharp, H. Schwarzbauer, T. Taylor,
I. Rytina, M. Kalla, L. Zhang, V. Paxson. October 2000."
::= { ciscoTDomains 10 }
ciscoTDomainSctpIpv6 OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The SCTP over IPv6 transport domain. The corresponding
transport address is of type CiscoTAddressIPv6 for global IPv6
addresses and CiscoTAddressIPv6s for scoped IPv6 addresses."
REFERENCE
"RFC 2960 - Stream Control Transmission Protocol. R. Stewart,
Q. Xie, K. Morneault, C. Sharp, H. Schwarzbauer, T. Taylor,
I. Rytina, M. Kalla, L. Zhang, V. Paxson. October 2000."
::= { ciscoTDomains 11 }
END

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,236 @@
FAN-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, OBJECT-TYPE, Integer32, Counter32, Unsigned32
FROM SNMPv2-SMI
MODULE-COMPLIANCE, OBJECT-GROUP
FROM SNMPv2-CONF
TEXTUAL-CONVENTION
FROM SNMPv2-TC
hpSwitch
FROM HP-ICF-OID;
hpicfFanMIB MODULE-IDENTITY
LAST-UPDATED "200808271030Z" --August 27, 2008 10:30 GMT
ORGANIZATION "HP Networking"
CONTACT-INFO "Hewlett-Packard Company
8000 Foothills Blvd.
Roseville, CA 95747"
DESCRIPTION "The MIB module is for representing switch fan entity."
REVISION "200808271030Z" --August 27, 2008 10:30 GMT
DESCRIPTION "Revision 01."
::= { hpSwitch 54 }
-- ********************************************************************
-- FAN Textual Conventions
-- ********************************************************************
HpicfDcFanIndex ::= TEXTUAL-CONVENTION
DISPLAY-HINT "d"
STATUS current
DESCRIPTION "A unique value that serves as an index to identify the fan."
SYNTAX Unsigned32
HpicfDcFanType ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION "An enumerated value that indications the fan types."
SYNTAX INTEGER {
unknown(0),
mm(1),
fm(2),
im(3),
ps(4),
rollup(5),
maxtype(6)
}
HpicfDcFanAirflowDirection ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION "An enumerated value which provides an indication of the
fan airflow direction. The Physical fan airflow direction
could be either from the port towards the power supply
module i.e. portToPower(1), or from the power supply module
towards the port i.e. powerToPort(2)"
SYNTAX INTEGER {
portToPower(1),
powerToPort(2)
}
HpicfDcFanState ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION "An enumerated value which provides an indication of the
fan state."
SYNTAX INTEGER {
failed(0),
removed(1),
off(2),
underspeed(3),
overspeed(4),
ok(5),
maxstate(6)
}
-- ********************************************************************
-- Fan Scalars
-- ********************************************************************
hpicfFanScalars OBJECT IDENTIFIER ::= { hpicfFanMIB 1 }
hpicfFanUserPrefAirflowDir OBJECT-TYPE
SYNTAX INTEGER {
portToPower(1),
powerToPort(2)
}
MAX-ACCESS read-write
STATUS current
DESCRIPTION "The user preferred fan airflow direction. The direction could be
powerToPort or portToPower. The actual fan direction has to be
changed manually, this will be used to indicate to the user when
when the actual fan airflow direction is different from the user
preferred airflow direction."
DEFVAL { powerToPort }
::= { hpicfFanScalars 1 }
-- ********************************************************************
-- FAN entry
-- ********************************************************************
hpicfEntityFan OBJECT IDENTIFIER ::= { hpicfFanMIB 2 }
hpicfFanTable OBJECT-TYPE
SYNTAX SEQUENCE OF HpicfFanEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "This table contains one row for every fan in the switch entity."
::= { hpicfEntityFan 1 }
hpicfFanEntry OBJECT-TYPE
SYNTAX HpicfFanEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "Information about fan entity table."
INDEX { hpicfFanIndex }
::= { hpicfFanTable 1 }
HpicfFanEntry ::= SEQUENCE {
hpicfFanIndex HpicfDcFanIndex,
hpicfFanTray Integer32,
hpicfFanType HpicfDcFanType,
hpicfFanState HpicfDcFanState,
hpicfFanRecovering Integer32,
hpicfFanNumFailures Counter32,
hpicfFanAirflowDirection HpicfDcFanAirflowDirection
}
hpicfFanIndex OBJECT-TYPE
SYNTAX HpicfDcFanIndex
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "The index that is used to access the switch fan entry table."
::= { hpicfFanEntry 1 }
hpicfFanTray OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION "The tray number in which the fan is docked."
::= { hpicfFanEntry 2 }
hpicfFanType OBJECT-TYPE
SYNTAX HpicfDcFanType
MAX-ACCESS read-only
STATUS current
DESCRIPTION "An indication of the vendor-specific fan."
::= { hpicfFanEntry 3 }
hpicfFanState OBJECT-TYPE
SYNTAX HpicfDcFanState
MAX-ACCESS read-only
STATUS current
DESCRIPTION "The current state of the fan."
::= { hpicfFanEntry 4 }
hpicfFanRecovering OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION "An indication that the switch fan entity is faulty.
Before declaring a fan to be good after a failure is
detected, the same good indication must happen five (5)
times in a row. A failure indication is always TRUE, while
a good indication could be FALSE, hence this parameter is
used to count the repeated good indications before
declaring the fan to be good "
::= { hpicfFanEntry 5 }
hpicfFanNumFailures OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION "The number of times the fan has failed."
::= { hpicfFanEntry 6 }
hpicfFanAirflowDirection OBJECT-TYPE
SYNTAX HpicfDcFanAirflowDirection
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Indication of the fan air flow direction, either
from Power supply towards the port or from the port
towards the power supply."
::= { hpicfFanEntry 7 }
-- ********************************************************************
-- FAN Conformance
--********************************************************************
hpicfFanConformance OBJECT IDENTIFIER ::= { hpicfFanMIB 3 }
hpicfFanCompliance OBJECT IDENTIFIER ::= { hpicfFanConformance 1 }
hpicfFanGroups OBJECT IDENTIFIER ::= { hpicfFanConformance 2 }
-- ********************************************************************
-- FAN Complicance
-- ********************************************************************
hpicfDcFanCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION "The compliance statement for entries which implement
the FAN MIB."
MODULE -- This module
MANDATORY-GROUPS
{
hpicfFanScalarsGroup,
hpicfFanGroup
}
GROUP hpicfFanGroup
DESCRIPTION "Objects associated with switch entity FAN."
::= { hpicfFanCompliance 1 }
--
-- FAN Groups
--
hpicfFanScalarsGroup OBJECT-GROUP
OBJECTS
{
hpicfFanUserPrefAirflowDir
}
STATUS current
DESCRIPTION "Basic Scalars required in FAN MIB implementation."
::= { hpicfFanGroups 1 }
hpicfFanGroup OBJECT-GROUP
OBJECTS
{
hpicfFanTray,
hpicfFanType,
hpicfFanState,
hpicfFanRecovering,
hpicfFanNumFailures,
hpicfFanAirflowDirection
}
STATUS current
DESCRIPTION "FAN MIB parameters "
::= { hpicfFanGroups 2 }
END

View File

@ -0,0 +1,465 @@
--
-- FORTINET-CORE-MIB.mib: Main MIB for Fortinet enterprise OID tree
--
-- MODULE-IDENTITY
-- OrgName
-- Fortinet Technologies, Inc.
-- ContactInfo
-- Technical Support
-- e-mail: support@fortinet.com
-- http://www.fortinet.com
--
FORTINET-CORE-MIB DEFINITIONS ::= BEGIN
IMPORTS
ifIndex
FROM IF-MIB
InetAddress, InetAddressPrefixLength, InetAddressType
FROM INET-ADDRESS-MIB
MODULE-COMPLIANCE, NOTIFICATION-GROUP, OBJECT-GROUP
FROM SNMPv2-CONF
sysName
FROM SNMPv2-MIB
Integer32, MODULE-IDENTITY, NOTIFICATION-TYPE, OBJECT-TYPE,
enterprises
FROM SNMPv2-SMI
DisplayString, TEXTUAL-CONVENTION
FROM SNMPv2-TC;
fortinet MODULE-IDENTITY
LAST-UPDATED "201501140000Z"
ORGANIZATION
"Fortinet Technologies, Inc."
CONTACT-INFO
"Technical Support
email: support@fortinet.com
http://www.fortinet.com
"
DESCRIPTION
"Registered FortiWANMib OIDs"
REVISION "201501140000Z"
DESCRIPTION
"Registered and updated FortiAuthenticatorMib/FortiRecorderMib/FortiVoiceMib/FortiBridgeMib/FortiDirectorMib OIDs"
REVISION "201412100000Z"
DESCRIPTION
"Registered FortiVoiceMib OID"
REVISION "201404100000Z"
DESCRIPTION
"Registered FortiADCMib OID"
REVISION "201403220000Z"
DESCRIPTION
"Added fan failure and AMC bypass traps"
REVISION "201205090000Z"
DESCRIPTION
"Registered FortiDDoSMib OID"
REVISION "201204230000Z"
DESCRIPTION
"Registered FortiDNSMib OID"
REVISION "201112230000Z"
DESCRIPTION
"Registered FortiCacheMib OID"
REVISION "201104250000Z"
DESCRIPTION
"Supporting portuguese language"
REVISION "201005140000Z"
DESCRIPTION
"Registered FortiScanMib OID"
REVISION "200905200000Z"
DESCRIPTION
"MIB module for Fortinet network devices."
REVISION "200811190000Z"
DESCRIPTION
"Registered FortiWebMib OID"
REVISION "200810210000Z"
DESCRIPTION
"Added SMI comments"
REVISION "200806250000Z"
DESCRIPTION
"Adjusted fnAdmin tree to start at .1"
REVISION "200806160000Z"
DESCRIPTION
"Spelling corrections."
REVISION "200804170000Z"
DESCRIPTION
"Initial version of fortinet core MIB."
::= { enterprises 12356 } -- assigned by IANA
--
-- Fortinet MIB Textual Conventions (TC)
--
FnBoolState ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Boolean data type representing enabled/disabled"
SYNTAX INTEGER {
disabled (1),
enabled (2)
}
FnLanguage ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Enumerated type for user interface languages"
SYNTAX INTEGER {
english (1),
simplifiedChinese (2),
japanese (3),
korean (4),
spanish (5),
traditionalChinese (6),
french (7),
portuguese (8),
undefined (255)
}
FnIndex ::= TEXTUAL-CONVENTION
DISPLAY-HINT "d"
STATUS current
DESCRIPTION
"Data type for table index values"
SYNTAX Integer32 (0..2147483647)
FnSessionProto ::= 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)
}
--
-- Fortinet Enterprise Structure of Management Information (SMI)
--
fnCoreMib OBJECT IDENTIFIER ::= { fortinet 100 }
--
-- Fortinet Product Family MIB Object Identifier Assignments
--
-- fnFortiGateMib OBJECT IDENTIFIER ::= { fortinet 101 }
-- fnFortiAnalyzerMib OBJECT IDENTIFIER ::= { fortinet 102 }
-- fnFortiManagerMib OBJECT IDENTIFIER ::= { fortinet 103 }
-- fnFortiDefenderMib OBJECT IDENTIFIER ::= { fortinet 104 }
-- fnFortiMailMib OBJECT IDENTIFIER ::= { fortinet 105 }
-- fnFortiSwitchMib OBJECT IDENTIFIER ::= { fortinet 106 }
-- fnFortiWebMib OBJECT IDENTIFIER ::= { fortinet 107 }
-- fnFortiScanMib OBJECT IDENTIFIER ::= { fortinet 108 }
-- fnFortiCacheMib OBJECT IDENTIFIER ::= { fortinet 109 }
-- fnFortiDNSMib OBJECT IDENTIFIER ::= { fortinet 110 }
-- fnFortiDDoSMib OBJECT IDENTIFIER ::= { fortinet 111 }
-- fnFortiADCMib OBJECT IDENTIFIER ::= { fortinet 112 }
-- fnFortiAuthenticatorMib OBJECT IDENTIFIER ::= { fortinet 113 }
-- fnFortiRecorderMib OBJECT IDENTIFIER ::= { fortinet 114 }
-- fnFortiVoiceMib OBJECT IDENTIFIER ::= { fortinet 115 }
-- fnFortiBridgeMib OBJECT IDENTIFIER ::= { fortinet 116 }
-- fnFortiDirectorMib OBJECT IDENTIFIER ::= { fortinet 117 }
-- fnFortiWANMib OBJECT IDENTIFIER ::= { fortinet 118 }
--
--
-- fnCoreMib.fnCommon
--
fnCommon OBJECT IDENTIFIER ::= { fnCoreMib 1 }
--
-- fnCoreMib.fnCommon.fnSystem
--
fnSystem OBJECT IDENTIFIER ::= { fnCommon 1 }
fnSysSerial OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Device serial number. This is the same serial number as given
in the ENTITY-MIB tables for the base entity."
::= { fnSystem 1 }
--
-- fnCoreMib.fnCommon.fnMgmt
--
fnMgmt OBJECT IDENTIFIER ::= { fnCommon 2 }
fnMgmtLanguage OBJECT-TYPE
SYNTAX FnLanguage
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Language used for administration interfaces"
::= { fnMgmt 1 }
fnAdmin OBJECT IDENTIFIER ::= { fnMgmt 100 }
fnAdminNumber OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of admin accounts in fnAdminTable"
::= { fnAdmin 1 }
fnAdminTable OBJECT-TYPE
SYNTAX SEQUENCE OF FnAdminEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of administrator accounts on the device. This table is
intended to be extended with platform specific information."
::= { fnAdmin 2 }
fnAdminEntry OBJECT-TYPE
SYNTAX FnAdminEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry containing information applicable to a particular admin account"
INDEX { fnAdminIndex }
::= { fnAdminTable 1 }
FnAdminEntry ::= SEQUENCE {
fnAdminIndex Integer32,
fnAdminName DisplayString,
fnAdminAddrType InetAddressType,
fnAdminAddr InetAddress,
fnAdminMask InetAddressPrefixLength
}
fnAdminIndex OBJECT-TYPE
SYNTAX Integer32 (1..2147483647)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An index uniquely defining an administrator account within the fnAdminTable"
::= { fnAdminEntry 1 }
fnAdminName OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The user-name of the specified administrator account"
::= { fnAdminEntry 2 }
fnAdminAddrType OBJECT-TYPE
SYNTAX InetAddressType
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The type of address stored in fnAdminAddr, in compliance with INET-ADDRESS-MIB"
::= { fnAdminEntry 3 }
fnAdminAddr OBJECT-TYPE
SYNTAX InetAddress
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The address prefix identifying where the administrator account can
be used from, typically an IPv4 address. The address type/format is
determined by fnAdminAddrType."
::= { fnAdminEntry 4 }
fnAdminMask OBJECT-TYPE
SYNTAX InetAddressPrefixLength
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The address prefix length (or network mask) applied to the fgAdminAddr
to determine the subnet or host the administrator can access the device from"
::= { fnAdminEntry 5 }
--
-- fnCoreMib.fnCommon.fnTraps
--
fnTraps OBJECT IDENTIFIER ::= { fnCommon 3 }
fnTrapsPrefix OBJECT IDENTIFIER ::= { fnTraps 0 }
fnTrapObjects OBJECT IDENTIFIER ::= { fnTraps 1 }
fnGenTrapMsg OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS accessible-for-notify
STATUS current
DESCRIPTION
"Generic message associated with an event. The content will
depend on the nature of the trap."
::= { fnTrapObjects 1 }
fnTrapCpuThreshold NOTIFICATION-TYPE
OBJECTS { fnSysSerial, sysName }
STATUS current
DESCRIPTION
"Indicates that the CPU usage has exceeded the configured threshold."
::= { fnTrapsPrefix 101 }
fnTrapMemThreshold NOTIFICATION-TYPE
OBJECTS { fnSysSerial, sysName }
STATUS current
DESCRIPTION
"Indicates memory usage has exceeded the configured threshold."
::= { fnTrapsPrefix 102 }
fnTrapLogDiskThreshold NOTIFICATION-TYPE
OBJECTS { fnSysSerial, sysName }
STATUS current
DESCRIPTION
"Log disk usage has exceeded the configured threshold. Only available
on devices with log disks."
::= { fnTrapsPrefix 103 }
fnTrapTempHigh NOTIFICATION-TYPE
OBJECTS { fnSysSerial, sysName }
STATUS current
DESCRIPTION
"A temperature sensor on the device has exceeded its threshold.
Not all devices have thermal sensors. See manual for specifications."
::= { fnTrapsPrefix 104 }
fnTrapVoltageOutOfRange NOTIFICATION-TYPE
OBJECTS { fnSysSerial, sysName }
STATUS current
DESCRIPTION
"Power levels have fluctuated outside of normal levels. Not all devices
have voltage monitoring instrumentation. See manual for specifications."
::= { fnTrapsPrefix 105 }
fnTrapPowerSupplyFailure NOTIFICATION-TYPE
OBJECTS { fnSysSerial, sysName }
STATUS current
DESCRIPTION
"Power supply failure detected. Not available on all models. Available
on some devices which support redundant power supplies. See manual
for specifications."
::= { fnTrapsPrefix 106 }
fnTrapAmcIfBypassMode NOTIFICATION-TYPE
OBJECTS { fnSysSerial, sysName }
STATUS current
DESCRIPTION
"An AMC interface entered bypass mode. Available on models with an AMC
expansion slot. Used with the ASM-CX4 and ASM-FX2 cards."
::= { fnTrapsPrefix 107 }
fnTrapFanFailure NOTIFICATION-TYPE
OBJECTS { fnSysSerial, sysName }
STATUS current
DESCRIPTION
"A fan failure has been detected. Not all devices have fan sensors.
See manual for specifications."
::= { fnTrapsPrefix 108 }
fnTrapIpChange NOTIFICATION-TYPE
OBJECTS { fnSysSerial, sysName, ifIndex }
STATUS current
DESCRIPTION
"Indicates that the IP address of the specified interface has been changed."
::= { fnTrapsPrefix 201 }
fnTrapTest NOTIFICATION-TYPE
OBJECTS { fnSysSerial, sysName }
STATUS current
DESCRIPTION
"Trap sent for diagnostic purposes by an administrator."
::= { fnTrapsPrefix 999 }
--
-- fnCoreMib.fnCommon.fnMIBConformance
--
fnMIBConformance OBJECT IDENTIFIER ::= { fnCoreMib 10 }
fnSystemComplianceGroup OBJECT-GROUP
OBJECTS { fnSysSerial }
STATUS current
DESCRIPTION
"Objects relating to the physical device."
::= { fnMIBConformance 1 }
fnMgmtComplianceGroup OBJECT-GROUP
OBJECTS { fnMgmtLanguage }
STATUS current
DESCRIPTION
"Objects relating the management of a device."
::= { fnMIBConformance 2 }
fnAdminComplianceGroup OBJECT-GROUP
OBJECTS { fnAdminNumber, fnAdminName, fnAdminAddrType,
fnAdminAddr, fnAdminMask }
STATUS current
DESCRIPTION
"Administration access control objects."
::= { fnMIBConformance 3 }
fnTrapsComplianceGroup NOTIFICATION-GROUP
NOTIFICATIONS { fnTrapCpuThreshold, fnTrapMemThreshold,
fnTrapLogDiskThreshold, fnTrapTempHigh,
fnTrapVoltageOutOfRange, fnTrapPowerSupplyFailure,
fnTrapAmcIfBypassMode, fnTrapFanFailure,
fnTrapIpChange, fnTrapTest }
STATUS current
DESCRIPTION
"Event notifications"
::= { fnMIBConformance 4 }
fnNotifObjectsComplianceGroup OBJECT-GROUP
OBJECTS { fnGenTrapMsg }
STATUS current
DESCRIPTION
"Object identifiers used in notifications"
::= { fnMIBConformance 5 }
fnMIBCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"The compliance statement for the application MIB."
MODULE -- this module
GROUP fnSystemComplianceGroup
DESCRIPTION
"This group is mandatory for all Fortinet network appliances
supporting this MIB."
GROUP fnMgmtComplianceGroup
DESCRIPTION
"This group is optional for devices that do not support common
management interface options such as multiple languages."
GROUP fnAdminComplianceGroup
DESCRIPTION
"This group should be accessible on any device supporting
administrator authentication."
GROUP fnTrapsComplianceGroup
DESCRIPTION
"Traps are optional. Not all models support all traps. Consult
product literature to see which traps are supported."
GROUP fnNotifObjectsComplianceGroup
DESCRIPTION
"Object identifiers used in notifications. Objects are required
if their containing trap is implemented."
::= { fnMIBConformance 100 }
END

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,141 @@
-- *****************************************************************
-- HCNUM-TC.my: Textual conventions for High Capacity Data Types
--
-- December 2000
--
-- Copyright (c) 2000-2001 by cisco Systems, Inc.
-- All rights reserved.
--
-- *****************************************************************
HCNUM-TC DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, mib-2, Counter64
FROM SNMPv2-SMI
TEXTUAL-CONVENTION
FROM SNMPv2-TC;
hcnumTC MODULE-IDENTITY
LAST-UPDATED "200006080000Z"
ORGANIZATION "IETF OPS Area"
CONTACT-INFO
" E-mail: mibs@ops.ietf.org
Subscribe: majordomo@psg.com
with msg body: subscribe mibs
Andy Bierman
Cisco Systems Inc.
170 West Tasman Drive
San Jose, CA 95134 USA
+1 408-527-3711
abierman@cisco.com
Keith McCloghrie
Cisco Systems Inc.
170 West Tasman Drive
San Jose, CA 95134 USA
+1 408-526-5260
kzm@cisco.com
Randy Presuhn
BMC Software, Inc.
Office 1-3141
2141 North First Street
San Jose, California 95131 USA
+1 408 546-1006
rpresuhn@bmc.com"
DESCRIPTION
"A MIB module containing textual conventions
for high capacity data types. This module
addresses an immediate need for data types not directly
supported in the SMIv2. This short-term solution
is meant to be deprecated as a long-term solution
is deployed."
REVISION "200006080000Z"
DESCRIPTION
"Initial Version of the High Capacity Numbers
MIB module, published as RFC 2856."
::= { mib-2 78 }
CounterBasedGauge64 ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"The CounterBasedGauge64 type represents a non-negative
integer, which may increase or decrease, but shall never
exceed a maximum value, nor fall below a minimum value. The
maximum value can not be greater than 2^64-1
(18446744073709551615 decimal), and the minimum value can
not be smaller than 0. The value of a CounterBasedGauge64
has its maximum value whenever the information being modeled
is greater than or equal to its maximum value, and has its
minimum value whenever the information being modeled is
smaller than or equal to its minimum value. If the
information being modeled subsequently decreases below
(increases above) the maximum (minimum) value, the
CounterBasedGauge64 also decreases (increases).
Note that this TC is not strictly supported in SMIv2,
because the 'always increasing' and 'counter wrap' semantics
associated with the Counter64 base type are not preserved.
It is possible that management applications which rely
solely upon the (Counter64) ASN.1 tag to determine object
semantics will mistakenly operate upon objects of this type
as they would for Counter64 objects.
This textual convention represents a limited and short-term
solution, and may be deprecated as a long term solution is
defined and deployed to replace it."
SYNTAX Counter64
ZeroBasedCounter64 ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"This TC describes an object which counts events with the
following semantics: objects of this type will be set to
zero(0) on creation and will thereafter count appropriate
events, wrapping back to zero(0) when the value 2^64 is
reached.
Provided that an application discovers the new object within
the minimum time to wrap it can use the initial value as a
delta since it last polled the table of which this object is
part. It is important for a management station to be aware
of this minimum time and the actual time between polls, and
to discard data if the actual time is too long or there is
no defined minimum time.
Typically this TC is used in tables where the INDEX space is
constantly changing and/or the TimeFilter mechanism is in
use.
Note that this textual convention does not retain all the
semantics of the Counter64 base type. Specifically, a
Counter64 has an arbitrary initial value, but objects
defined with this TC are required to start at the value
zero. This behavior is not likely to have any adverse
effects on management applications which are expecting
Counter64 semantics.
This textual convention represents a limited and short-term
solution, and may be deprecated as a long term solution is
defined and deployed to replace it."
SYNTAX Counter64
END

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,901 @@
HP-ICF-CHASSIS DEFINITIONS ::= BEGIN
IMPORTS
Integer32, Counter32,
OBJECT-TYPE, MODULE-IDENTITY, NOTIFICATION-TYPE
FROM SNMPv2-SMI
DisplayString, TimeStamp,TruthValue
FROM SNMPv2-TC
MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP
FROM SNMPv2-CONF
PhysicalIndex
FROM ENTITY-MIB
hpicfObjectModules, hpicfCommon, hpicfCommonTrapsPrefix
FROM HP-ICF-OID;
hpicfChassisMib MODULE-IDENTITY
LAST-UPDATED "201108250847Z" -- August 25, 2011
ORGANIZATION "HP Networking"
CONTACT-INFO
"Hewlett Packard Company
8000 Foothills Blvd.
Roseville, CA 95747"
DESCRIPTION
"This MIB module describes chassis devices in the
HP Integrated Communication Facility product
line. Note that most of this module will be
superseded by the standard Entity MIB. However,
the hpicfSensorTable will still be valid."
REVISION "201108250847Z" -- August 25, 2011
DESCRIPTION "Added new scalars hpicfFanTrayType and
hpicfOpacityShieldInstalled."
REVISION "201008250000Z" -- August 23, 2010
DESCRIPTION "Added hpSystemAirEntPhysicalIndex to the air
temperature table."
REVISION "200904220000Z" -- April 22, 2009
DESCRIPTION "Added new SNMP object and SNMP table for chassis
temperature details"
REVISION "200011032216Z" -- November 3, 2000
DESCRIPTION "Updated division name."
REVISION "9703060334Z" -- March 6, 1997
DESCRIPTION
"Added NOTIFICATION-GROUP information."
REVISION "9609100245Z" -- September 10, 1996
DESCRIPTION
"Split this MIB module from the former monolithic
hp-icf MIB. Added compliance statement for use by
non-chassis devices or devices that are
implementing another chassis MIB (like Entity MIB)
but still want to use the hpicfSensorTable.
Changed STATUS clause to deprecated for those
objects that are superseded by the Entity MIB."
REVISION "9507130000Z" -- July 13, 1995
DESCRIPTION
"Added the hpicfSensorTrap."
REVISION "9411200000Z" -- November 20, 1994
DESCRIPTION
"Added the hpicfChassisAddrTable."
REVISION "9307090000Z" -- July 9, 1993
DESCRIPTION
"Initial version."
::= { hpicfObjectModules 3 }
hpicfChassis
OBJECT IDENTIFIER ::= { hpicfCommon 2 }
-- The Chassis group contains detailed information about what
-- is inside a particular chassis. The intent is that an
-- agent can provide information about the box that it is in.
hpicfChassisId OBJECT-TYPE
SYNTAX OCTET STRING (SIZE (6))
MAX-ACCESS read-only
STATUS deprecated
DESCRIPTION
"********* THIS OBJECT IS DEPRECATED *********
An identifier that uniquely identifies this
particular chassis. This will be the same value
as the instance of hpicfChainId for this chassis."
::= { hpicfChassis 1 }
hpicfChassisNumSlots OBJECT-TYPE
SYNTAX Integer32 (0..16)
MAX-ACCESS read-only
STATUS deprecated
DESCRIPTION
"********* THIS OBJECT IS DEPRECATED *********
The number of slots in this chassis."
::= { hpicfChassis 2 }
-- The slot table contains one entry for each slot in this
-- chassis.
hpicfSlotTable OBJECT-TYPE
SYNTAX SEQUENCE OF HpicfSlotEntry
MAX-ACCESS not-accessible
STATUS deprecated
DESCRIPTION
"********* THIS OBJECT IS DEPRECATED *********
A table that contains information on all the
slots in this chassis."
::= { hpicfChassis 3 }
hpicfSlotEntry OBJECT-TYPE
SYNTAX HpicfSlotEntry
MAX-ACCESS not-accessible
STATUS deprecated
DESCRIPTION
"********* THIS OBJECT IS DEPRECATED *********
Information about a slot in a chassis"
INDEX { hpicfSlotIndex }
::= { hpicfSlotTable 1 }
HpicfSlotEntry ::=
SEQUENCE {
hpicfSlotIndex Integer32,
hpicfSlotObjectId OBJECT IDENTIFIER,
hpicfSlotLastChange TimeStamp,
hpicfSlotDescr DisplayString
}
hpicfSlotIndex OBJECT-TYPE
SYNTAX Integer32 (1..16)
MAX-ACCESS read-only
STATUS deprecated
DESCRIPTION
"********* THIS OBJECT IS DEPRECATED *********
The slot number within the box for which this
entry contains information."
::= { hpicfSlotEntry 1 }
hpicfSlotObjectId OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS read-only
STATUS deprecated
DESCRIPTION
"********* THIS OBJECT IS DEPRECATED *********
The authoritative identification of the card
plugged into this slot in this chassis. A value
of { 0 0 } indicates an empty slot."
::= { hpicfSlotEntry 2 }
hpicfSlotLastChange OBJECT-TYPE
SYNTAX TimeStamp
MAX-ACCESS read-only
STATUS deprecated
DESCRIPTION
"********* THIS OBJECT IS DEPRECATED *********
The value of the agent's sysUpTime at which a
card in this slot was last inserted or removed.
If no module has been inserted or removed since
the last reinitialization of the agent, this
object has a zero value."
::= { hpicfSlotEntry 3 }
hpicfSlotDescr OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..255))
MAX-ACCESS read-only
STATUS deprecated
DESCRIPTION
"********* THIS OBJECT IS DEPRECATED *********
A textual description of the card plugged into
this slot in this chassis, including the product
number and version information."
::= { hpicfSlotEntry 4 }
-- The entity table contains a list of logical network devices
-- contained in this chassis, whether or not that agent can
-- actually manage the device. The intent is that any agent
-- for a box will have a complete picture of the entities in
-- that box.
hpicfEntityTable OBJECT-TYPE
SYNTAX SEQUENCE OF HpicfEntityEntry
MAX-ACCESS not-accessible
STATUS deprecated
DESCRIPTION
"********* THIS OBJECT IS DEPRECATED *********
A table that contains information about the
(logical) networking devices contained in this
chassis."
::= { hpicfChassis 4 }
hpicfEntityEntry OBJECT-TYPE
SYNTAX HpicfEntityEntry
MAX-ACCESS not-accessible
STATUS deprecated
DESCRIPTION
"********* THIS OBJECT IS DEPRECATED *********
Information about a single logical networking
device contained in this chassis."
INDEX { hpicfEntityIndex }
::= { hpicfEntityTable 1 }
HpicfEntityEntry ::=
SEQUENCE {
hpicfEntityIndex Integer32,
hpicfEntityFunction Integer32,
hpicfEntityObjectId OBJECT IDENTIFIER,
hpicfEntityDescr DisplayString,
hpicfEntityTimestamp TimeStamp
}
hpicfEntityIndex OBJECT-TYPE
SYNTAX Integer32 (1..16)
MAX-ACCESS read-only
STATUS deprecated
DESCRIPTION
"********* THIS OBJECT IS DEPRECATED *********
An index that uniquely identifies the logical
network device for which this entry contains
information."
::= { hpicfEntityEntry 1 }
hpicfEntityFunction OBJECT-TYPE
SYNTAX Integer32 (0..63)
MAX-ACCESS read-only
STATUS deprecated
DESCRIPTION
"********* THIS OBJECT IS DEPRECATED *********
The generic function provided by the logical
network device. The value is a sum. Starting
from zero, for each type of generic function that
the entity performs, 2 raised to a power is added
to the sum. The powers are according to the
following table:
Function Power
other 1
repeater 0
bridge 2
router 3
agent 5
For example, an entity performing both bridging
and routing functions would have a value of 12
(2^2 + 2^3)."
::= { hpicfEntityEntry 2 }
hpicfEntityObjectId OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS read-only
STATUS deprecated
DESCRIPTION
"********* THIS OBJECT IS DEPRECATED *********
The authoritative identification of the logical
network device which provides an unambiguous means
of determining the type of device. The value of
this object is analogous to MIB-II's sysObjectId."
::= { hpicfEntityEntry 3 }
hpicfEntityDescr OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..255))
MAX-ACCESS read-only
STATUS deprecated
DESCRIPTION
"********* THIS OBJECT IS DEPRECATED *********
A textual description of this device, including
the product number and version information. The
value of this object is analogous to MIB-II's
sysDescr."
::= { hpicfEntityEntry 4 }
hpicfEntityTimestamp OBJECT-TYPE
SYNTAX TimeStamp
MAX-ACCESS read-only
STATUS deprecated
DESCRIPTION
"********* THIS OBJECT IS DEPRECATED *********
The value of the agent's sysUpTime at which this
logical network device was last reinitialized. If
the entity has not been reinitialized since the
last reinitialization of the agent, then this
object has a zero value."
::= { hpicfEntityEntry 5 }
-- The hpicfSlotMapTable is used to convey which logical
-- network devices occupy which slots in the chassis. For
-- example, if a chassis contains a repeater entity, with an
-- hpicfEntityIndex of 2, which is made up of three cards
-- located in slots 2, 4, and 5 of the chassis, this table
-- will contain entries indexed by { 2 2 }, { 4 2 } and
-- { 5 2 }.
hpicfSlotMapTable OBJECT-TYPE
SYNTAX SEQUENCE OF HpicfSlotMapEntry
MAX-ACCESS not-accessible
STATUS deprecated
DESCRIPTION
"********* THIS OBJECT IS DEPRECATED *********
A table that contains information about which
entities are in which slots in this chassis."
::= { hpicfChassis 5 }
hpicfSlotMapEntry OBJECT-TYPE
SYNTAX HpicfSlotMapEntry
MAX-ACCESS not-accessible
STATUS deprecated
DESCRIPTION
"********* THIS OBJECT IS DEPRECATED *********
A relationship between a slot and an entity in
this chassis. Such a relationship exists if the
particular slot is occupied by a physical module
performing part of the function of the particular
entity."
INDEX { hpicfSlotMapSlot, hpicfSlotMapEntity }
::= { hpicfSlotMapTable 1 }
HpicfSlotMapEntry ::=
SEQUENCE {
hpicfSlotMapSlot Integer32,
hpicfSlotMapEntity Integer32
}
hpicfSlotMapSlot OBJECT-TYPE
SYNTAX Integer32 (1..16)
MAX-ACCESS read-only
STATUS deprecated
DESCRIPTION
"********* THIS OBJECT IS DEPRECATED *********
A slot number within the chassis which contains
(part of) this entity."
::= { hpicfSlotMapEntry 1 }
hpicfSlotMapEntity OBJECT-TYPE
SYNTAX Integer32 (1..16)
MAX-ACCESS read-only
STATUS deprecated
DESCRIPTION
"********* THIS OBJECT IS DEPRECATED *********
The entity described in this mapping."
::= { hpicfSlotMapEntry 2 }
-- The sensor table contains one entry for each sensor in this
-- chassis.
hpicfSensorTable OBJECT-TYPE
SYNTAX SEQUENCE OF HpicfSensorEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table that contains information on all the
sensors in this chassis"
::= { hpicfChassis 6 }
hpicfSensorEntry OBJECT-TYPE
SYNTAX HpicfSensorEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Information about a sensor in a chassis"
INDEX { hpicfSensorIndex }
::= { hpicfSensorTable 1 }
HpicfSensorEntry ::=
SEQUENCE {
hpicfSensorIndex Integer32,
hpicfSensorObjectId OBJECT IDENTIFIER,
hpicfSensorNumber Integer32,
hpicfSensorStatus INTEGER,
hpicfSensorWarnings Counter32,
hpicfSensorFailures Counter32,
hpicfSensorDescr DisplayString
}
hpicfSensorIndex OBJECT-TYPE
SYNTAX Integer32 (1..2147483647)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"An index that uniquely identifies the sensor for
which this entry contains information."
::= { hpicfSensorEntry 1 }
hpicfSensorObjectId OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The authoritative identification of the kind of
sensor this is."
::= { hpicfSensorEntry 2 }
hpicfSensorNumber OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A number which identifies a particular sensor
from other sensors of the same kind. For
instance, if there are many temperature sensors in
this chassis, this number would identify a
particular temperature sensor in this chassis."
::= { hpicfSensorEntry 3 }
hpicfSensorStatus OBJECT-TYPE
SYNTAX INTEGER {
unknown(1),
bad(2),
warning(3),
good(4),
notPresent(5)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Actual status indicated by the sensor."
::= { hpicfSensorEntry 4 }
hpicfSensorWarnings OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of times hpicfSensorStatus has entered
the 'warning'(3) state."
::= { hpicfSensorEntry 5 }
hpicfSensorFailures OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of times hpicfSensorStatus has entered
the 'bad'(2) state."
::= { hpicfSensorEntry 6 }
hpicfSensorDescr OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A textual description of the sensor."
::= { hpicfSensorEntry 7 }
hpicfChassisAddrTable OBJECT-TYPE
SYNTAX SEQUENCE OF HpicfChassisAddrEntry
MAX-ACCESS not-accessible
STATUS deprecated
DESCRIPTION
"********* THIS OBJECT IS DEPRECATED *********
A table of network addresses for entities in this
chassis. The primary use of this table is to map
a specific entity address to a specific chassis.
Note that this table may not be a complete list of
network addresses for this entity."
::= { hpicfChassis 7 }
hpicfChassisAddrEntry OBJECT-TYPE
SYNTAX HpicfChassisAddrEntry
MAX-ACCESS not-accessible
STATUS deprecated
DESCRIPTION
"********* THIS OBJECT IS DEPRECATED *********
An entry containing a single network address being
used by a logical network device in this chassis."
INDEX { hpicfChasAddrType, hpicfChasAddrAddress }
::= { hpicfChassisAddrTable 1 }
HpicfChassisAddrEntry ::=
SEQUENCE {
hpicfChasAddrType INTEGER,
hpicfChasAddrAddress OCTET STRING,
hpicfChasAddrEntity Integer32
}
hpicfChasAddrType OBJECT-TYPE
SYNTAX INTEGER {
ipAddr(1),
ipxAddr(2),
macAddr(3)
}
MAX-ACCESS not-accessible
STATUS deprecated
DESCRIPTION
"********* THIS OBJECT IS DEPRECATED *********
The kind of network address represented in this
entry."
::= { hpicfChassisAddrEntry 1 }
hpicfChasAddrAddress OBJECT-TYPE
SYNTAX OCTET STRING (SIZE(4..10))
MAX-ACCESS not-accessible
STATUS deprecated
DESCRIPTION
"********* THIS OBJECT IS DEPRECATED *********
The network address being used by the logical
network device associated with this entry, formatted
according to the value of the associated instance of
hpicfChasAddrType.
For hpicfChasAddrType of ipAddr, this value is four
octets long, with each octet representing one byte of
the IP address, in network byte order.
For hpicfChasAddrType of ipxAddr, this value is ten
octets long, with the first four octets representing
the IPX network number in network byte order,
followed by the six byte host number in network byte
order.
For hpicfChasAddrType of macAddr, this value is six
octets long, representing the MAC address in
canonical order."
::= { hpicfChassisAddrEntry 2 }
hpicfChasAddrEntity OBJECT-TYPE
SYNTAX Integer32 (1..16)
MAX-ACCESS read-only
STATUS deprecated
DESCRIPTION
"********* THIS OBJECT IS DEPRECATED *********
An index that uniquely identifies the logical
network device in this chassis that is using this
network address.."
::= { hpicfChassisAddrEntry 3 }
hpChassisTemperature OBJECT IDENTIFIER
::= { hpicfChassis 8 }
hpSystemAirTempTable OBJECT-TYPE
SYNTAX SEQUENCE OF HpSystemAirTempEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "This table gives the temperature details of
chassis. These temperature details are
obtained by monitoring chassis temperature
sensors attached to the box by excluding
ManagementModule, FabricModule, IMand
PowerSupply sensors. This will give current,
maximum,minimum,threshold and average
temperatures of chassis."
::= { hpChassisTemperature 1 }
hpSystemAirTempEntry OBJECT-TYPE
SYNTAX HpSystemAirTempEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "This is the table for chassis temperature
details."
INDEX { hpSystemAirSensor }
::= { hpSystemAirTempTable 1 }
HpSystemAirTempEntry ::=
SEQUENCE {
hpSystemAirSensor Integer32,
hpSystemAirName OCTET STRING,
hpSystemAirCurrentTemp OCTET STRING,
hpSystemAirMaxTemp OCTET STRING,
hpSystemAirMinTemp OCTET STRING,
hpSystemAirOverTemp INTEGER,
hpSystemAirThresholdTemp OCTET STRING,
hpSystemAirAvgTemp OCTET STRING,
hpSystemAirEntPhysicalIndex PhysicalIndex
}
hpSystemAirSensor OBJECT-TYPE
SYNTAX Integer32 (0..2147483647)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "This is the index for this table.This object
describes chassis attached temperature sensor.
Based on the value of this index, temperature
details are obtained from the sensor and are
given."
::= {hpSystemAirTempEntry 1}
hpSystemAirName OBJECT-TYPE
SYNTAX OCTET STRING(SIZE(1..20))
MAX-ACCESS read-only
STATUS current
DESCRIPTION "This object describes name of the system
which is chassis attached temperature sensor
number. For example if the index
(hpSystemAirSensor) is '0' then the system
name is sys-1. Index starts from '0' but
sensor number is '1'."
::= {hpSystemAirTempEntry 2}
hpSystemAirCurrentTemp OBJECT-TYPE
SYNTAX OCTET STRING(SIZE(1..6))
MAX-ACCESS read-only
STATUS current
DESCRIPTION "This object gives current temperature of the
system. This is the current temperature given
by the indexed chassis attached temperature
sensor on box."
::= {hpSystemAirTempEntry 3}
hpSystemAirMaxTemp OBJECT-TYPE
SYNTAX OCTET STRING( SIZE(1..6))
MAX-ACCESS read-only
STATUS current
DESCRIPTION "This object gives Maximum temperature of the
chassis."
::= {hpSystemAirTempEntry 4}
hpSystemAirMinTemp OBJECT-TYPE
SYNTAX OCTET STRING(SIZE(1..6))
MAX-ACCESS read-only
STATUS current
DESCRIPTION "This object gives Minimum temperature of the
chassis."
::= {hpSystemAirTempEntry 5}
hpSystemAirOverTemp OBJECT-TYPE
SYNTAX INTEGER{
yes(1),
no(2)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION "This object gives Over temperature of the
system. If the current temperature of the
board is above threshold temperature and if
board stays at this temperature for 10 full
seconds then its called over temperature."
::= {hpSystemAirTempEntry 6}
hpSystemAirThresholdTemp OBJECT-TYPE
SYNTAX OCTET STRING(SIZE(1..6))
MAX-ACCESS read-only
STATUS current
DESCRIPTION "This object gives Threshold temperature of
the system. This is the utmost temperature
that the chassis can sustain. If chassis
temperature is above threshold then alarm will
ring to inform over temperature condition."
::= {hpSystemAirTempEntry 7}
hpSystemAirAvgTemp OBJECT-TYPE
SYNTAX OCTET STRING(SIZE(1..5))
MAX-ACCESS read-only
STATUS current
DESCRIPTION "This object gives Average temperature of the
system. There will be some roll up function
which will check current temperature at
particular intervals. Based on these current
temperatures over certain time, average
temperature is calculated."
::= {hpSystemAirTempEntry 8}
hpSystemAirEntPhysicalIndex OBJECT-TYPE
SYNTAX PhysicalIndex
MAX-ACCESS read-only
STATUS current
DESCRIPTION "This gives the entPhysicalIndex of the temperature
sensor as in the entPhysicalTable (rfc2737)."
::= {hpSystemAirTempEntry 9}
hpicfFanTrayType OBJECT-TYPE
SYNTAX INTEGER {
standard(1),
highPerformance(2)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION "If opacity shield is installed hpicsFanTrayType
should be HighPerformance. This is applicable
only for 5406 5412 8212 and 8206 Switches."
DEFVAL { standard }
::= { hpicfChassis 9 }
hpicfOpacityShieldInstalled OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-only
STATUS current
DESCRIPTION "It indicates that Opacity shield is Installed on
the switch. This is applicable only for 5406,5412,
8212 and 8206 Switches."
DEFVAL { false }
::= { hpicfChassis 10 }
-- Common Traps
hpicfSensorTrap NOTIFICATION-TYPE
OBJECTS { hpicfSensorStatus, hpicfSensorDescr }
STATUS current
DESCRIPTION
"An hpicfSensorTrap indicates that there has been a
change of state on one of the sensors in this
chassis. The hpicfSensorStatus indicates the new
status value for the changed sensor."
::= { hpicfCommonTrapsPrefix 3 }
-- conformance information
hpicfChassisConformance
OBJECT IDENTIFIER ::= { hpicfChassisMib 1 }
hpicfChassisCompliances
OBJECT IDENTIFIER ::= { hpicfChassisConformance 1 }
hpicfChassisGroups
OBJECT IDENTIFIER ::= { hpicfChassisConformance 2 }
-- compliance statements
hpicfChasAdvStkCompliance MODULE-COMPLIANCE
STATUS deprecated
DESCRIPTION
"********* THIS COMPLIANCE IS DEPRECATED *********
A compliance statement for AdvanceStack chassis
devices."
MODULE
MANDATORY-GROUPS { hpicfChassisBasicGroup }
GROUP hpicfSensorGroup
DESCRIPTION
"This group should be implemented on any
AdvanceStack device with redundant power
supplies or other appropriate sensors."
GROUP hpicfSensorNotifyGroup
DESCRIPTION
"This group should be implemented on any
AdvanceStack device with redundant power
supplies or other appropriate sensors."
::= { hpicfChassisCompliances 1 }
hpicfChasAdvStk2Compliance MODULE-COMPLIANCE
STATUS deprecated
DESCRIPTION
"********* THIS COMPLIANCE IS DEPRECATED *********
An updated compliance statement for AdvanceStack
chassis devices that includes the
hpicfChassisAddrGroup."
MODULE
MANDATORY-GROUPS { hpicfChassisBasicGroup,
hpicfChassisAddrGroup }
GROUP hpicfSensorGroup
DESCRIPTION
"This group should be implemented on any
AdvanceStack device with redundant power
supplies or other appropriate sensors."
GROUP hpicfSensorNotifyGroup
DESCRIPTION
"This group should be implemented on any
AdvanceStack device with redundant power
supplies or other appropriate sensors."
::= { hpicfChassisCompliances 2 }
hpicfChasSensorCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"A compliance statement for non-chassis devices,
or chassis devices implementing a standards-based
MIB for obtaining chassis information, which
contain redundant power supplies or other
appropriate sensors."
MODULE
MANDATORY-GROUPS { hpicfSensorGroup,
hpicfSensorNotifyGroup }
::= { hpicfChassisCompliances 3 }
hpicfChasTempCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
" A compliance statement for chassis's system air temperature
details."
MODULE
MANDATORY-GROUPS {hpicfChasTempGroup}
::= { hpicfChassisCompliances 4 }
hpicfOpacityShieldsCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"A compliance statement for chassis's opacity Shield"
MODULE
MANDATORY-GROUPS {hpicfOpacityShieldsGroup}
::= { hpicfChassisCompliances 5 }
-- units of conformance
hpicfChassisBasicGroup OBJECT-GROUP
OBJECTS { hpicfChassisId,
hpicfChassisNumSlots,
hpicfSlotIndex,
hpicfSlotObjectId,
hpicfSlotLastChange,
hpicfSlotDescr,
hpicfEntityIndex,
hpicfEntityFunction,
hpicfEntityObjectId,
hpicfEntityDescr,
hpicfEntityTimestamp,
hpicfSlotMapSlot,
hpicfSlotMapEntity
}
STATUS deprecated
DESCRIPTION
"********* THIS GROUP IS DEPRECATED *********
A collection of objects for determining the
contents of an ICF chassis device."
::= { hpicfChassisGroups 1 }
hpicfSensorGroup OBJECT-GROUP
OBJECTS { hpicfSensorIndex,
hpicfSensorObjectId,
hpicfSensorNumber,
hpicfSensorStatus,
hpicfSensorWarnings,
hpicfSensorFailures,
hpicfSensorDescr
}
STATUS current
DESCRIPTION
"A collection of objects for monitoring the status
of sensors in an ICF chassis."
::= { hpicfChassisGroups 2 }
hpicfChassisAddrGroup OBJECT-GROUP
OBJECTS { hpicfChasAddrEntity }
STATUS deprecated
DESCRIPTION
"********* THIS GROUP IS DEPRECATED *********
A collection of objects to allow a management
station to determine which devices are in the same
chassis."
::= { hpicfChassisGroups 3 }
hpicfSensorNotifyGroup NOTIFICATION-GROUP
NOTIFICATIONS { hpicfSensorTrap }
STATUS current
DESCRIPTION
"A collection of notifications used to indicate
changes in the status of sensors."
::= { hpicfChassisGroups 4 }
hpicfChasTempGroup OBJECT-GROUP
OBJECTS { hpSystemAirName,
hpSystemAirCurrentTemp,
hpSystemAirMaxTemp,
hpSystemAirMinTemp,
hpSystemAirThresholdTemp,
hpSystemAirOverTemp,
hpSystemAirAvgTemp,
hpSystemAirEntPhysicalIndex
}
STATUS current
DESCRIPTION
"A collection objects to give temperature details
of chassis"
::= { hpicfChassisGroups 5 }
hpicfOpacityShieldsGroup OBJECT-GROUP
OBJECTS { hpicfFanTrayType ,
hpicfOpacityShieldInstalled }
STATUS current
DESCRIPTION
"A collection of objects for Opacity Shields
of chassis"
::= { hpicfChassisGroups 6 }
END

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,148 @@
HP-ICF-TC DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY
FROM SNMPv2-SMI
TEXTUAL-CONVENTION
FROM SNMPv2-TC
hpicfAdmin
FROM HP-ICF-OID;
hpicfTextualConventions MODULE-IDENTITY
LAST-UPDATED "201010120800Z" -- October 12, 2010
ORGANIZATION "HP Networking"
CONTACT-INFO "Hewlett-Packard Company
8000 Foothills Blvd.
Roseville, CA 95747"
DESCRIPTION "This module contains common textual convention
definitions used by various HP ICF MIB modules."
REVISION "201010120800Z" -- October 12, 2010
DESCRIPTION "Added VidList type"
REVISION "200902101800Z" -- February 10, 2009
DESCRIPTION "Added 10GbE-K for 802.3ap (clauses 69-74)"
REVISION "200808190905Z" -- August 19, 2008
DESCRIPTION "Added XFP-SFP+ DAC types for HpSwitchPortType."
REVISION "200802041536Z" -- February 04, 2008
DESCRIPTION "Added multiple transceiver types."
REVISION "200402182305Z" -- February 18, 2004
DESCRIPTION "Added gigabitEthernetESP and tenGigabitEthernetCX
type for HpSwitchPortType."
REVISION "200011030717Z" -- November 3, 2000
DESCRIPTION "Initial revision."
::= { hpicfAdmin 4 }
ConfigStatus ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION "Used to indicate the configuration status for
a group of objects. 'active' means that the
values of the related objects are currently in
use by the device. 'notInService' indicates that
the objects have been reconfigured in such a way
that the values cannot take effect until after the
next reboot of the device. 'notReady' indicates
that the objects are not consistent with each other."
SYNTAX INTEGER {
active(1),
notInService(2),
notReady(3)
}
HpSwitchPortType ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION "Used to indicate the type of port."
SYNTAX INTEGER {
other(1),
none(2),
unknown(3),
ethernetCsmacd(6),
iso88023Csmacd(7),
fddi(15),
atm(37),
propMultiplexor(54),
ieee80212(55),
fastEther(62),
fastEtherFX(69),
fastEtherFX-sfp(70),
tenGSFP-SR (112),
tenGSFP-LR (113),
tenGSFP-ER (114),
tenGSFP-LRM (115),
tenGSFP-LX4 (116),
gigabitEthernetSX (117),
gigabitEthernetLX (118),
gigabitEthernetT (119),
gigabitEthernetStk (120),
gigabitEthernetLH (121),
tenGbE-CX4 (122),
gigabitEthernetESP (123),
tenGbE-SR (124),
tenGbE-ER (125),
tenGbE-LR (126),
gigabitEthernetT-sfp (127),
fastEtherGEN (128),
gigabitEthernetGEN (129),
tenGbE-GEN (130),
fastEtherBX-D (131),
fastEtherBX-U (132),
gigabitEthernetBX-D (133),
gigabitEthernetBX-U (134),
tenGbE-LRM (135),
sFP-PLUS-SR (136),
sFP-PLUS-LR (137),
sFP-PLUS-LRM (138),
sFP-PLUS-DAC (139),
sFP-PLUS-DA1 (140),
sFP-PLUS-DA2 (141),
sFP-PLUS-DA3 (142),
sFP-PLUS-DA5 (143),
sFP-PLUS-DA7 (144),
sFP-PLUS-DA10 (145),
sFP-PLUS-DA15 (146),
sFP-PLUS-DA20 (147),
tenGbE-T (148),
tenGbE-TSH (149),
tenGbE-TLH (150),
tenGbE-STK (151),
xFP-SFP-PLUS-DAC (152),
xFP-SFP-PLUS-DA1 (153),
xFP-SFP-PLUS-DA3 (154),
xFP-SFP-PLUS-DA5 (155),
xFP-SFP-PLUS-DA7 (156),
xFP-SFP-PLUS-DA10 (157),
tenGbE-K (158),
sFP-PLUS-ER (160),
sFP-CWDM1470 (161),
sFP-CWDM1490 (162),
sFP-CWDM1510 (163),
sFP-CWDM1530 (164),
sFP-CWDM1550 (165),
sFP-CWDM1570 (166),
sFP-CWDM1590 (167),
sFP-CWDM1610 (168)
}
VidList ::= TEXTUAL-CONVENTION
DISPLAY-HINT "512x"
STATUS current
DESCRIPTION
"Each octet within this value specifies a set of eight
VlanIndex (VID), with the first octet specifying VIDs 1
through 8, the second octet specifying VIDs 9 through 16,
etc. Within each octet, the most significant bit represents
the lowest numbered VID, and the least significant bit
represents the highest numbered VID. Thus, each VID
is represented by a single bit within the value of this
object. If that bit has a value of 1 then that VID is
included in the set of VIDs; the VID is not included if its
bit has a value of 0. This list represents the entire
range of VlanIndex values defined in the scope of IEEE
802.1Q."
SYNTAX OCTET STRING (SIZE (512))
END

View File

@ -0,0 +1,518 @@
-- *****************************************************************
-- IANAifType-MIB.my: IANA Interface Type MIB
--
-- May 1994, Jeffrey T. Johnson
--
-- Copyright (c) 1994-1997, 1998, 1999, 2000-2006 by cisco Systems, Inc.
-- All rights reserved.
--
-- *****************************************************************
IANAifType-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, mib-2 FROM SNMPv2-SMI
TEXTUAL-CONVENTION FROM SNMPv2-TC;
ianaifType MODULE-IDENTITY
LAST-UPDATED "200603310000Z" -- March 31, 2006
ORGANIZATION "IANA"
CONTACT-INFO " Internet Assigned Numbers Authority
Postal: ICANN
4676 Admiralty Way, Suite 330
Marina del Rey, CA 90292
Tel: +1 310 823 9358
E-Mail: iana@iana.org"
DESCRIPTION "This MIB module defines the IANAifType Textual
Convention, and thus the enumerated values of
the ifType object defined in MIB-II's ifTable."
REVISION "200603310000Z" -- March 31, 2006
DESCRIPTION "Registration of new IANA ifType 234."
REVISION "200603300000Z" -- March 30, 2006
DESCRIPTION "Registration of new IANA ifType 233."
REVISION "200512220000Z" -- December 22, 2005
DESCRIPTION "Registration of new IANA ifTypes 231 and 232."
REVISION "200510100000Z" -- October 10, 2005
DESCRIPTION "Registration of new IANA ifType 230."
REVISION "200509090000Z" -- September 09, 2005
DESCRIPTION "Registration of new IANA ifType 229."
REVISION "200505270000Z" -- May 27, 2005
DESCRIPTION "Registration of new IANA ifType 228."
REVISION "200503030000Z" -- March 3, 2005
DESCRIPTION "Added the IANAtunnelType TC and deprecated
IANAifType sixToFour (215) per RFC4087."
REVISION "200411220000Z" -- November 22, 2004
DESCRIPTION "Registration of new IANA ifType 227 per RFC4327."
REVISION "200406170000Z" -- June 17, 2004
DESCRIPTION "Registration of new IANA ifType 226."
REVISION "200405120000Z" -- May 12, 2004
DESCRIPTION "Added description for IANAifType 6, and
changed the descriptions for IANAifTypes
180, 181, and 182."
REVISION "200405070000Z" -- May 7, 2004
DESCRIPTION "Registration of new IANAifType 225."
REVISION "200308250000Z" -- Aug 25, 2003
DESCRIPTION "Deprecated IANAifTypes 7 and 11. Obsoleted
IANAifTypes 62, 69, and 117. ethernetCsmacd (6)
should be used instead of these values"
REVISION "200308180000Z" -- Aug 18, 2003
DESCRIPTION "Registration of new IANAifType
224."
REVISION "200308070000Z" -- Aug 7, 2003
DESCRIPTION "Registration of new IANAifTypes
222 and 223."
REVISION "200303180000Z" -- Mar 18, 2003
DESCRIPTION "Registration of new IANAifType
221."
REVISION "200301130000Z" -- Jan 13, 2003
DESCRIPTION "Registration of new IANAifType
220."
REVISION "200210170000Z" -- Oct 17, 2002
DESCRIPTION "Registration of new IANAifType
219."
REVISION "200207160000Z" -- Jul 16, 2002
DESCRIPTION "Registration of new IANAifTypes
217 and 218."
REVISION "200207100000Z" -- Jul 10, 2002
DESCRIPTION "Registration of new IANAifTypes
215 and 216."
REVISION "200206190000Z" -- Jun 19, 2002
DESCRIPTION "Registration of new IANAifType
214."
REVISION "200201040000Z" -- Jan 4, 2002
DESCRIPTION "Registration of new IANAifTypes
211, 212 and 213."
REVISION "200112200000Z" -- Dec 20, 2001
DESCRIPTION "Registration of new IANAifTypes
209 and 210."
REVISION "200111150000Z" -- Nov 15, 2001
DESCRIPTION "Registration of new IANAifTypes
207 and 208."
REVISION "200111060000Z" -- Nov 6, 2001
DESCRIPTION "Registration of new IANAifType
206."
REVISION "200111020000Z" -- Nov 2, 2001
DESCRIPTION "Registration of new IANAifType
205."
REVISION "200110160000Z" -- Oct 16, 2001
DESCRIPTION "Registration of new IANAifTypes
199, 200, 201, 202, 203, and 204."
REVISION "200109190000Z" -- Sept 19, 2001
DESCRIPTION "Registration of new IANAifType
198."
REVISION "200105110000Z" -- May 11, 2001
DESCRIPTION "Registration of new IANAifType
197."
REVISION "200101120000Z" -- Jan 12, 2001
DESCRIPTION "Registration of new IANAifTypes
195 and 196."
REVISION "200012190000Z" -- Dec 19, 2000
DESCRIPTION "Registration of new IANAifTypes
193 and 194."
REVISION "200012070000Z" -- Dec 07, 2000
DESCRIPTION "Registration of new IANAifTypes
191 and 192."
REVISION "200012040000Z" -- Dec 04, 2000
DESCRIPTION "Registration of new IANAifType
190."
REVISION "200010170000Z" -- Oct 17, 2000
DESCRIPTION "Registration of new IANAifTypes
188 and 189."
REVISION "200010020000Z" -- Oct 02, 2000
DESCRIPTION "Registration of new IANAifType 187."
REVISION "200009010000Z" -- Sept 01, 2000
DESCRIPTION "Registration of new IANAifTypes
184, 185, and 186."
REVISION "200008240000Z" -- Aug 24, 2000
DESCRIPTION "Registration of new IANAifType 183."
REVISION "200008230000Z" -- Aug 23, 2000
DESCRIPTION "Registration of new IANAifTypes
174-182."
REVISION "200008220000Z" -- Aug 22, 2000
DESCRIPTION "Registration of new IANAifTypes 170,
171, 172 and 173."
REVISION "200004250000Z" -- Apr 25, 2000
DESCRIPTION "Registration of new IANAifTypes 168 and 169."
REVISION "200003060000Z" -- Mar 6, 2000
DESCRIPTION "Fixed a missing semi-colon in the IMPORT.
Also cleaned up the REVISION log a bit.
It is not complete, but from now on it will
be maintained and kept up to date with each
change to this MIB module."
REVISION "199910081430Z" -- Oct 08, 1999
DESCRIPTION "Include new name assignments up to cnr(85).
This is the first version available via the WWW
at: ftp://ftp.isi.edu/mib/ianaiftype.mib"
REVISION "199401310000Z" -- Jan 31, 1994
DESCRIPTION "Initial version of this MIB as published in
RFC 1573."
::= { mib-2 30 }
IANAifType ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"This data type is used as the syntax of the ifType
object in the (updated) definition of MIB-II's
ifTable.
The definition of this textual convention with the
addition of newly assigned values is published
periodically by the IANA, in either the Assigned
Numbers RFC, or some derivative of it specific to
Internet Network Management number assignments. (The
latest arrangements can be obtained by contacting the
IANA.)
Requests for new values should be made to IANA via
email (iana@iana.org).
The relationship between the assignment of ifType
values and of OIDs to particular media-specific MIBs
is solely the purview of IANA and is subject to change
without notice. Quite often, a media-specific MIB's
OID-subtree assignment within MIB-II's 'transmission'
subtree will be the same as its ifType value.
However, in some circumstances this will not be the
case, and implementors must not pre-assume any
specific relationship between ifType values and
transmission subtree OIDs."
SYNTAX INTEGER {
other(1), -- none of the following
regular1822(2),
hdh1822(3),
ddnX25(4),
rfc877x25(5),
ethernetCsmacd(6), -- for all ethernet-like interfaces,
-- regardless of speed, as per RFC3635
iso88023Csmacd(7), -- Deprecated via RFC-draft-ietf-hubmib-etherif-mib-v3 ethernetCsmacd (6) should be used instead
iso88024TokenBus(8),
iso88025TokenRing(9),
iso88026Man(10),
starLan(11), -- Deprecated via RFC-draft-ietf-hubmib-etherif-mib-v3 ethernetCsmacd (6) should be used instead
proteon10Mbit(12),
proteon80Mbit(13),
hyperchannel(14),
fddi(15),
lapb(16),
sdlc(17),
ds1(18), -- DS1-MIB
e1(19), -- Obsolete see DS1-MIB
basicISDN(20),
primaryISDN(21),
propPointToPointSerial(22), -- proprietary serial
ppp(23),
softwareLoopback(24),
eon(25), -- CLNP over IP
ethernet3Mbit(26),
nsip(27), -- XNS over IP
slip(28), -- generic SLIP
ultra(29), -- ULTRA technologies
ds3(30), -- DS3-MIB
sip(31), -- SMDS, coffee
frameRelay(32), -- DTE only.
rs232(33),
para(34), -- parallel-port
arcnet(35), -- arcnet
arcnetPlus(36), -- arcnet plus
atm(37), -- ATM cells
miox25(38),
sonet(39), -- SONET or SDH
x25ple(40),
iso88022llc(41),
localTalk(42),
smdsDxi(43),
frameRelayService(44), -- FRNETSERV-MIB
v35(45),
hssi(46),
hippi(47),
modem(48), -- Generic modem
aal5(49), -- AAL5 over ATM
sonetPath(50),
sonetVT(51),
smdsIcip(52), -- SMDS InterCarrier Interface
propVirtual(53), -- proprietary virtual/internal
propMultiplexor(54),-- proprietary multiplexing
ieee80212(55), -- 100BaseVG
fibreChannel(56), -- Fibre Channel
hippiInterface(57), -- HIPPI interfaces
frameRelayInterconnect(58), -- Obsolete use either
-- frameRelay(32) or
-- frameRelayService(44).
aflane8023(59), -- ATM Emulated LAN for 802.3
aflane8025(60), -- ATM Emulated LAN for 802.5
cctEmul(61), -- ATM Emulated circuit
fastEther(62), -- Obsoleted via RFC-draft-ietf-hubmib-etherif-mib-v3 ethernetCsmacd (6) should be used instead
isdn(63), -- ISDN and X.25
v11(64), -- CCITT V.11/X.21
v36(65), -- CCITT V.36
g703at64k(66), -- CCITT G703 at 64Kbps
g703at2mb(67), -- Obsolete see DS1-MIB
qllc(68), -- SNA QLLC
fastEtherFX(69), -- Obsoleted via RFC-draft-ietf-hubmib-etherif-mib-v3 ethernetCsmacd (6) should be used instead
channel(70), -- channel
ieee80211(71), -- radio spread spectrum
ibm370parChan(72), -- IBM System 360/370 OEMI Channel
escon(73), -- IBM Enterprise Systems Connection
dlsw(74), -- Data Link Switching
isdns(75), -- ISDN S/T interface
isdnu(76), -- ISDN U interface
lapd(77), -- Link Access Protocol D
ipSwitch(78), -- IP Switching Objects
rsrb(79), -- Remote Source Route Bridging
atmLogical(80), -- ATM Logical Port
ds0(81), -- Digital Signal Level 0
ds0Bundle(82), -- group of ds0s on the same ds1
bsc(83), -- Bisynchronous Protocol
async(84), -- Asynchronous Protocol
cnr(85), -- Combat Net Radio
iso88025Dtr(86), -- ISO 802.5r DTR
eplrs(87), -- Ext Pos Loc Report Sys
arap(88), -- Appletalk Remote Access Protocol
propCnls(89), -- Proprietary Connectionless Protocol
hostPad(90), -- CCITT-ITU X.29 PAD Protocol
termPad(91), -- CCITT-ITU X.3 PAD Facility
frameRelayMPI(92), -- Multiproto Interconnect over FR
x213(93), -- CCITT-ITU X213
adsl(94), -- Asymmetric Digital Subscriber Loop
radsl(95), -- Rate-Adapt. Digital Subscriber Loop
sdsl(96), -- Symmetric Digital Subscriber Loop
vdsl(97), -- Very H-Speed Digital Subscrib. Loop
iso88025CRFPInt(98), -- ISO 802.5 CRFP
myrinet(99), -- Myricom Myrinet
voiceEM(100), -- voice recEive and transMit
voiceFXO(101), -- voice Foreign Exchange Office
voiceFXS(102), -- voice Foreign Exchange Station
voiceEncap(103), -- voice encapsulation
voiceOverIp(104), -- voice over IP encapsulation
atmDxi(105), -- ATM DXI
atmFuni(106), -- ATM FUNI
atmIma (107), -- ATM IMA
pppMultilinkBundle(108), -- PPP Multilink Bundle
ipOverCdlc (109), -- IBM ipOverCdlc
ipOverClaw (110), -- IBM Common Link Access to Workstn
stackToStack (111), -- IBM stackToStack
virtualIpAddress (112), -- IBM VIPA
mpc (113), -- IBM multi-protocol channel support
ipOverAtm (114), -- IBM ipOverAtm
iso88025Fiber (115), -- ISO 802.5j Fiber Token Ring
tdlc (116), -- IBM twinaxial data link control
gigabitEthernet (117), -- Obsoleted via RFC-draft-ietf-hubmib-etherif-mib-v3 ethernetCsmacd (6) should be used instead
hdlc (118), -- HDLC
lapf (119), -- LAP F
v37 (120), -- V.37
x25mlp (121), -- Multi-Link Protocol
x25huntGroup (122), -- X25 Hunt Group
trasnpHdlc (123), -- Transp HDLC
interleave (124), -- Interleave channel
fast (125), -- Fast channel
ip (126), -- IP (for APPN HPR in IP networks)
docsCableMaclayer (127), -- CATV Mac Layer
docsCableDownstream (128), -- CATV Downstream interface
docsCableUpstream (129), -- CATV Upstream interface
a12MppSwitch (130), -- Avalon Parallel Processor
tunnel (131), -- Encapsulation interface
coffee (132), -- coffee pot
ces (133), -- Circuit Emulation Service
atmSubInterface (134), -- ATM Sub Interface
l2vlan (135), -- Layer 2 Virtual LAN using 802.1Q
l3ipvlan (136), -- Layer 3 Virtual LAN using IP
l3ipxvlan (137), -- Layer 3 Virtual LAN using IPX
digitalPowerline (138), -- IP over Power Lines
mediaMailOverIp (139), -- Multimedia Mail over IP
dtm (140), -- Dynamic syncronous Transfer Mode
dcn (141), -- Data Communications Network
ipForward (142), -- IP Forwarding Interface
msdsl (143), -- Multi-rate Symmetric DSL
ieee1394 (144), -- IEEE1394 High Performance Serial Bus
if-gsn (145), -- HIPPI-6400
dvbRccMacLayer (146), -- DVB-RCC MAC Layer
dvbRccDownstream (147), -- DVB-RCC Downstream Channel
dvbRccUpstream (148), -- DVB-RCC Upstream Channel
atmVirtual (149), -- ATM Virtual Interface
mplsTunnel (150), -- MPLS Tunnel Virtual Interface
srp (151), -- Spatial Reuse Protocol
voiceOverAtm (152), -- Voice Over ATM
voiceOverFrameRelay (153), -- Voice Over Frame Relay
idsl (154), -- Digital Subscriber Loop over ISDN
compositeLink (155), -- Avici Composite Link Interface
ss7SigLink (156), -- SS7 Signaling Link
propWirelessP2P (157), -- Prop. P2P wireless interface
frForward (158), -- Frame Forward Interface
rfc1483 (159), -- Multiprotocol over ATM AAL5
usb (160), -- USB Interface
ieee8023adLag (161), -- IEEE 802.3ad Link Aggregate
bgppolicyaccounting (162), -- BGP Policy Accounting
frf16MfrBundle (163), -- FRF .16 Multilink Frame Relay
h323Gatekeeper (164), -- H323 Gatekeeper
h323Proxy (165), -- H323 Voice and Video Proxy
mpls (166), -- MPLS
mfSigLink (167), -- Multi-frequency signaling link
hdsl2 (168), -- High Bit-Rate DSL - 2nd generation
shdsl (169), -- Multirate HDSL2
ds1FDL (170), -- Facility Data Link 4Kbps on a DS1
pos (171), -- Packet over SONET/SDH Interface
dvbAsiIn (172), -- DVB-ASI Input
dvbAsiOut (173), -- DVB-ASI Output
plc (174), -- Power Line Communtications
nfas (175), -- Non Facility Associated Signaling
tr008 (176), -- TR008
gr303RDT (177), -- Remote Digital Terminal
gr303IDT (178), -- Integrated Digital Terminal
isup (179), -- ISUP
propDocsWirelessMaclayer (180), -- Cisco proprietary Maclayer
propDocsWirelessDownstream (181), -- Cisco proprietary Downstream
propDocsWirelessUpstream (182), -- Cisco proprietary Upstream
hiperlan2 (183), -- HIPERLAN Type 2 Radio Interface
propBWAp2Mp (184), -- PropBroadbandWirelessAccesspt2multipt
sonetOverheadChannel (185), -- SONET Overhead Channel
digitalWrapperOverheadChannel (186), -- Digital Wrapper
aal2 (187), -- ATM adaptation layer 2
radioMAC (188), -- MAC layer over radio links
atmRadio (189), -- ATM over radio links
imt (190), -- Inter Machine Trunks
mvl (191), -- Multiple Virtual Lines DSL
reachDSL (192), -- Long Reach DSL
frDlciEndPt (193), -- Frame Relay DLCI End Point
atmVciEndPt (194), -- ATM VCI End Point
opticalChannel (195), -- Optical Channel
opticalTransport (196), -- Optical Transport
propAtm (197), -- Proprietary ATM
voiceOverCable (198), -- Voice Over Cable Interface
infiniband (199), -- Infiniband
teLink (200), -- TE Link
q2931 (201), -- Q.2931
virtualTg (202), -- Virtual Trunk Group
sipTg (203), -- SIP Trunk Group
sipSig (204), -- SIP Signaling
docsCableUpstreamChannel (205), -- CATV Upstream Channel
econet (206), -- Acorn Econet
pon155 (207), -- FSAN 155Mb Symetrical PON interface
pon622 (208), -- FSAN622Mb Symetrical PON interface
bridge (209), -- Transparent bridge interface
linegroup (210), -- Interface common to multiple lines
voiceEMFGD (211), -- voice E&M Feature Group D
voiceFGDEANA (212), -- voice FGD Exchange Access North American
voiceDID (213), -- voice Direct Inward Dialing
mpegTransport (214), -- MPEG transport interface
sixToFour (215), -- 6to4 interface (DEPRECATED)
gtp (216), -- GTP (GPRS Tunneling Protocol)
pdnEtherLoop1 (217), -- Paradyne EtherLoop 1
pdnEtherLoop2 (218), -- Paradyne EtherLoop 2
opticalChannelGroup (219), -- Optical Channel Group
homepna (220), -- HomePNA ITU-T G.989
gfp (221), -- Generic Framing Procedure (GFP)
ciscoISLvlan (222), -- Layer 2 Virtual LAN using Cisco ISL
actelisMetaLOOP (223), -- Acteleis proprietary MetaLOOP High Speed Link
fcipLink (224), -- FCIP Link
rpr (225), -- Resilient Packet Ring Interface Type
qam (226), -- RF Qam Interface
lmp (227), -- Link Management Protocol
cblVectaStar (228), -- Cambridge Broadband Limited VectaStar
docsCableMCmtsDownstream (229), -- CATV Modular CMTS Downstream Interface
adsl2 (230), -- Asymmetric Digital Subscriber Loop Version 2
macSecControlledIF (231), -- MACSecControlled
macSecUncontrolledIF (232), -- MACSecUncontrolled
aviciOpticalEther (233), -- Avici Optical Ethernet Aggregate
atmbond (234) -- atmbond
}
IANAtunnelType ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"The encapsulation method used by a tunnel. The value
direct indicates that a packet is encapsulated
directly within a normal IP header, with no
intermediate header, and unicast to the remote tunnel
endpoint (e.g., an RFC 2003 IP-in-IP tunnel, or an RFC
1933 IPv6-in-IPv4 tunnel). The value minimal indicates
that a Minimal Forwarding Header (RFC 2004) is
inserted between the outer header and the payload
packet. The value UDP indicates that the payload
packet is encapsulated within a normal UDP packet
(e.g., RFC 1234).
The values sixToFour, sixOverFour, and isatap
indicates that an IPv6 packet is encapsulated directly
within an IPv4 header, with no intermediate header,
and unicast to the destination determined by the 6to4,
6over4, or ISATAP protocol.
The remaining protocol-specific values indicate that a
header of the protocol of that name is inserted
between the outer header and the payload header.
The assignment policy for IANAtunnelType values is
identical to the policy for assigning IANAifType
values."
SYNTAX INTEGER {
other(1), -- none of the following
direct(2), -- no intermediate header
gre(3), -- GRE encapsulation
minimal(4), -- Minimal encapsulation
l2tp(5), -- L2TP encapsulation
pptp(6), -- PPTP encapsulation
l2f(7), -- L2F encapsulation
udp(8), -- UDP encapsulation
atmp(9), -- ATMP encapsulation
msdp(10), -- MSDP encapsulation
sixToFour(11), -- 6to4 encapsulation
sixOverFour(12), -- 6over4 encapsulation
isatap(13), -- ISATAP encapsulation
teredo(14) -- Teredo encapsulation
}
END

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,425 @@
-- *****************************************************************
-- INET-ADDRESS-MIB.my: Textual Conventions for Internet Network
-- Address.
--
-- July 2005, Subra Hegde
--
-- Copyright (c) 2005 by cisco Systems, Inc.
-- All rights reserved.
--
-- *****************************************************************
-- This MIB is extracted from RFC 4001
INET-ADDRESS-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, mib-2, Unsigned32 FROM SNMPv2-SMI
TEXTUAL-CONVENTION FROM SNMPv2-TC;
inetAddressMIB MODULE-IDENTITY
LAST-UPDATED "200502040000Z"
ORGANIZATION
"IETF Operations and Management Area"
CONTACT-INFO
"Juergen Schoenwaelder (Editor)
International University Bremen
P.O. Box 750 561
28725 Bremen, Germany
Phone: +49 421 200-3587
EMail: j.schoenwaelder@iu-bremen.de
Send comments to <ietfmibs@ops.ietf.org>."
DESCRIPTION
"This MIB module defines textual conventions for
representing Internet addresses. An Internet
address can be an IPv4 address, an IPv6 address,
or a DNS domain name. This module also defines
textual conventions for Internet port numbers,
autonomous system numbers, and the length of an
Internet address prefix.
Copyright (C) The Internet Society (2005). This version
of this MIB module is part of RFC 4001, see the RFC
itself for full legal notices."
REVISION "200502040000Z"
DESCRIPTION
"Third version, published as RFC 4001. This revision
introduces the InetZoneIndex, InetScopeType, and
InetVersion textual conventions."
REVISION "200205090000Z"
DESCRIPTION
"Second version, published as RFC 3291. This
revision contains several clarifications and
introduces several new textual conventions:
InetAddressPrefixLength, InetPortNumber,
InetAutonomousSystemNumber, InetAddressIPv4z,
and InetAddressIPv6z."
REVISION "200006080000Z"
DESCRIPTION
"Initial version, published as RFC 2851."
::= { mib-2 76 }
InetAddressType ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"A value that represents a type of Internet address.
unknown(0) An unknown address type. This value MUST
be used if the value of the corresponding
InetAddress object is a zero-length string.
It may also be used to indicate an IP address
that is not in one of the formats defined
below.
ipv4(1) An IPv4 address as defined by the
InetAddressIPv4 textual convention.
ipv6(2) An IPv6 address as defined by the
InetAddressIPv6 textual convention.
ipv4z(3) A non-global IPv4 address including a zone
index as defined by the InetAddressIPv4z
textual convention.
ipv6z(4) A non-global IPv6 address including a zone
index as defined by the InetAddressIPv6z
textual convention.
dns(16) A DNS domain name as defined by the
InetAddressDNS textual convention.
Each definition of a concrete InetAddressType value must be
accompanied by a definition of a textual convention for use
with that InetAddressType.
To support future extensions, the InetAddressType textual
convention SHOULD NOT be sub-typed in object type definitions.
It MAY be sub-typed in compliance statements in order to
require only a subset of these address types for a compliant
implementation.
Implementations must ensure that InetAddressType objects
and any dependent objects (e.g., InetAddress objects) are
consistent. An inconsistentValue error must be generated
if an attempt to change an InetAddressType object would,
for example, lead to an undefined InetAddress value. In
particular, InetAddressType/InetAddress pairs must be
changed together if the address type changes (e.g., from
ipv6(2) to ipv4(1))."
SYNTAX INTEGER {
unknown(0),
ipv4(1),
ipv6(2),
ipv4z(3),
ipv6z(4),
dns(16)
}
InetAddress ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Denotes a generic Internet address.
An InetAddress value is always interpreted within the context
of an InetAddressType value. Every usage of the InetAddress
textual convention is required to specify the InetAddressType
object that provides the context. It is suggested that the
InetAddressType object be logically registered before the
object(s) that use the InetAddress textual convention, if
they appear in the same logical row.
The value of an InetAddress object must always be
consistent with the value of the associated InetAddressType
object. Attempts to set an InetAddress object to a value
inconsistent with the associated InetAddressType
must fail with an inconsistentValue error.
When this textual convention is used as the syntax of an
index object, there may be issues with the limit of 128
sub-identifiers specified in SMIv2, STD 58. In this case,
the object definition MUST include a 'SIZE' clause to
limit the number of potential instance sub-identifiers;
otherwise the applicable constraints MUST be stated in
the appropriate conceptual row DESCRIPTION clauses, or
in the surrounding documentation if there is no single
DESCRIPTION clause that is appropriate."
SYNTAX OCTET STRING (SIZE (0..255))
InetAddressIPv4 ::= TEXTUAL-CONVENTION
DISPLAY-HINT "1d.1d.1d.1d"
STATUS current
DESCRIPTION
"Represents an IPv4 network address:
Octets Contents Encoding
1-4 IPv4 address network-byte order
The corresponding InetAddressType value is ipv4(1).
This textual convention SHOULD NOT be used directly in object
definitions, as it restricts addresses to a specific format.
However, if it is used, it MAY be used either on its own or in
conjunction with InetAddressType, as a pair."
SYNTAX OCTET STRING (SIZE (4))
InetAddressIPv6 ::= TEXTUAL-CONVENTION
DISPLAY-HINT "2x:2x:2x:2x:2x:2x:2x:2x"
STATUS current
DESCRIPTION
"Represents an IPv6 network address:
Octets Contents Encoding
1-16 IPv6 address network-byte order
The corresponding InetAddressType value is ipv6(2).
This textual convention SHOULD NOT be used directly in object
definitions, as it restricts addresses to a specific format.
However, if it is used, it MAY be used either on its own or in
conjunction with InetAddressType, as a pair."
SYNTAX OCTET STRING (SIZE (16))
InetAddressIPv4z ::= TEXTUAL-CONVENTION
DISPLAY-HINT "1d.1d.1d.1d%4d"
STATUS current
DESCRIPTION
"Represents a non-global IPv4 network address, together
with its zone index:
Octets Contents Encoding
1-4 IPv4 address network-byte order
5-8 zone index network-byte order
The corresponding InetAddressType value is ipv4z(3).
The zone index (bytes 5-8) is used to disambiguate identical
address values on nodes that have interfaces attached to
different zones of the same scope. The zone index may contain
the special value 0, which refers to the default zone for each
scope.
This textual convention SHOULD NOT be used directly in object
definitions, as it restricts addresses to a specific format.
However, if it is used, it MAY be used either on its own or in
conjunction with InetAddressType, as a pair."
SYNTAX OCTET STRING (SIZE (8))
InetAddressIPv6z ::= TEXTUAL-CONVENTION
DISPLAY-HINT "2x:2x:2x:2x:2x:2x:2x:2x%4d"
STATUS current
DESCRIPTION
"Represents a non-global IPv6 network address, together
with its zone index:
Octets Contents Encoding
1-16 IPv6 address network-byte order
17-20 zone index network-byte order
The corresponding InetAddressType value is ipv6z(4).
The zone index (bytes 17-20) is used to disambiguate
identical address values on nodes that have interfaces
attached to different zones of the same scope. The zone index
may contain the special value 0, which refers to the default
zone for each scope.
This textual convention SHOULD NOT be used directly in object
definitions, as it restricts addresses to a specific format.
However, if it is used, it MAY be used either on its own or in
conjunction with InetAddressType, as a pair."
SYNTAX OCTET STRING (SIZE (20))
InetAddressDNS ::= TEXTUAL-CONVENTION
DISPLAY-HINT "255a"
STATUS current
DESCRIPTION
"Represents a DNS domain name. The name SHOULD be fully
qualified whenever possible.
The corresponding InetAddressType is dns(16).
The DESCRIPTION clause of InetAddress objects that may have
InetAddressDNS values MUST fully describe how (and when)
these names are to be resolved to IP addresses.
The resolution of an InetAddressDNS value may require to
query multiple DNS records (e.g., A for IPv4 and AAAA for
IPv6). The order of the resolution process and which DNS
record takes precedence depends on the configuration of the
resolver.
This textual convention SHOULD NOT be used directly in object
definitions, as it restricts addresses to a specific format.
However, if it is used, it MAY be used either on its own or in
conjunction with InetAddressType, as a pair."
SYNTAX OCTET STRING (SIZE (1..255))
InetAddressPrefixLength ::= TEXTUAL-CONVENTION
DISPLAY-HINT "d"
STATUS current
DESCRIPTION
"Denotes the length of a generic Internet network address
prefix. A value of n corresponds to an IP address mask
that has n contiguous 1-bits from the most significant
bit (MSB), with all other bits set to 0.
An InetAddressPrefixLength value is always interpreted within
the context of an InetAddressType value. Every usage of the
InetAddressPrefixLength textual convention is required to
specify the InetAddressType object that provides the
context. It is suggested that the InetAddressType object be
logically registered before the object(s) that use the
InetAddressPrefixLength textual convention, if they appear
in the same logical row.
InetAddressPrefixLength values larger than
the maximum length of an IP address for a specific
InetAddressType are treated as the maximum significant
value applicable for the InetAddressType. The maximum
significant value is 32 for the InetAddressType
'ipv4(1)' and 'ipv4z(3)' and 128 for the InetAddressType
'ipv6(2)' and 'ipv6z(4)'. The maximum significant value
for the InetAddressType 'dns(16)' is 0.
The value zero is object-specific and must be defined as
part of the description of any object that uses this
syntax. Examples of the usage of zero might include
situations where the Internet network address prefix
is unknown or does not apply.
The upper bound of the prefix length has been chosen to
be consistent with the maximum size of an InetAddress."
SYNTAX Unsigned32 (0..2040)
InetPortNumber ::= TEXTUAL-CONVENTION
DISPLAY-HINT "d"
STATUS current
DESCRIPTION
"Represents a 16 bit port number of an Internet transport
layer protocol. Port numbers are assigned by IANA. A
current list of all assignments is available from
<http://www.iana.org/>.
The value zero is object-specific and must be defined as
part of the description of any object that uses this
syntax. Examples of the usage of zero might include
situations where a port number is unknown, or when the
value zero is used as a wildcard in a filter."
REFERENCE "STD 6 (RFC 768), STD 7 (RFC 793) and RFC 2960"
SYNTAX Unsigned32 (0..65535)
InetAutonomousSystemNumber ::= TEXTUAL-CONVENTION
DISPLAY-HINT "d"
STATUS current
DESCRIPTION
"Represents an autonomous system number that identifies an
Autonomous System (AS). An AS is a set of routers under a
single technical administration, using an interior gateway
protocol and common metrics to route packets within the AS,
and using an exterior gateway protocol to route packets to
other ASes'. IANA maintains the AS number space and has
delegated large parts to the regional registries.
Autonomous system numbers are currently limited to 16 bits
(0..65535). There is, however, work in progress to enlarge the
autonomous system number space to 32 bits. Therefore, this
textual convention uses an Unsigned32 value without a
range restriction in order to support a larger autonomous
system number space."
REFERENCE "RFC 1771, RFC 1930"
SYNTAX Unsigned32
InetScopeType ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Represents a scope type. This textual convention can be used
in cases where a MIB has to represent different scope types
and there is no context information, such as an InetAddress
object, that implicitly defines the scope type.
Note that not all possible values have been assigned yet, but
they may be assigned in future revisions of this specification.
Applications should therefore be able to deal with values
not yet assigned."
REFERENCE "RFC 3513"
SYNTAX INTEGER {
-- reserved(0),
interfaceLocal(1),
linkLocal(2),
subnetLocal(3),
adminLocal(4),
siteLocal(5), -- site-local unicast addresses
-- have been deprecated by RFC 3879
-- unassigned(6),
-- unassigned(7),
organizationLocal(8),
-- unassigned(9),
-- unassigned(10),
-- unassigned(11),
-- unassigned(12),
-- unassigned(13),
global(14)
-- reserved(15)
}
InetZoneIndex ::= TEXTUAL-CONVENTION
DISPLAY-HINT "d"
STATUS current
DESCRIPTION
"A zone index identifies an instance of a zone of a
specific scope.
The zone index MUST disambiguate identical address
values. For link-local addresses, the zone index will
typically be the interface index (ifIndex as defined in the
IF-MIB) of the interface on which the address is configured.
The zone index may contain the special value 0, which refers
to the default zone. The default zone may be used in cases
where the valid zone index is not known (e.g., when a
management application has to write a link-local IPv6
address without knowing the interface index value). The
default zone SHOULD NOT be used as an easy way out in
cases where the zone index for a non-global IPv6 address
is known."
REFERENCE "RFC4007"
SYNTAX Unsigned32
InetVersion ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"A value representing a version of the IP protocol.
unknown(0) An unknown or unspecified version of the IP
protocol.
ipv4(1) The IPv4 protocol as defined in RFC 791 (STD 5).
ipv6(2) The IPv6 protocol as defined in RFC 2460.
Note that this textual convention SHOULD NOT be used to
distinguish different address types associated with IP
protocols. The InetAddressType has been designed for this
purpose."
REFERENCE "RFC 791, RFC 2460"
SYNTAX INTEGER {
unknown(0),
ipv4(1),
ipv6(2)
}
END

View File

@ -0,0 +1,75 @@
-- *****************************************************************
-- IPV6-TC.my: IPV6 Textual Conventions
--
-- Copyright (c) 2006 by cisco Systems, Inc.
-- All rights reserved.
--
-- *****************************************************************
IPV6-TC DEFINITIONS ::= BEGIN
IMPORTS
Integer32 FROM SNMPv2-SMI
TEXTUAL-CONVENTION FROM SNMPv2-TC;
-- definition of textual conventions
Ipv6Address ::= TEXTUAL-CONVENTION
DISPLAY-HINT "2x:"
STATUS current
DESCRIPTION
"This data type is used to model IPv6 addresses.
This is a binary string of 16 octets in network
byte-order."
SYNTAX OCTET STRING (SIZE (16))
Ipv6AddressPrefix ::= TEXTUAL-CONVENTION
DISPLAY-HINT "2x:"
STATUS current
DESCRIPTION
"This data type is used to model IPv6 address
prefixes. This is a binary string of up to 16
octets in network byte-order."
SYNTAX OCTET STRING (SIZE (0..16))
Ipv6AddressIfIdentifier ::= TEXTUAL-CONVENTION
DISPLAY-HINT "2x:"
STATUS current
DESCRIPTION
"This data type is used to model IPv6 address
interface identifiers. This is a binary string
of up to 8 octets in network byte-order."
SYNTAX OCTET STRING (SIZE (0..8))
Ipv6IfIndex ::= TEXTUAL-CONVENTION
DISPLAY-HINT "d"
STATUS current
DESCRIPTION
"A unique value, greater than zero for each
internetwork-layer interface in the managed
system. It is recommended that values are assigned
contiguously starting from 1. The value for each
internetwork-layer interface must remain constant
at least from one re-initialization of the entity's
network management system to the next
re-initialization."
SYNTAX Integer32 (1..2147483647)
Ipv6IfIndexOrZero ::= TEXTUAL-CONVENTION
DISPLAY-HINT "d"
STATUS current
DESCRIPTION
"This textual convention is an extension of the
Ipv6IfIndex convention. The latter defines
a greater than zero value used to identify an IPv6
interface in the managed system. This extension
permits the additional value of zero. The value
zero is object-specific and must therefore be
defined as part of the description of any object
which uses this syntax. Examples of the usage of
zero might include situations where interface was
unknown, or when none or all interfaces need to be
referenced."
SYNTAX Integer32 (0..2147483647)
END

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,375 @@
--
-- Juniper Enterprise Specific MIB: Structure of Management Information
--
-- Copyright (c) 2002-2013, Juniper Networks, Inc.
-- All rights reserved.
--
-- The contents of this document are subject to change without notice.
--
JUNIPER-SMI DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, OBJECT-IDENTITY, enterprises
FROM SNMPv2-SMI;
juniperMIB MODULE-IDENTITY
LAST-UPDATED "201703010000Z" -- Wed Mar 01 00:00:00 2017 UTC
ORGANIZATION "Juniper Networks, Inc."
CONTACT-INFO
" Juniper Technical Assistance Center
Juniper Networks, Inc.
1194 N. Mathilda Avenue
Sunnyvale, CA 94089
E-mail: support@juniper.net"
DESCRIPTION
"The Structure of Management Information for Juniper Networks."
REVISION "201007090000Z" -- Jul 09, 2010
DESCRIPTION
"Added jnxLicenseMibRoot branch."
REVISION "200910290000Z" -- Oct 29, 2009
DESCRIPTION
"Added jnxCosNotifications branch."
REVISION "201006180000Z" -- Jun 18, 2010
DESCRIPTION
"Added jnxLicenseMibRoot branch."
REVISION "200304170100Z" -- 17-Apr-03
DESCRIPTION
"Added jnxExperiment branch."
REVISION "200508170100Z" -- 17-Aug-05
DESCRIPTION
"Added jnxNsm branch."
REVISION "200612140100Z" -- 14-Dec-06
DESCRIPTION
"Added jnxCA branch."
REVISION "200701010000Z" -- 1-Jan-07
DESCRIPTION
"Added jnxUtilMibRoot branch."
REVISION "200710090000Z" -- 9-Oct-07
DESCRIPTION
"Added jnxAdvancedInsightMgr branch."
REVISION "200912310000Z" -- 31-Dec-09
DESCRIPTION
"Added jnxBxMibRoot branch."
REVISION "201007140000Z" -- 14-Jul-10
DESCRIPTION
"Added jnxSubscriberMibRoot branch."
REVISION "201101260000Z" -- 26-Jan-11
DESCRIPTION
"Added jnxDcfMibRoot branch."
REVISION "201202100000Z" -- 10-Feb-12
DESCRIPTION
"Added jnxMediaFlow branch."
REVISION "201208010000Z" -- 01-Aug-12
DESCRIPTION
"Added jnxSDKApplicationsRoot branch."
REVISION "201211010000Z" -- 01-Nov12
DESCRIPTION
"Added jnxJVAEMibRoot branch."
REVISION "201212070000Z" -- 7-Dec-12
DESCRIPTION
"Added jnxStrm branch."
REVISION "201301250000Z" -- 25-Jan-13
DESCRIPTION
"Added jnxIfOtnMibRoot branch.
Added jnxOpticsMibRoot branch.
Added jnxAlarmExtMibRoot branch.
Added jnxoptIfMibRoot branch.
Added jnxIfOtnNotifications branch.
Added jnxOpticsNotifications branch."
REVISION "201311260000Z" -- 26-Nov-13
DESCRIPTION
" Added jnxSnmpSetMibRoot branch"
REVISION "201410090000Z" -- 09-Oct-14
DESCRIPTION
" Added jnxFabricMibRoot branch"
REVISION "201410290000Z" -- 29-Oct-14
DESCRIPTION
" Added jnxAgentCapability branch"
REVISION "201511190000Z" -- 19-Nov-15
DESCRIPTION
" Added jnxIplcNotifications branch"
REVISION "201605310000Z" -- 31-May-16
DESCRIPTION
"Removed duplicate entries"
REVISION "201703010000Z" --01-Mar-17
DESCRIPTION
"Add jnxOamMibRoot"
::= { enterprises 2636 }
--
-- Juniper MIB tree structure
--
jnxProducts OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The root of Juniper's Product OIDs."
::= { juniperMIB 1 }
--
-- Note, jnxProducts.1 is reserved for Junos-based products
--
-- The following OIDs are used as the basis for identifying other
-- Juniper products.
--
-- jnxMediaFlow refers to the root MIB object for Juniper's
-- Media Flow Controller, a non-JUNOS based product.
jnxMediaFlow OBJECT IDENTIFIER ::= { jnxProducts 2 }
--
-- Top-level object identifier registry used by the JunosSpace Products.
jnxJunosSpace OBJECT IDENTIFIER ::= { jnxProducts 3 }
jnxReservedProducts3 OBJECT IDENTIFIER ::= { jnxProducts 4 }
jnxReservedProducts4 OBJECT IDENTIFIER ::= { jnxProducts 5 }
jnxReservedProducts5 OBJECT IDENTIFIER ::= { jnxProducts 6 }
jnxSDKApplicationsRoot OBJECT IDENTIFIER ::= { jnxProducts 7 }
jnxJAB OBJECT IDENTIFIER ::= { jnxProducts 8 }
-- jnxStrm refers to the root MIB object for STRM products.
-- STRM is a non-JUNOS based product.
jnxStrm OBJECT IDENTIFIER ::= { jnxProducts 9 }
jnxServices OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The root of Juniper's Services OIDs."
::= { juniperMIB 2 }
jnxMibs OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The root of Juniper's MIB objects."
::= { juniperMIB 3 }
--
-- Note, jnxMibs.1-38 is already in use.
--
jnxJsMibRoot OBJECT IDENTIFIER ::= { jnxMibs 39 }
jnxExMibRoot OBJECT IDENTIFIER ::= { jnxMibs 40 }
jnxWxMibRoot OBJECT IDENTIFIER ::= { jnxMibs 41 }
jnxDcfMibRoot OBJECT IDENTIFIER ::= { jnxMibs 42 }
jnxReservedMibs5 OBJECT IDENTIFIER ::= { jnxMibs 43 }
-- PFE data
jnxPfeMibRoot OBJECT IDENTIFIER ::= { jnxMibs 44 }
-- juniper Bfd Mib
jnxBfdMibRoot OBJECT IDENTIFIER ::= { jnxMibs 45 }
-- XSTP mibs
jnxXstpMibs OBJECT IDENTIFIER ::= { jnxMibs 46 }
-- juniper Utility Mib
jnxUtilMibRoot OBJECT IDENTIFIER ::= { jnxMibs 47 }
-- juniper l2ald Mib
jnxl2aldMibRoot OBJECT IDENTIFIER ::= { jnxMibs 48 }
-- juniper L2tp Mib
jnxL2tpMibRoot OBJECT IDENTIFIER ::= { jnxMibs 49 }
-- juniper RPM Mib
jnxRpmMibRoot OBJECT IDENTIFIER ::= { jnxMibs 50 }
-- juniper User AAA Mib
jnxUserAAAMibRoot OBJECT IDENTIFIER ::= { jnxMibs 51 }
-- juniper Generic IPSEC MIB
jnxIpSecMibRoot OBJECT IDENTIFIER ::= { jnxMibs 52 }
-- juniper L2 control protocols MIB
jnxL2cpMibRoot OBJECT IDENTIFIER ::= { jnxMibs 53 }
-- juniper pwTDM MIB
jnxPwTdmMibRoot OBJECT IDENTIFIER ::= { jnxMibs 54 }
-- juniper pwTC MIB
jnxPwTCMibRoot OBJECT IDENTIFIER ::= { jnxMibs 55 }
-- juniper OTN MIB
jnxOtnMibRoot OBJECT IDENTIFIER ::= { jnxMibs 56 }
-- juniper power supply management MIB
jnxPsuMIBRoot OBJECT IDENTIFIER ::= { jnxMibs 58 }
-- juniper NAT MIB
jnxSvcsMibRoot OBJECT IDENTIFIER ::= { jnxMibs 59 }
-- juniper DOM MIB
jnxDomMibRoot OBJECT IDENTIFIER ::= { jnxMibs 60 }
-- juniper JDHCPD MIB Release 10.4
jnxJdhcpMibRoot OBJECT IDENTIFIER ::= { jnxMibs 61 }
-- juniper JDHCPDv6 MIB Release 10.4
jnxJdhcpv6MibRoot OBJECT IDENTIFIER ::= { jnxMibs 62 }
-- juniper License management MIB
jnxLicenseMibRoot OBJECT IDENTIFIER ::= { jnxMibs 63 }
-- juniper Subscriber MIB
jnxSubscriberMibRoot OBJECT IDENTIFIER ::= { jnxMibs 64 }
-- juniper MAG MIB
jnxMagMibRoot OBJECT IDENTIFIER ::= { jnxMibs 65 }
-- Root of juniper MobileGateway MIBs
jnxMobileGatewayMibRoot OBJECT IDENTIFIER ::= { jnxMibs 66 }
-- juniper PPPOE MIB
jnxPppoeMibRoot OBJECT IDENTIFIER ::= { jnxMibs 67 }
-- juniper PPP MIB
jnxPppMibRoot OBJECT IDENTIFIER ::= { jnxMibs 68 }
-- junosV App Engine MIB
jnxJVAEMibRoot OBJECT IDENTIFIER ::= { jnxMibs 69 }
-- juniper if otn mib
jnxIfOtnMibRoot OBJECT IDENTIFIER ::= { jnxMibs 70 }
-- juniper if optics mib
jnxOpticsMibRoot OBJECT IDENTIFIER ::= { jnxMibs 71 }
jnxAlarmExtMibRoot OBJECT IDENTIFIER ::= { jnxMibs 72 }
-- jnx-optif - rfc3591 mapped as jnx mib
jnxoptIfMibRoot OBJECT IDENTIFIER ::= { jnxMibs 73 }
-- juniper FRU config mib
jnxFruMibRoot OBJECT IDENTIFIER ::= { jnxMibs 74 }
-- juniper timing(PTP/SyncE) events notification mib
jnxTimingNotfnsMIBRoot OBJECT IDENTIFIER ::= { jnxMibs 75 }
jnxSnmpSetMibRoot OBJECT IDENTIFIER ::= { jnxMibs 76 }
-- TWAMP Client mib
jnxTwampMibRoot OBJECT IDENTIFIER ::= { jnxMibs 77 }
-- jnxSoamPmMib OBJECT IDENTIFIER ::= { jnxMibs 78 }
-- juniper Video Monitoring MIB
jnxVmonMibRoot OBJECT IDENTIFIER ::= { jnxMibs 79 }
-- juniper SCG TDF config mib
jnxSGMibRoot OBJECT IDENTIFIER ::= { jnxMibs 80 }
jnxFabricMibRoot OBJECT IDENTIFIER ::= { jnxMibs 81 }
-- juniper Service Redundancy Daemon mib
jnxSRDMibRoot OBJECT IDENTIFIER ::= { jnxMibs 82 }
-- juniper OAMD mib
jnxOamMibRoot OBJECT IDENTIFIER ::= { jnxMibs 83 }
-- juniper Tunnel statistics mib
jnxTunnelStatsMibRoot OBJECT IDENTIFIER ::= { jnxMibs 84 }
-- juniper URL Filtering Daemon mib
jnxURLFMibRoot OBJECT IDENTIFIER ::= { jnxMibs 85 }
jnxTraps OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The root of Juniper's Trap OIDs."
::= { juniperMIB 4 }
jnxChassisTraps OBJECT IDENTIFIER ::= { jnxTraps 1 }
jnxChassisOKTraps OBJECT IDENTIFIER ::= { jnxTraps 2 }
jnxRmonTraps OBJECT IDENTIFIER ::= { jnxTraps 3 }
jnxLdpTraps OBJECT IDENTIFIER ::= { jnxTraps 4 }
jnxCmNotifications OBJECT IDENTIFIER ::= { jnxTraps 5 }
jnxSonetNotifications OBJECT IDENTIFIER ::= { jnxTraps 6 }
jnxPMonNotifications OBJECT IDENTIFIER ::= { jnxTraps 7 }
jnxCollectorNotifications OBJECT IDENTIFIER ::= { jnxTraps 8 }
jnxPingNotifications OBJECT IDENTIFIER ::= { jnxTraps 9 }
jnxSpNotifications OBJECT IDENTIFIER ::= { jnxTraps 10 }
jnxDfcNotifications OBJECT IDENTIFIER ::= { jnxTraps 11 }
jnxSyslogNotifications OBJECT IDENTIFIER ::= { jnxTraps 12 }
jnxEventNotifications OBJECT IDENTIFIER ::= { jnxTraps 13 }
jnxVccpNotifications OBJECT IDENTIFIER ::= { jnxTraps 14 }
jnxOtnNotifications OBJECT IDENTIFIER ::= { jnxTraps 15 }
-- jnxSAIDPNotifications is for Stand alone IDP devices
jnxSAIDPNotifications OBJECT IDENTIFIER ::= { jnxTraps 16 }
jnxCosNotifications OBJECT IDENTIFIER ::= { jnxTraps 17 }
jnxDomNotifications OBJECT IDENTIFIER ::= { jnxTraps 18 }
jnxFabricChassisTraps OBJECT IDENTIFIER ::= { jnxTraps 19 }
jnxFabricChassisOKTraps OBJECT IDENTIFIER ::= { jnxTraps 20 }
-- juniper if otn traps
jnxIfOtnNotifications OBJECT IDENTIFIER ::= { jnxTraps 21 }
-- juniper if optics traps
jnxOpticsNotifications OBJECT IDENTIFIER ::= { jnxTraps 22 }
-- juniper FRU config traps
jnxFruTraps OBJECT IDENTIFIER ::= { jnxTraps 23 }
jnxSnmpSetTraps OBJECT IDENTIFIER ::= { jnxTraps 24 }
jnxDomLaneNotifications OBJECT IDENTIFIER ::= { jnxTraps 25 }
-- TWAMP Client traps
jnxTwampNotificationPrefix OBJECT IDENTIFIER ::= {jnxTraps 27 }
jnxIplcNotifications OBJECT IDENTIFIER ::= { jnxTraps 28 }
jnxIlaNotifications OBJECT IDENTIFIER ::= { jnxTraps 29 }
-- This is the top-level object identifier registry used by Juniper
-- products for SNMP modules containing experimental MIB definitions.
-- In this context, experimental MIBs are defined as:
-- 1) IETF work-in-process MIBs which have not been assigned a permanent
-- object identifier by the IANA.
-- 2) Juniper work-in-process MIBs that have not achieved final
-- production quality or field experience.
-- NOTE: Support for MIBs under the this OID subtree is temporary and
-- changes to objects may occur without notice."
jnxExperiment OBJECT IDENTIFIER ::= { juniperMIB 5 }
--
-- This is the top-level object identifier registry used by Juniper
-- NSM products.
--
jnxNsm OBJECT IDENTIFIER ::= { juniperMIB 6 }
--
-- This is the top-level object identifier registry used by the
-- JuniperRoot Certificate Authority.
--
jnxCA OBJECT IDENTIFIER ::= { juniperMIB 7 }
--
-- This is the top-level object identifier registry used by the
-- Carrier AAA software product (Parksteet).
--
jnxAAA OBJECT IDENTIFIER ::= { juniperMIB 8 }
--
-- This is the top-level object identifier registry used by the
-- Advanced Insight Manager.
--
jnxAdvancedInsightMgr OBJECT IDENTIFIER ::= { juniperMIB 9 }
--
-- This is the top-level object identifier registry used by the
-- BX series Products.
--
jnxBxMibRoot OBJECT IDENTIFIER ::= { juniperMIB 10 }
--
-- This is the top-level object identifier registry used by Agent
-- Capabilities mibs.
--
jnxAgentCapability OBJECT IDENTIFIER ::= { juniperMIB 11 }
END

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,230 @@
LM-SENSORS-MIB DEFINITIONS ::= BEGIN
--
-- Derived from the original VEST-INTERNETT-MIB. Open issues:
--
-- (a) where to register this MIB?
-- (b) use not-accessible for diskIOIndex?
--
IMPORTS
MODULE-IDENTITY, OBJECT-TYPE, Integer32, Gauge32
FROM SNMPv2-SMI
DisplayString
FROM SNMPv2-TC
ucdExperimental
FROM UCD-SNMP-MIB;
lmSensorsMIB MODULE-IDENTITY
LAST-UPDATED "200011050000Z"
ORGANIZATION "AdamsNames Ltd"
CONTACT-INFO
"Primary Contact: M J Oldfield
email: m@mail.tc"
DESCRIPTION
"This MIB module defines objects for lm_sensor derived data."
REVISION "200011050000Z"
DESCRIPTION
"Derived from DISKIO-MIB ex UCD."
::= { lmSensors 1 }
lmSensors OBJECT IDENTIFIER ::= { ucdExperimental 16 }
--
lmTempSensorsTable OBJECT-TYPE
SYNTAX SEQUENCE OF LMTempSensorsEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Table of temperature sensors and their values."
::= { lmSensors 2 }
lmTempSensorsEntry OBJECT-TYPE
SYNTAX LMTempSensorsEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry containing a device and its statistics."
INDEX { lmTempSensorsIndex }
::= { lmTempSensorsTable 1 }
LMTempSensorsEntry ::= SEQUENCE {
lmTempSensorsIndex Integer32,
lmTempSensorsDevice DisplayString,
lmTempSensorsValue Gauge32
}
lmTempSensorsIndex OBJECT-TYPE
SYNTAX Integer32 (0..65535)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Reference index for each observed device."
::= { lmTempSensorsEntry 1 }
lmTempSensorsDevice OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The name of the temperature sensor we are reading."
::= { lmTempSensorsEntry 2 }
lmTempSensorsValue OBJECT-TYPE
SYNTAX Gauge32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The temperature of this sensor in mC."
::= { lmTempSensorsEntry 3 }
--
lmFanSensorsTable OBJECT-TYPE
SYNTAX SEQUENCE OF LMFanSensorsEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Table of fan sensors and their values."
::= { lmSensors 3 }
lmFanSensorsEntry OBJECT-TYPE
SYNTAX LMFanSensorsEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry containing a device and its statistics."
INDEX { lmFanSensorsIndex }
::= { lmFanSensorsTable 1 }
LMFanSensorsEntry ::= SEQUENCE {
lmFanSensorsIndex Integer32,
lmFanSensorsDevice DisplayString,
lmFanSensorsValue Gauge32
}
lmFanSensorsIndex OBJECT-TYPE
SYNTAX Integer32 (0..65535)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Reference index for each observed device."
::= { lmFanSensorsEntry 1 }
lmFanSensorsDevice OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The name of the fan sensor we are reading."
::= { lmFanSensorsEntry 2 }
lmFanSensorsValue OBJECT-TYPE
SYNTAX Gauge32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The rotation speed of the fan in RPM."
::= { lmFanSensorsEntry 3 }
--
lmVoltSensorsTable OBJECT-TYPE
SYNTAX SEQUENCE OF LMVoltSensorsEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Table of voltage sensors and their values."
::= { lmSensors 4 }
lmVoltSensorsEntry OBJECT-TYPE
SYNTAX LMVoltSensorsEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry containing a device and its statistics."
INDEX { lmVoltSensorsIndex }
::= { lmVoltSensorsTable 1 }
LMVoltSensorsEntry ::= SEQUENCE {
lmVoltSensorsIndex Integer32,
lmVoltSensorsDevice DisplayString,
lmVoltSensorsValue Gauge32
}
lmVoltSensorsIndex OBJECT-TYPE
SYNTAX Integer32 (0..65535)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Reference index for each observed device."
::= { lmVoltSensorsEntry 1 }
lmVoltSensorsDevice OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The name of the device we are reading."
::= { lmVoltSensorsEntry 2 }
lmVoltSensorsValue OBJECT-TYPE
SYNTAX Gauge32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The voltage in mV."
::= { lmVoltSensorsEntry 3 }
--
lmMiscSensorsTable OBJECT-TYPE
SYNTAX SEQUENCE OF LMMiscSensorsEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Table of miscellaneous sensor devices and their values."
::= { lmSensors 5 }
lmMiscSensorsEntry OBJECT-TYPE
SYNTAX LMMiscSensorsEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry containing a device and its statistics."
INDEX { lmMiscSensorsIndex }
::= { lmMiscSensorsTable 1 }
LMMiscSensorsEntry ::= SEQUENCE {
lmMiscSensorsIndex Integer32,
lmMiscSensorsDevice DisplayString,
lmMiscSensorsValue Gauge32
}
lmMiscSensorsIndex OBJECT-TYPE
SYNTAX Integer32 (0..65535)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Reference index for each observed device."
::= { lmMiscSensorsEntry 1 }
lmMiscSensorsDevice OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The name of the device we are reading."
::= { lmMiscSensorsEntry 2 }
lmMiscSensorsValue OBJECT-TYPE
SYNTAX Gauge32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of this sensor."
::= { lmMiscSensorsEntry 3 }
END

View File

@ -0,0 +1,487 @@
-- HP Enterprise Switch MIB
NETSWITCH-MIB DEFINITIONS ::= BEGIN
IMPORTS
Counter
FROM RFC1155-SMI
OBJECT-TYPE
FROM RFC-1212
DisplayString
FROM RFC1213-MIB
hpSwitch
FROM HP-ICF-OID;
-- Icf Switch Specific
hpOpSystem OBJECT IDENTIFIER ::= { hpSwitch 1 }
MacAddress ::= OCTET STRING (SIZE (6)) -- a 6 octet address
-- in the
-- "canonical"
-- order
-- HP Buffer group
-- The buffers group contains variables that describe the switch's use
-- of two types of global memory buffers: message buffers, which
-- facilitate internal process-to-process communication, and packet
-- buffers, which facilitate external communications by temporarily
-- storing incoming or outgoing data packets.
hpBuf OBJECT IDENTIFIER ::= { hpOpSystem 1 }
hpMsgBuf OBJECT IDENTIFIER ::= { hpBuf 1 }
hpPktBuf OBJECT IDENTIFIER ::= { hpBuf 2 }
hpMsgBufTable OBJECT-TYPE
SYNTAX SEQUENCE OF HpMsgBufEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"A table that contains information on all the
Message buffers for each slot."
::= { hpMsgBuf 1 }
hpMsgBufEntry OBJECT-TYPE
SYNTAX HpMsgBufEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"Information about a slot in a chassis"
INDEX { hpMsgBufSlotIndex }
::= { hpMsgBufTable 1 }
HpMsgBufEntry ::=
SEQUENCE {
hpMsgBufSlotIndex INTEGER,
hpMsgBufInit INTEGER,
hpMsgBufFree INTEGER,
hpMsgBufMin INTEGER,
hpMsgBufMiss Counter,
hpMsgBufSize INTEGER,
hpMsgBufCorrupted Counter
}
hpMsgBufSlotIndex OBJECT-TYPE
SYNTAX INTEGER (1..16)
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The slot number within the box for which this
entry contains information."
::= { hpMsgBufEntry 1 }
hpMsgBufCorrupted OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The number of times a corrupted buffer was deleted."
::= { hpMsgBufEntry 2 }
hpMsgBufFree OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The number of message buffers available for
internal VME transfers or external transfers,
respectively. Because switch operations and application
software modules impose some overhead on global memory
buffers, the number of buffers available for data
transfers is less than the total number of buffers
allocated when the switch boots."
::= { hpMsgBufEntry 3 }
hpMsgBufInit OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The number of message buffers allocated when
the switch booted."
::= { hpMsgBufEntry 4 }
hpMsgBufMin OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The smallest number of message buffers
available since the switch booted."
::= { hpMsgBufEntry 5 }
hpMsgBufMiss OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The number of times that the switch was unable to obtain
a message buffer. Failure to obtain a buffer indicates
that buffers were busy. This parameter is directly
related to hpMsgBufMin. If hpMsgBufMiss is greater than 0,
hpMsgBufMin must equal 0. Conversely, if hpMsgBufMiss
equals 0, then hpMsgBufMin must be greater than 0."
::= { hpMsgBufEntry 6 }
hpMsgBufSize OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The size of the message buffer in bytes."
::= { hpMsgBufEntry 7 }
hpPktBufTable OBJECT-TYPE
SYNTAX SEQUENCE OF HpPktBufEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"A table that contains information on all the
Packet buffers for each slot."
::= { hpPktBuf 1 }
hpPktBufEntry OBJECT-TYPE
SYNTAX HpPktBufEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"Information about a slot in a chassis"
INDEX { hpPktBufSlotIndex }
::= { hpPktBufTable 1 }
HpPktBufEntry ::=
SEQUENCE {
hpPktBufSlotIndex INTEGER,
hpPktBufInit INTEGER,
hpPktBufFree INTEGER,
hpPktBufMin INTEGER,
hpPktBufMiss Counter,
hpPktBufSize INTEGER,
hpPktBufCorrupted Counter
}
hpPktBufSlotIndex OBJECT-TYPE
SYNTAX INTEGER (1..16)
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The slot number within the box for which this
entry contains information."
::= { hpPktBufEntry 1 }
hpPktBufCorrupted OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The number of times a corrupted buffer was deleted."
::= { hpPktBufEntry 2 }
hpPktBufFree OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The number of packet buffers available for
internal VME transfers or external transfers,
respectively. Because switch operations and application
software modules impose some overhead on global memory
buffers, the number of buffers available for data
transfers is less than the total number of buffers
allocated when the switch boots."
::= { hpPktBufEntry 3 }
hpPktBufInit OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The number of packet buffers allocated when
the switch booted."
::= { hpPktBufEntry 4 }
hpPktBufMin OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The smallest number of packet buffers
available since the switch booted."
::= { hpPktBufEntry 5 }
hpPktBufMiss OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The number of times that the switch was unable to obtain
a packet buffer. Failure to obtain a buffer indicates
that buffers were busy. This parameter is directly
related to hpPktBufMin. If hpPktBufMiss is greater than 0,
hpPktBufMin must equal 0. Conversely, if hpPktBufMiss
equals 0, then hpPktBufMin must be greater than 0."
::= { hpPktBufEntry 6 }
hpPktBufSize OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The size of the packet buffer in bytes."
::= { hpPktBufEntry 7 }
-- HP Memory group
-- The memory group contains variables that describe the switch's use
-- of two types of memory : local memory and global memory. Depending
-- on the hardware platform these can have different meanings.
-- Typically local memory can be accessed by the network interface
-- chips and the main processor, while global memory can be accessed
-- by one or more main processors.
hpMem OBJECT IDENTIFIER ::= { hpOpSystem 2 }
hpLocalMem OBJECT IDENTIFIER ::= { hpMem 1 }
hpGlobalMem OBJECT IDENTIFIER ::= { hpMem 2 }
hpLocalMemTable OBJECT-TYPE
SYNTAX SEQUENCE OF HpLocalMemEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"A table that contains information on all the
local memory for each slot."
::= { hpLocalMem 1 }
hpLocalMemEntry OBJECT-TYPE
SYNTAX HpLocalMemEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"Information about a slot in a chassis"
INDEX { hpLocalMemSlotIndex }
::= { hpLocalMemTable 1 }
HpLocalMemEntry ::=
SEQUENCE {
hpLocalMemSlotIndex INTEGER,
hpLocalMemSlabCnt Counter,
hpLocalMemFreeSegCnt Counter,
hpLocalMemAllocSegCnt Counter,
hpLocalMemTotalBytes INTEGER,
hpLocalMemFreeBytes INTEGER,
hpLocalMemAllocBytes INTEGER
}
hpLocalMemSlotIndex OBJECT-TYPE
SYNTAX INTEGER (1..16)
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The slot number within the box for which this
entry contains information."
::= { hpLocalMemEntry 1 }
hpLocalMemSlabCnt OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The current number of discretely managed memory areas.
Each slab is further broken down into smaller contiguous
areas called segments."
::= { hpLocalMemEntry 2 }
hpLocalMemFreeSegCnt OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The current number of free memory segments. A free memory
segment is an unused contiguous memory block of greater
than 16 bytes. Generally, an increase in the number of
free memory segments indicates an increase in memory
fragmentation."
::= { hpLocalMemEntry 3 }
hpLocalMemAllocSegCnt OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The number of currently allocated memory segments."
::= { hpLocalMemEntry 4 }
hpLocalMemTotalBytes OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The number of currently installed bytes."
::= { hpLocalMemEntry 5 }
hpLocalMemFreeBytes OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The number of available (unallocated) bytes."
::= { hpLocalMemEntry 6 }
hpLocalMemAllocBytes OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The number of currently allocated bytes."
::= { hpLocalMemEntry 7 }
hpGlobalMemTable OBJECT-TYPE
SYNTAX SEQUENCE OF HpGlobalMemEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"A table that contains information on all the
local memory for each slot."
::= { hpGlobalMem 1 }
hpGlobalMemEntry OBJECT-TYPE
SYNTAX HpGlobalMemEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"Information about a slot in a chassis"
INDEX { hpGlobalMemSlotIndex }
::= { hpGlobalMemTable 1 }
HpGlobalMemEntry ::=
SEQUENCE {
hpGlobalMemSlotIndex INTEGER,
hpGlobalMemSlabCnt Counter,
hpGlobalMemFreeSegCnt Counter,
hpGlobalMemAllocSegCnt Counter,
hpGlobalMemTotalBytes INTEGER,
hpGlobalMemFreeBytes INTEGER,
hpGlobalMemAllocBytes INTEGER
}
hpGlobalMemSlotIndex OBJECT-TYPE
SYNTAX INTEGER (1..16)
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The slot number within the box for which this
entry contains information."
::= { hpGlobalMemEntry 1 }
hpGlobalMemSlabCnt OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The current number of discretely managed memory areas.
Each slab is further broken down into smaller contiguous
areas called segments."
::= { hpGlobalMemEntry 2 }
hpGlobalMemFreeSegCnt OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The current number of free memory segments. A free memory
segment is an unused contiguous memory block of greater
than 16 bytes. Generally, an increase in the number of
free memory segments indicates an increase in memory
fragmentation."
::= { hpGlobalMemEntry 3 }
hpGlobalMemAllocSegCnt OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The number of currently allocated memory segments."
::= { hpGlobalMemEntry 4 }
hpGlobalMemTotalBytes OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The number of currently installed bytes."
::= { hpGlobalMemEntry 5 }
hpGlobalMemFreeBytes OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The number of available (unallocated) bytes."
::= { hpGlobalMemEntry 6 }
hpGlobalMemAllocBytes OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The number of currently allocated bytes."
::= { hpGlobalMemEntry 7 }
hpSwitchOsVersion OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION
"Contains the operating code version number (also
known as software or firmware). For example, a
software version such as A.08.01 is described as
follows:
A the function set available in your router
08 the common release number
01 updates to the current common release"
::= { hpOpSystem 3 }
hpSwitchRomVersion OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION
"Contains the ROM version number (such as A.08.01
is described as follows:
A the function set available in your router
08 the common release number
01 updates to the current common release"
::= { hpOpSystem 4 }
hpSwitchSmartCardType OBJECT-TYPE
SYNTAX INTEGER {
none(1),
fddi(2),
atm(3),
fddiAndATM(4),
other(5)
}
ACCESS read-only
STATUS mandatory
DESCRIPTION
"Return the type of Smart Cards in the system.
Some system may contains more than one types
of smart cards, such as FDDI and ATM"
::= { hpOpSystem 5 }
hpSwitchBaseMACAddress OBJECT-TYPE
SYNTAX MacAddress
ACCESS read-only
STATUS mandatory
DESCRIPTION
"Return the base MAC address of the switch. This is
also the MAC address of the default vlan. "
::= { hpOpSystem 6 }
END

View File

@ -0,0 +1,538 @@
SNMP-FRAMEWORK-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, OBJECT-TYPE,
OBJECT-IDENTITY,
snmpModules FROM SNMPv2-SMI
TEXTUAL-CONVENTION FROM SNMPv2-TC
MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF;
snmpFrameworkMIB MODULE-IDENTITY
LAST-UPDATED "200210140000Z"
ORGANIZATION "SNMPv3 Working Group"
CONTACT-INFO "WG-EMail: snmpv3@lists.tislabs.com
Subscribe: snmpv3-request@lists.tislabs.com
Co-Chair: Russ Mundy
Network Associates Laboratories
postal: 15204 Omega Drive, Suite 300
Rockville, MD 20850-4601
USA
EMail: mundy@tislabs.com
phone: +1 301-947-7107
Co-Chair &
Co-editor: David Harrington
Enterasys Networks
postal: 35 Industrial Way
P. O. Box 5005
Rochester, New Hampshire 03866-5005
USA
EMail: dbh@enterasys.com
phone: +1 603-337-2614
Co-editor: Randy Presuhn
BMC Software, Inc.
postal: 2141 North First Street
San Jose, California 95131
USA
EMail: randy_presuhn@bmc.com
phone: +1 408-546-1006
Co-editor: Bert Wijnen
Lucent Technologies
postal: Schagen 33
3461 GL Linschoten
Netherlands
EMail: bwijnen@lucent.com
phone: +31 348-680-485
"
DESCRIPTION "The SNMP Management Architecture MIB
Copyright (C) The Internet Society (2002). This
version of this MIB module is part of RFC 3411;
see the RFC itself for full legal notices.
"
REVISION "200210140000Z" -- 14 October 2002
DESCRIPTION "Changes in this revision:
- Updated various administrative information.
- Corrected some typos.
- Corrected typo in description of SnmpEngineID
that led to range overlap for 127.
- Changed '255a' to '255t' in definition of
SnmpAdminString to align with current SMI.
- Reworded 'reserved' for value zero in
DESCRIPTION of SnmpSecurityModel.
- The algorithm for allocating security models
should give 256 per enterprise block, rather
than 255.
- The example engine ID of 'abcd' is not
legal. Replaced with '800002b804616263'H based
on example enterprise 696, string 'abc'.
- Added clarification that engineID should
persist across re-initializations.
This revision published as RFC 3411.
"
REVISION "199901190000Z" -- 19 January 1999
DESCRIPTION "Updated editors' addresses, fixed typos.
Published as RFC 2571.
"
REVISION "199711200000Z" -- 20 November 1997
DESCRIPTION "The initial version, published in RFC 2271.
"
::= { snmpModules 10 }
-- Textual Conventions used in the SNMP Management Architecture ***
SnmpEngineID ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION "An SNMP engine's administratively-unique identifier.
Objects of this type are for identification, not for
addressing, even though it is possible that an
address may have been used in the generation of
a specific value.
The value for this object may not be all zeros or
all 'ff'H or the empty (zero length) string.
The initial value for this object may be configured
via an operator console entry or via an algorithmic
function. In the latter case, the following
example algorithm is recommended.
In cases where there are multiple engines on the
same system, the use of this algorithm is NOT
appropriate, as it would result in all of those
engines ending up with the same ID value.
1) The very first bit is used to indicate how the
rest of the data is composed.
0 - as defined by enterprise using former methods
that existed before SNMPv3. See item 2 below.
1 - as defined by this architecture, see item 3
below.
Note that this allows existing uses of the
engineID (also known as AgentID [RFC1910]) to
co-exist with any new uses.
2) The snmpEngineID has a length of 12 octets.
The first four octets are set to the binary
equivalent of the agent's SNMP management
private enterprise number as assigned by the
Internet Assigned Numbers Authority (IANA).
For example, if Acme Networks has been assigned
{ enterprises 696 }, the first four octets would
be assigned '000002b8'H.
The remaining eight octets are determined via
one or more enterprise-specific methods. Such
methods must be designed so as to maximize the
possibility that the value of this object will
be unique in the agent's administrative domain.
For example, it may be the IP address of the SNMP
entity, or the MAC address of one of the
interfaces, with each address suitably padded
with random octets. If multiple methods are
defined, then it is recommended that the first
octet indicate the method being used and the
remaining octets be a function of the method.
3) The length of the octet string varies.
The first four octets are set to the binary
equivalent of the agent's SNMP management
private enterprise number as assigned by the
Internet Assigned Numbers Authority (IANA).
For example, if Acme Networks has been assigned
{ enterprises 696 }, the first four octets would
be assigned '000002b8'H.
The very first bit is set to 1. For example, the
above value for Acme Networks now changes to be
'800002b8'H.
The fifth octet indicates how the rest (6th and
following octets) are formatted. The values for
the fifth octet are:
0 - reserved, unused.
1 - IPv4 address (4 octets)
lowest non-special IP address
2 - IPv6 address (16 octets)
lowest non-special IP address
3 - MAC address (6 octets)
lowest IEEE MAC address, canonical
order
4 - Text, administratively assigned
Maximum remaining length 27
5 - Octets, administratively assigned
Maximum remaining length 27
6-127 - reserved, unused
128-255 - as defined by the enterprise
Maximum remaining length 27
"
SYNTAX OCTET STRING (SIZE(5..32))
SnmpSecurityModel ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION "An identifier that uniquely identifies a
Security Model of the Security Subsystem within
this SNMP Management Architecture.
The values for securityModel are allocated as
follows:
- The zero value does not identify any particular
security model.
- Values between 1 and 255, inclusive, are reserved
for standards-track Security Models and are
managed by the Internet Assigned Numbers Authority
(IANA).
- Values greater than 255 are allocated to
enterprise-specific Security Models. An
enterprise-specific securityModel value is defined
to be:
enterpriseID * 256 + security model within
enterprise
For example, the fourth Security Model defined by
the enterprise whose enterpriseID is 1 would be
259.
This scheme for allocation of securityModel
values allows for a maximum of 255 standards-
based Security Models, and for a maximum of
256 Security Models per enterprise.
It is believed that the assignment of new
securityModel values will be rare in practice
because the larger the number of simultaneously
utilized Security Models, the larger the
chance that interoperability will suffer.
Consequently, it is believed that such a range
will be sufficient. In the unlikely event that
the standards committee finds this number to be
insufficient over time, an enterprise number
can be allocated to obtain an additional 256
possible values.
Note that the most significant bit must be zero;
hence, there are 23 bits allocated for various
organizations to design and define non-standard
securityModels. This limits the ability to
define new proprietary implementations of Security
Models to the first 8,388,608 enterprises.
It is worthwhile to note that, in its encoded
form, the securityModel value will normally
require only a single byte since, in practice,
the leftmost bits will be zero for most messages
and sign extension is suppressed by the encoding
rules.
As of this writing, there are several values
of securityModel defined for use with SNMP or
reserved for use with supporting MIB objects.
They are as follows:
0 reserved for 'any'
1 reserved for SNMPv1
2 reserved for SNMPv2c
3 User-Based Security Model (USM)
"
SYNTAX INTEGER(0 .. 2147483647)
SnmpMessageProcessingModel ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION "An identifier that uniquely identifies a Message
Processing Model of the Message Processing
Subsystem within this SNMP Management Architecture.
The values for messageProcessingModel are
allocated as follows:
- Values between 0 and 255, inclusive, are
reserved for standards-track Message Processing
Models and are managed by the Internet Assigned
Numbers Authority (IANA).
- Values greater than 255 are allocated to
enterprise-specific Message Processing Models.
An enterprise messageProcessingModel value is
defined to be:
enterpriseID * 256 +
messageProcessingModel within enterprise
For example, the fourth Message Processing Model
defined by the enterprise whose enterpriseID
is 1 would be 259.
This scheme for allocating messageProcessingModel
values allows for a maximum of 255 standards-
based Message Processing Models, and for a
maximum of 256 Message Processing Models per
enterprise.
It is believed that the assignment of new
messageProcessingModel values will be rare
in practice because the larger the number of
simultaneously utilized Message Processing Models,
the larger the chance that interoperability
will suffer. It is believed that such a range
will be sufficient. In the unlikely event that
the standards committee finds this number to be
insufficient over time, an enterprise number
can be allocated to obtain an additional 256
possible values.
Note that the most significant bit must be zero;
hence, there are 23 bits allocated for various
organizations to design and define non-standard
messageProcessingModels. This limits the ability
to define new proprietary implementations of
Message Processing Models to the first 8,388,608
enterprises.
It is worthwhile to note that, in its encoded
form, the messageProcessingModel value will
normally require only a single byte since, in
practice, the leftmost bits will be zero for
most messages and sign extension is suppressed
by the encoding rules.
As of this writing, there are several values of
messageProcessingModel defined for use with SNMP.
They are as follows:
0 reserved for SNMPv1
1 reserved for SNMPv2c
2 reserved for SNMPv2u and SNMPv2*
3 reserved for SNMPv3
"
SYNTAX INTEGER(0 .. 2147483647)
SnmpSecurityLevel ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION "A Level of Security at which SNMP messages can be
sent or with which operations are being processed;
in particular, one of:
noAuthNoPriv - without authentication and
without privacy,
authNoPriv - with authentication but
without privacy,
authPriv - with authentication and
with privacy.
These three values are ordered such that
noAuthNoPriv is less than authNoPriv and
authNoPriv is less than authPriv.
"
SYNTAX INTEGER { noAuthNoPriv(1),
authNoPriv(2),
authPriv(3)
}
SnmpAdminString ::= TEXTUAL-CONVENTION
DISPLAY-HINT "255t"
STATUS current
DESCRIPTION "An octet string containing administrative
information, preferably in human-readable form.
To facilitate internationalization, this
information is represented using the ISO/IEC
IS 10646-1 character set, encoded as an octet
string using the UTF-8 transformation format
described in [RFC2279].
Since additional code points are added by
amendments to the 10646 standard from time
to time, implementations must be prepared to
encounter any code point from 0x00000000 to
0x7fffffff. Byte sequences that do not
correspond to the valid UTF-8 encoding of a
code point or are outside this range are
prohibited.
The use of control codes should be avoided.
When it is necessary to represent a newline,
the control code sequence CR LF should be used.
The use of leading or trailing white space should
be avoided.
For code points not directly supported by user
interface hardware or software, an alternative
means of entry and display, such as hexadecimal,
may be provided.
For information encoded in 7-bit US-ASCII,
the UTF-8 encoding is identical to the
US-ASCII encoding.
UTF-8 may require multiple bytes to represent a
single character / code point; thus the length
of this object in octets may be different from
the number of characters encoded. Similarly,
size constraints refer to the number of encoded
octets, not the number of characters represented
by an encoding.
Note that when this TC is used for an object that
is used or envisioned to be used as an index, then
a SIZE restriction MUST be specified so that the
number of sub-identifiers for any object instance
does not exceed the limit of 128, as defined by
[RFC3416].
Note that the size of an SnmpAdminString object is
measured in octets, not characters.
"
SYNTAX OCTET STRING (SIZE (0..255))
-- Administrative assignments ***************************************
snmpFrameworkAdmin
OBJECT IDENTIFIER ::= { snmpFrameworkMIB 1 }
snmpFrameworkMIBObjects
OBJECT IDENTIFIER ::= { snmpFrameworkMIB 2 }
snmpFrameworkMIBConformance
OBJECT IDENTIFIER ::= { snmpFrameworkMIB 3 }
-- the snmpEngine Group ********************************************
snmpEngine OBJECT IDENTIFIER ::= { snmpFrameworkMIBObjects 1 }
snmpEngineID OBJECT-TYPE
SYNTAX SnmpEngineID
MAX-ACCESS read-only
STATUS current
DESCRIPTION "An SNMP engine's administratively-unique identifier.
This information SHOULD be stored in non-volatile
storage so that it remains constant across
re-initializations of the SNMP engine.
"
::= { snmpEngine 1 }
snmpEngineBoots OBJECT-TYPE
SYNTAX INTEGER (1..2147483647)
MAX-ACCESS read-only
STATUS current
DESCRIPTION "The number of times that the SNMP engine has
(re-)initialized itself since snmpEngineID
was last configured.
"
::= { snmpEngine 2 }
snmpEngineTime OBJECT-TYPE
SYNTAX INTEGER (0..2147483647)
UNITS "seconds"
MAX-ACCESS read-only
STATUS current
DESCRIPTION "The number of seconds since the value of
the snmpEngineBoots object last changed.
When incrementing this object's value would
cause it to exceed its maximum,
snmpEngineBoots is incremented as if a
re-initialization had occurred, and this
object's value consequently reverts to zero.
"
::= { snmpEngine 3 }
snmpEngineMaxMessageSize OBJECT-TYPE
SYNTAX INTEGER (484..2147483647)
MAX-ACCESS read-only
STATUS current
DESCRIPTION "The maximum length in octets of an SNMP message
which this SNMP engine can send or receive and
process, determined as the minimum of the maximum
message size values supported among all of the
transports available to and supported by the engine.
"
::= { snmpEngine 4 }
-- Registration Points for Authentication and Privacy Protocols **
snmpAuthProtocols OBJECT-IDENTITY
STATUS current
DESCRIPTION "Registration point for standards-track
authentication protocols used in SNMP Management
Frameworks.
"
::= { snmpFrameworkAdmin 1 }
snmpPrivProtocols OBJECT-IDENTITY
STATUS current
DESCRIPTION "Registration point for standards-track privacy
protocols used in SNMP Management Frameworks.
"
::= { snmpFrameworkAdmin 2 }
-- Conformance information ******************************************
snmpFrameworkMIBCompliances
OBJECT IDENTIFIER ::= {snmpFrameworkMIBConformance 1}
snmpFrameworkMIBGroups
OBJECT IDENTIFIER ::= {snmpFrameworkMIBConformance 2}
-- compliance statements
snmpFrameworkMIBCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION "The compliance statement for SNMP engines which
implement the SNMP Management Framework MIB.
"
MODULE -- this module
MANDATORY-GROUPS { snmpEngineGroup }
::= { snmpFrameworkMIBCompliances 1 }
-- units of conformance
snmpEngineGroup OBJECT-GROUP
OBJECTS {
snmpEngineID,
snmpEngineBoots,
snmpEngineTime,
snmpEngineMaxMessageSize
}
STATUS current
DESCRIPTION "A collection of objects for identifying and
determining the configuration and current timeliness
values of an SNMP engine.
"
::= { snmpFrameworkMIBGroups 1 }
END

View File

@ -0,0 +1,864 @@
-- *****************************************************************
-- SNMPv2-MIB.my: Management Information Base (MIB) for the
-- Simple Network Management Protocol (SNMP)
--
-- March 2006, Wen Xu
--
-- Copyright (c) 2006 by cisco Systems, Inc.
-- All rights reserved.
-- *****************************************************************
--
-- This mib was extracted from RFC 3418
SNMPv2-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE,
TimeTicks, Counter32, snmpModules, mib-2
FROM SNMPv2-SMI
DisplayString, TestAndIncr, TimeStamp
FROM SNMPv2-TC
MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP
FROM SNMPv2-CONF;
snmpMIB MODULE-IDENTITY
LAST-UPDATED "200210160000Z"
ORGANIZATION "IETF SNMPv3 Working Group"
CONTACT-INFO
"WG-EMail: snmpv3@lists.tislabs.com
Subscribe: snmpv3-request@lists.tislabs.com
Co-Chair: Russ Mundy
Network Associates Laboratories
postal: 15204 Omega Drive, Suite 300
Rockville, MD 20850-4601
USA
EMail: mundy@tislabs.com
phone: +1 301 947-7107
Co-Chair: David Harrington
Enterasys Networks
postal: 35 Industrial Way
P. O. Box 5005
Rochester, NH 03866-5005
USA
EMail: dbh@enterasys.com
phone: +1 603 337-2614
Editor: Randy Presuhn
BMC Software, Inc.
postal: 2141 North First Street
San Jose, CA 95131
USA
EMail: randy_presuhn@bmc.com
phone: +1 408 546-1006"
DESCRIPTION
"The MIB module for SNMP entities.
Copyright (C) The Internet Society (2002). This
version of this MIB module is part of RFC 3418;
see the RFC itself for full legal notices.
"
REVISION "200210160000Z"
DESCRIPTION
"This revision of this MIB module was published as
RFC 3418."
REVISION "199511090000Z"
DESCRIPTION
"This revision of this MIB module was published as
RFC 1907."
REVISION "199304010000Z"
DESCRIPTION
"The initial revision of this MIB module was published
as RFC 1450."
::= { snmpModules 1 }
snmpMIBObjects OBJECT IDENTIFIER ::= { snmpMIB 1 }
-- ::= { snmpMIBObjects 1 } this OID is obsolete
-- ::= { snmpMIBObjects 2 } this OID is obsolete
-- ::= { snmpMIBObjects 3 } this OID is obsolete
-- the System group
--
-- a collection of objects common to all managed systems.
system OBJECT IDENTIFIER ::= { mib-2 1 }
sysDescr OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..255))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A textual description of the entity. This value should
include the full name and version identification of
the system's hardware type, software operating-system,
and networking software."
::= { system 1 }
sysObjectID OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The vendor's authoritative identification of the
network management subsystem contained in the entity.
This value is allocated within the SMI enterprises
subtree (1.3.6.1.4.1) and provides an easy and
unambiguous means for determining `what kind of box' is
being managed. For example, if vendor `Flintstones,
Inc.' was assigned the subtree 1.3.6.1.4.1.424242,
it could assign the identifier 1.3.6.1.4.1.424242.1.1
to its `Fred Router'."
::= { system 2 }
sysUpTime OBJECT-TYPE
SYNTAX TimeTicks
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The time (in hundredths of a second) since the
network management portion of the system was last
re-initialized."
::= { system 3 }
sysContact OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..255))
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The textual identification of the contact person for
this managed node, together with information on how
to contact this person. If no contact information is
known, the value is the zero-length string."
::= { system 4 }
sysName OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..255))
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"An administratively-assigned name for this managed
node. By convention, this is the node's fully-qualified
domain name. If the name is unknown, the value is
the zero-length string."
::= { system 5 }
sysLocation OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..255))
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The physical location of this node (e.g., 'telephone
closet, 3rd floor'). If the location is unknown, the
value is the zero-length string."
::= { system 6 }
sysServices OBJECT-TYPE
SYNTAX INTEGER (0..127)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A value which indicates the set of services that this
entity may potentially offer. The value is a sum.
This sum initially takes the value zero. Then, for
each layer, L, in the range 1 through 7, that this node
performs transactions for, 2 raised to (L - 1) is added
to the sum. For example, a node which performs only
routing functions would have a value of 4 (2^(3-1)).
In contrast, a node which is a host offering application
services would have a value of 72 (2^(4-1) + 2^(7-1)).
Note that in the context of the Internet suite of
protocols, values should be calculated accordingly:
layer functionality
1 physical (e.g., repeaters)
2 datalink/subnetwork (e.g., bridges)
3 internet (e.g., supports the IP)
4 end-to-end (e.g., supports the TCP)
7 applications (e.g., supports the SMTP)
For systems including OSI protocols, layers 5 and 6
may also be counted."
::= { system 7 }
-- object resource information
--
-- a collection of objects which describe the SNMP entity's
-- (statically and dynamically configurable) support of
-- various MIB modules.
sysORLastChange OBJECT-TYPE
SYNTAX TimeStamp
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of sysUpTime at the time of the most recent
change in state or value of any instance of sysORID."
::= { system 8 }
sysORTable OBJECT-TYPE
SYNTAX SEQUENCE OF SysOREntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The (conceptual) table listing the capabilities of
the local SNMP application acting as a command
responder with respect to various MIB modules.
SNMP entities having dynamically-configurable support
of MIB modules will have a dynamically-varying number
of conceptual rows."
::= { system 9 }
sysOREntry OBJECT-TYPE
SYNTAX SysOREntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry (conceptual row) in the sysORTable."
INDEX { sysORIndex }
::= { sysORTable 1 }
SysOREntry ::= SEQUENCE {
sysORIndex INTEGER,
sysORID OBJECT IDENTIFIER,
sysORDescr DisplayString,
sysORUpTime TimeStamp
}
sysORIndex OBJECT-TYPE
SYNTAX INTEGER (1..2147483647)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The auxiliary variable used for identifying instances
of the columnar objects in the sysORTable."
::= { sysOREntry 1 }
sysORID OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"An authoritative identification of a capabilities
statement with respect to various MIB modules supported
by the local SNMP application acting as a command
responder."
::= { sysOREntry 2 }
sysORDescr OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A textual description of the capabilities identified
by the corresponding instance of sysORID."
::= { sysOREntry 3 }
sysORUpTime OBJECT-TYPE
SYNTAX TimeStamp
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of sysUpTime at the time this conceptual
row was last instantiated."
::= { sysOREntry 4 }
-- the SNMP group
--
-- a collection of objects providing basic instrumentation and
-- control of an SNMP entity.
snmp OBJECT IDENTIFIER ::= { mib-2 11 }
snmpInPkts OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total number of messages delivered to the SNMP
entity from the transport service."
::= { snmp 1 }
snmpInBadVersions OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total number of SNMP messages which were delivered
to the SNMP entity and were for an unsupported SNMP
version."
::= { snmp 3 }
snmpInBadCommunityNames OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total number of community-based SNMP messages (for
example, SNMPv1) delivered to the SNMP entity which
used an SNMP community name not known to said entity.
Also, implementations which authenticate community-based
SNMP messages using check(s) in addition to matching
the community name (for example, by also checking
whether the message originated from a transport address
allowed to use a specified community name) MAY include
in this value the number of messages which failed the
additional check(s). It is strongly RECOMMENDED that
the documentation for any security model which is used
to authenticate community-based SNMP messages specify
the precise conditions that contribute to this value."
::= { snmp 4 }
snmpInBadCommunityUses OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total number of community-based SNMP messages (for
example, SNMPv1) delivered to the SNMP entity which
represented an SNMP operation that was not allowed for
the SNMP community named in the message. The precise
conditions under which this counter is incremented
(if at all) depend on how the SNMP entity implements
its access control mechanism and how its applications
interact with that access control mechanism. It is
strongly RECOMMENDED that the documentation for any
access control mechanism which is used to control access
to and visibility of MIB instrumentation specify the
precise conditions that contribute to this value."
::= { snmp 5 }
snmpInASNParseErrs OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total number of ASN.1 or BER errors encountered by
the SNMP entity when decoding received SNMP messages."
::= { snmp 6 }
snmpEnableAuthenTraps OBJECT-TYPE
SYNTAX INTEGER { enabled(1), disabled(2) }
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"Indicates whether the SNMP entity is permitted to
generate authenticationFailure traps. The value of this
object overrides any configuration information; as such,
it provides a means whereby all authenticationFailure
traps may be disabled.
Note that it is strongly recommended that this object
be stored in non-volatile memory so that it remains
constant across re-initializations of the network
management system."
::= { snmp 30 }
snmpSilentDrops OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total number of Confirmed Class PDUs (such as
GetRequest-PDUs, GetNextRequest-PDUs,
GetBulkRequest-PDUs, SetRequest-PDUs, and
InformRequest-PDUs) delivered to the SNMP entity which
were silently dropped because the size of a reply
containing an alternate Response Class PDU (such as a
Response-PDU) with an empty variable-bindings field
was greater than either a local constraint or the
maximum message size associated with the originator of
the request."
::= { snmp 31 }
snmpProxyDrops OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total number of Confirmed Class PDUs
(such as GetRequest-PDUs, GetNextRequest-PDUs,
GetBulkRequest-PDUs, SetRequest-PDUs, and
InformRequest-PDUs) delivered to the SNMP entity which
were silently dropped because the transmission of
the (possibly translated) message to a proxy target
failed in a manner (other than a time-out) such that
no Response Class PDU (such as a Response-PDU) could
be returned."
::= { snmp 32 }
-- information for notifications
--
-- a collection of objects which allow the SNMP entity, when
-- supporting a notification originator application,
-- to be configured to generate SNMPv2-Trap-PDUs.
snmpTrap OBJECT IDENTIFIER ::= { snmpMIBObjects 4 }
snmpTrapOID OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS accessible-for-notify
STATUS current
DESCRIPTION
"The authoritative identification of the notification
currently being sent. This variable occurs as
the second varbind in every SNMPv2-Trap-PDU and
InformRequest-PDU."
::= { snmpTrap 1 }
-- ::= { snmpTrap 2 } this OID is obsolete
snmpTrapEnterprise OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS accessible-for-notify
STATUS current
DESCRIPTION
"The authoritative identification of the enterprise
associated with the trap currently being sent. When an
SNMP proxy agent is mapping an RFC1157 Trap-PDU
into a SNMPv2-Trap-PDU, this variable occurs as the
last varbind."
::= { snmpTrap 3 }
-- ::= { snmpTrap 4 } this OID is obsolete
-- well-known traps
snmpTraps OBJECT IDENTIFIER ::= { snmpMIBObjects 5 }
coldStart NOTIFICATION-TYPE
STATUS current
DESCRIPTION
"A coldStart trap signifies that the SNMP entity,
supporting a notification originator application, is
reinitializing itself and that its configuration may
have been altered."
::= { snmpTraps 1 }
warmStart NOTIFICATION-TYPE
STATUS current
DESCRIPTION
"A warmStart trap signifies that the SNMP entity,
supporting a notification originator application,
is reinitializing itself such that its configuration
is unaltered."
::= { snmpTraps 2 }
-- Note the linkDown NOTIFICATION-TYPE ::= { snmpTraps 3 }
-- and the linkUp NOTIFICATION-TYPE ::= { snmpTraps 4 }
-- are defined in RFC 2863 [RFC2863]
authenticationFailure NOTIFICATION-TYPE
STATUS current
DESCRIPTION
"An authenticationFailure trap signifies that the SNMP
entity has received a protocol message that is not
properly authenticated. While all implementations
of SNMP entities MAY be capable of generating this
trap, the snmpEnableAuthenTraps object indicates
whether this trap will be generated."
::= { snmpTraps 5 }
-- Note the egpNeighborLoss notification is defined
-- as { snmpTraps 6 } in RFC 1213
-- the set group
--
-- a collection of objects which allow several cooperating
-- command generator applications to coordinate their use of the
-- set operation.
snmpSet OBJECT IDENTIFIER ::= { snmpMIBObjects 6 }
snmpSetSerialNo OBJECT-TYPE
SYNTAX TestAndIncr
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"An advisory lock used to allow several cooperating
command generator applications to coordinate their
use of the SNMP set operation.
This object is used for coarse-grain coordination.
To achieve fine-grain coordination, one or more similar
objects might be defined within each MIB group, as
appropriate."
::= { snmpSet 1 }
-- conformance information
snmpMIBConformance
OBJECT IDENTIFIER ::= { snmpMIB 2 }
snmpMIBCompliances
OBJECT IDENTIFIER ::= { snmpMIBConformance 1 }
snmpMIBGroups OBJECT IDENTIFIER ::= { snmpMIBConformance 2 }
-- compliance statements
-- ::= { snmpMIBCompliances 1 } this OID is obsolete
snmpBasicCompliance MODULE-COMPLIANCE
STATUS deprecated
DESCRIPTION
"The compliance statement for SNMPv2 entities which
implement the SNMPv2 MIB.
This compliance statement is replaced by
snmpBasicComplianceRev2."
MODULE -- this module
MANDATORY-GROUPS { snmpGroup, snmpSetGroup, systemGroup,
snmpBasicNotificationsGroup }
GROUP snmpCommunityGroup1
DESCRIPTION
"This group is mandatory for SNMPv2 entities which
support community-based authentication."
::= { snmpMIBCompliances 2 }
snmpBasicComplianceRev2 MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"The compliance statement for SNMP entities which
implement this MIB module."
MODULE -- this module
MANDATORY-GROUPS { snmpGroup, snmpSetGroup, systemGroup,
snmpBasicNotificationsGroup }
GROUP snmpCommunityGroup1
DESCRIPTION
"This group is mandatory for SNMP entities which
support community-based authentication."
GROUP snmpWarmStartNotificationGroup
DESCRIPTION
"This group is mandatory for an SNMP entity which
supports command responder applications, and is
able to reinitialize itself such that its
configuration is unaltered."
::= { snmpMIBCompliances 3 }
-- units of conformance
-- ::= { snmpMIBGroups 1 } this OID is obsolete
-- ::= { snmpMIBGroups 2 } this OID is obsolete
-- ::= { snmpMIBGroups 3 } this OID is obsolete
-- ::= { snmpMIBGroups 4 } this OID is obsolete
snmpGroup OBJECT-GROUP
OBJECTS { snmpInPkts,
snmpInBadVersions,
snmpInASNParseErrs,
snmpSilentDrops,
snmpProxyDrops,
snmpEnableAuthenTraps }
STATUS current
DESCRIPTION
"A collection of objects providing basic instrumentation
and control of an SNMP entity."
::= { snmpMIBGroups 8 }
snmpCommunityGroup1 OBJECT-GROUP
OBJECTS { snmpInBadCommunityNames,
snmpInBadCommunityUses }
STATUS current
DESCRIPTION
"A collection of objects providing basic instrumentation
of a SNMP entity which supports community-based
authentication."
::= { snmpMIBGroups 9 }
snmpSetGroup OBJECT-GROUP
OBJECTS { snmpSetSerialNo }
STATUS current
DESCRIPTION
"A collection of objects which allow several cooperating
command generator applications to coordinate their
use of the set operation."
::= { snmpMIBGroups 5 }
systemGroup OBJECT-GROUP
OBJECTS { sysDescr, sysObjectID, sysUpTime,
sysContact, sysName, sysLocation,
sysServices,
sysORLastChange, sysORID,
sysORUpTime, sysORDescr }
STATUS current
DESCRIPTION
"The system group defines objects which are common to all
managed systems."
::= { snmpMIBGroups 6 }
snmpBasicNotificationsGroup NOTIFICATION-GROUP
NOTIFICATIONS { coldStart, authenticationFailure }
STATUS current
DESCRIPTION
"The basic notifications implemented by an SNMP entity
supporting command responder applications."
::= { snmpMIBGroups 7 }
snmpWarmStartNotificationGroup NOTIFICATION-GROUP
NOTIFICATIONS { warmStart }
STATUS current
DESCRIPTION
"An additional notification for an SNMP entity supporting
command responder applications, if it is able to reinitialize
itself such that its configuration is unaltered."
::= { snmpMIBGroups 11 }
snmpNotificationGroup OBJECT-GROUP
OBJECTS { snmpTrapOID, snmpTrapEnterprise }
STATUS current
DESCRIPTION
"These objects are required for entities
which support notification originator applications."
::= { snmpMIBGroups 12 }
-- definitions in RFC 1213 made obsolete by the inclusion of a
-- subset of the snmp group in this MIB
snmpOutPkts OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The total number of SNMP Messages which were
passed from the SNMP protocol entity to the
transport service."
::= { snmp 2 }
-- { snmp 7 } is not used
snmpInTooBigs OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The total number of SNMP PDUs which were
delivered to the SNMP protocol entity and for
which the value of the error-status field was
`tooBig'."
::= { snmp 8 }
snmpInNoSuchNames OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The total number of SNMP PDUs which were
delivered to the SNMP protocol entity and for
which the value of the error-status field was
`noSuchName'."
::= { snmp 9 }
snmpInBadValues OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The total number of SNMP PDUs which were
delivered to the SNMP protocol entity and for
which the value of the error-status field was
`badValue'."
::= { snmp 10 }
snmpInReadOnlys OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The total number valid SNMP PDUs which were delivered
to the SNMP protocol entity and for which the value
of the error-status field was `readOnly'. It should
be noted that it is a protocol error to generate an
SNMP PDU which contains the value `readOnly' in the
error-status field, as such this object is provided
as a means of detecting incorrect implementations of
the SNMP."
::= { snmp 11 }
snmpInGenErrs OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The total number of SNMP PDUs which were delivered
to the SNMP protocol entity and for which the value
of the error-status field was `genErr'."
::= { snmp 12 }
snmpInTotalReqVars OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The total number of MIB objects which have been
retrieved successfully by the SNMP protocol entity
as the result of receiving valid SNMP Get-Request
and Get-Next PDUs."
::= { snmp 13 }
snmpInTotalSetVars OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The total number of MIB objects which have been
altered successfully by the SNMP protocol entity as
the result of receiving valid SNMP Set-Request PDUs."
::= { snmp 14 }
snmpInGetRequests OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The total number of SNMP Get-Request PDUs which
have been accepted and processed by the SNMP
protocol entity."
::= { snmp 15 }
snmpInGetNexts OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The total number of SNMP Get-Next PDUs which have been
accepted and processed by the SNMP protocol entity."
::= { snmp 16 }
snmpInSetRequests OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The total number of SNMP Set-Request PDUs which
have been accepted and processed by the SNMP protocol
entity."
::= { snmp 17 }
snmpInGetResponses OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The total number of SNMP Get-Response PDUs which
have been accepted and processed by the SNMP protocol
entity."
::= { snmp 18 }
snmpInTraps OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The total number of SNMP Trap PDUs which have been
accepted and processed by the SNMP protocol entity."
::= { snmp 19 }
snmpOutTooBigs OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The total number of SNMP PDUs which were generated
by the SNMP protocol entity and for which the value
of the error-status field was `tooBig.'"
::= { snmp 20 }
snmpOutNoSuchNames OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The total number of SNMP PDUs which were generated
by the SNMP protocol entity and for which the value
of the error-status was `noSuchName'."
::= { snmp 21 }
snmpOutBadValues OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The total number of SNMP PDUs which were generated
by the SNMP protocol entity and for which the value
of the error-status field was `badValue'."
::= { snmp 22 }
-- { snmp 23 } is not used
snmpOutGenErrs OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The total number of SNMP PDUs which were generated
by the SNMP protocol entity and for which the value
of the error-status field was `genErr'."
::= { snmp 24 }
snmpOutGetRequests OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The total number of SNMP Get-Request PDUs which
have been generated by the SNMP protocol entity."
::= { snmp 25 }
snmpOutGetNexts OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The total number of SNMP Get-Next PDUs which have
been generated by the SNMP protocol entity."
::= { snmp 26 }
snmpOutSetRequests OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The total number of SNMP Set-Request PDUs which
have been generated by the SNMP protocol entity."
::= { snmp 27 }
snmpOutGetResponses OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The total number of SNMP Get-Response PDUs which
have been generated by the SNMP protocol entity."
::= { snmp 28 }
snmpOutTraps OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The total number of SNMP Trap PDUs which have
been generated by the SNMP protocol entity."
::= { snmp 29 }
snmpObsoleteGroup OBJECT-GROUP
OBJECTS { snmpOutPkts, snmpInTooBigs, snmpInNoSuchNames,
snmpInBadValues, snmpInReadOnlys, snmpInGenErrs,
snmpInTotalReqVars, snmpInTotalSetVars,
snmpInGetRequests, snmpInGetNexts, snmpInSetRequests,
snmpInGetResponses, snmpInTraps, snmpOutTooBigs,
snmpOutNoSuchNames, snmpOutBadValues,
snmpOutGenErrs, snmpOutGetRequests, snmpOutGetNexts,
snmpOutSetRequests, snmpOutGetResponses, snmpOutTraps
}
STATUS obsolete
DESCRIPTION
"A collection of objects from RFC 1213 made obsolete
by this MIB module."
::= { snmpMIBGroups 10 }
END

View File

@ -0,0 +1,344 @@
SNMPv2-SMI DEFINITIONS ::= BEGIN
-- the path to the root
org OBJECT IDENTIFIER ::= { iso 3 } -- "iso" = 1
dod OBJECT IDENTIFIER ::= { org 6 }
internet OBJECT IDENTIFIER ::= { dod 1 }
directory OBJECT IDENTIFIER ::= { internet 1 }
mgmt OBJECT IDENTIFIER ::= { internet 2 }
mib-2 OBJECT IDENTIFIER ::= { mgmt 1 }
transmission OBJECT IDENTIFIER ::= { mib-2 10 }
experimental OBJECT IDENTIFIER ::= { internet 3 }
private OBJECT IDENTIFIER ::= { internet 4 }
enterprises OBJECT IDENTIFIER ::= { private 1 }
security OBJECT IDENTIFIER ::= { internet 5 }
snmpV2 OBJECT IDENTIFIER ::= { internet 6 }
-- transport domains
snmpDomains OBJECT IDENTIFIER ::= { snmpV2 1 }
-- transport proxies
snmpProxys OBJECT IDENTIFIER ::= { snmpV2 2 }
-- module identities
snmpModules OBJECT IDENTIFIER ::= { snmpV2 3 }
-- Extended UTCTime, to allow dates with four-digit years
-- (Note that this definition of ExtUTCTime is not to be IMPORTed
-- by MIB modules.)
ExtUTCTime ::= OCTET STRING(SIZE(11 | 13))
-- format is YYMMDDHHMMZ or YYYYMMDDHHMMZ
-- where: YY - last two digits of year (only years
-- between 1900-1999)
-- YYYY - last four digits of the year (any year)
-- MM - month (01 through 12)
-- DD - day of month (01 through 31)
-- HH - hours (00 through 23)
-- MM - minutes (00 through 59)
-- Z - denotes GMT (the ASCII character Z)
--
-- For example, "9502192015Z" and "199502192015Z" represent
-- 8:15pm GMT on 19 February 1995. Years after 1999 must use
-- the four digit year format. Years 1900-1999 may use the
-- two or four digit format.
-- definitions for information modules
MODULE-IDENTITY MACRO ::=
BEGIN
TYPE NOTATION ::=
"LAST-UPDATED" value(Update ExtUTCTime)
"ORGANIZATION" Text
"CONTACT-INFO" Text
"DESCRIPTION" Text
RevisionPart
VALUE NOTATION ::=
value(VALUE OBJECT IDENTIFIER)
RevisionPart ::=
Revisions
| empty
Revisions ::=
Revision
| Revisions Revision
Revision ::=
"REVISION" value(Update ExtUTCTime)
"DESCRIPTION" Text
-- a character string as defined in section 3.1.1
Text ::= value(IA5String)
END
OBJECT-IDENTITY MACRO ::=
BEGIN
TYPE NOTATION ::=
"STATUS" Status
"DESCRIPTION" Text
ReferPart
VALUE NOTATION ::=
value(VALUE OBJECT IDENTIFIER)
Status ::=
"current"
| "deprecated"
| "obsolete"
ReferPart ::=
"REFERENCE" Text
| empty
-- a character string as defined in section 3.1.1
Text ::= value(IA5String)
END
-- names of objects
-- (Note that these definitions of ObjectName and NotificationName
-- are not to be IMPORTed by MIB modules.)
ObjectName ::=
OBJECT IDENTIFIER
NotificationName ::=
OBJECT IDENTIFIER
-- syntax of objects
-- the "base types" defined here are:
-- 3 built-in ASN.1 types: INTEGER, OCTET STRING, OBJECT IDENTIFIER
-- 8 application-defined types: Integer32, IpAddress, Counter32,
-- Gauge32, Unsigned32, TimeTicks, Opaque, and Counter64
ObjectSyntax ::=
CHOICE {
simple
SimpleSyntax,
-- note that SEQUENCEs for conceptual tables and
-- rows are not mentioned here...
application-wide
ApplicationSyntax
}
-- built-in ASN.1 types
SimpleSyntax ::=
CHOICE {
-- INTEGERs with a more restrictive range
-- may also be used
integer-value -- includes Integer32
INTEGER (-2147483648..2147483647),
-- OCTET STRINGs with a more restrictive size
-- may also be used
string-value
OCTET STRING (SIZE (0..65535)),
objectID-value
OBJECT IDENTIFIER
}
-- indistinguishable from INTEGER, but never needs more than
-- 32-bits for a two's complement representation
Integer32 ::=
INTEGER (-2147483648..2147483647)
-- application-wide types
ApplicationSyntax ::=
CHOICE {
ipAddress-value
IpAddress,
counter-value
Counter32,
timeticks-value
TimeTicks,
arbitrary-value
Opaque,
big-counter-value
Counter64,
unsigned-integer-value -- includes Gauge32
Unsigned32
}
-- in network-byte order
-- (this is a tagged type for historical reasons)
IpAddress ::=
[APPLICATION 0]
IMPLICIT OCTET STRING (SIZE (4))
-- this wraps
Counter32 ::=
[APPLICATION 1]
IMPLICIT INTEGER (0..4294967295)
-- this doesn't wrap
Gauge32 ::=
[APPLICATION 2]
IMPLICIT INTEGER (0..4294967295)
-- an unsigned 32-bit quantity
-- indistinguishable from Gauge32
Unsigned32 ::=
[APPLICATION 2]
IMPLICIT INTEGER (0..4294967295)
-- hundredths of seconds since an epoch
TimeTicks ::=
[APPLICATION 3]
IMPLICIT INTEGER (0..4294967295)
-- for backward-compatibility only
Opaque ::=
[APPLICATION 4]
IMPLICIT OCTET STRING
-- for counters that wrap in less than one hour with only 32 bits
Counter64 ::=
[APPLICATION 6]
IMPLICIT INTEGER (0..18446744073709551615)
-- definition for objects
OBJECT-TYPE MACRO ::=
BEGIN
TYPE NOTATION ::=
"SYNTAX" Syntax
UnitsPart
"MAX-ACCESS" Access
"STATUS" Status
"DESCRIPTION" Text
ReferPart
IndexPart
DefValPart
VALUE NOTATION ::=
value(VALUE ObjectName)
Syntax ::= -- Must be one of the following:
-- a base type (or its refinement),
-- a textual convention (or its refinement), or
-- a BITS pseudo-type
type
| "BITS" "{" NamedBits "}"
NamedBits ::= NamedBit
| NamedBits "," NamedBit
NamedBit ::= identifier "(" number ")" -- number is nonnegative
UnitsPart ::=
"UNITS" Text
| empty
Access ::=
"not-accessible"
| "accessible-for-notify"
| "read-only"
| "read-write"
| "read-create"
Status ::=
"current"
| "deprecated"
| "obsolete"
ReferPart ::=
"REFERENCE" Text
| empty
IndexPart ::=
"INDEX" "{" IndexTypes "}"
| "AUGMENTS" "{" Entry "}"
| empty
IndexTypes ::=
IndexType
| IndexTypes "," IndexType
IndexType ::=
"IMPLIED" Index
| Index
Index ::=
-- use the SYNTAX value of the
-- correspondent OBJECT-TYPE invocation
value(ObjectName)
Entry ::=
-- use the INDEX value of the
-- correspondent OBJECT-TYPE invocation
value(ObjectName)
DefValPart ::= "DEFVAL" "{" Defvalue "}"
| empty
Defvalue ::= -- must be valid for the type specified in
-- SYNTAX clause of same OBJECT-TYPE macro
value(ObjectSyntax)
| "{" BitsValue "}"
BitsValue ::= BitNames
| empty
BitNames ::= BitName
| BitNames "," BitName
BitName ::= identifier
-- a character string as defined in section 3.1.1
Text ::= value(IA5String)
END
-- definitions for notifications
NOTIFICATION-TYPE MACRO ::=
BEGIN
TYPE NOTATION ::=
ObjectsPart
"STATUS" Status
"DESCRIPTION" Text
ReferPart
VALUE NOTATION ::=
value(VALUE NotificationName)
ObjectsPart ::=
"OBJECTS" "{" Objects "}"
| empty
Objects ::=
Object
| Objects "," Object
Object ::=
value(ObjectName)
Status ::=
"current"
| "deprecated"
| "obsolete"
ReferPart ::=
"REFERENCE" Text
| empty
-- a character string as defined in section 3.1.1
Text ::= value(IA5String)
END
-- definitions of administrative identifiers
zeroDotZero OBJECT-IDENTITY
STATUS current
DESCRIPTION
"A value used for null identifiers."
::= { 0 0 }
END

View File

@ -0,0 +1,729 @@
-- *****************************************************************
-- SNMPv2-TC.my: SNMPv2 Textual Conventions
--
-- May 1994, Jeffrey T. Johnson
--
-- Copyright (c) 1994,1996 by cisco Systems, Inc.
-- All rights reserved.
--
-- *****************************************************************
--
-- This file was extracted from RFC 1903
-- All macro definitions have been removed because they are
-- predefined in the mib compiler
SNMPv2-TC DEFINITIONS ::= BEGIN
IMPORTS
ObjectSyntax, TimeTicks
FROM SNMPv2-SMI;
-- definition of textual conventions
DisplayString ::= TEXTUAL-CONVENTION
DISPLAY-HINT "255a"
STATUS current
DESCRIPTION
"Represents textual information taken from the NVT ASCII
character set, as defined in pages 4, 10-11 of RFC 854.
To summarize RFC 854, the NVT ASCII repertoire specifies:
- the use of character codes 0-127 (decimal)
- the graphics characters (32-126) are interpreted as
US ASCII
- NUL, LF, CR, BEL, BS, HT, VT and FF have the special
meanings specified in RFC 854
- the other 25 codes have no standard interpretation
- the sequence 'CR LF' means newline
- the sequence 'CR NUL' means carriage-return
- an 'LF' not preceded by a 'CR' means moving to the
same column on the next line.
- the sequence 'CR x' for any x other than LF or NUL is
illegal. (Note that this also means that a string may
end with either 'CR LF' or 'CR NUL', but not with CR.)
Any object defined using this syntax may not exceed 255
characters in length."
SYNTAX OCTET STRING (SIZE (0..255))
PhysAddress ::= TEXTUAL-CONVENTION
DISPLAY-HINT "1x:"
STATUS current
DESCRIPTION
"Represents media- or physical-level addresses."
SYNTAX OCTET STRING
MacAddress ::= TEXTUAL-CONVENTION
DISPLAY-HINT "1x:"
STATUS current
DESCRIPTION
"Represents an 802 MAC address represented in the
`canonical' order defined by IEEE 802.1a, i.e., as if it
were transmitted least significant bit first, even though
802.5 (in contrast to other 802.x protocols) requires MAC
addresses to be transmitted most significant bit first."
SYNTAX OCTET STRING (SIZE (6))
TruthValue ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Represents a boolean value."
SYNTAX INTEGER { true(1), false(2) }
TestAndIncr ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Represents integer-valued information used for atomic
operations. When the management protocol is used to specify
that an object instance having this syntax is to be
modified, the new value supplied via the management protocol
must precisely match the value presently held by the
instance. If not, the management protocol set operation
fails with an error of `inconsistentValue'. Otherwise, if
the current value is the maximum value of 2^31-1 (2147483647
decimal), then the value held by the instance is wrapped to
zero; otherwise, the value held by the instance is
incremented by one. (Note that regardless of whether the
management protocol set operation succeeds, the variable-
binding in the request and response PDUs are identical.)
The value of the ACCESS clause for objects having this
syntax is either `read-write' or `read-create'. When an
instance of a columnar object having this syntax is created,
any value may be supplied via the management protocol.
When the network management portion of the system is re-
initialized, the value of every object instance having this
syntax must either be incremented from its value prior to
the re-initialization, or (if the value prior to the re-
initialization is unknown) be set to a pseudo-randomly
generated value."
SYNTAX INTEGER (0..2147483647)
AutonomousType ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Represents an independently extensible type identification
value. It may, for example, indicate a particular sub-tree
with further MIB definitions, or define a particular type of
protocol or hardware."
SYNTAX OBJECT IDENTIFIER
InstancePointer ::= TEXTUAL-CONVENTION
STATUS obsolete
DESCRIPTION
"A pointer to either a specific instance of a MIB object or
a conceptual row of a MIB table in the managed device. In
the latter case, by convention, it is the name of the
particular instance of the first accessible columnar object
in the conceptual row.
The two uses of this textual convention are replaced by
VariablePointer and RowPointer, respectively."
SYNTAX OBJECT IDENTIFIER
VariablePointer ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"A pointer to a specific object instance. For example,
sysContact.0 or ifInOctets.3."
SYNTAX OBJECT IDENTIFIER
RowPointer ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Represents a pointer to a conceptual row. The value is the
name of the instance of the first accessible columnar object
in the conceptual row.
For example, ifIndex.3 would point to the 3rd row in the
ifTable (note that if ifIndex were not-accessible, then
ifDescr.3 would be used instead)."
SYNTAX OBJECT IDENTIFIER
RowStatus ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"The RowStatus textual convention is used to manage the
creation and deletion of conceptual rows, and is used as the
value of the SYNTAX clause for the status column of a
conceptual row (as described in Section 7.7.1 of [2].)
The status column has six defined values:
- `active', which indicates that the conceptual row is
available for use by the managed device;
- `notInService', which indicates that the conceptual
row exists in the agent, but is unavailable for use by
the managed device (see NOTE below);
- `notReady', which indicates that the conceptual row
exists in the agent, but is missing information
necessary in order to be available for use by the
managed device;
- `createAndGo', which is supplied by a management
station wishing to create a new instance of a
conceptual row and to have its status automatically set
to active, making it available for use by the managed
device;
- `createAndWait', which is supplied by a management
station wishing to create a new instance of a
conceptual row (but not make it available for use by
the managed device); and,
- `destroy', which is supplied by a management station
wishing to delete all of the instances associated with
an existing conceptual row.
Whereas five of the six values (all except `notReady') may
be specified in a management protocol set operation, only
three values will be returned in response to a management
protocol retrieval operation: `notReady', `notInService' or
`active'. That is, when queried, an existing conceptual row
has only three states: it is either available for use by
the managed device (the status column has value `active');
it is not available for use by the managed device, though
the agent has sufficient information to make it so (the
status column has value `notInService'); or, it is not
available for use by the managed device, and an attempt to
make it so would fail because the agent has insufficient
information (the state column has value `notReady').
NOTE WELL
This textual convention may be used for a MIB table,
irrespective of whether the values of that table's
conceptual rows are able to be modified while it is
active, or whether its conceptual rows must be taken
out of service in order to be modified. That is, it is
the responsibility of the DESCRIPTION clause of the
status column to specify whether the status column must
not be `active' in order for the value of some other
column of the same conceptual row to be modified. If
such a specification is made, affected columns may be
changed by an SNMP set PDU if the RowStatus would not
be equal to `active' either immediately before or after
processing the PDU. In other words, if the PDU also
contained a varbind that would change the RowStatus
value, the column in question may be changed if the
RowStatus was not equal to `active' as the PDU was
received, or if the varbind sets the status to a value
other than 'active'.
Also note that whenever any elements of a row exist, the
RowStatus column must also exist.
To summarize the effect of having a conceptual row with a
status column having a SYNTAX clause value of RowStatus,
consider the following state diagram:
STATE
+--------------+-----------+-------------+-------------
| A | B | C | D
| |status col.|status column|
|status column | is | is |status column
ACTION |does not exist| notReady | notInService| is active
--------------+--------------+-----------+-------------+-------------
set status |noError ->D|inconsist- |inconsistent-|inconsistent-
column to | or | entValue| Value| Value
createAndGo |inconsistent- | | |
| Value| | |
--------------+--------------+-----------+-------------+-------------
set status |noError see 1|inconsist- |inconsistent-|inconsistent-
column to | or | entValue| Value| Value
createAndWait |wrongValue | | |
--------------+--------------+-----------+-------------+-------------
set status |inconsistent- |inconsist- |noError |noError
column to | Value| entValue| |
active | | | |
| | or | |
| | | |
| |see 2 ->D| ->D| ->D
--------------+--------------+-----------+-------------+-------------
set status |inconsistent- |inconsist- |noError |noError ->C
column to | Value| entValue| |
notInService | | | |
| | or | | or
| | | |
| |see 3 ->C| ->C|wrongValue
--------------+--------------+-----------+-------------+-------------
set status |noError |noError |noError |noError
column to | | | |
destroy | ->A| ->A| ->A| ->A
--------------+--------------+-----------+-------------+-------------
set any other |see 4 |noError |noError |see 5
column to some| | | |
value | | see 1| ->C| ->D
--------------+--------------+-----------+-------------+-------------
(1) goto B or C, depending on information available to the
agent.
(2) if other variable bindings included in the same PDU,
provide values for all columns which are missing but
required, then return noError and goto D.
(3) if other variable bindings included in the same PDU,
provide values for all columns which are missing but
required, then return noError and goto C.
(4) at the discretion of the agent, the return value may be
either:
inconsistentName: because the agent does not choose to
create such an instance when the corresponding
RowStatus instance does not exist, or
inconsistentValue: if the supplied value is
inconsistent with the state of some other MIB object's
value, or
noError: because the agent chooses to create the
instance.
If noError is returned, then the instance of the status
column must also be created, and the new state is B or C,
depending on the information available to the agent. If
inconsistentName or inconsistentValue is returned, the row
remains in state A.
(5) depending on the MIB definition for the column/table,
either noError or inconsistentValue may be returned.
NOTE: Other processing of the set request may result in a
response other than noError being returned, e.g.,
wrongValue, noCreation, etc.
Conceptual Row Creation
There are four potential interactions when creating a
conceptual row: selecting an instance-identifier which is
not in use; creating the conceptual row; initializing any
objects for which the agent does not supply a default; and,
making the conceptual row available for use by the managed
device.
Interaction 1: Selecting an Instance-Identifier
The algorithm used to select an instance-identifier varies
for each conceptual row. In some cases, the instance-
identifier is semantically significant, e.g., the
destination address of a route, and a management station
selects the instance-identifier according to the semantics.
In other cases, the instance-identifier is used solely to
distinguish conceptual rows, and a management station
without specific knowledge of the conceptual row might
examine the instances present in order to determine an
unused instance-identifier. (This approach may be used, but
it is often highly sub-optimal; however, it is also a
questionable practice for a naive management station to
attempt conceptual row creation.)
Alternately, the MIB module which defines the conceptual row
might provide one or more objects which provide assistance
in determining an unused instance-identifier. For example,
if the conceptual row is indexed by an integer-value, then
an object having an integer-valued SYNTAX clause might be
defined for such a purpose, allowing a management station to
issue a management protocol retrieval operation. In order
to avoid unnecessary collisions between competing management
stations, `adjacent' retrievals of this object should be
different.
Finally, the management station could select a pseudo-random
number to use as the index. In the event that this index
was already in use and an inconsistentValue was returned in
response to the management protocol set operation, the
management station should simply select a new pseudo-random
number and retry the operation.
A MIB designer should choose between the two latter
algorithms based on the size of the table (and therefore the
efficiency of each algorithm). For tables in which a large
number of entries are expected, it is recommended that a MIB
object be defined that returns an acceptable index for
creation. For tables with small numbers of entries, it is
recommended that the latter pseudo-random index mechanism be
used.
Interaction 2: Creating the Conceptual Row
Once an unused instance-identifier has been selected, the
management station determines if it wishes to create and
activate the conceptual row in one transaction or in a
negotiated set of interactions.
Interaction 2a: Creating and Activating the Conceptual Row
The management station must first determine the column
requirements, i.e., it must determine those columns for
which it must or must not provide values. Depending on the
complexity of the table and the management station's
knowledge of the agent's capabilities, this determination
can be made locally by the management station. Alternately,
the management station issues a management protocol get
operation to examine all columns in the conceptual row that
it wishes to create. In response, for each column, there
are three possible outcomes:
- a value is returned, indicating that some other
management station has already created this conceptual
row. We return to interaction 1.
- the exception `noSuchInstance' is returned,
indicating that the agent implements the object-type
associated with this column, and that this column in at
least one conceptual row would be accessible in the MIB
view used by the retrieval were it to exist. For those
columns to which the agent provides read-create access,
the `noSuchInstance' exception tells the management
station that it should supply a value for this column
when the conceptual row is to be created.
- the exception `noSuchObject' is returned, indicating
that the agent does not implement the object-type
associated with this column or that there is no
conceptual row for which this column would be
accessible in the MIB view used by the retrieval. As
such, the management station can not issue any
management protocol set operations to create an
instance of this column.
Once the column requirements have been determined, a
management protocol set operation is accordingly issued.
This operation also sets the new instance of the status
column to `createAndGo'.
When the agent processes the set operation, it verifies that
it has sufficient information to make the conceptual row
available for use by the managed device. The information
available to the agent is provided by two sources: the
management protocol set operation which creates the
conceptual row, and, implementation-specific defaults
supplied by the agent (note that an agent must provide
implementation-specific defaults for at least those objects
which it implements as read-only). If there is sufficient
information available, then the conceptual row is created, a
`noError' response is returned, the status column is set to
`active', and no further interactions are necessary (i.e.,
interactions 3 and 4 are skipped). If there is insufficient
information, then the conceptual row is not created, and the
set operation fails with an error of `inconsistentValue'.
On this error, the management station can issue a management
protocol retrieval operation to determine if this was
because it failed to specify a value for a required column,
or, because the selected instance of the status column
already existed. In the latter case, we return to
interaction 1. In the former case, the management station
can re-issue the set operation with the additional
information, or begin interaction 2 again using
`createAndWait' in order to negotiate creation of the
conceptual row.
NOTE WELL
Regardless of the method used to determine the column
requirements, it is possible that the management
station might deem a column necessary when, in fact,
the agent will not allow that particular columnar
instance to be created or written. In this case, the
management protocol set operation will fail with an
error such as `noCreation' or `notWritable'. In this
case, the management station decides whether it needs
to be able to set a value for that particular columnar
instance. If not, the management station re-issues the
management protocol set operation, but without setting
a value for that particular columnar instance;
otherwise, the management station aborts the row
creation algorithm.
Interaction 2b: Negotiating the Creation of the Conceptual
Row
The management station issues a management protocol set
operation which sets the desired instance of the status
column to `createAndWait'. If the agent is unwilling to
process a request of this sort, the set operation fails with
an error of `wrongValue'. (As a consequence, such an agent
must be prepared to accept a single management protocol set
operation, i.e., interaction 2a above, containing all of the
columns indicated by its column requirements.) Otherwise,
the conceptual row is created, a `noError' response is
returned, and the status column is immediately set to either
`notInService' or `notReady', depending on whether it has
sufficient information to make the conceptual row available
for use by the managed device. If there is sufficient
information available, then the status column is set to
`notInService'; otherwise, if there is insufficient
information, then the status column is set to `notReady'.
Regardless, we proceed to interaction 3.
Interaction 3: Initializing non-defaulted Objects
The management station must now determine the column
requirements. It issues a management protocol get operation
to examine all columns in the created conceptual row. In
the response, for each column, there are three possible
outcomes:
- a value is returned, indicating that the agent
implements the object-type associated with this column
and had sufficient information to provide a value. For
those columns to which the agent provides read-create
access (and for which the agent allows their values to
be changed after their creation), a value return tells
the management station that it may issue additional
management protocol set operations, if it desires, in
order to change the value associated with this column.
- the exception `noSuchInstance' is returned,
indicating that the agent implements the object-type
associated with this column, and that this column in at
least one conceptual row would be accessible in the MIB
view used by the retrieval were it to exist. However,
the agent does not have sufficient information to
provide a value, and until a value is provided, the
conceptual row may not be made available for use by the
managed device. For those columns to which the agent
provides read-create access, the `noSuchInstance'
exception tells the management station that it must
issue additional management protocol set operations, in
order to provide a value associated with this column.
- the exception `noSuchObject' is returned, indicating
that the agent does not implement the object-type
associated with this column or that there is no
conceptual row for which this column would be
accessible in the MIB view used by the retrieval. As
such, the management station can not issue any
management protocol set operations to create an
instance of this column.
If the value associated with the status column is
`notReady', then the management station must first deal with
all `noSuchInstance' columns, if any. Having done so, the
value of the status column becomes `notInService', and we
proceed to interaction 4.
Interaction 4: Making the Conceptual Row Available
Once the management station is satisfied with the values
associated with the columns of the conceptual row, it issues
a management protocol set operation to set the status column
to `active'. If the agent has sufficient information to
make the conceptual row available for use by the managed
device, the management protocol set operation succeeds (a
`noError' response is returned). Otherwise, the management
protocol set operation fails with an error of
`inconsistentValue'.
NOTE WELL
A conceptual row having a status column with value
`notInService' or `notReady' is unavailable to the
managed device. As such, it is possible for the
managed device to create its own instances during the
time between the management protocol set operation
which sets the status column to `createAndWait' and the
management protocol set operation which sets the status
column to `active'. In this case, when the management
protocol set operation is issued to set the status
column to `active', the values held in the agent
supersede those used by the managed device.
If the management station is prevented from setting the
status column to `active' (e.g., due to management station
or network failure) the conceptual row will be left in the
`notInService' or `notReady' state, consuming resources
indefinitely. The agent must detect conceptual rows that
have been in either state for an abnormally long period of
time and remove them. It is the responsibility of the
DESCRIPTION clause of the status column to indicate what an
abnormally long period of time would be. This period of
time should be long enough to allow for human response time
(including `think time') between the creation of the
conceptual row and the setting of the status to `active'.
In the absense of such information in the DESCRIPTION
clause, it is suggested that this period be approximately 5
minutes in length. This removal action applies not only to
newly-created rows, but also to previously active rows which
are set to, and left in, the notInService state for a
prolonged period exceeding that which is considered normal
for such a conceptual row.
Conceptual Row Suspension
When a conceptual row is `active', the management station
may issue a management protocol set operation which sets the
instance of the status column to `notInService'. If the
agent is unwilling to do so, the set operation fails with an
error of `wrongValue'. Otherwise, the conceptual row is
taken out of service, and a `noError' response is returned.
It is the responsibility of the DESCRIPTION clause of the
status column to indicate under what circumstances the
status column should be taken out of service (e.g., in order
for the value of some other column of the same conceptual
row to be modified).
Conceptual Row Deletion
For deletion of conceptual rows, a management protocol set
operation is issued which sets the instance of the status
column to `destroy'. This request may be made regardless of
the current value of the status column (e.g., it is possible
to delete conceptual rows which are either `notReady',
`notInService' or `active'.) If the operation succeeds,
then all instances associated with the conceptual row are
immediately removed."
SYNTAX INTEGER {
-- the following two values are states:
-- these values may be read or written
active(1),
notInService(2),
-- the following value is a state:
-- this value may be read, but not written
notReady(3),
-- the following three values are
-- actions: these values may be written,
-- but are never read
createAndGo(4),
createAndWait(5),
destroy(6)
}
TimeStamp ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"The value of the sysUpTime object at which a specific
occurrence happened. The specific occurrence must be
defined in the description of any object defined using this
type."
SYNTAX TimeTicks
TimeInterval ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"A period of time, measured in units of 0.01 seconds."
SYNTAX INTEGER (0..2147483647)
DateAndTime ::= TEXTUAL-CONVENTION
DISPLAY-HINT "2d-1d-1d,1d:1d:1d.1d,1a1d:1d"
STATUS current
DESCRIPTION
"A date-time specification.
field octets contents range
----- ------ -------- -----
1 1-2 year 0..65536
2 3 month 1..12
3 4 day 1..31
4 5 hour 0..23
5 6 minutes 0..59
6 7 seconds 0..60
(use 60 for leap-second)
7 8 deci-seconds 0..9
8 9 direction from UTC '+' / '-'
9 10 hours from UTC 0..11
10 11 minutes from UTC 0..59
For example, Tuesday May 26, 1992 at 1:30:15 PM EDT would be
displayed as:
1992-5-26,13:30:15.0,-4:0
Note that if only local time is known, then timezone
information (fields 8-10) is not present."
SYNTAX OCTET STRING (SIZE (8 | 11))
StorageType ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Describes the memory realization of a conceptual row. A
row which is volatile(2) is lost upon reboot. A row which
is either nonVolatile(3), permanent(4) or readOnly(5), is
backed up by stable storage. A row which is permanent(4)
can be changed but not deleted. A row which is readOnly(5)
cannot be changed nor deleted.
If the value of an object with this syntax is either
permanent(4) or readOnly(5), it cannot be modified.
Conversely, if the value is either other(1), volatile(2) or
nonVolatile(3), it cannot be modified to be permanent(4) or
readOnly(5).
Every usage of this textual convention is required to
specify the columnar objects which a permanent(4) row must
at a minimum allow to be writable."
SYNTAX INTEGER {
other(1), -- eh?
volatile(2), -- e.g., in RAM
nonVolatile(3), -- e.g., in NVRAM
permanent(4), -- e.g., partially in ROM
readOnly(5) -- e.g., completely in ROM
}
TDomain ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Denotes a kind of transport service.
Some possible values, such as snmpUDPDomain, are defined in
'Transport Mappings for Version 2 of the Simple Network
Management Protocol (SNMPv2)'."
SYNTAX OBJECT IDENTIFIER
TAddress ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Denotes a transport service address.
For snmpUDPDomain, a TAddress is 6 octets long, the initial 4
octets containing the IP-address in network-byte order and the
last 2 containing the UDP port in network-byte order. Consult
'Transport Mappings for Version 2 of the Simple Network
Management Protocol (SNMPv2)' for further information on
snmpUDPDomain."
SYNTAX OCTET STRING (SIZE (1..255))
END

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,171 @@
UCD-DISKIO-MIB DEFINITIONS ::= BEGIN
--
-- Derived from the original VEST-INTERNETT-MIB. Open issues:
--
-- (a) where to register this MIB?
-- (b) use not-accessible for diskIOIndex?
--
IMPORTS
MODULE-IDENTITY, OBJECT-TYPE, Integer32, Counter32, Counter64
FROM SNMPv2-SMI
DisplayString
FROM SNMPv2-TC
ucdExperimental
FROM UCD-SNMP-MIB;
ucdDiskIOMIB MODULE-IDENTITY
LAST-UPDATED "200504200000Z"
ORGANIZATION "University of California, Davis"
CONTACT-INFO
"This mib is no longer being maintained by the University of
California and is now in life-support-mode and being
maintained by the net-snmp project. The best place to write
for public questions about the net-snmp-coders mailing list
at net-snmp-coders@lists.sourceforge.net.
postal: Wes Hardaker
P.O. Box 382
Davis CA 95617
email: net-snmp-coders@lists.sourceforge.net
"
DESCRIPTION
"This MIB module defines objects for disk IO statistics."
REVISION "200504200000Z"
DESCRIPTION
"Add 64 bit counters. Patch from Dan Nelson."
REVISION "200202130000Z"
DESCRIPTION
"Add 1, 5 and 15-minute load average objects"
REVISION "200001260000Z"
DESCRIPTION
"SMIv2 version derived from older definitions contained
in the VEST-INTERNETT-MIB module."
::= { ucdExperimental 15 }
diskIOTable OBJECT-TYPE
SYNTAX SEQUENCE OF DiskIOEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Table of IO devices and how much data they have read/written."
::= { ucdDiskIOMIB 1 }
diskIOEntry OBJECT-TYPE
SYNTAX DiskIOEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry containing a device and its statistics."
INDEX { diskIOIndex }
::= { diskIOTable 1 }
DiskIOEntry ::= SEQUENCE {
diskIOIndex Integer32,
diskIODevice DisplayString,
diskIONRead Counter32,
diskIONWritten Counter32,
diskIOReads Counter32,
diskIOWrites Counter32,
diskIOLA1 Integer32,
diskIOLA5 Integer32,
diskIOLA15 Integer32,
diskIONReadX Counter64,
diskIONWrittenX Counter64
}
diskIOIndex OBJECT-TYPE
SYNTAX Integer32 (0..65535)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Reference index for each observed device."
::= { diskIOEntry 1 }
diskIODevice OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The name of the device we are counting/checking."
::= { diskIOEntry 2 }
diskIONRead OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of bytes read from this device since boot."
::= { diskIOEntry 3 }
diskIONWritten OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of bytes written to this device since boot."
::= { diskIOEntry 4 }
diskIOReads OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of read accesses from this device since boot."
::= { diskIOEntry 5 }
diskIOWrites OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of write accesses to this device since boot."
::= { diskIOEntry 6 }
diskIOLA1 OBJECT-TYPE
SYNTAX Integer32 (0..100)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The 1 minute average load of disk (%)"
::= { diskIOEntry 9 }
diskIOLA5 OBJECT-TYPE
SYNTAX Integer32 (0..100)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The 5 minute average load of disk (%)"
::= { diskIOEntry 10 }
diskIOLA15 OBJECT-TYPE
SYNTAX Integer32 (0..100)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The 15 minute average load of disk (%)"
::= { diskIOEntry 11 }
diskIONReadX OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of bytes read from this device since boot."
::= { diskIOEntry 12 }
diskIONWrittenX OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of bytes written to this device since boot."
::= { diskIOEntry 13 }
END

File diff suppressed because it is too large Load Diff

View File

@ -801,31 +801,37 @@ function mainAgentsModules()
$link = "winopeng('".'operation/agentes/stat_win.php?'."type=$graph_type&".'period='.SECONDS_1DAY.'&'.'id='.$module_id.'&'.'refresh='.SECONDS_10MINUTES."', 'day_".$win_handle."')";
echo '<a href="javascript:'.$link.'">';
$module_last_value = modules_get_last_value($module_id);
if (!is_numeric($module_last_value)) {
$module_last_value = htmlspecialchars($module_last_value);
}
switch ($status) {
case AGENT_MODULE_STATUS_NORMAL:
ui_print_status_image('module_ok.png', modules_get_last_value($module_id), false);
ui_print_status_image('module_ok.png', $module_last_value, false);
break;
case AGENT_MODULE_STATUS_CRITICAL_BAD:
ui_print_status_image('module_critical.png', modules_get_last_value($module_id), false);
ui_print_status_image('module_critical.png', $module_last_value, false);
break;
case AGENT_MODULE_STATUS_WARNING:
ui_print_status_image('module_warning.png', modules_get_last_value($module_id), false);
ui_print_status_image('module_warning.png', $module_last_value, false);
break;
case AGENT_MODULE_STATUS_UNKNOWN:
ui_print_status_image('module_unknown.png', modules_get_last_value($module_id), false);
ui_print_status_image('module_unknown.png', $module_last_value, false);
break;
case AGENT_MODULE_STATUS_NORMAL_ALERT:
case AGENT_MODULE_STATUS_WARNING_ALERT:
case AGENT_MODULE_STATUS_CRITICAL_ALERT:
ui_print_status_image('module_alertsfired.png', modules_get_last_value($module_id), false);
ui_print_status_image('module_alertsfired.png', $module_last_value, false);
break;
case 4:
ui_print_status_image('module_no_data.png', modules_get_last_value($module_id), false);
ui_print_status_image('module_no_data.png', $module_last_value, false);
break;
}

View File

@ -0,0 +1,16 @@
START TRANSACTION;
ALTER TABLE `tmetaconsole_setup` ADD COLUMN `server_uid` TEXT NOT NULL default '';
SET @st_oum744 = (SELECT IF(
(SELECT COUNT(*) FROM tconfig WHERE token LIKE 'server_unique_identifier') > 0,
"SELECT 1",
"INSERT INTO `tconfig` (`token`, `value`) VALUES ('server_unique_identifier', replace(uuid(),'-',''))"
));
PREPARE pr_oum744 FROM @st_oum744;
EXECUTE pr_oum744;
DEALLOCATE PREPARE pr_oum744;
ALTER TABLE `tpolicies` ADD COLUMN `force_apply` tinyint(1) default 0;
COMMIT;

View File

@ -160,6 +160,8 @@ CREATE TABLE IF NOT EXISTS `tpolicies` (
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
ALTER TABLE `tpolicies` ADD COLUMN `force_apply` tinyint(1) default 0;
-- -----------------------------------------------------
-- Table `tpolicy_alerts`
-- -----------------------------------------------------
@ -392,6 +394,8 @@ ALTER TABLE `tmetaconsole_setup` MODIFY COLUMN `meta_dbuser` text NULL,
MODIFY COLUMN `meta_dbport` text NULL,
MODIFY COLUMN `meta_dbname` text NULL;
ALTER TABLE `tmetaconsole_setup` ADD COLUMN `server_uid` TEXT NOT NULL default '';
-- ---------------------------------------------------------------------
-- Table `tprofile_view`
-- ---------------------------------------------------------------------
@ -1334,13 +1338,13 @@ ALTER TABLE `tmap` MODIFY COLUMN `id_user` varchar(250) NOT NULL DEFAULT '';
INSERT INTO `tconfig` (`token`, `value`) VALUES ('big_operation_step_datos_purge', '100');
INSERT INTO `tconfig` (`token`, `value`) VALUES ('small_operation_step_datos_purge', '1000');
INSERT INTO `tconfig` (`token`, `value`) VALUES ('days_autodisable_deletion', '30');
INSERT INTO `tconfig` (`token`, `value`) VALUES ('MR', 34);
INSERT INTO `tconfig` (`token`, `value`) VALUES ('MR', 36);
INSERT INTO `tconfig` (`token`, `value`) VALUES ('custom_docs_logo', 'default_docs.png');
INSERT INTO `tconfig` (`token`, `value`) VALUES ('custom_support_logo', 'default_support.png');
INSERT INTO `tconfig` (`token`, `value`) VALUES ('custom_logo_white_bg_preview', 'pandora_logo_head_white_bg.png');
UPDATE tconfig SET value = 'https://licensing.artica.es/pandoraupdate7/server.php' WHERE token='url_update_manager';
DELETE FROM `tconfig` WHERE `token` = 'current_package_enterprise';
INSERT INTO `tconfig` (`token`, `value`) VALUES ('current_package_enterprise', '742');
INSERT INTO `tconfig` (`token`, `value`) VALUES ('current_package_enterprise', '744');
INSERT INTO `tconfig` (`token`, `value`) VALUES ('status_monitor_fields', 'policy,agent,data_type,module_name,server_type,interval,status,graph,warn,data,timestamp');
UPDATE `tconfig` SET `value` = 'mini_severity,evento,id_agente,estado,timestamp' WHERE `token` LIKE 'event_fields';
DELETE FROM `tconfig` WHERE `token` LIKE 'integria_api_password';

View File

@ -213,85 +213,109 @@ if ($config['menu_type'] == 'classic') {
$select[0]['autorefresh_white_list']
);
if ($autorefresh_list !== null
&& array_search($_GET['sec2'], $autorefresh_list) !== false
if ($config['legacy_vc']
|| ($_GET['sec2'] !== 'operation/visual_console/render_view')
|| (($_GET['sec2'] !== 'operation/visual_console/render_view')
&& $config['legacy_vc'])
) {
$do_refresh = true;
if ($_GET['sec2'] == 'operation/agentes/pandora_networkmap') {
if ((!isset($_GET['tab'])) || ($_GET['tab'] != 'view')) {
$do_refresh = false;
if ($autorefresh_list !== null
&& array_search($_GET['sec2'], $autorefresh_list) !== false
) {
$do_refresh = true;
if ($_GET['sec2'] == 'operation/agentes/pandora_networkmap') {
if ((!isset($_GET['tab'])) || ($_GET['tab'] != 'view')) {
$do_refresh = false;
}
}
}
if ($do_refresh) {
if ($do_refresh) {
$autorefresh_img = html_print_image(
'images/header_refresh_gray.png',
true,
[
'class' => 'bot',
'alt' => 'lightning',
'title' => __('Configure autorefresh'),
]
);
if ((isset($select[0]['time_autorefresh']) === true)
&& $select[0]['time_autorefresh'] !== 0
&& $config['refr'] === null
) {
$config['refr'] = $select[0]['time_autorefresh'];
$autorefresh_txt .= ' (<span id="refrcounter">';
$autorefresh_txt .= date(
'i:s',
$config['refr']
);
$autorefresh_txt .= '</span>)';
} else if ($_GET['refr']) {
$autorefresh_txt .= ' (<span id="refrcounter">';
$autorefresh_txt .= date('i:s', $config['refr']);
$autorefresh_txt .= '</span>)';
}
$ignored_params['refr'] = '';
$values = get_refresh_time_array();
$autorefresh_additional = '<span id="combo_refr" style="display: none;">';
$autorefresh_additional .= html_print_select(
$values,
'ref',
'',
'',
__('Select'),
'0',
true,
false,
false
);
$autorefresh_additional .= '</span>';
unset($values);
if ($home_page != '') {
$autorefresh_link_open_img = '<a class="white autorefresh" href="index.php?refr=">';
} else {
$autorefresh_link_open_img = '<a class="white autorefresh" href="'.ui_get_url_refresh($ignored_params).'">';
}
if ($_GET['refr']
|| ((isset($select[0]['time_autorefresh']) === true)
&& $select[0]['time_autorefresh'] !== 0)
) {
if ($home_page != '') {
$autorefresh_link_open_txt = '<a class="autorefresh autorefresh_txt" href="index.php?refr=">';
} else {
$autorefresh_link_open_txt = '<a class="autorefresh autorefresh_txt" href="'.ui_get_url_refresh($ignored_params).'">';
}
} else {
$autorefresh_link_open_txt = '<a>';
}
$autorefresh_link_close = '</a>';
$display_counter = 'display:block';
} else {
$autorefresh_img = html_print_image('images/header_refresh_disabled_gray.png', true, ['class' => 'bot autorefresh_disabled', 'alt' => 'lightning', 'title' => __('Disabled autorefresh')]);
$ignored_params['refr'] = false;
$autorefresh_link_open_img = '';
$autorefresh_link_open_txt = '';
$autorefresh_link_close = '';
$display_counter = 'display:none';
}
} else {
$autorefresh_img = html_print_image(
'images/header_refresh_gray.png',
'images/header_refresh_disabled_gray.png',
true,
[
'class' => 'bot',
'class' => 'bot autorefresh_disabled',
'alt' => 'lightning',
'title' => __('Configure autorefresh'),
'title' => __('Disabled autorefresh'),
]
);
if ((isset($select[0]['time_autorefresh']) === true)
&& $select[0]['time_autorefresh'] !== 0
&& $config['refr'] === null
) {
$config['refr'] = $select[0]['time_autorefresh'];
$autorefresh_txt .= ' (<span id="refrcounter">';
$autorefresh_txt .= date(
'i:s',
$config['refr']
);
$autorefresh_txt .= '</span>)';
} else if ($_GET['refr']) {
$autorefresh_txt .= ' (<span id="refrcounter">';
$autorefresh_txt .= date('i:s', $config['refr']);
$autorefresh_txt .= '</span>)';
}
$ignored_params['refr'] = '';
$values = get_refresh_time_array();
$autorefresh_additional = '<span id="combo_refr" style="display: none;">';
$autorefresh_additional .= html_print_select(
$values,
'ref',
'',
'',
__('Select'),
'0',
true,
false,
false
);
$autorefresh_additional .= '</span>';
unset($values);
if ($home_page != '') {
$autorefresh_link_open_img = '<a class="white autorefresh" href="index.php?refr=">';
} else {
$autorefresh_link_open_img = '<a class="white autorefresh" href="'.ui_get_url_refresh($ignored_params).'">';
}
if ($_GET['refr']
|| ((isset($select[0]['time_autorefresh']) === true)
&& $select[0]['time_autorefresh'] !== 0)
) {
if ($home_page != '') {
$autorefresh_link_open_txt = '<a class="autorefresh autorefresh_txt" href="index.php?refr=">';
} else {
$autorefresh_link_open_txt = '<a class="autorefresh autorefresh_txt" href="'.ui_get_url_refresh($ignored_params).'">';
}
} else {
$autorefresh_link_open_txt = '<a>';
}
$autorefresh_link_close = '</a>';
$display_counter = 'display:block';
} else {
$autorefresh_img = html_print_image('images/header_refresh_disabled_gray.png', true, ['class' => 'bot autorefresh_disabled', 'alt' => 'lightning', 'title' => __('Disabled autorefresh')]);
$ignored_params['refr'] = false;
$autorefresh_link_open_img = '';
@ -300,39 +324,21 @@ if ($config['menu_type'] == 'classic') {
$display_counter = 'display:none';
}
} else {
$autorefresh_img = html_print_image(
'images/header_refresh_disabled_gray.png',
true,
[
'class' => 'bot autorefresh_disabled',
'alt' => 'lightning',
'title' => __('Disabled autorefresh'),
]
);
$ignored_params['refr'] = false;
$header_autorefresh = '<div id="header_autorefresh">';
$header_autorefresh .= $autorefresh_link_open_img;
$header_autorefresh .= $autorefresh_img;
$header_autorefresh .= $autorefresh_link_close;
$header_autorefresh .= '</div>';
$autorefresh_link_open_img = '';
$autorefresh_link_open_txt = '';
$autorefresh_link_close = '';
$display_counter = 'display:none';
$header_autorefresh_counter = '<div id="header_autorefresh_counter" style="'.$display_counter.'">';
$header_autorefresh_counter .= $autorefresh_link_open_txt;
$header_autorefresh_counter .= $autorefresh_txt;
$header_autorefresh_counter .= $autorefresh_link_close;
$header_autorefresh_counter .= $autorefresh_additional;
$header_autorefresh_counter .= '</div>';
}
$header_autorefresh = '<div id="header_autorefresh">';
$header_autorefresh .= $autorefresh_link_open_img;
$header_autorefresh .= $autorefresh_img;
$header_autorefresh .= $autorefresh_link_close;
$header_autorefresh .= '</div>';
$header_autorefresh_counter = '<div id="header_autorefresh_counter" style="'.$display_counter.'">';
$header_autorefresh_counter .= $autorefresh_link_open_txt;
$header_autorefresh_counter .= $autorefresh_txt;
$header_autorefresh_counter .= $autorefresh_link_close;
$header_autorefresh_counter .= $autorefresh_additional;
$header_autorefresh_counter .= '</div>';
// Button for feedback pandora.
if (enterprise_installed()) {
$header_feedback = '<div id="feedback-icon-header">';

View File

@ -78,6 +78,23 @@
#opacity{
background:black;opacity:0.1;left:0px;top:0px;width:100%;height:100%;
background:black;
opacity:0.1;
left:0px;
top:0px;
width:100%;
height:100%;
position: fixed;
z-index: 1;
}
img.modalclose {
text-align: right;
float: right;
padding-right: 11px;
padding-top: 11px;
vertical-align: middle;
cursor:pointer;
}
</style>
@ -89,6 +106,7 @@ background:black;opacity:0.1;left:0px;top:0px;width:100%;height:100%;
<span class='modalheadertex'>
<?php echo __('Database error'); ?>
</span>
<img class='modalclose' src='<?php echo $config['homeurl']; ?>images/icono_cerrar.png'>
</div>
<div class='modalconten'>
@ -122,7 +140,7 @@ background:black;opacity:0.1;left:0px;top:0px;width:100%;height:100%;
echo '
<a href="'.ui_get_full_external_url($docs_url).'" target="_blank">
<div class="modalwikibutto cerrar">
<div class="modalwikibutto">
<span class="modalwikibuttontex">'.__('Documentation').'
</span>
</div>
@ -140,3 +158,12 @@ background:black;opacity:0.1;left:0px;top:0px;width:100%;height:100%;
</body>
</html>
<script>
$(".modalclose").click(function(){
$('div#alert_messages_na').toggle();
$('div#opacity').toggle();
});
</script>

View File

@ -259,6 +259,11 @@ if ($create_modules) {
$name_array = explode('::', $oid_array[0]);
$name = $ifname.'_'.$name_array[1];
// If you select "show all modules" and the module is not from the interface.
if (!array_key_exists($name_array[1], $interfaces[$id])) {
continue;
}
// Clean the name.
$name = str_replace('"', '', $name);

View File

@ -429,8 +429,7 @@ if ($create_modules) {
echo '<span id ="none_text" style="display: none;">'.__('None').'</span>';
echo "<form method='post' id='wmi_form'
action='index.php?sec=gagente&sec2=godmode/agentes/configurar_agente&
tab=agent_wizard&wizard_section=wmi_explorer&id_agente=$id_agent'>";
action='index.php?sec=gagente&sec2=godmode/agentes/configurar_agente&tab=agent_wizard&wizard_section=wmi_explorer&id_agente=$id_agent'>";
$table->width = '100%';
$table->cellpadding = 0;
@ -533,8 +532,7 @@ echo '</form>';
if ($wmiexplore && !$fail) {
echo '<br><span id ="none_text" style="display: none;">'.__('None').'</span>';
echo "<form method='post'
action='index.php?sec=gagente&sec2=godmode/agentes/configurar_agente
&tab=agent_wizard&wizard_section=wmi_explorer&id_agente=$id_agent'>";
action='index.php?sec=gagente&sec2=godmode/agentes/configurar_agente&tab=agent_wizard&wizard_section=wmi_explorer&id_agente=$id_agent'>";
echo '<span id="form_interfaces">';
html_print_input_hidden('create_modules', 1);

View File

@ -830,9 +830,16 @@ foreach ($modules as $module) {
$data[4] .= ui_print_help_tip(__('The policy modules of data type will only update their intervals when policy is applied.'), true);
}
$data[5] = ui_print_truncate_text($module['descripcion'], 'description', false);
$data[6] = ui_print_status_image($status, $title, true);
if ($module['id_modulo'] == MODULE_DATA && $module['id_policy_module'] != 0) {
$module_description = utf8_decode($module['descripcion']);
} else {
$module_description = $module['descripcion'];
}
$data[5] = ui_print_truncate_text($module_description, 'description', false);
$data[6] = ui_print_status_image($status, htmlspecialchars($title), true);
// MAX / MIN values
if ($module['id_tipo_modulo'] != 25) {

View File

@ -494,6 +494,25 @@ if ($id_agent_module) {
$module_macros = [];
}
$create_network_from_snmp_browser = get_parameter('create_network_from_snmp_browser', 0);
if ($create_network_from_snmp_browser) {
$moduletype = get_parameter('id_component_type', 2);
$id_module_type = get_parameter('type', 1);
$name = get_parameter('name', '');
$description = get_parameter('description');
$ip_target = get_parameter('target_ip');
$snmp_community = get_parameter('community');
$snmp_version = get_parameter('snmp_version');
$snmp3_auth_user = get_parameter('snmp3_auth_user');
$snmp3_auth_pass = get_parameter('snmp3_auth_pass');
$snmp3_auth_method = get_parameter('snmp3_auth_method');
$snmp3_privacy_method = get_parameter('snmp3_privacy_method');
$snmp3_privacy_pass = get_parameter('snmp3_privacy_pass');
$snmp3_security_level = get_parameter('snmp3_security_level');
$snmp_oid = get_parameter('snmp_oid');
}
}
$is_function_policies = enterprise_include_once(

View File

@ -182,19 +182,11 @@ $table_simple->cellclass = [];
$table_simple->colspan = [];
$table_simple->colspan[6][1] = 3;
$table_simple->rowspan = [];
if (strstr($page, 'policy_modules')) {
$table_simple->rowspan[3][2] = 3;
$table_simple->colspan[3][2] = 2;
} else {
$table_simple->rowspan[4][2] = 3;
$table_simple->colspan[4][2] = 2;
$table_simple->colspan[5][1] = 3;
}
$table_simple->rowspan[2][2] = 3;
$table_simple->colspan[2][2] = 2;
$table_simple->colspan[3][1] = 3;
$table_simple->data[0][0] = __('Name');
$table_simple->data[0][1] = html_print_input_text_extended(
@ -264,40 +256,9 @@ if ((isset($id_agent_module) && $id_agent_module) || $id_policy_module != 0) {
}
$in_policy = strstr($page, 'policy_modules');
if (!$in_policy) {
// Cannot select the current module to be itself parent.
$module_parent_filter = ($id_agent_module) ? ['tagente_modulo.id_agente_modulo' => "<>$id_agent_module"] : '';
$table_simple->data[1][0] = __('Module parent');
$modules_can_be_parent = agents_get_modules(
$id_agente,
false,
$module_parent_filter
);
// If the user cannot have access to parent module, only print the name.
if ($parent_module_id != 0
&& !in_array($parent_module_id, array_keys($modules_can_be_parent))
) {
$table_simple->data[1][1] = db_get_value(
'nombre',
'tagente_modulo',
'id_agente_modulo',
$parent_module_id
);
} else {
$table_simple->data[1][1] = html_print_select(
$modules_can_be_parent,
'parent_module_id',
$parent_module_id,
'',
__('Not assigned'),
'0',
true
);
}
}
$table_simple->data[2][0] = __('Type').' '.ui_print_help_icon($help_type, true, '', 'images/help_green.png', '', 'module_type_help');
$table_simple->data[2][0] .= html_print_input_hidden('id_module_type_hidden', $id_module_type, true);
$table_simple->data[1][0] = __('Type').' '.ui_print_help_icon($help_type, true, '', 'images/help_green.png', '', 'module_type_help');
$table_simple->data[1][0] .= html_print_input_hidden('id_module_type_hidden', $id_module_type, true);
if (!$edit) {
$sql = sprintf(
@ -315,8 +276,8 @@ if (!$edit) {
$type_names_hash[$tn['id_tipo']] = $tn['nombre'];
}
$table_simple->data[2][1] = '<em>'.modules_get_moduletype_description($id_module_type).' ('.$type_names_hash[$id_module_type].')</em>';
$table_simple->data[2][1] .= html_print_input_hidden(
$table_simple->data[1][1] = '<em>'.modules_get_moduletype_description($id_module_type).' ('.$type_names_hash[$id_module_type].')</em>';
$table_simple->data[1][1] .= html_print_input_hidden(
'type_names',
base64_encode(io_json_mb_encode($type_names_hash)),
true
@ -358,7 +319,7 @@ if (!$edit) {
}
}
$table_simple->data[2][1] = html_print_select(
$table_simple->data[1][1] = html_print_select(
$type_description_hash,
'id_module_type',
$idModuleType,
@ -376,7 +337,7 @@ if (!$edit) {
);
// Store the relation between id and name of the types on a hidden field.
$table_simple->data[2][1] .= html_print_input_hidden(
$table_simple->data[1][1] .= html_print_input_hidden(
'type_names',
base64_encode(io_json_mb_encode($type_names_hash)),
true
@ -409,74 +370,22 @@ if ($edit_module) {
$help_header = 'webserver_module_tab';
}
$table_simple->data[2][0] = __('Type').' ';
$table_simple->data[2][0] .= ui_print_help_icon($help_header, true);
$table_simple->data[1][0] = __('Type').' ';
$table_simple->data[1][0] .= ui_print_help_icon($help_header, true);
}
if ($disabledBecauseInPolicy) {
$table_simple->data[2][3] .= html_print_input_hidden(
$table_simple->data[1][3] .= html_print_input_hidden(
'id_module_group',
$id_module_group,
true
);
}
$table_simple->data[3][0] = __('Dynamic Threshold Interval');
$table_simple->data[3][1] = html_print_extended_select_for_time(
'dynamic_interval',
$dynamic_interval,
'',
'None',
'0',
10,
true,
'width:150px',
false,
$classdisabledBecauseInPolicy,
$disabledBecauseInPolicy
);
$table_simple->data[3][1] .= '<a onclick=advanced_option_dynamic()>'.html_print_image('images/cog.png', true, ['title' => __('Advanced options Dynamic Threshold')]).'</a>';
if ($in_policy) {
$table_simple->cellclass[2][2] = 'hide_dinamic';
$table_simple->cellclass[2][3] = 'hide_dinamic';
} else {
$table_simple->cellclass[3][2] = 'hide_dinamic';
$table_simple->cellclass[3][3] = 'hide_dinamic';
}
$table_simple->data[3][2] = '<span><em>'.__('Dynamic Threshold Min. ').'</em>';
$table_simple->data[3][2] .= html_print_input_text(
'dynamic_min',
$dynamic_min,
'',
10,
255,
true,
$disabledBecauseInPolicy,
false,
'',
$classdisabledBecauseInPolicy
);
$table_simple->data[3][2] .= '<br /><em>'.__('Dynamic Threshold Max. ').'</em>';
$table_simple->data[3][2] .= html_print_input_text(
'dynamic_max',
$dynamic_max,
'',
10,
255,
true,
$disabledBecauseInPolicy,
false,
'',
$classdisabledBecauseInPolicy
);
$table_simple->data[3][3] = '<span><em>'.__('Dynamic Threshold Two Tailed: ').'</em>';
$table_simple->data[3][3] .= html_print_checkbox('dynamic_two_tailed', 1, $dynamic_two_tailed, true, $disabledBecauseInPolicy);
$table_simple->data[4][0] = __('Warning status');
$table_simple->data[2][0] = __('Warning status');
if (!modules_is_string_type($id_module_type) || $edit) {
$table_simple->data[4][1] .= '<span id="minmax_warning"><em>'.__('Min. ').'</em>';
$table_simple->data[4][1] .= html_print_input_text(
$table_simple->data[2][1] .= '<span id="minmax_warning"><em>'.__('Min. ').'</em>';
$table_simple->data[2][1] .= html_print_input_text(
'min_warning',
$min_warning,
'',
@ -488,8 +397,8 @@ if (!modules_is_string_type($id_module_type) || $edit) {
'',
$classdisabledBecauseInPolicy
);
$table_simple->data[4][1] .= '<br /><em>'.__('Max.').'</em>';
$table_simple->data[4][1] .= html_print_input_text(
$table_simple->data[2][1] .= '<br /><em>'.__('Max.').'</em>';
$table_simple->data[2][1] .= html_print_input_text(
'max_warning',
$max_warning,
'',
@ -504,8 +413,8 @@ if (!modules_is_string_type($id_module_type) || $edit) {
}
if (modules_is_string_type($id_module_type) || $edit) {
$table_simple->data[4][1] .= '<span id="string_warning"><em>'.__('Str.').'</em>';
$table_simple->data[4][1] .= html_print_input_text(
$table_simple->data[2][1] .= '<span id="string_warning"><em>'.__('Str.').'</em>';
$table_simple->data[2][1] .= html_print_input_text(
'str_warning',
str_replace('"', '', $str_warning),
'',
@ -519,17 +428,17 @@ if (modules_is_string_type($id_module_type) || $edit) {
).'</span>';
}
$table_simple->data[4][1] .= '<br /><em>'.__('Inverse interval').'</em>';
$table_simple->data[4][1] .= html_print_checkbox('warning_inverse', 1, $warning_inverse, true, $disabledBecauseInPolicy);
$table_simple->data[2][1] .= '<br /><em>'.__('Inverse interval').'</em>';
$table_simple->data[2][1] .= html_print_checkbox('warning_inverse', 1, $warning_inverse, true, $disabledBecauseInPolicy);
if (!modules_is_string_type($id_module_type) || $edit) {
$table_simple->data[4][2] = '<svg id="svg_dinamic" width="500" height="300"> </svg>';
$table_simple->data[2][2] = '<svg id="svg_dinamic" width="500" height="300"> </svg>';
}
$table_simple->data[5][0] = __('Critical status');
$table_simple->data[3][0] = __('Critical status');
if (!modules_is_string_type($id_module_type) || $edit) {
$table_simple->data[5][1] .= '<span id="minmax_critical"><em>'.__('Min. ').'</em>';
$table_simple->data[5][1] .= html_print_input_text(
$table_simple->data[3][1] .= '<span id="minmax_critical"><em>'.__('Min. ').'</em>';
$table_simple->data[3][1] .= html_print_input_text(
'min_critical',
$min_critical,
'',
@ -541,8 +450,8 @@ if (!modules_is_string_type($id_module_type) || $edit) {
'',
$classdisabledBecauseInPolicy
);
$table_simple->data[5][1] .= '<br /><em>'.__('Max.').'</em>';
$table_simple->data[5][1] .= html_print_input_text(
$table_simple->data[3][1] .= '<br /><em>'.__('Max.').'</em>';
$table_simple->data[3][1] .= html_print_input_text(
'max_critical',
$max_critical,
'',
@ -557,8 +466,8 @@ if (!modules_is_string_type($id_module_type) || $edit) {
}
if (modules_is_string_type($id_module_type) || $edit) {
$table_simple->data[5][1] .= '<span id="string_critical"><em>'.__('Str.').'</em>';
$table_simple->data[5][1] .= html_print_input_text(
$table_simple->data[3][1] .= '<span id="string_critical"><em>'.__('Str.').'</em>';
$table_simple->data[3][1] .= html_print_input_text(
'str_critical',
str_replace('"', '', $str_critical),
'',
@ -572,109 +481,24 @@ if (modules_is_string_type($id_module_type) || $edit) {
).'</span>';
}
$table_simple->data[5][1] .= '<br /><em>'.__('Inverse interval').'</em>';
$table_simple->data[5][1] .= html_print_checkbox('critical_inverse', 1, $critical_inverse, true, $disabledBecauseInPolicy);
$table_simple->data[3][1] .= '<br /><em>'.__('Inverse interval').'</em>';
$table_simple->data[3][1] .= html_print_checkbox('critical_inverse', 1, $critical_inverse, true, $disabledBecauseInPolicy);
// FF stands for Flip-flop.
$table_simple->data[6][0] = __('FF threshold').' ';
$table_simple->data[6][1] .= __('Keep counters');
$table_simple->data[6][1] .= html_print_checkbox(
'ff_type',
1,
$ff_type,
true,
$disabledBecauseInPolicy
).'<br />';
$table_simple->data[6][1] .= html_print_radio_button(
'each_ff',
0,
'',
$each_ff,
true,
$disabledBecauseInPolicy
);
$table_simple->data[6][1] .= ' '.__('All state changing').' : ';
$table_simple->data[6][1] .= html_print_input_text(
'ff_event',
$ff_event,
'',
5,
15,
true,
$disabledBecauseInPolicy,
false,
'',
$classdisabledBecauseInPolicy
).'<br />';
$table_simple->data[6][1] .= html_print_radio_button(
'each_ff',
1,
'',
$each_ff,
true,
$disabledBecauseInPolicy
);
$table_simple->data[6][1] .= ' '.__('Each state changing').' : ';
$table_simple->data[6][1] .= __('To normal');
$table_simple->data[6][1] .= html_print_input_text(
'ff_event_normal',
$ff_event_normal,
'',
5,
15,
true,
$disabledBecauseInPolicy,
false,
'',
$classdisabledBecauseInPolicy
).' ';
$table_simple->data[6][1] .= __('To warning');
$table_simple->data[6][1] .= html_print_input_text(
'ff_event_warning',
$ff_event_warning,
'',
5,
15,
true,
$disabledBecauseInPolicy,
false,
'',
$classdisabledBecauseInPolicy
).' ';
$table_simple->data[6][1] .= __('To critical');
$table_simple->data[6][1] .= html_print_input_text(
'ff_event_critical',
$ff_event_critical,
'',
5,
15,
true,
$disabledBecauseInPolicy,
false,
'',
$classdisabledBecauseInPolicy
);
$table_simple->data[7][0] = __('Historical data');
$table_simple->data[4][0] = __('Historical data');
if ($disabledBecauseInPolicy) {
// If is disabled, we send a hidden in his place and print a false
// checkbox because HTML dont send disabled fields
// and could be disabled by error.
$table_simple->data[7][1] = html_print_checkbox(
$table_simple->data[4][1] = html_print_checkbox(
'history_data_fake',
1,
$history_data,
true,
$disabledBecauseInPolicy
);
$table_simple->data[7][1] .= '<input type="hidden" name="history_data" value="'.(int) $history_data.'">';
$table_simple->data[4][1] .= '<input type="hidden" name="history_data" value="'.(int) $history_data.'">';
} else {
$table_simple->data[7][1] = html_print_checkbox(
$table_simple->data[4][1] = html_print_checkbox(
'history_data',
1,
$history_data,
@ -693,21 +517,11 @@ $table_advanced->style = [];
$table_advanced->style[0] = $table_advanced->style[3] = $table_advanced->style[5] = 'font-weight: bold;';
$table_advanced->colspan = [];
$table_advanced->data[0][0] = __('Description');
$table_advanced->colspan[0][1] = 6;
$table_advanced->data[0][1] = html_print_textarea(
'description',
2,
65,
$description,
$disabledTextBecauseInPolicy,
true,
$largeClassDisabledBecauseInPolicy
);
$table_advanced->colspan[17][1] = 3;
$table_advanced->data[1][0] = __('Custom ID');
$table_advanced->colspan[1][1] = 2;
$table_advanced->data[1][1] = html_print_input_text(
$table_advanced->data[0][0] = __('Custom ID');
$table_advanced->colspan[0][1] = 2;
$table_advanced->data[0][1] = html_print_input_text(
'custom_id',
$custom_id,
'',
@ -720,11 +534,11 @@ $table_advanced->data[1][1] = html_print_input_text(
$classdisabledBecauseInPolicy
);
$table_advanced->data[1][3] = __('Unit');
$table_advanced->data[0][3] = __('Unit');
// $table_advanced->data[1][4] = html_print_input_text ('unit', $unit, '', 20, 65, true,
// $disabledBecauseInPolicy, false, '', $classdisabledBecauseInPolicy);
// $table_advanced->colspan[1][4] = 3;
$table_advanced->data[1][4] = html_print_extended_select_for_unit(
$table_advanced->data[0][4] = html_print_extended_select_for_unit(
'unit',
$unit,
'',
@ -735,7 +549,7 @@ $table_advanced->data[1][4] = html_print_extended_select_for_unit(
false,
false
);
$table_advanced->colspan[1][4] = 3;
$table_advanced->colspan[0][4] = 3;
$module_id_policy_module = 0;
if (isset($module['id_policy_module'])) {
@ -745,38 +559,38 @@ if (isset($module['id_policy_module'])) {
// In the data modules, the interval is not in seconds. It is a factor
// to be multiplied for the agent interval
if ($moduletype == MODULE_DATA) {
$table_advanced->data[2][0] = __('Interval');
$table_advanced->colspan[2][1] = 2;
$table_advanced->data[1][0] = __('Interval');
$table_advanced->colspan[1][1] = 2;
$interval_factor = 1;
if (isset($id_agente)) {
$agent_interval = agents_get_interval($id_agente);
$interval_factor = ($interval / $agent_interval);
$table_advanced->data[2][1] = human_time_description_raw($interval).' ('.sprintf(__('Agent interval x %s'), $interval_factor).') ';
$table_advanced->data[1][1] = human_time_description_raw($interval).' ('.sprintf(__('Agent interval x %s'), $interval_factor).') ';
} else {
$table_advanced->data[2][1] = sprintf(__('Agent interval x %s'), $interval_factor);
$table_advanced->data[1][1] = sprintf(__('Agent interval x %s'), $interval_factor);
}
if ($__code_from == 'policies') {
// If is the policy form, module_interval will store the factor (not the seconds).
// So server will transform it to interval in seconds
$table_advanced->data[2][1] = sprintf(__('Default').': 1', $interval_factor);
$table_advanced->data[2][1] .= html_print_input_hidden('module_interval', $interval_factor, true);
$table_advanced->data[1][1] = sprintf(__('Default').': 1', $interval_factor);
$table_advanced->data[1][1] .= html_print_input_hidden('module_interval', $interval_factor, true);
} else if ($module_id_policy_module != 0) {
$table_advanced->data[2][1] .= ui_print_help_tip(__('The policy modules of data type will only update their intervals when policy is applied.'), true);
$table_advanced->data[1][1] .= ui_print_help_tip(__('The policy modules of data type will only update their intervals when policy is applied.'), true);
}
// If it is a non policy form, the module_interval will not provided and will
// be taken the agent interval (this code is at configurar_agente.php)
} else {
$table_advanced->data[2][0] = __('Interval');
$table_advanced->colspan[2][1] = 2;
$table_advanced->data[2][1] = html_print_extended_select_for_time('module_interval', $interval, '', '', '0', false, true, false, false, $classdisabledBecauseInPolicy, $disabledBecauseInPolicy);
$table_advanced->data[1][0] = __('Interval');
$table_advanced->colspan[1][1] = 2;
$table_advanced->data[1][1] = html_print_extended_select_for_time('module_interval', $interval, '', '', '0', false, true, false, false, $classdisabledBecauseInPolicy, $disabledBecauseInPolicy);
}
$table_advanced->data[2][1] .= html_print_input_hidden('moduletype', $moduletype, true);
$table_advanced->data[1][1] .= html_print_input_hidden('moduletype', $moduletype, true);
$table_advanced->data[2][3] = __('Post process');
$table_advanced->data[2][4] = html_print_extended_select_for_post_process(
$table_advanced->data[1][3] = __('Post process');
$table_advanced->data[1][4] = html_print_extended_select_for_post_process(
'post_process',
$post_process,
'',
@ -788,17 +602,17 @@ $table_advanced->data[2][4] = html_print_extended_select_for_post_process(
false,
$disabledBecauseInPolicy
);
$table_advanced->colspan[1][4] = 3;
$table_advanced->data[2][0] = __('Min. Value');
$table_advanced->colspan[2][1] = 2;
$table_advanced->data[2][1] = html_print_input_text('min', $min, '', 5, 15, true, $disabledBecauseInPolicy, false, '', $classdisabledBecauseInPolicy).' '.ui_print_help_tip(__('Any value below this number is discarted.'), true);
$table_advanced->data[2][3] = __('Max. Value');
$table_advanced->data[2][4] = html_print_input_text('max', $max, '', 5, 15, true, $disabledBecauseInPolicy, false, '', $classdisabledBecauseInPolicy).' '.ui_print_help_tip(__('Any value over this number is discarted.'), true);
$table_advanced->colspan[2][4] = 3;
$table_advanced->data[3][0] = __('Min. Value');
$table_advanced->colspan[3][1] = 2;
$table_advanced->data[3][1] = html_print_input_text('min', $min, '', 5, 15, true, $disabledBecauseInPolicy, false, '', $classdisabledBecauseInPolicy).' '.ui_print_help_tip(__('Any value below this number is discarted.'), true);
$table_advanced->data[3][3] = __('Max. Value');
$table_advanced->data[3][4] = html_print_input_text('max', $max, '', 5, 15, true, $disabledBecauseInPolicy, false, '', $classdisabledBecauseInPolicy).' '.ui_print_help_tip(__('Any value over this number is discarted.'), true);
$table_advanced->colspan[3][4] = 3;
$table_advanced->data[4][0] = __('Export target');
$table_advanced->data[3][0] = __('Export target');
// Default text message for export target select and disabled option
$none_text = __('None');
$disabled_export = false;
@ -808,7 +622,7 @@ if ($__code_from == 'policies') {
$disabled_export = true;
}
$table_advanced->data[4][1] = html_print_select_from_sql(
$table_advanced->data[3][1] = html_print_select_from_sql(
'SELECT id, name FROM tserver_export ORDER BY name',
'id_export',
$id_export,
@ -820,7 +634,7 @@ $table_advanced->data[4][1] = html_print_select_from_sql(
false,
$disabled_export
).ui_print_help_tip(__('In case you use an Export server you can link this module and export data to one these.'), true);
$table_advanced->colspan[4][1] = 2;
$table_advanced->colspan[3][1] = 2;
// Code comes from module_editor
if ($__code_from == 'modules') {
@ -831,18 +645,18 @@ if ($__code_from == 'modules') {
$throw_unknown_events_check = policy_module_is_disable_type_event($__id_pol_mod, EVENTS_GOING_UNKNOWN);
}
$table_advanced->data[4][3] = __('Discard unknown events');
$table_advanced->data[4][4] = html_print_checkbox(
$table_advanced->data[3][3] = __('Discard unknown events');
$table_advanced->data[3][4] = html_print_checkbox(
'throw_unknown_events',
1,
$throw_unknown_events_check,
true,
$disabledBecauseInPolicy
);
$table_advanced->colspan[4][4] = 3;
$table_advanced->colspan[3][4] = 3;
$table_advanced->data[5][0] = __('FF interval');
$table_advanced->data[5][1] = html_print_input_text(
$table_advanced->data[4][0] = __('FF interval');
$table_advanced->data[4][1] = html_print_input_text(
'module_ff_interval',
$ff_interval,
'',
@ -854,14 +668,14 @@ $table_advanced->data[5][1] = html_print_input_text(
'',
$classdisabledBecauseInPolicy
).ui_print_help_tip(__('Module execution flip flop time interval (in secs).'), true);
$table_advanced->colspan[5][1] = 2;
$table_advanced->colspan[4][1] = 2;
$table_advanced->data[5][3] = __('FF timeout');
$table_advanced->data[4][3] = __('FF timeout');
$module_type_name = modules_get_type_name($id_module_type);
$table_advanced->data[5][4] = '';
$table_advanced->data[4][4] = '';
if (preg_match('/async/', $module_type_name) || $edit) {
$table_advanced->data[5][4] .= '<span id="ff_timeout">'.html_print_input_text(
$table_advanced->data[4][4] .= '<span id="ff_timeout">'.html_print_input_text(
'ff_timeout',
$ff_timeout,
'',
@ -873,16 +687,16 @@ if (preg_match('/async/', $module_type_name) || $edit) {
}
if (!preg_match('/async/', $module_type_name) || $edit) {
$table_advanced->data[5][4] .= '<span id="ff_timeout_disable">'.__('Disabled').ui_print_help_tip(__('This value can be set only in the async modules.'), true).'</span>';
$table_advanced->data[4][4] .= '<span id="ff_timeout_disable">'.__('Disabled').ui_print_help_tip(__('This value can be set only in the async modules.'), true).'</span>';
}
$table_advanced->colspan[5][4] = 3;
$table_advanced->colspan[4][4] = 3;
/*
Tags */
// This var comes from module_manager_editor.php or policy_modules.php
global $__code_from;
$table_advanced->data[6][0] = __('Tags available');
$table_advanced->data[5][0] = __('Tags available');
// Code comes from module_editor
if ($__code_from == 'modules') {
$__table_modules = 'ttag_module';
@ -902,7 +716,7 @@ if ($__code_from == 'modules') {
}
if (!tags_has_user_acl_tags($config['id_user'])) {
$table_advanced->data[6][1] = html_print_select_from_sql(
$table_advanced->data[5][1] = html_print_select_from_sql(
"SELECT id_tag, name
FROM ttag
WHERE id_tag NOT IN (
@ -927,7 +741,7 @@ if (!tags_has_user_acl_tags($config['id_user'])) {
if (!empty($user_tags)) {
$id_user_tags = array_keys($user_tags);
$table_advanced->data[6][1] = html_print_select_from_sql(
$table_advanced->data[5][1] = html_print_select_from_sql(
'SELECT id_tag, name
FROM ttag
WHERE id_tag IN ('.implode(',', $id_user_tags).") AND
@ -949,7 +763,7 @@ if (!tags_has_user_acl_tags($config['id_user'])) {
'5'
);
} else {
$table_advanced->data[6][1] = html_print_select_from_sql(
$table_advanced->data[5][1] = html_print_select_from_sql(
"SELECT id_tag, name
FROM ttag
WHERE id_tag NOT IN (
@ -972,12 +786,12 @@ if (!tags_has_user_acl_tags($config['id_user'])) {
}
}
$table_advanced->data[6][2] = html_print_image('images/darrowright.png', true, ['id' => 'right', 'title' => __('Add tags to module')]);
$table_advanced->data[5][2] = html_print_image('images/darrowright.png', true, ['id' => 'right', 'title' => __('Add tags to module')]);
// html_print_input_image ('add', 'images/darrowright.png', 1, '', true, array ('title' => __('Add tags to module')));
$table_advanced->data[6][2] .= '<br><br><br><br>'.html_print_image('images/darrowleft.png', true, ['id' => 'left', 'title' => __('Delete tags to module')]);
$table_advanced->data[5][2] .= '<br><br><br><br>'.html_print_image('images/darrowleft.png', true, ['id' => 'left', 'title' => __('Delete tags to module')]);
// html_print_input_image ('add', 'images/darrowleft.png', 1, '', true, array ('title' => __('Delete tags to module')));
$table_advanced->data[6][3] = '<b>'.__('Tags selected').'</b>';
$table_advanced->data[6][4] = html_print_select_from_sql(
$table_advanced->data[5][3] = '<b>'.__('Tags selected').'</b>';
$table_advanced->data[5][4] = html_print_select_from_sql(
"SELECT a.id_tag, name
FROM ttag a, $__table_modules b
WHERE a.id_tag = b.id_tag AND $__id_where = $__id
@ -997,8 +811,8 @@ $table_advanced->data[6][4] = html_print_select_from_sql(
);
if ($__code_from == 'modules') {
$table_advanced->data[6][5] = '<b>'.__('Tags from policy').'</b>';
$table_advanced->data[6][6] = html_print_select_from_sql(
$table_advanced->data[5][5] = '<b>'.__('Tags from policy').'</b>';
$table_advanced->data[5][6] = html_print_select_from_sql(
"SELECT a.id_tag, name
FROM ttag a, $__table_modules b
WHERE a.id_tag = b.id_tag AND $__id_where = $__id
@ -1018,9 +832,9 @@ if ($__code_from == 'modules') {
);
}
$table_advanced->data[7][0] = __('Quiet');
$table_advanced->data[7][0] .= ui_print_help_tip(__('The module still stores data but the alerts and events will be stop'), true);
$table_advanced->data[7][1] = html_print_checkbox('quiet_module', 1, $quiet_module, true, $disabledBecauseInPolicy);
$table_advanced->data[6][0] = __('Quiet');
$table_advanced->data[6][0] .= ui_print_help_tip(__('The module still stores data but the alerts and events will be stop'), true);
$table_advanced->data[6][1] = html_print_checkbox('quiet_module', 1, $quiet_module, true, $disabledBecauseInPolicy);
$cps_array[-1] = __('Disabled');
if ($cps_module > 0) {
@ -1037,22 +851,37 @@ if ($cps_module > 0) {
$cps_array[$cps_inc] = __('Enabled');
}
$table_advanced->data[7][2] = __('Cascade Protection Services');
$table_advanced->data[7][2] .= ui_print_help_tip(__('Disable the alerts and events of the elements that belong to this service'), true);
$table_advanced->colspan[7][3] = 5;
$table_advanced->data[7][3] = html_print_select($cps_array, 'cps_module', $cps_module, '', '', 0, true, false, true, '', $disabledBecauseInPolicy);
$table_advanced->data[6][2] = '';
$table_advanced->data[6][3] = __('Cascade Protection Services');
$table_advanced->data[6][3] .= ui_print_help_tip(__('Disable the alerts and events of the elements that belong to this service'), true);
$table_advanced->colspan[6][4] = 3;
$table_advanced->data[6][4] = html_print_select($cps_array, 'cps_module', $cps_module, '', '', 0, true, false, true, '', $disabledBecauseInPolicy);
$textarea_custom_style = ' style="min-height: 0px;"';
$table_advanced->data[7][0] = __('Description');
$table_advanced->colspan[7][1] = 6;
$table_advanced->data[7][1] = html_print_textarea(
'description',
3,
65,
$description,
$disabledTextBecauseInPolicy.$textarea_custom_style,
true,
$largeClassDisabledBecauseInPolicy
);
$table_advanced->data[8][0] = __('Critical instructions').ui_print_help_tip(__('Instructions when the status is critical'), true);
$table_advanced->data[8][1] = html_print_textarea('critical_instructions', 2, 65, $critical_instructions, $disabledTextBecauseInPolicy, true, $largeClassDisabledBecauseInPolicy);
$table_advanced->data[8][1] = html_print_textarea('critical_instructions', 3, 65, $critical_instructions, $disabledTextBecauseInPolicy.$textarea_custom_style, true, $largeClassDisabledBecauseInPolicy);
$table_advanced->colspan[8][1] = 6;
$table_advanced->data[9][0] = __('Warning instructions').ui_print_help_tip(__('Instructions when the status is warning'), true);
$table_advanced->data[9][1] = html_print_textarea('warning_instructions', 2, 65, $warning_instructions, $disabledTextBecauseInPolicy, true, $largeClassDisabledBecauseInPolicy);
$table_advanced->data[9][1] = html_print_textarea('warning_instructions', 3, 65, $warning_instructions, $disabledTextBecauseInPolicy.$textarea_custom_style, true, $largeClassDisabledBecauseInPolicy);
$table_advanced->colspan[9][1] = 6;
$table_advanced->data[10][0] = __('Unknown instructions').ui_print_help_tip(__('Instructions when the status is unknown'), true);
$table_advanced->data[10][1] = html_print_textarea('unknown_instructions', 2, 65, $unknown_instructions, $disabledTextBecauseInPolicy, true, $largeClassDisabledBecauseInPolicy);
$table_advanced->data[10][1] = html_print_textarea('unknown_instructions', 3, 65, $unknown_instructions, $disabledTextBecauseInPolicy.$textarea_custom_style, true, $largeClassDisabledBecauseInPolicy);
$table_advanced->colspan[10][1] = 6;
if (isset($id_agente) && $moduletype == MODULE_DATA) {
@ -1112,6 +941,175 @@ if (check_acl($config['id_user'], 0, 'PM')) {
$table_advanced->data[13][4] .= html_print_input_hidden('id_category', $id_category, true);
}
if (!$in_policy) {
// Cannot select the current module to be itself parent.
$module_parent_filter = ($id_agent_module) ? ['tagente_modulo.id_agente_modulo' => "<>$id_agent_module"] : '';
$table_advanced->data[15][0] = __('Module parent');
$modules_can_be_parent = agents_get_modules(
$id_agente,
false,
$module_parent_filter
);
// If the user cannot have access to parent module, only print the name.
if ($parent_module_id != 0
&& !in_array($parent_module_id, array_keys($modules_can_be_parent))
) {
$table_advanced->data[15][1] = db_get_value(
'nombre',
'tagente_modulo',
'id_agente_modulo',
$parent_module_id
);
} else {
$table_advanced->data[15][1] = html_print_select(
$modules_can_be_parent,
'parent_module_id',
$parent_module_id,
'',
__('Not assigned'),
'0',
true
);
}
}
$table_advanced->data[16][0] = __('Dynamic Threshold Interval');
$table_advanced->data[16][1] = html_print_extended_select_for_time(
'dynamic_interval',
$dynamic_interval,
'',
'None',
'0',
10,
true,
'width:150px',
false,
$classdisabledBecauseInPolicy,
$disabledBecauseInPolicy
);
$table_advanced->data[16][1] .= '<a onclick=advanced_option_dynamic()>'.html_print_image('images/cog.png', true, ['title' => __('Advanced options Dynamic Threshold')]).'</a>';
$table_advanced->cellclass[16][2] = 'hide_dinamic';
$table_advanced->cellclass[16][3] = 'hide_dinamic';
$table_advanced->data[16][2] = '<span><em>'.__('Dynamic Threshold Min. ').'</em>';
$table_advanced->data[16][2] .= html_print_input_text(
'dynamic_min',
$dynamic_min,
'',
10,
255,
true,
$disabledBecauseInPolicy,
false,
'',
$classdisabledBecauseInPolicy
);
$table_advanced->data[16][2] .= '<br /><em>'.__('Dynamic Threshold Max. ').'</em>';
$table_advanced->data[16][2] .= html_print_input_text(
'dynamic_max',
$dynamic_max,
'',
10,
255,
true,
$disabledBecauseInPolicy,
false,
'',
$classdisabledBecauseInPolicy
);
$table_advanced->data[16][3] = '<span><em>'.__('Dynamic Threshold Two Tailed: ').'</em>';
$table_advanced->data[16][3] .= html_print_checkbox('dynamic_two_tailed', 1, $dynamic_two_tailed, true, $disabledBecauseInPolicy);
// FF stands for Flip-flop.
$table_advanced->data[17][0] = __('FF threshold').' ';
$table_advanced->data[17][1] .= __('Keep counters');
$table_advanced->data[17][1] .= html_print_checkbox(
'ff_type',
1,
$ff_type,
true,
$disabledBecauseInPolicy
).'<br />';
$table_advanced->data[17][1] .= html_print_radio_button(
'each_ff',
0,
'',
$each_ff,
true,
$disabledBecauseInPolicy
);
$table_advanced->data[17][1] .= ' '.__('All state changing').' : ';
$table_advanced->data[17][1] .= html_print_input_text(
'ff_event',
$ff_event,
'',
5,
15,
true,
$disabledBecauseInPolicy,
false,
'',
$classdisabledBecauseInPolicy
).'<br />';
$table_advanced->data[17][1] .= html_print_radio_button(
'each_ff',
1,
'',
$each_ff,
true,
$disabledBecauseInPolicy
);
$table_advanced->data[17][1] .= ' '.__('Each state changing').' : ';
$table_advanced->data[17][1] .= __('To normal');
$table_advanced->data[17][1] .= html_print_input_text(
'ff_event_normal',
$ff_event_normal,
'',
5,
15,
true,
$disabledBecauseInPolicy,
false,
'',
$classdisabledBecauseInPolicy
).' ';
$table_advanced->data[17][1] .= __('To warning');
$table_advanced->data[17][1] .= html_print_input_text(
'ff_event_warning',
$ff_event_warning,
'',
5,
15,
true,
$disabledBecauseInPolicy,
false,
'',
$classdisabledBecauseInPolicy
).' ';
$table_advanced->data[17][1] .= __('To critical');
$table_advanced->data[17][1] .= html_print_input_text(
'ff_event_critical',
$ff_event_critical,
'',
5,
15,
true,
$disabledBecauseInPolicy,
false,
'',
$classdisabledBecauseInPolicy
);
// Advanced form part
$table_macros = new stdClass();
$table_macros->id = 'module_macros';

View File

@ -183,7 +183,7 @@ if ($id_module_type >= 15 && $id_module_type <= 18) {
$data[3] = html_print_select(
$snmp_versions,
'snmp_version',
$tcp_send,
$snmp_version,
'',
'',
'',
@ -496,7 +496,7 @@ if ($id_module_type !== 34
$table_simple->rowstyle['row-cmd-row-2'] = 'display: none;';
}
snmp_browser_print_container(false, '100%', '60%', 'none');
snmp_browser_print_container(false, '100%', '60%', 'display:none');
?>
<script type="text/javascript">

View File

@ -313,6 +313,8 @@ if (check_acl($config['id_user'], 0, 'PM')) {
$sub2['godmode/setup/setup&amp;section=integria']['text'] = __('Integria IMS');
$sub2['godmode/setup/setup&amp;section=integria']['refr'] = 0;
enterprise_hook('module_library_submenu');
$sub2['godmode/setup/setup&amp;section=notifications']['text'] = __('Notifications');
$sub2['godmode/setup/setup&amp;section=notifications']['refr'] = 0;
@ -320,7 +322,7 @@ if (check_acl($config['id_user'], 0, 'PM')) {
$sub2['godmode/setup/setup&amp;section=websocket_engine']['refr'] = 0;
if ($config['activate_gis']) {
$sub2['godmode/setup/gis']['text'] = __('Map conections GIS');
$sub2['godmode/setup/setup&amp;section=gis']['text'] = __('Map conections GIS');
}
$sub['general']['sub2'] = $sub2;
@ -498,6 +500,21 @@ if (check_acl($config['id_user'], 0, 'PM') && $config['enable_update_manager'])
$menu_godmode['messages']['sub'] = $sub;
}
// Module library.
if (check_acl($config['id_user'], 0, 'AR')) {
$menu_godmode['gmodule_library']['text'] = __('Module library');
$menu_godmode['gmodule_library']['sec2'] = 'godmode/module_library/module_library_view';
$menu_godmode['gmodule_library']['id'] = 'god-module_library';
$sub = [];
$sub['godmode/module_library/module_library_view']['text'] = __('View');
$sub['godmode/module_library/module_library_view']['id'] = 'View';
$sub['godmode/module_library/module_library_view&tab=categories']['text'] = __('Categories');
$sub['godmode/module_library/module_library_view&tab=categories']['id'] = 'categories';
$menu_godmode['gmodule_library']['sub'] = $sub;
}
if (!$config['pure']) {
menu_print_menu($menu_godmode);

View File

@ -0,0 +1,160 @@
<?php
/**
* Module library view.
*
* @category Module library
* @package Pandora FMS
* @subpackage Community
* @version 1.0.0
* @license See below
*
* ______ ___ _______ _______ ________
* | __ \.-----.--.--.--| |.-----.----.-----. | ___| | | __|
* | __/| _ | | _ || _ | _| _ | | ___| |__ |
* |___| |___._|__|__|_____||_____|__| |___._| |___| |__|_|__|_______|
*
* ============================================================================
* Copyright (c) 2005-2020 Artica Soluciones Tecnologicas
* Please see http://pandorafms.org for full contribution list
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation for version 2.
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* ============================================================================
*/
global $config;
check_login();
if (! check_acl($config['id_user'], 0, 'AR')) {
// Doesn't have access to this page.
db_pandora_audit('ACL Violation', 'Trying to access Module Library View');
include 'general/noaccess.php';
exit;
}
// Header.
if (check_acl($config['id_user'], 0, 'PM') && enterprise_installed()) {
$buttons['setup'] = [
'active' => false,
'text' => '<a href="index.php?sec=general&sec2=godmode/setup/setup&amp;section=module_library">'.html_print_image('images/gm_setup.png', true, ['title' => __('Setup')]).'</a>',
];
}
$buttons['categories'] = [
'active' => false,
'text' => '<a href="index.php?sec=gmodule_library&sec2=godmode/module_library/module_library_view&tab=categories">'.html_print_image('images/list.png', true, ['title' => __('Categories')]).'</a>',
];
$buttons['view'] = [
'active' => false,
'text' => '<a href="index.php?sec=gmodule_library&sec2=godmode/module_library/module_library_view">'.html_print_image('images/operation.png', true, ['title' => __('View')]).'</a>',
];
$tab = get_parameter('tab', 'view');
if ($tab != 'search_module') {
$buttons[$tab]['active'] = true;
}
ui_print_page_header(__('Module Library').' &raquo; '.__('View'), '', false, 'module_library', true, $buttons);
// Styles.
ui_require_css_file('module_library');
// Get params.
$page = get_parameter('page', '1');
$search = get_parameter('search', '');
$id_cat = get_parameter('id_cat', '');
// Show error messages.
echo '<div id="show_errors_library"></div>';
echo '<div id="module_library_main">';
$sidebar_library = '
<div class="sidebar_library">
<h3>'.__('Search').'</h3>
<input id="search_module" name="search_module" placeholder="Search module" type="text" class="search_input"/>
<h3>'.__('Categories').'</h3>
<div id="categories_sidebar"><ul></ul></div>
</div>
';
switch ($tab) {
case 'search_module':
echo '<div class="content_library">';
echo '<div id="search_title_result"><h2>'.__('Search').': </h2></div>';
echo '<div id="search_result" class="result_string-'.$search.'"></div>';
echo '<div id="pagination_library" class="page-'.$page.'"></div>';
echo '<div id="modal_library"></div>';
echo '</div>';
echo $sidebar_library;
break;
case 'categories':
if ($id_cat != '') {
echo '<div class="content_library">';
echo '<div id="category_title_result"><h2>'.__('Category').': </h2></div>';
echo '<div id="category_result" class="result_category-'.$id_cat.'"></div>';
echo '<div id="pagination_library" class="page-'.$page.'"></div>';
echo '<div id="modal_library"></div>';
echo '</div>';
echo $sidebar_library;
} else {
echo '<div id="categories_library">';
echo '</div>';
}
break;
default:
echo '<div id="library_main">';
echo '<span></span>';
echo '<p></p>';
echo '<div id="library_main_content">';
// Show 9 categories.
for ($i = 1; $i <= 9; $i++) {
echo '<div class="library_main_category"></div>';
}
echo '</div>';
echo '<button name="view_all" class="sub next">
<a href="index.php?sec=gmodule_library&sec2=godmode/module_library/module_library_view&tab=categories">'.__('View all categories').'</a>
</button>';
echo '</div>';
echo $sidebar_library;
break;
}
echo '</div>';
?>
<script>
var more_details = '<?php echo __('More details'); ?>';
var total_modules_text = '<?php echo __('Total modules'); ?>';
var view_web = '<?php echo __('View in Module Library'); ?>';
var empty_result = '<?php echo __('No module found'); ?>';
var error_get_token = '<?php echo __('Problem with authentication. Check your internet connection'); ?>';
var invalid_user = '<?php echo __('Invalid username or password'); ?>';
var error_main = '<?php echo __('Error loading Module Library'); ?>';
var error_category = '<?php echo __('Error loading category'); ?>';
var error_categories = '<?php echo __('Error loading categories'); ?>';
var error_no_category = '<?php echo __('There is no such category'); ?>';
var error_search = '<?php echo __('Error loading results'); ?>';
var token = null;
</script>
<?php
if (check_acl($config['id_user'], 0, 'AW') && enterprise_installed()) {
enterprise_include_once('include/functions_module_library.php');
}
ui_require_javascript_file('module_library');

View File

@ -130,7 +130,7 @@ if ($update) {
];
// Save filter args
$values['filter_args'] = netflow_get_filter_arguments($values);
$values['filter_args'] = netflow_get_filter_arguments($values, true);
$result = db_process_sql_update('tnetflow_filter', $values, ['id_sg' => $id]);
@ -164,7 +164,7 @@ if ($create) {
];
// Save filter args
$values['filter_args'] = netflow_get_filter_arguments($values);
$values['filter_args'] = netflow_get_filter_arguments($values, true);
$id = db_process_sql_insert('tnetflow_filter', $values);
if ($id === false) {

View File

@ -473,7 +473,7 @@ if (!$maps && !is_metaconsole()) {
if ($maps) {
if (!is_metaconsole()) {
echo '<div class="action-buttons" style="width: 0px;">';
echo '<div class="action-buttons" style="width: 100%; text-align: right;">';
} else {
echo '<div class="" style="width: 100%; text-align: right;">';
}

View File

@ -191,12 +191,8 @@ switch ($action) {
case 'top_n':
case 'exception':
case 'general':
case 'network_interfaces_report':
case 'availability':
case 'event_report_log':
case 'increment':
case 'availability_graph':
case 'agent_module':
$get_data_editor = true;
break;
@ -3857,6 +3853,7 @@ $(document).ready (function () {
case 'historical_data':
case 'agent_configuration':
case 'module_histogram_graph':
case 'event_report_log':
case 'increment':
if ($("#hidden-id_agent").val() == 0) {
dialog_message('#message_no_agent');

View File

@ -455,7 +455,7 @@ foreach ($items as $item) {
if ($item['type'] == 'custom_graph') {
$custom_graph_name = db_get_row_sql('SELECT name FROM tgraph WHERE id_graph = '.$item['id_gs']);
$row[1] = get_report_name($item['type']).' ('.$custom_graph_name['name'].')';
$row[1] = get_report_name($item['type']).' ('.io_safe_output($custom_graph_name['name']).')';
}

View File

@ -203,7 +203,7 @@ foreach ($layoutDatas as $layoutData) {
$table->data[($i + 1)]['icon'] = html_print_image(
'images/auto_sla_graph.png',
true,
['title' => __('Auto SLA Graph')]
['title' => __('Event history graph')]
);
break;

View File

@ -761,7 +761,7 @@ $buttons['consoles_list'] = [
];
$buttons['public_link'] = [
'active' => false,
'text' => '<a href="'.ui_get_full_url('operation/visual_console/public_console.php?hash='.$hash.'&id_layout='.$idVisualConsole.'&id_user='.$config['id_user']).'">'.html_print_image('images/camera_mc.png', true, ['title' => __('Show link to public Visual Console')]).'</a>',
'text' => '<a href="'.ui_get_full_url('operation/visual_console/public_console.php?hash='.$hash.'&refr='.$refr.'&id_layout='.$idVisualConsole.'&id_user='.$config['id_user']).'">'.html_print_image('images/camera_mc.png', true, ['title' => __('Show link to public Visual Console')]).'</a>',
];
$buttons['data'] = [
'active' => false,
@ -783,10 +783,13 @@ $buttons['wizard'] = [
'active' => false,
'text' => '<a href="'.$url_base.$action.'&tab=wizard&id_visual_console='.$idVisualConsole.'">'.html_print_image('images/wand.png', true, ['title' => __('Wizard')]).'</a>',
];
$buttons['editor'] = [
'active' => false,
'text' => '<a href="'.$url_base.$action.'&tab=editor&id_visual_console='.$idVisualConsole.'">'.html_print_image('images/builder.png', true, ['title' => __('Builder')]).'</a>',
];
if ($config['legacy_vc']) {
$buttons['editor'] = [
'active' => false,
'text' => '<a href="'.$url_base.$action.'&tab=editor&id_visual_console='.$idVisualConsole.'">'.html_print_image('images/builder.png', true, ['title' => __('Builder')]).'</a>',
];
}
$buttons['view'] = [
'active' => false,
'text' => '<a href="'.$url_view.'">'.html_print_image('images/operation.png', true, ['title' => __('View')]).'</a>',

View File

@ -28,15 +28,6 @@ require_once 'include/functions_gis.php';
ui_require_javascript_file('openlayers.pandora');
// Header.
ui_print_page_header(
__('Map conections GIS'),
'',
false,
'',
true
);
$action = get_parameter('action');
switch ($action) {
@ -88,7 +79,7 @@ if ($mapsConnections !== false) {
$table->data[] = [
'<a href="index.php?sec=gsetup&sec2=godmode/setup/gis_step_2&amp;action=edit_connection_map&amp;id_connection_map='.$mapsConnection['id_tmap_connection'].'">'.$mapsConnection['conection_name'].'</a>',
ui_print_group_icon($mapsConnection['group_id'], true),
'<a href="index.php?sec=gsetup&sec2=godmode/setup/gis&amp;id_connection_map='.$mapsConnection['id_tmap_connection'].'&amp;action=delete_connection"
'<a href="index.php?sec=gsetup&sec2=godmode/setup/setup&amp;section=gis&amp;id_connection_map='.$mapsConnection['id_tmap_connection'].'&amp;action=delete_connection"
onClick="javascript: if (!confirm(\''.__('Do you wan delete this connection?').'\')) return false;">'.html_print_image('images/cross.png', true).'</a>',
];
$table->cellclass[][2] = 'action_buttons';

View File

@ -26,6 +26,10 @@ if (! check_acl($config['id_user'], 0, 'PM') && ! is_user_admin($config['id_user
require_once 'include/functions_gis.php';
$buttons['gis'] = [
'text' => '<a href="'.ui_get_full_url('index.php?sec=general&sec2=godmode/setup/setup&section=gis').'">'.html_print_image('images/list.png', true, ['title' => __('GIS Maps connections')]).'</a>',
];
$action = get_parameter('action', 'create_connection_map');
if (is_ajax()) {
@ -41,7 +45,8 @@ switch ($action) {
'',
false,
'',
true
true,
$buttons
);
$mapConnection_name = '';
@ -67,7 +72,8 @@ switch ($action) {
'',
false,
'',
true
true,
$buttons
);
$idConnectionMap = get_parameter('id_connection_map');

View File

@ -127,6 +127,13 @@ $buttons['ehorus'] = [
'text' => '<a href="'.ui_get_full_url('index.php?sec=gsetup&sec2=godmode/setup/setup&section=ehorus').'">'.html_print_image('images/ehorus/ehorus.png', true, ['title' => __('eHorus')]).'</a>',
];
if (check_acl($config['id_user'], 0, 'PM') && enterprise_installed()) {
$buttons['module_library'] = [
'active' => false,
'text' => '<a href="'.ui_get_full_url('index.php?sec=gsetup&sec2=godmode/setup/setup&section=module_library').'">'.html_print_image('images/library.png', true, ['title' => __('Module Library')]).'</a>',
];
}
// FIXME: Not definitive icon
$buttons['notifications'] = [
'active' => false,
@ -138,6 +145,13 @@ $buttons['websocket_engine'] = [
'text' => '<a href="'.ui_get_full_url('index.php?sec=gsetup&sec2=godmode/setup/setup&section=websocket_engine').'">'.html_print_image('images/websocket_small.png', true, ['title' => __('Websocket engine')]).'</a>',
];
if ($config['activate_gis']) {
$buttons['gis'] = [
'active' => false,
'text' => '<a href="'.ui_get_full_url('index.php?sec=general&sec2=godmode/setup/setup&section=gis').'">'.html_print_image('images/gis_tab.png', true, ['title' => __('GIS Map connection')]).'</a>',
];
}
$help_header = '';
if (enterprise_installed()) {
$subpage = setup_enterprise_add_subsection_main($section, $buttons, $help_header);
@ -183,6 +197,17 @@ switch ($section) {
$help_header = 'setup_integria_tab';
break;
case 'module_library':
$buttons['module_library']['active'] = true;
$subpage = ' &raquo '.__('Module Library');
$help_header = 'setup_module_library_tab';
break;
case 'gis':
$buttons['gis']['active'] = true;
$subpage = ' &raquo '.__('Map conections GIS');
break;
case 'notifications':
$buttons['notifications']['active'] = true;
$subpage = ' &raquo '.__('Notifications');
@ -254,6 +279,10 @@ switch ($section) {
include_once $config['homedir'].'/godmode/setup/setup_integria.php';
break;
case 'gis':
include_once $config['homedir'].'/godmode/setup/gis.php';
break;
case 'notifications':
include_once $config['homedir'].'/godmode/setup/setup_notifications.php';
break;

View File

@ -1,18 +1,25 @@
<?php
/**
* Extension to self monitor Pandora FMS Console
*
* @package Pandora FMS
* @version 1.0.0
* @license See below
* Pandora FMS - http://pandorafms.com
* * ==================================================
* * Copyright (c) 2005-2010 Artica Soluciones Tecnologicas
* * Please see http://pandorafms.org for full contribution list
* * This program is free software; you can redistribute it and/or
* * modify it under the terms of the GNU General Public License
* * as published by the Free Software Foundation for version 2.
* * This program is distributed in the hope that it will be useful,
* * but WITHOUT ANY WARRANTY; without even the implied warranty of
* * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* * GNU General Public License for more details.
* * Warning: This file may be required into the metaconsole's setup
* * Load global vars
*/
// Pandora FMS - http://pandorafms.com
// ==================================================
// Copyright (c) 2005-2010 Artica Soluciones Tecnologicas
// Please see http://pandorafms.org for full contribution list
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation for version 2.
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
// Warning: This file may be required into the metaconsole's setup
// Load global vars
global $config;
check_login();
@ -23,7 +30,7 @@ if (! check_acl($config['id_user'], 0, 'PM') && ! is_user_admin($config['id_user
return;
}
// Load enterprise extensions
// Load enterprise extensions.
enterprise_include('godmode/setup/setup_auth.php');
if (is_ajax()) {
@ -39,19 +46,35 @@ if (is_ajax()) {
$type_auth = (string) get_parameter('type_auth', '');
// field for all types except mysql
// Field for all types except mysql.
if ($type_auth != 'mysql') {
// Fallback to local authentication
// Fallback to local authentication.
$row = [];
$row['name'] = __('Fallback to local authentication').ui_print_help_tip(__('Enable this option if you want to fallback to local authentication when remote (ldap etc...) authentication failed. Only available when \'Save password\' is enabled.'), true);
$row['control'] = html_print_checkbox_switch('fallback_local_auth', 1, $config['fallback_local_auth'], true);
$row['name'] = __('Fallback to local authentication').ui_print_help_tip(
__('Enable this option if you want to fallback to local authentication when remote (ldap etc...) authentication failed. Only available when \'Save password\' is enabled.'),
true
);
$row['control'] = html_print_checkbox_switch(
'fallback_local_auth',
1,
$config['fallback_local_auth'],
true
);
$table->data['fallback_local_auth'] = $row;
if (enterprise_installed()) {
// Autocreate remote users
// Autocreate remote users.
$row = [];
$row['name'] = __('Autocreate remote users');
$row['control'] = html_print_checkbox_switch_extended('autocreate_remote_users', 1, $config['autocreate_remote_users'], false, '', '', true).'&nbsp;&nbsp;';
$row['control'] = html_print_checkbox_switch_extended(
'autocreate_remote_users',
1,
$config['autocreate_remote_users'],
false,
'',
'',
true
).'&nbsp;&nbsp;';
$table->data['autocreate_remote_users'] = $row;
add_enterprise_auth_autocreate_profiles($table, $type_auth);
@ -63,19 +86,33 @@ if (is_ajax()) {
break;
case 'ldap':
// LDAP server
// LDAP server.
$row = [];
$row['name'] = __('LDAP server');
$row['control'] = html_print_input_text('ldap_server', $config['ldap_server'], '', 30, 100, true);
$row['control'] = html_print_input_text(
'ldap_server',
$config['ldap_server'],
'',
30,
100,
true
);
$table->data['ldap_server'] = $row;
// LDAP port
// LDAP port.
$row = [];
$row['name'] = __('LDAP port');
$row['control'] = html_print_input_text('ldap_port', $config['ldap_port'], '', 10, 100, true);
$row['control'] = html_print_input_text(
'ldap_port',
$config['ldap_port'],
'',
10,
100,
true
);
$table->data['ldap_port'] = $row;
// LDAP version
// LDAP version.
$ldap_versions = [
1 => 'LDAPv1',
2 => 'LDAPv2',
@ -83,37 +120,78 @@ if (is_ajax()) {
];
$row = [];
$row['name'] = __('LDAP version');
$row['control'] = html_print_select($ldap_versions, 'ldap_version', $config['ldap_version'], '', '', 0, true);
$row['control'] = html_print_select(
$ldap_versions,
'ldap_version',
$config['ldap_version'],
'',
'',
0,
true
);
$table->data['ldap_version'] = $row;
// Start TLS
// Start TLS.
$row = [];
$row['name'] = __('Start TLS');
$row['control'] = html_print_checkbox_switch('ldap_start_tls', 1, $config['ldap_start_tls'], true);
$row['control'] = html_print_checkbox_switch(
'ldap_start_tls',
1,
$config['ldap_start_tls'],
true
);
$table->data['ldap_start_tls'] = $row;
// Base DN
// Base DN.
$row = [];
$row['name'] = __('Base DN');
$row['control'] = html_print_input_text('ldap_base_dn', $config['ldap_base_dn'], '', 60, 100, true);
$row['control'] = html_print_input_text(
'ldap_base_dn',
$config['ldap_base_dn'],
'',
60,
100,
true
);
$table->data['ldap_base_dn'] = $row;
// Login attribute
// Login attribute.
$row = [];
$row['name'] = __('Login attribute');
$row['control'] = html_print_input_text('ldap_login_attr', $config['ldap_login_attr'], '', 60, 100, true);
$row['control'] = html_print_input_text(
'ldap_login_attr',
$config['ldap_login_attr'],
'',
60,
100,
true
);
$table->data['ldap_login_attr'] = $row;
// Admin LDAP login
// Admin LDAP login.
$row = [];
$row['name'] = __('Admin LDAP login');
$row['control'] = html_print_input_text('ldap_admin_login', $config['ldap_admin_login'], '', 60, 100, true);
$row['control'] = html_print_input_text(
'ldap_admin_login',
$config['ldap_admin_login'],
'',
60,
100,
true
);
$table->data['ldap_admin_login'] = $row;
// Admin LDAP password
// Admin LDAP password.
$row = [];
$row['name'] = __('Admin LDAP password');
$row['control'] = html_print_input_password('ldap_admin_pass', $config['ldap_admin_pass'], $alt = '', 60, 100, true);
$row['control'] = html_print_input_password(
'ldap_admin_pass',
io_output_password($config['ldap_admin_pass']),
$alt = '',
60,
100,
true
);
$table->data['ldap_admin_pass'] = $row;
break;
@ -121,28 +199,50 @@ if (is_ajax()) {
case 'ad':
case 'saml':
case 'integria':
// Add enterprise authentication options
// Add enterprise authentication options.
if (enterprise_installed()) {
add_enterprise_auth_options($table, $type_auth);
}
break;
default:
// Default case.
break;
}
// field for all types
// Enable double authentication
// Set default value
// Field for all types.
// Enable double authentication.
// Set default value.
set_unless_defined($config['double_auth_enabled'], false);
$row = [];
$row['name'] = __('Double authentication').ui_print_help_tip(__('If this option is enabled, the users can use double authentication with their accounts'), true);
$row['control'] .= html_print_checkbox_switch('double_auth_enabled', 1, $config['double_auth_enabled'], true);
$row['name'] = __('Double authentication').ui_print_help_tip(
__('If this option is enabled, the users can use double authentication with their accounts'),
true
);
$row['control'] .= html_print_checkbox_switch(
'double_auth_enabled',
1,
$config['double_auth_enabled'],
true
);
$table->data['double_auth_enabled'] = $row;
// Session timeout
// Default session timeout
// Session timeout.
// Default session timeout.
set_when_empty($config['session_timeout'], 90);
$row = [];
$row['name'] = __('Session timeout (mins)').ui_print_help_tip(__('This is defined in minutes, If you wish a permanent session should putting -1 in this field.'), true);
$row['control'] = html_print_input_text('session_timeout', $config['session_timeout'], '', 10, 10, true);
$row['name'] = __('Session timeout (mins)').ui_print_help_tip(
__('This is defined in minutes, If you wish a permanent session should putting -1 in this field.'),
true
);
$row['control'] = html_print_input_text(
'session_timeout',
$config['session_timeout'],
'',
10,
10,
true
);
$table->data['session_timeout'] = $row;
html_print_table($table);
@ -159,23 +259,23 @@ $table->class = 'databox filters';
$table->size['name'] = '30%';
$table->style['name'] = 'font-weight: bold';
// Auth methods added to the table (doesn't take in account mysql)
// Auth methods added to the table (doesn't take in account mysql).
$auth_methods_added = [];
// Remote options row names
// Fill this array for every matched row
// Remote options row names.
// Fill this array for every matched row.
$remote_rows = [];
// Autocreate options row names
// Fill this array for every matched row
// Autocreate options row names.
// Fill this array for every matched row.
$autocreate_rows = [];
$no_autocreate_rows = [];
// LDAP data row names
// Fill this array for every matched row
// LDAP data row names.
// Fill this array for every matched row.
$ldap_rows = [];
// Method
// Method.
$auth_methods = [
'mysql' => __('Local %s', get_product_name()),
'ldap' => __('ldap'),
@ -186,16 +286,24 @@ if (enterprise_installed()) {
$row = [];
$row['name'] = __('Authentication method');
$row['control'] = html_print_select($auth_methods, 'auth', $config['auth'], '', '', 0, true);
$row['control'] = html_print_select(
$auth_methods,
'auth',
$config['auth'],
'',
'',
0,
true
);
$table->data['auth'] = $row;
// Form
// Form.
echo '<form id="form_setup" method="post">';
if (!is_metaconsole()) {
html_print_input_hidden('update_config', 1);
} else {
// To use it in the metasetup
// To use it in the metasetup.
html_print_input_hidden('action', 'save');
html_print_input_hidden('hash_save_config', md5('save'.$config['dbpass']));
}
@ -203,7 +311,12 @@ if (!is_metaconsole()) {
html_print_table($table);
echo '<div id="table_auth_result"></div>';
echo '<div class="action-buttons" style="width: '.$table->width.'">';
html_print_submit_button(__('Update'), 'update_button', false, 'class="sub upd"');
html_print_submit_button(
__('Update'),
'update_button',
false,
'class="sub upd"'
);
echo '</div>';
echo '</form>';
?>

View File

@ -60,7 +60,10 @@ if (users_is_admin()) {
}
if (!$action_update_url_update_manager) {
$url_update_manager = get_parameter('url_update_manager', $config['url_update_manager']);
$url_update_manager = get_parameter(
'url_update_manager',
$config['url_update_manager']
);
$update_manager_proxy_server = get_parameter(
'update_manager_proxy_server',
$config['update_manager_proxy_server']
@ -162,7 +165,7 @@ if (!$action_update_url_update_manager) {
if ($result) {
$result = config_update_value(
'update_manager_proxy_password',
$update_manager_proxy_password
io_input_password($update_manager_proxy_password)
);
}
@ -179,6 +182,7 @@ if (!$action_update_url_update_manager) {
}
echo '<form method="post" action="index.php?sec=gsetup&sec2=godmode/update_manager/update_manager&tab=setup">';
html_print_input_hidden('update_config', 1);
$table = new stdClass();
$table->width = '100%';
@ -259,6 +263,7 @@ if (license_free()) {
}
html_print_input_hidden('action_update_url_update_manager', 1);
html_print_input_hidden('update_config', 1);
html_print_table($table);
echo '<div class="action-buttons" style="width: '.$table->width.'">';

Some files were not shown because too many files have changed in this diff Show More