| Server IP : 170.10.162.208 / Your IP : 216.73.216.181 Web Server : LiteSpeed System : Linux altar19.supremepanel19.com 4.18.0-553.69.1.lve.el8.x86_64 #1 SMP Wed Aug 13 19:53:59 UTC 2025 x86_64 User : deltahospital ( 1806) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /var/tmp/ |
Upload File : |
bin/net-snmp-config 0000755 00000100064 15055304115 0010246 0 ustar 00 #!/bin/sh
#
# $Id$
#
# this shell script is designed to merely dump the configuration
# information about how the net-snmp package was compiled. The
# information is particularly useful for applications that need to
# link against the net-snmp libraries and hence must know about any
# other libraries that must be linked in as well.
check_build_dir()
{
build_dir=$1
if test "x$build_dir" = "x" ; then
echo "You must specify a build directory."
exit 1
fi
# is it the src dir?
if test -f $build_dir/net-snmp-config.in ; then
return
fi
# make sure we can find build dir
if test ! -d $build_dir/snmplib/.libs ; then
echo "$build_dir does not appear to be a build directory."
exit 1
fi
}
# usage: index n arguments
# effect: returns the (n+1)th argument
index()
{
eval echo \$`expr $1 + 1`
}
# usage: count arguments
# effect: returns the number of arguments
count()
{
echo $#
}
prefix=/opt/alt/net-snmp11/usr
exec_prefix=/opt/alt/net-snmp11/usr
includedir=/opt/alt/net-snmp11/usr/include
libdir=/opt/alt/net-snmp11/usr/lib64
datarootdir=${prefix}/share
NSC_LDFLAGS="-Wl,-z,relro -Wl,-z,now -lm"
NSC_LIBS=""
NSC_LNETSNMPLIBS=" -lssl -lssl -lcrypto"
NSC_LAGENTLIBS=" "
NSC_LMIBLIBS="-lsensors -ldl -lrpm -lrpmio "
NSC_INCLUDEDIR=${includedir}
NSC_LIBDIR=-L${libdir}
NSC_SNMPLIBS="-lnetsnmp ${NSC_LNETSNMPLIBS}"
NSC_SUBAGENTLIBS="-lnetsnmpagent ${NSC_LAGENTLIBS} ${NSC_SNMPLIBS}"
NSC_AGENTLIBS="-lnetsnmpmibs ${NSC_LMIBLIBS} ${NSC_SUBAGENTLIBS}"
NSC_PREFIX=$prefix
NSC_EXEC_PREFIX=$exec_prefix
NSC_SRCDIR=.
NSC_INCDIR=${NSC_PREFIX}/include
NSC_BASE_SNMP_LIBS="-lnetsnmp"
NSC_BASE_SUBAGENT_LIBS="-lnetsnmpagent ${NSC_BASE_SNMP_LIBS}"
NSC_BASE_AGENT_LIBS="-lnetsnmpmibs ${NSC_BASE_SUBAGENT_LIBS}"
NSC_SRC_LIBDIRS="agent/.libs snmplib/.libs"
NSC_SRC_LIBDEPS="agent/.libs/libnetsnmpmibs.a agent/.libs/libnetsnmpagent.a snmplib/.libs/libnetsnmp.a"
if test "x$NSC_SRCDIR" = "x." ; then
NSC_SRCDIR="NET-SNMP-SOURCE-DIR"
elif test "x$NSC_SRCDIR" = "x" ; then
NSC_SRCDIR="NET-SNMP-SOURCE-DIR"
fi
if test "x$1" = "x"; then
usage="yes"
else
while test "x$done" = "x" -a "x$1" != "x" -a "x$usage" != "xyes"; do
case "$1" in
-*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
*) optarg= ;;
esac
unset shifted
case $1 in
--prefix=*)
prefix=$optarg
NSC_PREFIX=${prefix}
NSC_INCLUDEDIR=${prefix}/include
NSC_LIBDIR=-L${prefix}/lib
;;
--exec-prefix=*)
exec_prefix=$optarg
NSC_EXEC_PREFIX=${exec_prefix}
NSC_LIBDIR=-L${exec_prefix}/lib
;;
--debug-tokens|--deb*|--dbg*)
echo "find $NSC_SRCDIR -name \"*.c\" -print | xargs grep DEBUGMSGT | grep \\\" | cut -f 2 -d\\\" | sort -u"
if test "x$NSC_SRCDIR" != "xNET-SNMP-SOURCE-DIR" ; then
/usr/bin/find $NSC_SRCDIR -name "*.c" -print | xargs grep DEBUGMSGT | grep \" | cut -f 2 -d\" | sort -u
fi
;;
--indent-options|--in*)
echo "indent -orig -nbc -bap -nut -nfca `(cd $NSC_INCDIR/net-snmp; perl -n -e 'print "-T $1 " if (/}\s*(netsnmp_\w+)\s*;/);' */*.h)`"
;;
--configure-options|--con*)
echo " '--build=x86_64-redhat-linux-gnu' '--host=x86_64-redhat-linux-gnu' '--program-prefix=' '--disable-dependency-tracking' '--exec-prefix=/opt/alt/net-snmp11/usr' '--bindir=/opt/alt/net-snmp11/usr/bin' '--sbindir=/opt/alt/net-snmp11/usr/sbin' '--datadir=/opt/alt/net-snmp11/usr/share' '--includedir=/opt/alt/net-snmp11/usr/include' '--libdir=/opt/alt/net-snmp11/usr/lib64' '--libexecdir=/opt/alt/net-snmp11/usr/libexec' '--localstatedir=/var' '--sharedstatedir=/var/lib' '--mandir=/opt/alt/net-snmp11/usr/share/man' '--infodir=/opt/alt/net-snmp11/usr/share/info' '--disable-agent' '--disable-applications' '--disable-debugging' '--disable-embedded-perl' '--disable-manuals' '--disable-scripts' '--disable-static' '--enable-as-needed' '--enable-blumenthal-aes' '--enable-ipv6' '--enable-local-smux' '--enable-mfd-rewrites' '--enable-shared' '--enable-ucd-snmp-compatibility' '--prefix=/opt/alt/net-snmp11/usr' '--sysconfdir=/etc' '--with-cflags=-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/opt/alt/openssl11/include' '--with-defaults' '--with-install-prefix=/opt/alt/net-snmp11/usr' '--with-ldflags=-Wl,-z,relro -Wl,-z,now -lm' '--with-logfile=/var/log/snmpd.log' '--with-mib-modules=host agentx smux ucd-snmp/diskio tcp-mib udp-mib mibII/mta_sendmail ip-mib/ipv4InterfaceTable ip-mib/ipv6InterfaceTable ip-mib/ipAddressPrefixTable/ipAddressPrefixTable ip-mib/ipDefaultRouterTable/ipDefaultRouterTable ip-mib/ipv6ScopeZoneIndexTable ip-mib/ipIfStatsTable sctp-mib rmon-mib etherlike-mib ucd-snmp/lmsensorsMib' '--with-openssl=/opt/alt/opnessl11' '--with-perl-modules=INSTALLDIRS=vendor' '--with-persistent-directory=/var/lib/net-snmp' '--with-pic' '--with-security-modules=tsm' '--with-sys-contact=Unknown' '--with-sys-location=Unknown' '--with-systemd' '--with-temp-file-pattern=/run/net-snmp/snmp-tmp-XXXXXX' '--with-transports=DTLSUDP TLSTCP' '--without-perl-modules' 'build_alias=x86_64-redhat-linux-gnu' 'host_alias=x86_64-redhat-linux-gnu' 'CFLAGS=-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/opt/alt/openssl11/include' 'LDFLAGS=-L/opt/alt/openssl11/lib64 -L/opt/alt/libssh211/usr/lib64 -Wl,-rpath=/opt/alt/openssl11/lib64,-rpath=/opt/alt/libssh211/usr/lib64' 'CPPFLAGS=-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/opt/alt/openssl11/include' 'PKG_CONFIG_PATH=:/opt/alt/net-snmp11/usr/lib64/pkgconfig:/opt/alt/net-snmp11/usr/share/pkgconfig'"
;;
--snmpd-module-list|--mod*)
echo ip-mib/ipAddressPrefixTable/ipAddressPrefixTable ip-mib/ipDefaultRouterTable/ipDefaultRouterTable mibII/mta_sendmail ucd-snmp/diskio ucd-snmp/lmsensorsMib agentx/master agentx/subagent host/hrh_storage host/hrh_filesys host/hrSWInstalledTable host/hrSWRunTable host/hr_system host/hr_device host/hr_other host/hr_proc host/hr_network host/hr_print host/hr_disk host/hr_partition ip-mib/ipAddressTable/ipAddressTable ip-mib/ipAddressPrefixTable/ipAddressPrefixTable_interface ip-mib/ipAddressPrefixTable/ipAddressPrefixTable_data_access ip-mib/ipDefaultRouterTable/ipDefaultRouterTable_interface ip-mib/ipDefaultRouterTable/ipDefaultRouterTable_data_access ip-mib/ipDefaultRouterTable/ipDefaultRouterTable_data_get ip-mib/ipIfStatsTable/ipIfStatsTable ip-mib/ipIfStatsTable/ipIfStatsTable_interface ip-mib/ipIfStatsTable/ipIfStatsTable_data_access ip-mib/ipv4InterfaceTable/ipv4InterfaceTable ip-mib/ipv6InterfaceTable/ipv6InterfaceTable ip-mib/ipv6ScopeZoneIndexTable/ipv6ScopeZoneIndexTable sctp-mib/sctpScalars smux/smux util_funcs/header_simple_table agentx/protocol agentx/master_admin agentx/agentx_config agentx/client etherlike-mib/dot3StatsTable/dot3StatsTable etherlike-mib/dot3StatsTable/dot3StatsTable_data_get etherlike-mib/dot3StatsTable/dot3StatsTable_data_set etherlike-mib/dot3StatsTable/dot3StatsTable_data_access etherlike-mib/dot3StatsTable/dot3StatsTable_interface host/data_access/swinst host/data_access/swrun host/hrSWRunPerfTable util_funcs if-mib/data_access/interface ip-mib/ipAddressTable/ipAddressTable_interface ip-mib/ipAddressTable/ipAddressTable_data_access ip-mib/data_access/defaultrouter_common ip-mib/data_access/defaultrouter_linux ip-mib/data_access/systemstats_common ip-mib/data_access/systemstats_linux ip-mib/ipIfStatsTable/ipIfStatsTable_data_get if-mib/ifTable/ifTable_interface if-mib/ifTable/ifTable_data_access if-mib/ifTable/ifTable ip-mib/ipv4InterfaceTable/ipv4InterfaceTable_interface ip-mib/ipv4InterfaceTable/ipv4InterfaceTable_data_access ip-mib/ipv6InterfaceTable/ipv6InterfaceTable_interface ip-mib/ipv6InterfaceTable/ipv6InterfaceTable_data_access ip-mib/ipv6ScopeZoneIndexTable/ipv6ScopeZoneIndexTable_interface ip-mib/ipv6ScopeZoneIndexTable/ipv6ScopeZoneIndexTable_data_access rmon-mib/etherStatsTable/etherStatsTable rmon-mib/etherStatsTable/etherStatsTable_data_get rmon-mib/etherStatsTable/etherStatsTable_data_set rmon-mib/etherStatsTable/etherStatsTable_data_access rmon-mib/etherStatsTable/etherStatsTable_interface sctp-mib/sctpScalars_common sctp-mib/sctpScalars_linux sctp-mib/sctpTables_common sctp-mib/sctpAssocRemAddrTable sctp-mib/sctpAssocLocalAddrTable sctp-mib/sctpLookupLocalPortTable sctp-mib/sctpLookupRemPortTable sctp-mib/sctpLookupRemHostNameTable sctp-mib/sctpLookupRemPrimIPAddrTable sctp-mib/sctpLookupRemIPAddrTable sctp-mib/sctpAssocTable sctp-mib/sctpTables_linux util_funcs/get_pid_from_inode tcp-mib/tcpConnectionTable/tcpConnectionTable tcp-mib/tcpListenerTable/tcpListenerTable hardware/sensors/hw_sensors hardware/sensors/lmsensors_v3 udp-mib/udpEndpointTable/udpEndpointTable etherlike-mib/data_access/dot3stats_linux hardware/memory/hw_mem hardware/memory/memory_linux hardware/fsys/hw_fsys hardware/fsys/fsys_mntent host/data_access/swinst_rpm host/data_access/swrun_procfs_status hardware/cpu/cpu hardware/cpu/cpu_linux util_funcs/header_generic if-mib/data_access/interface_linux if-mib/data_access/interface_ioctl ip-mib/data_access/ipaddress_common ip-mib/data_access/ipaddress_linux ip-mib/data_access/ipv6scopezone_common ip-mib/data_access/ipv6scopezone_linux rmon-mib/data_access/etherstats_linux tcp-mib/data_access/tcpConn_common tcp-mib/data_access/tcpConn_linux tcp-mib/tcpConnectionTable/tcpConnectionTable_interface tcp-mib/tcpConnectionTable/tcpConnectionTable_data_access tcp-mib/tcpListenerTable/tcpListenerTable_interface tcp-mib/tcpListenerTable/tcpListenerTable_data_access udp-mib/udpEndpointTable/udpEndpointTable_interface udp-mib/udpEndpointTable/udpEndpointTable_data_access ip-mib/data_access/ipaddress_ioctl udp-mib/data_access/udp_endpoint_common udp-mib/data_access/udp_endpoint_linux
;;
--default-mibs|--mibs|--MIBS)
echo :EtherLike-MIB:HOST-RESOURCES-MIB:HOST-RESOURCES-TYPES:MTA-MIB:NETWORK-SERVICES-MIB:RMON-MIB:SCTP-MIB:TCP-MIB:UCD-DISKIO-MIB:LM-SENSORS-MIB:UDP-MIB
;;
--default-mibdirs|--mibdirs|--MIBDIRS)
echo $HOME/.snmp/mibs:/opt/alt/net-snmp11/usr/share/snmp/mibs
;;
--env-separator)
echo ":"
;;
--exeext)
echo ""
;;
--snmpconfpath|--SNMPCONFPATH)
echo "/etc/snmp:/opt/alt/net-snmp11/usr/share/snmp:/opt/alt/net-snmp11/usr/lib64/snmp:$HOME/.snmp:/var/lib/net-snmp"
;;
--persistent-directory|--persistent-dir)
echo /var/lib/net-snmp
;;
--perlprog|--perl)
echo /usr/bin/perl
;;
#################################################### compile
--base-cflags)
echo -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/opt/alt/openssl11/include -DNETSNMP_ENABLE_IPV6 -fno-strict-aliasing -DNETSNMP_REMOVE_U64 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/opt/alt/openssl11/include -Ulinux -Dlinux=linux -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/opt/alt/openssl11/include -I${NSC_INCLUDEDIR}
;;
--cflags|--cf*)
echo -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/opt/alt/openssl11/include -DNETSNMP_ENABLE_IPV6 -fno-strict-aliasing -DNETSNMP_REMOVE_U64 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/opt/alt/openssl11/include -Ulinux -Dlinux=linux -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/opt/alt/openssl11/include -I. -I${NSC_INCLUDEDIR}
;;
--srcdir)
echo $NSC_SRCDIR
;;
#################################################### linking
--libdir|--lib-dir)
echo $NSC_LIBDIR
;;
--ldflags|--ld*)
echo $NSC_LDFLAGS
;;
--build-lib-dirs)
shift
build_dir=$1
check_build_dir $build_dir
for dir in $NSC_SRC_LIBDIRS; do
result="$result -L$build_dir/$dir"
done
echo $result
;;
--build-lib-deps)
shift
build_dir=$1
check_build_dir $build_dir
for dir in $NSC_SRC_LIBDEPS; do
result="$result $build_dir/$dir"
done
echo $result
;;
--build-includes)
shift
build_dir=$1
check_build_dir $build_dir
result="-I$build_dir/include"
if test "$build_dir" != "$NSC_SRCDIR" -a "$NSC_SRCDIR" != "NET-SNMP-SOURCE-DIR"
then
result="$result -I$NSC_SRCDIR/include"
fi
echo $result
;;
--build-command)
echo "gcc -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/opt/alt/openssl11/include -DNETSNMP_ENABLE_IPV6 -fno-strict-aliasing -DNETSNMP_REMOVE_U64 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/opt/alt/openssl11/include -Ulinux -Dlinux=linux -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/opt/alt/openssl11/include"
;;
#################################################### client lib
--libs)
# use this one == --netsnmp-libs + --external-libs
echo $NSC_LDFLAGS $NSC_LIBDIR $NSC_SNMPLIBS $NSC_LIBS
;;
--netsnmp-libs)
echo $NSC_LIBDIR $NSC_BASE_SNMP_LIBS
;;
--external-libs)
echo $NSC_LDFLAGS $NSC_LNETSNMPLIBS $NSC_LIBS
;;
#################################################### agent lib
--base-agent-libs)
echo $NSC_BASE_AGENT_LIBS
;;
--base-subagent-libs)
echo $NSC_BASE_SUBAGENT_LIBS
;;
--agent-libs)
# use this one == --netsnmp-agent-libs + --external-libs
echo $NSC_LDFLAGS $NSC_LIBDIR $NSC_AGENTLIBS $NSC_LIBS
;;
--netsnmp-agent-libs)
echo $NSC_LIBDIR $NSC_BASE_AGENT_LIBS
;;
--external-agent-libs)
echo $NSC_LDFLAGS $NSC_LMIBLIBS $NSC_LAGENTLIBS $NSC_LNETSNMPLIBS $NSC_LIBS
;;
####################################################
--version|--ver*)
echo 5.8
;;
--help)
usage="yes"
;;
--prefix|--pre*)
echo $NSC_PREFIX
;;
--exec-prefix)
echo $NSC_EXEC_PREFIX
;;
####################################################
--create-snmpv3-user)
done=1
shift
net-snmp-create-v3-user $*
exit $?
;;
####################################################
--compile-subagent)
shift
shifted=1
while test "x$done" = "x" -a "x$1" != "x" ; do
case $1 in
--norm)
norm=1
shift
;;
--cflags)
shift
if test "x$1" = "x" ; then
echo "You must specify the extra cflags"
exit 1
fi
cflags="$1"
echo "setting extra cflags: $cflags"
shift
;;
--ldflags)
shift
if test "x$1" = "x" ; then
echo "You must specify the extra ldflags"
exit 1
fi
ldflags="$1"
echo "setting extra ldflags: $ldflags"
shift
;;
--*)
echo "unknown suboption to --compile-subagent: $1"
exit 1
;;
*)
if test "x$outname" = "x"; then
outname=$1
shift
else
done=1
fi
;;
esac
done
tmpfile=netsnmptmp.$$.c
if test -f $tmpfile; then
echo "Ack. Can't create $tmpfile: already exists"
exit 1
fi
echo "generating the temporary code file: $tmpfile"
rm -f $tmpfile
cat > $tmpfile <<EOF
/* generated from net-snmp-config */
#include <net-snmp/net-snmp-config.h>
#ifdef HAVE_SIGNAL
#include <signal.h>
#endif /* HAVE_SIGNAL */
#ifdef HAVE_SYS_STAT_H
#include <sys/stat.h>
#endif /* HAVE_SYS_STAT_H */
#ifdef HAVE_FCNTL_H
#include <fcntl.h>
#endif /* HAVE_FCNTL_H */
#include <net-snmp/net-snmp-includes.h>
#include <net-snmp/agent/net-snmp-agent-includes.h>
EOF
# If we were only given a single filename
# (and no explicit output name)
# then use that as the base of the output name
#
# If we weren't even given that, then bomb out
if test "x$1" = "x"; then
if test "x$outname" = "x"; then
echo "No MIB module codefile specified"
rm -f $tmpfile
exit 1
else
cfiles=$outname
outname=`basename $cfiles | sed 's/\.[co]$//'`
if test -f $outname.h; then
if grep "init_$outname" $outname.h; then
echo " #include \"$outname.h\"" >> $tmpfile
fi
fi
fi
fi
# add include files
while test "$1" != ""; do
cfiles="$cfiles $1"
name=`basename $1 | sed 's/\.[co]$//'`
if test -f $name.h; then
if grep "init_$name" $name.h; then
echo " #include \"$name.h\"" >> $tmpfile
fi
fi
shift
done
cat >> $tmpfile <<EOF
const char *app_name = "$outname";
static int reconfig = 0;
extern int netsnmp_running;
RETSIGTYPE
stop_server(int a) {
netsnmp_running = 0;
}
#ifdef SIGHUP
RETSIGTYPE
hup_handler(int sig)
{
reconfig = 1;
signal(SIGHUP, hup_handler);
}
#endif
static void
usage(const char *prog)
{
fprintf(stderr,
"USAGE: %s [OPTIONS]\n"
"\n"
"OPTIONS:\n", prog);
fprintf(stderr,
" -c FILE[,...]\t\tread FILE(s) as configuration file(s)\n"
" -C\t\t\tdo not read the default configuration files\n"
" -d\t\t\tdump all traffic\n"
" -D TOKEN[,...]\tturn on debugging output for the specified "
"TOKENs\n"
"\t\t\t (ALL gives extremely verbose debugging output)\n"
" -f\t\t\tDo not fork() from the calling shell.\n"
" -h\t\t\tdisplay this help message\n"
" -H\t\t\tdisplay a list of configuration file directives\n"
" -L LOGOPTS\t\tToggle various defaults controlling logging:\n");
snmp_log_options_usage("\t\t\t ", stderr);
#ifndef DISABLE_MIB_LOADING
fprintf(stderr,
" -m MIB[" ENV_SEPARATOR "...]\t\tload given list of MIBs (ALL loads "
"everything)\n"
" -M DIR[" ENV_SEPARATOR "...]\t\tlook in given list of directories for MIBs\n");
#endif /* DISABLE_MIB_LOADING */
fprintf(stderr,
" -p FILE\t\tstore process id in FILE\n");
#ifndef DISABLE_MIB_LOADING
fprintf(stderr,
" -P MIBOPTS\t\tToggle various defaults controlling mib "
"parsing:\n");
snmp_mib_toggle_options_usage("\t\t\t ", stderr);
#endif /* DISABLE_MIB_LOADING */
fprintf(stderr,
" -v\t\t\tdisplay package version number\n"
" -x TRANSPORT\tconnect to master agent using TRANSPORT\n");
exit(1);
}
static void
version(void)
{
fprintf(stderr, "NET-SNMP version: %s\n", netsnmp_get_version());
exit(0);
}
int
main (int argc, char **argv)
{
int arg;
char* cp = NULL;
int dont_fork = 0, do_help = 0;
char* pid_file = NULL;
while ((arg = getopt(argc, argv, "c:CdD:fhHL:"
#ifndef DISABLE_MIB_LOADING
"m:M:"
#endif /* DISABLE_MIB_LOADING */
"n:p:"
#ifndef DISABLE_MIB_LOADING
"P:"
#endif /* DISABLE_MIB_LOADING */
"vx:")) != EOF) {
switch (arg) {
case 'c':
if (optarg != NULL) {
netsnmp_ds_set_string(NETSNMP_DS_LIBRARY_ID,
NETSNMP_DS_LIB_OPTIONALCONFIG, optarg);
} else {
usage(argv[0]);
}
break;
case 'C':
netsnmp_ds_set_boolean(NETSNMP_DS_LIBRARY_ID,
NETSNMP_DS_LIB_DONT_READ_CONFIGS, 1);
break;
case 'd':
netsnmp_ds_set_boolean(NETSNMP_DS_LIBRARY_ID,
NETSNMP_DS_LIB_DUMP_PACKET, 1);
break;
case 'D':
debug_register_tokens(optarg);
snmp_set_do_debugging(1);
break;
case 'f':
dont_fork = 1;
break;
case 'h':
usage(argv[0]);
break;
case 'H':
do_help = 1;
break;
case 'L':
if (snmp_log_options(optarg, argc, argv) < 0) {
exit(1);
}
break;
#ifndef DISABLE_MIB_LOADING
case 'm':
if (optarg != NULL) {
setenv("MIBS", optarg, 1);
} else {
usage(argv[0]);
}
break;
case 'M':
if (optarg != NULL) {
setenv("MIBDIRS", optarg, 1);
} else {
usage(argv[0]);
}
break;
#endif /* DISABLE_MIB_LOADING */
case 'n':
if (optarg != NULL) {
app_name = optarg;
netsnmp_ds_set_string(NETSNMP_DS_LIBRARY_ID,
NETSNMP_DS_LIB_APPTYPE, app_name);
} else {
usage(argv[0]);
}
break;
case 'p':
if (optarg != NULL) {
pid_file = optarg;
} else {
usage(argv[0]);
}
break;
#ifndef DISABLE_MIB_LOADING
case 'P':
cp = snmp_mib_toggle_options(optarg);
if (cp != NULL) {
fprintf(stderr, "Unknown parser option to -P: %c.\n", *cp);
usage(argv[0]);
}
break;
#endif /* DISABLE_MIB_LOADING */
case 'v':
version();
break;
case 'x':
if (optarg != NULL) {
netsnmp_ds_set_string(NETSNMP_DS_APPLICATION_ID,
NETSNMP_DS_AGENT_X_SOCKET, optarg);
} else {
usage(argv[0]);
}
break;
default:
fprintf(stderr, "invalid option: -%c\n", arg);
usage(argv[0]);
break;
}
}
if (do_help) {
netsnmp_ds_set_boolean(NETSNMP_DS_APPLICATION_ID,
NETSNMP_DS_AGENT_NO_ROOT_ACCESS, 1);
} else {
/* we are a subagent */
netsnmp_ds_set_boolean(NETSNMP_DS_APPLICATION_ID,
NETSNMP_DS_AGENT_ROLE, 1);
if (!dont_fork) {
if (netsnmp_daemonize(1, snmp_stderrlog_status()) != 0)
exit(1);
}
#if HAVE_GETPID
if (pid_file != NULL) {
/*
* unlink the pid_file, if it exists, prior to open. Without
* doing this the open will fail if the user specified pid_file
* already exists.
*/
int fd;
unlink(pid_file);
fd = open(pid_file, O_CREAT | O_EXCL | O_WRONLY, 0600);
if (fd == -1) {
snmp_log_perror(pid_file);
if (!netsnmp_ds_get_boolean(NETSNMP_DS_APPLICATION_ID,
NETSNMP_DS_AGENT_NO_ROOT_ACCESS)) {
exit(1);
}
} else {
char buf[3 + sizeof(long) * 3];
int len = snprintf(buf, sizeof(buf), "%ld\n", (long int)getpid());
write(fd, buf, len);
close(fd);
}
}
#endif
/* initialize tcpip, if necessary */
SOCK_STARTUP;
}
/* initialize the agent library */
init_agent(app_name);
/* initialize your mib code here */
EOF
# add init routines
for i in $cfiles ; do
name=`basename $i | sed 's/\.[co]$//'`
echo checking for init_$name in $i
if grep "init_$name" $i ; then
echo " init_${name}();" >> $tmpfile
fi
done
# handle the main loop
cat >> $tmpfile <<EOF
/* $outname will be used to read $outname.conf files. */
init_snmp("$outname");
if (do_help) {
fprintf(stderr, "Configuration directives understood:\n");
read_config_print_usage(" ");
exit(0);
}
/* In case we received a request to stop (kill -TERM or kill -INT) */
netsnmp_running = 1;
#ifdef SIGTERM
signal(SIGTERM, stop_server);
#endif
#ifdef SIGINT
signal(SIGINT, stop_server);
#endif
#ifdef SIGHUP
signal(SIGHUP, hup_handler);
#endif
/* main loop here... */
while(netsnmp_running) {
if (reconfig) {
free_config();
read_configs();
reconfig = 0;
}
agent_check_and_process(1);
}
/* at shutdown time */
snmp_shutdown(app_name);
/* deinitialize your mib code here */
EOF
# add shutdown routines
i=`count $cfiles`
while [ $i -gt 0 ] ; do
fullname=`index $i $cfiles`
name=`basename $fullname | sed 's/\.[co]$//'`
echo checking for shutdown_$name in $fullname
if grep "shutdown_$name" $fullname ; then
echo " shutdown_${name}();" >> $tmpfile
fi
i=`expr $i - 1`
done
# finish file
cat >> $tmpfile <<EOF
/* shutdown the agent library */
shutdown_agent();
if (pid_file != NULL) {
unlink(pid_file);
}
SOCK_CLEANUP;
exit(0);
}
EOF
if test "$?" != 0 -o ! -f "$tmpfile" ; then
echo "Ack. Can't create $tmpfile."
exit 1
fi
cmd="gcc $cflags -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/opt/alt/openssl11/include -DNETSNMP_ENABLE_IPV6 -fno-strict-aliasing -DNETSNMP_REMOVE_U64 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/opt/alt/openssl11/include -Ulinux -Dlinux=linux -I. -I${NSC_INCLUDEDIR} -o $outname $tmpfile $cfiles $NSC_LDFLAGS $NSC_LIBDIR $NSC_BASE_AGENT_LIBS $NSC_AGENTLIBS $ldflags"
echo "running: $cmd"
`$cmd`
result=$?
if test "x$norm" != "x1" ; then
echo "removing the temporary code file: $tmpfile"
rm -f $tmpfile
else
echo "leaving the temporary code file: $tmpfile"
fi
if test "$result" = "0" -a -f "$outname" ; then
echo "subagent program $outname created"
fi
exit $result
;;
*)
echo "unknown option $1"
usage="yes"
;;
esac
if [ "x$shifted" = "x" ] ; then
shift
fi
done
fi
if test "x$usage" = "xyes"; then
echo ""
echo "Usage:"
echo " net-snmp-config [--cflags] [--agent-libs] [--libs] [--version]"
echo " ... [see below for complete flag list]"
echo ""
echo " --version displays the net-snmp version number"
echo " --indent-options displays the indent options from the Coding Style"
echo " --debug-tokens displays a example command line to search to source"
echo " code for a list of available debug tokens"
echo ""
echo " SNMP Setup commands:"
echo ""
echo " --create-snmpv3-user creates a SNMPv3 user in Net-SNMP config file."
echo " See net-snmp-create-v3-user --help for list of"
echo " accepted options."
echo ""
echo " These options produce the various compilation flags needed when"
echo " building external SNMP applications:"
echo ""
echo " --base-cflags lists additional compilation flags needed"
echo " --cflags lists additional compilation flags needed"
echo " (includes -I. and extra developer warning flags)"
echo ""
echo " These options produce the various link flags needed when"
echo " building external SNMP applications:"
echo ""
echo " --libs lists libraries needed for building applications"
echo " --agent-libs lists libraries needed for building subagents"
echo ""
echo " These options produce various link flags broken down into parts."
echo " (Most of the time the simple options above should be used.)"
echo ""
echo " --libdir path to netsnmp libraries"
echo ""
echo " --base-agent-libs netsnmp specific agent libraries"
echo ""
echo " --netsnmp-libs netsnmp specific libraries (with path)"
echo " --netsnmp-agent-libs netsnmp specific agent libraries (with path)"
echo ""
echo " --ldflags link flags for external libraries"
echo " --external-libs external libraries needed by netsnmp libs"
echo " --external-agent-libs external libraries needed by netsnmp agent libs"
echo ""
echo " These options produce various link flags used when linking an"
echo " external application against an uninstalled build directory."
echo ""
echo " --build-includes include path to build/source includes"
echo " --build-lib-dirs link path to libraries"
echo " --build-lib-deps path to libraries for dependency target"
echo " --build-command command to compile \$3... to \$2"
echo ""
echo " Automated subagent building (produces an OUTPUTNAME binary file):"
echo " [this feature has not been tested very well yet. use at your risk.]"
echo ""
echo " --compile-subagent OUTPUTNAME [--norm] [--cflags flags]"
echo " [--ldflags flags] mibmodule1.c [...]]"
echo ""
echo " --norm leave the generated .c file around to read."
echo " --cflags flags extra cflags to use (e.g. -I...)."
echo " --ldflags flags extra ld flags to use (e.g. -L... -l...)."
echo ""
echo " Details on how the net-snmp package was compiled:"
echo ""
echo " --configure-options display original configure arguments"
echo " --prefix display the installation prefix"
echo " --snmpd-module-list display the modules compiled into the agent"
echo " --default-mibs display default list of MIBs"
echo " --default-mibdirs display default list of MIB directories"
echo " --snmpconfpath display default SNMPCONFPATH"
echo " --persistent-directory display default persistent directory"
echo " --perlprog display path to perl for the perl modules"
echo ""
exit
fi
bin/net-snmp-create-v3-user 0000755 00000006030 15055304120 0011540 0 ustar 00 #!/bin/sh
#
# $Id$
#
# this shell script is designed to add new SNMPv3 users
# to Net-SNMP config file.
if /usr/bin/ps -e | egrep ' snmpd *$' > /dev/null 2>&1 ; then
echo "Apparently at least one snmpd demon is already running."
echo "You must stop them in order to use this command."
exit 1
fi
Aalgorithm="MD5"
Xalgorithm="DES"
token=rwuser
while test "x$done" = "x" -a "x$1" != "x" -a "x$usage" != "xyes"; do
case "$1" in
-*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
*) optarg= ;;
esac
unset shifted
case $1 in
--version|--ver*)
echo 5.8
;;
--help)
usage="yes"
;;
-A|-a)
shift
if test "x$1" = "x" ; then
echo "You must specify an authentication algorithm or pass phrase"
exit 1
fi
case $1 in
MD5|SHA|SHA-512|SHA-384|SHA-256|SHA-224)
Aalgorithm=$1
shift
;;
md5|sha)
Aalgorithm=`echo $1 | tr a-z A-Z`
shift
;;
*)
apassphrase=$1
shift
;;
esac
;;
-X|-x)
shift
if test "x$1" = "x" ; then
echo "You must specify an encryption algorithm or pass phrase"
exit 1
fi
case $1 in
DES|AES|AES128)
Xalgorithm=$1
shift
;;
des|aes|aes128)
Xalgorithm=`echo $1 | tr a-z A-Z`
shift
;;
*)
xpassphrase=$1
shift
;;
esac
;;
-ro)
token="rouser"
shift
;;
-*)
echo "unknown suboption to $0: $1"
usage=yes
done=1
;;
*)
done=1
;;
esac
done
if test "x$usage" = "xyes"; then
echo ""
echo "Usage:"
echo " net-snmp-create-v3-user [-ro] [-A authpass] [-X privpass]"
echo " [-a MD5|SHA|SHA-512|SHA-384|SHA-256|SHA-224] [-x DES|AES] [username]"
echo ""
exit
fi
if test "x$1" = "x" ; then
prompt=yes
echo "Enter a SNMPv3 user name to create: "
read user
else
user=$1
shift
fi
if test "x$user" = "x" ; then
echo "You must specify a user name"
exit 1
fi
if test "x$apassphrase" = "x" ; then
prompt=yes
echo "Enter authentication pass-phrase: "
read apassphrase
fi
if test "x$apassphrase" = "x" ; then
echo "You must specify an authentication pass-phrase"
exit 1
fi
if test "x$prompt" = "xyes" -a "x$xpassphrase" = "x" ; then
echo "Enter encryption pass-phrase: "
echo " [press return to reuse the authentication pass-phrase]"
read xpassphrase
fi
outdir="/var/lib/net-snmp"
outfile="$outdir/snmpd.conf"
line="createUser $user $Aalgorithm \"$apassphrase\" $Xalgorithm \"$xpassphrase\""
echo "adding the following line to $outfile:"
echo " " $line
# in case it hasn't ever been started yet, start it.
if test ! -d $outdir ; then
mkdir $outdir
fi
if test ! -d $outfile ; then
touch $outfile
fi
echo $line >> $outfile
prefix="/opt/alt/net-snmp11/usr"
datarootdir="${prefix}/share"
outfile="/etc/snmp/snmpd.conf"
line="$token $user"
echo "adding the following line to $outfile:"
echo " " $line
if test ! -d $outfile ; then
touch $outfile
fi
echo $line >> $outfile
share/snmp/mibs/NOTIFICATION-LOG-MIB.txt 0000644 00000060166 15055304120 0013234 0 ustar 00 NOTIFICATION-LOG-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, OBJECT-TYPE,
Integer32, Unsigned32,
TimeTicks, Counter32, Counter64,
IpAddress, Opaque, mib-2 FROM SNMPv2-SMI
TimeStamp, DateAndTime,
StorageType, RowStatus,
TAddress, TDomain FROM SNMPv2-TC
SnmpAdminString, SnmpEngineID FROM SNMP-FRAMEWORK-MIB
MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF;
notificationLogMIB MODULE-IDENTITY
LAST-UPDATED "200011270000Z" -- 27 November 2000
ORGANIZATION "IETF Distributed Management Working Group"
CONTACT-INFO "Ramanathan Kavasseri
Cisco Systems, Inc.
170 West Tasman Drive,
San Jose CA 95134-1706.
Phone: +1 408 527 2446
Email: ramk@cisco.com"
DESCRIPTION
"The MIB module for logging SNMP Notifications, that is, Traps
and Informs."
-- Revision History
REVISION "200011270000Z" -- 27 November 2000
DESCRIPTION "This is the initial version of this MIB.
Published as RFC 3014"
::= { mib-2 92 }
notificationLogMIBObjects OBJECT IDENTIFIER ::= { notificationLogMIB 1 }
nlmConfig OBJECT IDENTIFIER ::= { notificationLogMIBObjects 1 }
nlmStats OBJECT IDENTIFIER ::= { notificationLogMIBObjects 2 }
nlmLog OBJECT IDENTIFIER ::= { notificationLogMIBObjects 3 }
--
-- Configuration Section
--
nlmConfigGlobalEntryLimit OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The maximum number of notification entries that may be held
in nlmLogTable for all nlmLogNames added together. A particular
setting does not guarantee that much data can be held.
If an application changes the limit while there are
Notifications in the log, the oldest Notifications MUST be
discarded to bring the log down to the new limit - thus the
value of nlmConfigGlobalEntryLimit MUST take precedence over
the values of nlmConfigGlobalAgeOut and nlmConfigLogEntryLimit,
even if the Notification being discarded has been present for
fewer minutes than the value of nlmConfigGlobalAgeOut, or if
the named log has fewer entries than that specified in
nlmConfigLogEntryLimit.
A value of 0 means no limit.
Please be aware that contention between multiple managers
trying to set this object to different values MAY affect the
reliability and completeness of data seen by each manager."
DEFVAL { 0 }
::= { nlmConfig 1 }
nlmConfigGlobalAgeOut OBJECT-TYPE
SYNTAX Unsigned32
UNITS "minutes"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The number of minutes a Notification SHOULD be kept in a log
before it is automatically removed.
If an application changes the value of nlmConfigGlobalAgeOut,
Notifications older than the new time MAY be discarded to meet the
new time.
A value of 0 means no age out.
Please be aware that contention between multiple managers
trying to set this object to different values MAY affect the
reliability and completeness of data seen by each manager."
DEFVAL { 1440 } -- 24 hours
::= { nlmConfig 2 }
--
-- Basic Log Configuration Table
--
nlmConfigLogTable OBJECT-TYPE
SYNTAX SEQUENCE OF NlmConfigLogEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of logging control entries."
::= { nlmConfig 3 }
nlmConfigLogEntry OBJECT-TYPE
SYNTAX NlmConfigLogEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A logging control entry. Depending on the entry's storage type
entries may be supplied by the system or created and deleted by
applications using nlmConfigLogEntryStatus."
INDEX { nlmLogName }
::= { nlmConfigLogTable 1 }
NlmConfigLogEntry ::= SEQUENCE {
nlmLogName SnmpAdminString,
nlmConfigLogFilterName SnmpAdminString,
nlmConfigLogEntryLimit Unsigned32,
nlmConfigLogAdminStatus INTEGER,
nlmConfigLogOperStatus INTEGER,
nlmConfigLogStorageType StorageType,
nlmConfigLogEntryStatus RowStatus
}
nlmLogName OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE(0..32))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The name of the log.
An implementation may allow multiple named logs, up to some
implementation-specific limit (which may be none). A
zero-length log name is reserved for creation and deletion by
the managed system, and MUST be used as the default log name by
systems that do not support named logs."
::= { nlmConfigLogEntry 1 }
nlmConfigLogFilterName OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE(0..32))
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"A value of snmpNotifyFilterProfileName as used as an index
into the snmpNotifyFilterTable in the SNMP Notification MIB,
specifying the locally or remotely originated Notifications
to be filtered out and not logged in this log.
A zero-length value or a name that does not identify an
existing entry in snmpNotifyFilterTable indicate no
Notifications are to be logged in this log."
DEFVAL { ''H }
::= { nlmConfigLogEntry 2 }
nlmConfigLogEntryLimit OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The maximum number of notification entries that can be held in
nlmLogTable for this named log. A particular setting does not
guarantee that that much data can be held.
If an application changes the limit while there are
Notifications in the log, the oldest Notifications are discarded
to bring the log down to the new limit.
A value of 0 indicates no limit.
Please be aware that contention between multiple managers
trying to set this object to different values MAY affect the
reliability and completeness of data seen by each manager."
DEFVAL { 0 }
::= { nlmConfigLogEntry 3 }
nlmConfigLogAdminStatus OBJECT-TYPE
SYNTAX INTEGER { enabled(1), disabled(2) }
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"Control to enable or disable the log without otherwise
disturbing the log's entry.
Please be aware that contention between multiple managers
trying to set this object to different values MAY affect the
reliability and completeness of data seen by each manager."
DEFVAL { enabled }
::= { nlmConfigLogEntry 4 }
nlmConfigLogOperStatus OBJECT-TYPE
SYNTAX INTEGER { disabled(1), operational(2), noFilter(3) }
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The operational status of this log:
disabled administratively disabled
operational administratively enabled and working
noFilter administratively enabled but either
nlmConfigLogFilterName is zero length
or does not name an existing entry in
snmpNotifyFilterTable"
::= { nlmConfigLogEntry 5 }
nlmConfigLogStorageType OBJECT-TYPE
SYNTAX StorageType
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The storage type of this conceptual row."
::= { nlmConfigLogEntry 6 }
nlmConfigLogEntryStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"Control for creating and deleting entries. Entries may be
modified while active.
For non-null-named logs, the managed system records the security
credentials from the request that sets nlmConfigLogStatus
to 'active' and uses that identity to apply access control to
the objects in the Notification to decide if that Notification
may be logged."
::= { nlmConfigLogEntry 7 }
--
-- Statistics Section
--
nlmStatsGlobalNotificationsLogged OBJECT-TYPE
SYNTAX Counter32
UNITS "notifications"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of Notifications put into the nlmLogTable. This
counts a Notification once for each log entry, so a Notification
put into multiple logs is counted multiple times."
::= { nlmStats 1 }
nlmStatsGlobalNotificationsBumped OBJECT-TYPE
SYNTAX Counter32
UNITS "notifications"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of log entries discarded to make room for a new entry
due to lack of resources or the value of nlmConfigGlobalEntryLimit
or nlmConfigLogEntryLimit. This does not include entries discarded
due to the value of nlmConfigGlobalAgeOut."
::= { nlmStats 2 }
--
-- Log Statistics Table
--
nlmStatsLogTable OBJECT-TYPE
SYNTAX SEQUENCE OF NlmStatsLogEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of Notification log statistics entries."
::= { nlmStats 3 }
nlmStatsLogEntry OBJECT-TYPE
SYNTAX NlmStatsLogEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A Notification log statistics entry."
AUGMENTS { nlmConfigLogEntry }
::= { nlmStatsLogTable 1 }
NlmStatsLogEntry ::= SEQUENCE {
nlmStatsLogNotificationsLogged Counter32,
nlmStatsLogNotificationsBumped Counter32
}
nlmStatsLogNotificationsLogged OBJECT-TYPE
SYNTAX Counter32
UNITS "notifications"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of Notifications put in this named log."
::= { nlmStatsLogEntry 1 }
nlmStatsLogNotificationsBumped OBJECT-TYPE
SYNTAX Counter32
UNITS "notifications"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of log entries discarded from this named log to make
room for a new entry due to lack of resources or the value of
nlmConfigGlobalEntryLimit or nlmConfigLogEntryLimit. This does not
include entries discarded due to the value of
nlmConfigGlobalAgeOut."
::= { nlmStatsLogEntry 2 }
--
-- Log Section
--
--
-- Log Table
--
nlmLogTable OBJECT-TYPE
SYNTAX SEQUENCE OF NlmLogEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of Notification log entries.
It is an implementation-specific matter whether entries in this
table are preserved across initializations of the management
system. In general one would expect that they are not.
Note that keeping entries across initializations of the
management system leads to some confusion with counters and
TimeStamps, since both of those are based on sysUpTime, which
resets on management initialization. In this situation,
counters apply only after the reset and nlmLogTime for entries
made before the reset MUST be set to 0."
::= { nlmLog 1 }
nlmLogEntry OBJECT-TYPE
SYNTAX NlmLogEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A Notification log entry.
Entries appear in this table when Notifications occur and pass
filtering by nlmConfigLogFilterName and access control. They are
removed to make way for new entries due to lack of resources or
the values of nlmConfigGlobalEntryLimit, nlmConfigGlobalAgeOut, or
nlmConfigLogEntryLimit.
If adding an entry would exceed nlmConfigGlobalEntryLimit or system
resources in general, the oldest entry in any log SHOULD be removed
to make room for the new one.
If adding an entry would exceed nlmConfigLogEntryLimit the oldest
entry in that log SHOULD be removed to make room for the new one.
Before the managed system puts a locally-generated Notification
into a non-null-named log it assures that the creator of the log
has access to the information in the Notification. If not it
does not log that Notification in that log."
INDEX { nlmLogName, nlmLogIndex }
::= { nlmLogTable 1 }
NlmLogEntry ::= SEQUENCE {
nlmLogIndex Unsigned32,
nlmLogTime TimeStamp,
nlmLogDateAndTime DateAndTime,
nlmLogEngineID SnmpEngineID,
nlmLogEngineTAddress TAddress,
nlmLogEngineTDomain TDomain,
nlmLogContextEngineID SnmpEngineID,
nlmLogContextName SnmpAdminString,
nlmLogNotificationID OBJECT IDENTIFIER
}
nlmLogIndex OBJECT-TYPE
SYNTAX Unsigned32 (1..4294967295)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A monotonically increasing integer for the sole purpose of
indexing entries within the named log. When it reaches the
maximum value, an extremely unlikely event, the agent wraps the
value back to 1."
::= { nlmLogEntry 1 }
nlmLogTime OBJECT-TYPE
SYNTAX TimeStamp
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of sysUpTime when the entry was placed in the log. If
the entry occurred before the most recent management system
initialization this object value MUST be set to zero."
::= { nlmLogEntry 2 }
nlmLogDateAndTime OBJECT-TYPE
SYNTAX DateAndTime
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The local date and time when the entry was logged, instantiated
only by systems that have date and time capability."
::= { nlmLogEntry 3 }
nlmLogEngineID OBJECT-TYPE
SYNTAX SnmpEngineID
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The identification of the SNMP engine at which the Notification
originated.
If the log can contain Notifications from only one engine
or the Trap is in SNMPv1 format, this object is a zero-length
string."
::= { nlmLogEntry 4 }
nlmLogEngineTAddress OBJECT-TYPE
SYNTAX TAddress
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The transport service address of the SNMP engine from which the
Notification was received, formatted according to the corresponding
value of nlmLogEngineTDomain. This is used to identify the source
of an SNMPv1 trap, since an nlmLogEngineId cannot be extracted
from the SNMPv1 trap pdu.
This object MUST always be instantiated, even if the log
can contain Notifications from only one engine.
Please be aware that the nlmLogEngineTAddress may not uniquely
identify the SNMP engine from which the Notification was received.
For example, if an SNMP engine uses DHCP or NAT to obtain
ip addresses, the address it uses may be shared with other
network devices, and hence will not uniquely identify the
SNMP engine."
::= { nlmLogEntry 5 }
nlmLogEngineTDomain OBJECT-TYPE
SYNTAX TDomain
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Indicates the kind of transport service by which a Notification
was received from an SNMP engine. nlmLogEngineTAddress contains
the transport service address of the SNMP engine from which
this Notification was received.
Possible values for this object are presently found in the
Transport Mappings for SNMPv2 document (RFC 1906 [8])."
::= { nlmLogEntry 6 }
nlmLogContextEngineID OBJECT-TYPE
SYNTAX SnmpEngineID
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"If the Notification was received in a protocol which has a
contextEngineID element like SNMPv3, this object has that value.
Otherwise its value is a zero-length string."
::= { nlmLogEntry 7 }
nlmLogContextName OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The name of the SNMP MIB context from which the Notification came.
For SNMPv1 Traps this is the community string from the Trap."
::= { nlmLogEntry 8 }
nlmLogNotificationID OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The NOTIFICATION-TYPE object identifier of the Notification that
occurred."
::= { nlmLogEntry 9 }
--
-- Log Variable Table
--
nlmLogVariableTable OBJECT-TYPE
SYNTAX SEQUENCE OF NlmLogVariableEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of variables to go with Notification log entries."
::= { nlmLog 2 }
nlmLogVariableEntry OBJECT-TYPE
SYNTAX NlmLogVariableEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A Notification log entry variable.
Entries appear in this table when there are variables in
the varbind list of a Notification in nlmLogTable."
INDEX { nlmLogName, nlmLogIndex, nlmLogVariableIndex }
::= { nlmLogVariableTable 1 }
NlmLogVariableEntry ::= SEQUENCE {
nlmLogVariableIndex Unsigned32,
nlmLogVariableID OBJECT IDENTIFIER,
nlmLogVariableValueType INTEGER,
nlmLogVariableCounter32Val Counter32,
nlmLogVariableUnsigned32Val Unsigned32,
nlmLogVariableTimeTicksVal TimeTicks,
nlmLogVariableInteger32Val Integer32,
nlmLogVariableOctetStringVal OCTET STRING,
nlmLogVariableIpAddressVal IpAddress,
nlmLogVariableOidVal OBJECT IDENTIFIER,
nlmLogVariableCounter64Val Counter64,
nlmLogVariableOpaqueVal Opaque
}
nlmLogVariableIndex OBJECT-TYPE
SYNTAX Unsigned32 (1..4294967295)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A monotonically increasing integer, starting at 1 for a given
nlmLogIndex, for indexing variables within the logged
Notification."
::= { nlmLogVariableEntry 1 }
nlmLogVariableID OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The variable's object identifier."
::= { nlmLogVariableEntry 2 }
nlmLogVariableValueType OBJECT-TYPE
SYNTAX INTEGER { counter32(1), unsigned32(2), timeTicks(3),
integer32(4), ipAddress(5), octetString(6),
objectId(7), counter64(8), opaque(9) }
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The type of the value. One and only one of the value
objects that follow must be instantiated, based on this type."
::= { nlmLogVariableEntry 3 }
nlmLogVariableCounter32Val OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value when nlmLogVariableType is 'counter32'."
::= { nlmLogVariableEntry 4 }
nlmLogVariableUnsigned32Val OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value when nlmLogVariableType is 'unsigned32'."
::= { nlmLogVariableEntry 5 }
nlmLogVariableTimeTicksVal OBJECT-TYPE
SYNTAX TimeTicks
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value when nlmLogVariableType is 'timeTicks'."
::= { nlmLogVariableEntry 6 }
nlmLogVariableInteger32Val OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value when nlmLogVariableType is 'integer32'."
::= { nlmLogVariableEntry 7 }
nlmLogVariableOctetStringVal OBJECT-TYPE
SYNTAX OCTET STRING
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value when nlmLogVariableType is 'octetString'."
::= { nlmLogVariableEntry 8 }
nlmLogVariableIpAddressVal OBJECT-TYPE
SYNTAX IpAddress
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value when nlmLogVariableType is 'ipAddress'.
Although this seems to be unfriendly for IPv6, we
have to recognize that there are a number of older
MIBs that do contain an IPv4 format address, known
as IpAddress.
IPv6 addresses are represented using TAddress or
InetAddress, and so the underlying datatype is
OCTET STRING, and their value would be stored in
the nlmLogVariableOctetStringVal column."
::= { nlmLogVariableEntry 9 }
nlmLogVariableOidVal OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value when nlmLogVariableType is 'objectId'."
::= { nlmLogVariableEntry 10 }
nlmLogVariableCounter64Val OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value when nlmLogVariableType is 'counter64'."
::= { nlmLogVariableEntry 11 }
nlmLogVariableOpaqueVal OBJECT-TYPE
SYNTAX Opaque
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value when nlmLogVariableType is 'opaque'."
::= { nlmLogVariableEntry 12 }
--
-- Conformance
--
notificationLogMIBConformance OBJECT IDENTIFIER ::=
{ notificationLogMIB 3 }
notificationLogMIBCompliances OBJECT IDENTIFIER ::=
{ notificationLogMIBConformance 1 }
notificationLogMIBGroups OBJECT IDENTIFIER ::=
{ notificationLogMIBConformance 2 }
-- Compliance
notificationLogMIBCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"The compliance statement for entities which implement
the Notification Log MIB."
MODULE -- this module
MANDATORY-GROUPS {
notificationLogConfigGroup,
notificationLogStatsGroup,
notificationLogLogGroup
}
OBJECT nlmConfigGlobalEntryLimit
SYNTAX Unsigned32 (0..4294967295)
MIN-ACCESS read-only
DESCRIPTION
"Implementations may choose a limit and not allow it to be
changed or may enforce an upper or lower bound on the
limit."
OBJECT nlmConfigLogEntryLimit
SYNTAX Unsigned32 (0..4294967295)
MIN-ACCESS read-only
DESCRIPTION
"Implementations may choose a limit and not allow it to be
changed or may enforce an upper or lower bound on the
limit."
OBJECT nlmConfigLogEntryStatus
MIN-ACCESS read-only
DESCRIPTION
"Implementations may disallow the creation of named logs."
GROUP notificationLogDateGroup
DESCRIPTION
"This group is mandatory on systems that keep wall clock
date and time and should not be implemented on systems that
do not have a wall clock date."
::= { notificationLogMIBCompliances 1 }
-- Units of Conformance
notificationLogConfigGroup OBJECT-GROUP
OBJECTS {
nlmConfigGlobalEntryLimit,
nlmConfigGlobalAgeOut,
nlmConfigLogFilterName,
nlmConfigLogEntryLimit,
nlmConfigLogAdminStatus,
nlmConfigLogOperStatus,
nlmConfigLogStorageType,
nlmConfigLogEntryStatus
}
STATUS current
DESCRIPTION
"Notification log configuration management."
::= { notificationLogMIBGroups 1 }
notificationLogStatsGroup OBJECT-GROUP
OBJECTS {
nlmStatsGlobalNotificationsLogged,
nlmStatsGlobalNotificationsBumped,
nlmStatsLogNotificationsLogged,
nlmStatsLogNotificationsBumped
}
STATUS current
DESCRIPTION
"Notification log statistics."
::= { notificationLogMIBGroups 2 }
notificationLogLogGroup OBJECT-GROUP
OBJECTS {
nlmLogTime,
nlmLogEngineID,
nlmLogEngineTAddress,
nlmLogEngineTDomain,
nlmLogContextEngineID,
nlmLogContextName,
nlmLogNotificationID,
nlmLogVariableID,
nlmLogVariableValueType,
nlmLogVariableCounter32Val,
nlmLogVariableUnsigned32Val,
nlmLogVariableTimeTicksVal,
nlmLogVariableInteger32Val,
nlmLogVariableOctetStringVal,
nlmLogVariableIpAddressVal,
nlmLogVariableOidVal,
nlmLogVariableCounter64Val,
nlmLogVariableOpaqueVal
}
STATUS current
DESCRIPTION
"Notification log data."
::= { notificationLogMIBGroups 3 }
notificationLogDateGroup OBJECT-GROUP
OBJECTS {
nlmLogDateAndTime
}
STATUS current
DESCRIPTION
"Conditionally mandatory notification log data.
This group is mandatory on systems that keep wall
clock date and time and should not be implemented
on systems that do not have a wall clock date."
::= { notificationLogMIBGroups 4 }
END
share/snmp/mibs/SNMPv2-SMI.txt 0000644 00000021334 15055304121 0011770 0 ustar 00 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
share/snmp/mibs/SNMP-VIEW-BASED-ACM-MIB.txt 0000644 00000102562 15055304121 0013464 0 ustar 00 SNMP-VIEW-BASED-ACM-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF
MODULE-IDENTITY, OBJECT-TYPE,
snmpModules FROM SNMPv2-SMI
TestAndIncr,
RowStatus, StorageType FROM SNMPv2-TC
SnmpAdminString,
SnmpSecurityLevel,
SnmpSecurityModel FROM SNMP-FRAMEWORK-MIB;
snmpVacmMIB MODULE-IDENTITY
LAST-UPDATED "200210160000Z" -- 16 Oct 2002, midnight
ORGANIZATION "SNMPv3 Working Group"
CONTACT-INFO "WG-email: snmpv3@lists.tislabs.com
Subscribe: majordomo@lists.tislabs.com
In message body: subscribe snmpv3
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 5004
Rochester, New Hampshire 03866-5005
USA
EMail: dbh@enterasys.com
Phone: +1 603-337-2614
Co-editor: Bert Wijnen
Lucent Technologies
postal: Schagen 33
3461 GL Linschoten
Netherlands
email: bwijnen@lucent.com
phone: +31-348-480-685
Co-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
Co-editor: Keith McCloghrie
Cisco Systems, Inc.
postal: 170 West Tasman Drive
San Jose, CA 95134-1706
USA
email: kzm@cisco.com
phone: +1-408-526-5260
"
DESCRIPTION "The management information definitions for the
View-based Access Control Model for SNMP.
Copyright (C) The Internet Society (2002). This
version of this MIB module is part of RFC 3415;
see the RFC itself for full legal notices.
"
-- Revision history
REVISION "200210160000Z" -- 16 Oct 2002, midnight
DESCRIPTION "Clarifications, published as RFC3415"
REVISION "199901200000Z" -- 20 Jan 1999, midnight
DESCRIPTION "Clarifications, published as RFC2575"
REVISION "199711200000Z" -- 20 Nov 1997, midnight
DESCRIPTION "Initial version, published as RFC2275"
::= { snmpModules 16 }
-- Administrative assignments ****************************************
vacmMIBObjects OBJECT IDENTIFIER ::= { snmpVacmMIB 1 }
vacmMIBConformance OBJECT IDENTIFIER ::= { snmpVacmMIB 2 }
-- Information about Local Contexts **********************************
vacmContextTable OBJECT-TYPE
SYNTAX SEQUENCE OF VacmContextEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "The table of locally available contexts.
This table provides information to SNMP Command
Generator applications so that they can properly
configure the vacmAccessTable to control access to
all contexts at the SNMP entity.
This table may change dynamically if the SNMP entity
allows that contexts are added/deleted dynamically
(for instance when its configuration changes). Such
changes would happen only if the management
instrumentation at that SNMP entity recognizes more
(or fewer) contexts.
The presence of entries in this table and of entries
in the vacmAccessTable are independent. That is, a
context identified by an entry in this table is not
necessarily referenced by any entries in the
vacmAccessTable; and the context(s) referenced by an
entry in the vacmAccessTable does not necessarily
currently exist and thus need not be identified by an
entry in this table.
This table must be made accessible via the default
context so that Command Responder applications have
a standard way of retrieving the information.
This table is read-only. It cannot be configured via
SNMP.
"
::= { vacmMIBObjects 1 }
vacmContextEntry OBJECT-TYPE
SYNTAX VacmContextEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "Information about a particular context."
INDEX {
vacmContextName
}
::= { vacmContextTable 1 }
VacmContextEntry ::= SEQUENCE
{
vacmContextName SnmpAdminString
}
vacmContextName OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE(0..32))
MAX-ACCESS read-only
STATUS current
DESCRIPTION "A human readable name identifying a particular
context at a particular SNMP entity.
The empty contextName (zero length) represents the
default context.
"
::= { vacmContextEntry 1 }
-- Information about Groups ******************************************
vacmSecurityToGroupTable OBJECT-TYPE
SYNTAX SEQUENCE OF VacmSecurityToGroupEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "This table maps a combination of securityModel and
securityName into a groupName which is used to define
an access control policy for a group of principals.
"
::= { vacmMIBObjects 2 }
vacmSecurityToGroupEntry OBJECT-TYPE
SYNTAX VacmSecurityToGroupEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "An entry in this table maps the combination of a
securityModel and securityName into a groupName.
"
INDEX {
vacmSecurityModel,
vacmSecurityName
}
::= { vacmSecurityToGroupTable 1 }
VacmSecurityToGroupEntry ::= SEQUENCE
{
vacmSecurityModel SnmpSecurityModel,
vacmSecurityName SnmpAdminString,
vacmGroupName SnmpAdminString,
vacmSecurityToGroupStorageType StorageType,
vacmSecurityToGroupStatus RowStatus
}
vacmSecurityModel OBJECT-TYPE
SYNTAX SnmpSecurityModel(1..2147483647)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "The Security Model, by which the vacmSecurityName
referenced by this entry is provided.
Note, this object may not take the 'any' (0) value.
"
::= { vacmSecurityToGroupEntry 1 }
vacmSecurityName OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE(1..32))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "The securityName for the principal, represented in a
Security Model independent format, which is mapped by
this entry to a groupName.
"
::= { vacmSecurityToGroupEntry 2 }
vacmGroupName OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE(1..32))
MAX-ACCESS read-create
STATUS current
DESCRIPTION "The name of the group to which this entry (e.g., the
combination of securityModel and securityName)
belongs.
This groupName is used as index into the
vacmAccessTable to select an access control policy.
However, a value in this table does not imply that an
instance with the value exists in table vacmAccesTable.
"
::= { vacmSecurityToGroupEntry 3 }
vacmSecurityToGroupStorageType OBJECT-TYPE
SYNTAX StorageType
MAX-ACCESS read-create
STATUS current
DESCRIPTION "The storage type for this conceptual row.
Conceptual rows having the value 'permanent' need not
allow write-access to any columnar objects in the row.
"
DEFVAL { nonVolatile }
::= { vacmSecurityToGroupEntry 4 }
vacmSecurityToGroupStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION "The status of this conceptual row.
Until instances of all corresponding columns are
appropriately configured, the value of the
corresponding instance of the vacmSecurityToGroupStatus
column is 'notReady'.
In particular, a newly created row cannot be made
active until a value has been set for vacmGroupName.
The RowStatus TC [RFC2579] requires that this
DESCRIPTION clause states under which circumstances
other objects in this row can be modified:
The value of this object has no effect on whether
other objects in this conceptual row can be modified.
"
::= { vacmSecurityToGroupEntry 5 }
-- Information about Access Rights ***********************************
vacmAccessTable OBJECT-TYPE
SYNTAX SEQUENCE OF VacmAccessEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "The table of access rights for groups.
Each entry is indexed by a groupName, a contextPrefix,
a securityModel and a securityLevel. To determine
whether access is allowed, one entry from this table
needs to be selected and the proper viewName from that
entry must be used for access control checking.
To select the proper entry, follow these steps:
1) the set of possible matches is formed by the
intersection of the following sets of entries:
the set of entries with identical vacmGroupName
the union of these two sets:
- the set with identical vacmAccessContextPrefix
- the set of entries with vacmAccessContextMatch
value of 'prefix' and matching
vacmAccessContextPrefix
intersected with the union of these two sets:
- the set of entries with identical
vacmSecurityModel
- the set of entries with vacmSecurityModel
value of 'any'
intersected with the set of entries with
vacmAccessSecurityLevel value less than or equal
to the requested securityLevel
2) if this set has only one member, we're done
otherwise, it comes down to deciding how to weight
the preferences between ContextPrefixes,
SecurityModels, and SecurityLevels as follows:
a) if the subset of entries with securityModel
matching the securityModel in the message is
not empty, then discard the rest.
b) if the subset of entries with
vacmAccessContextPrefix matching the contextName
in the message is not empty,
then discard the rest
c) discard all entries with ContextPrefixes shorter
than the longest one remaining in the set
d) select the entry with the highest securityLevel
Please note that for securityLevel noAuthNoPriv, all
groups are really equivalent since the assumption that
the securityName has been authenticated does not hold.
"
::= { vacmMIBObjects 4 }
vacmAccessEntry OBJECT-TYPE
SYNTAX VacmAccessEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "An access right configured in the Local Configuration
Datastore (LCD) authorizing access to an SNMP context.
Entries in this table can use an instance value for
object vacmGroupName even if no entry in table
vacmAccessSecurityToGroupTable has a corresponding
value for object vacmGroupName.
"
INDEX { vacmGroupName,
vacmAccessContextPrefix,
vacmAccessSecurityModel,
vacmAccessSecurityLevel
}
::= { vacmAccessTable 1 }
VacmAccessEntry ::= SEQUENCE
{
vacmAccessContextPrefix SnmpAdminString,
vacmAccessSecurityModel SnmpSecurityModel,
vacmAccessSecurityLevel SnmpSecurityLevel,
vacmAccessContextMatch INTEGER,
vacmAccessReadViewName SnmpAdminString,
vacmAccessWriteViewName SnmpAdminString,
vacmAccessNotifyViewName SnmpAdminString,
vacmAccessStorageType StorageType,
vacmAccessStatus RowStatus
}
vacmAccessContextPrefix OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE(0..32))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "In order to gain the access rights allowed by this
conceptual row, a contextName must match exactly
(if the value of vacmAccessContextMatch is 'exact')
or partially (if the value of vacmAccessContextMatch
is 'prefix') to the value of the instance of this
object.
"
::= { vacmAccessEntry 1 }
vacmAccessSecurityModel OBJECT-TYPE
SYNTAX SnmpSecurityModel
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "In order to gain the access rights allowed by this
conceptual row, this securityModel must be in use.
"
::= { vacmAccessEntry 2 }
vacmAccessSecurityLevel OBJECT-TYPE
SYNTAX SnmpSecurityLevel
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "The minimum level of security required in order to
gain the access rights allowed by this conceptual
row. A securityLevel of noAuthNoPriv is less than
authNoPriv which in turn is less than authPriv.
If multiple entries are equally indexed except for
this vacmAccessSecurityLevel index, then the entry
which has the highest value for
vacmAccessSecurityLevel is selected.
"
::= { vacmAccessEntry 3 }
vacmAccessContextMatch OBJECT-TYPE
SYNTAX INTEGER
{ exact (1), -- exact match of prefix and contextName
prefix (2) -- Only match to the prefix
}
MAX-ACCESS read-create
STATUS current
DESCRIPTION "If the value of this object is exact(1), then all
rows where the contextName exactly matches
vacmAccessContextPrefix are selected.
If the value of this object is prefix(2), then all
rows where the contextName whose starting octets
exactly match vacmAccessContextPrefix are selected.
This allows for a simple form of wildcarding.
"
DEFVAL { exact }
::= { vacmAccessEntry 4 }
vacmAccessReadViewName OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE(0..32))
MAX-ACCESS read-create
STATUS current
DESCRIPTION "The value of an instance of this object identifies
the MIB view of the SNMP context to which this
conceptual row authorizes read access.
The identified MIB view is that one for which the
vacmViewTreeFamilyViewName has the same value as the
instance of this object; if the value is the empty
string or if there is no active MIB view having this
value of vacmViewTreeFamilyViewName, then no access
is granted.
"
DEFVAL { ''H } -- the empty string
::= { vacmAccessEntry 5 }
vacmAccessWriteViewName OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE(0..32))
MAX-ACCESS read-create
STATUS current
DESCRIPTION "The value of an instance of this object identifies
the MIB view of the SNMP context to which this
conceptual row authorizes write access.
The identified MIB view is that one for which the
vacmViewTreeFamilyViewName has the same value as the
instance of this object; if the value is the empty
string or if there is no active MIB view having this
value of vacmViewTreeFamilyViewName, then no access
is granted.
"
DEFVAL { ''H } -- the empty string
::= { vacmAccessEntry 6 }
vacmAccessNotifyViewName OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE(0..32))
MAX-ACCESS read-create
STATUS current
DESCRIPTION "The value of an instance of this object identifies
the MIB view of the SNMP context to which this
conceptual row authorizes access for notifications.
The identified MIB view is that one for which the
vacmViewTreeFamilyViewName has the same value as the
instance of this object; if the value is the empty
string or if there is no active MIB view having this
value of vacmViewTreeFamilyViewName, then no access
is granted.
"
DEFVAL { ''H } -- the empty string
::= { vacmAccessEntry 7 }
vacmAccessStorageType OBJECT-TYPE
SYNTAX StorageType
MAX-ACCESS read-create
STATUS current
DESCRIPTION "The storage type for this conceptual row.
Conceptual rows having the value 'permanent' need not
allow write-access to any columnar objects in the row.
"
DEFVAL { nonVolatile }
::= { vacmAccessEntry 8 }
vacmAccessStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION "The status of this conceptual row.
The RowStatus TC [RFC2579] requires that this
DESCRIPTION clause states under which circumstances
other objects in this row can be modified:
The value of this object has no effect on whether
other objects in this conceptual row can be modified.
"
::= { vacmAccessEntry 9 }
-- Information about MIB views ***************************************
-- Support for instance-level granularity is optional.
--
-- In some implementations, instance-level access control
-- granularity may come at a high performance cost. Managers
-- should avoid requesting such configurations unnecessarily.
vacmMIBViews OBJECT IDENTIFIER ::= { vacmMIBObjects 5 }
vacmViewSpinLock OBJECT-TYPE
SYNTAX TestAndIncr
MAX-ACCESS read-write
STATUS current
DESCRIPTION "An advisory lock used to allow cooperating SNMP
Command Generator applications to coordinate their
use of the Set operation in creating or modifying
views.
When creating a new view or altering an existing
view, it is important to understand the potential
interactions with other uses of the view. The
vacmViewSpinLock should be retrieved. The name of
the view to be created should be determined to be
unique by the SNMP Command Generator application by
consulting the vacmViewTreeFamilyTable. Finally,
the named view may be created (Set), including the
advisory lock.
If another SNMP Command Generator application has
altered the views in the meantime, then the spin
lock's value will have changed, and so this creation
will fail because it will specify the wrong value for
the spin lock.
Since this is an advisory lock, the use of this lock
is not enforced.
"
::= { vacmMIBViews 1 }
vacmViewTreeFamilyTable OBJECT-TYPE
SYNTAX SEQUENCE OF VacmViewTreeFamilyEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "Locally held information about families of subtrees
within MIB views.
Each MIB view is defined by two sets of view subtrees:
- the included view subtrees, and
- the excluded view subtrees.
Every such view subtree, both the included and the
excluded ones, is defined in this table.
To determine if a particular object instance is in
a particular MIB view, compare the object instance's
OBJECT IDENTIFIER with each of the MIB view's active
entries in this table. If none match, then the
object instance is not in the MIB view. If one or
more match, then the object instance is included in,
or excluded from, the MIB view according to the
value of vacmViewTreeFamilyType in the entry whose
value of vacmViewTreeFamilySubtree has the most
sub-identifiers. If multiple entries match and have
the same number of sub-identifiers (when wildcarding
is specified with the value of vacmViewTreeFamilyMask),
then the lexicographically greatest instance of
vacmViewTreeFamilyType determines the inclusion or
exclusion.
An object instance's OBJECT IDENTIFIER X matches an
active entry in this table when the number of
sub-identifiers in X is at least as many as in the
value of vacmViewTreeFamilySubtree for the entry,
and each sub-identifier in the value of
vacmViewTreeFamilySubtree matches its corresponding
sub-identifier in X. Two sub-identifiers match
either if the corresponding bit of the value of
vacmViewTreeFamilyMask for the entry is zero (the
'wild card' value), or if they are equal.
A 'family' of subtrees is the set of subtrees defined
by a particular combination of values of
vacmViewTreeFamilySubtree and vacmViewTreeFamilyMask.
In the case where no 'wild card' is defined in the
vacmViewTreeFamilyMask, the family of subtrees reduces
to a single subtree.
When creating or changing MIB views, an SNMP Command
Generator application should utilize the
vacmViewSpinLock to try to avoid collisions. See
DESCRIPTION clause of vacmViewSpinLock.
When creating MIB views, it is strongly advised that
first the 'excluded' vacmViewTreeFamilyEntries are
created and then the 'included' entries.
When deleting MIB views, it is strongly advised that
first the 'included' vacmViewTreeFamilyEntries are
deleted and then the 'excluded' entries.
If a create for an entry for instance-level access
control is received and the implementation does not
support instance-level granularity, then an
inconsistentName error must be returned.
"
::= { vacmMIBViews 2 }
vacmViewTreeFamilyEntry OBJECT-TYPE
SYNTAX VacmViewTreeFamilyEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "Information on a particular family of view subtrees
included in or excluded from a particular SNMP
context's MIB view.
Implementations must not restrict the number of
families of view subtrees for a given MIB view,
except as dictated by resource constraints on the
overall number of entries in the
vacmViewTreeFamilyTable.
If no conceptual rows exist in this table for a given
MIB view (viewName), that view may be thought of as
consisting of the empty set of view subtrees.
"
INDEX { vacmViewTreeFamilyViewName,
vacmViewTreeFamilySubtree
}
::= { vacmViewTreeFamilyTable 1 }
VacmViewTreeFamilyEntry ::= SEQUENCE
{
vacmViewTreeFamilyViewName SnmpAdminString,
vacmViewTreeFamilySubtree OBJECT IDENTIFIER,
vacmViewTreeFamilyMask OCTET STRING,
vacmViewTreeFamilyType INTEGER,
vacmViewTreeFamilyStorageType StorageType,
vacmViewTreeFamilyStatus RowStatus
}
vacmViewTreeFamilyViewName OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE(1..32))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "The human readable name for a family of view subtrees.
"
::= { vacmViewTreeFamilyEntry 1 }
vacmViewTreeFamilySubtree OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "The MIB subtree which when combined with the
corresponding instance of vacmViewTreeFamilyMask
defines a family of view subtrees.
"
::= { vacmViewTreeFamilyEntry 2 }
vacmViewTreeFamilyMask OBJECT-TYPE
SYNTAX OCTET STRING (SIZE (0..16))
MAX-ACCESS read-create
STATUS current
DESCRIPTION "The bit mask which, in combination with the
corresponding instance of vacmViewTreeFamilySubtree,
defines a family of view subtrees.
Each bit of this bit mask corresponds to a
sub-identifier of vacmViewTreeFamilySubtree, with the
most significant bit of the i-th octet of this octet
string value (extended if necessary, see below)
corresponding to the (8*i - 7)-th sub-identifier, and
the least significant bit of the i-th octet of this
octet string corresponding to the (8*i)-th
sub-identifier, where i is in the range 1 through 16.
Each bit of this bit mask specifies whether or not
the corresponding sub-identifiers must match when
determining if an OBJECT IDENTIFIER is in this
family of view subtrees; a '1' indicates that an
exact match must occur; a '0' indicates 'wild card',
i.e., any sub-identifier value matches.
Thus, the OBJECT IDENTIFIER X of an object instance
is contained in a family of view subtrees if, for
each sub-identifier of the value of
vacmViewTreeFamilySubtree, either:
the i-th bit of vacmViewTreeFamilyMask is 0, or
the i-th sub-identifier of X is equal to the i-th
sub-identifier of the value of
vacmViewTreeFamilySubtree.
If the value of this bit mask is M bits long and
there are more than M sub-identifiers in the
corresponding instance of vacmViewTreeFamilySubtree,
then the bit mask is extended with 1's to be the
required length.
Note that when the value of this object is the
zero-length string, this extension rule results in
a mask of all-1's being used (i.e., no 'wild card'),
and the family of view subtrees is the one view
subtree uniquely identified by the corresponding
instance of vacmViewTreeFamilySubtree.
Note that masks of length greater than zero length
do not need to be supported. In this case this
object is made read-only.
"
DEFVAL { ''H }
::= { vacmViewTreeFamilyEntry 3 }
vacmViewTreeFamilyType OBJECT-TYPE
SYNTAX INTEGER { included(1), excluded(2) }
MAX-ACCESS read-create
STATUS current
DESCRIPTION "Indicates whether the corresponding instances of
vacmViewTreeFamilySubtree and vacmViewTreeFamilyMask
define a family of view subtrees which is included in
or excluded from the MIB view.
"
DEFVAL { included }
::= { vacmViewTreeFamilyEntry 4 }
vacmViewTreeFamilyStorageType OBJECT-TYPE
SYNTAX StorageType
MAX-ACCESS read-create
STATUS current
DESCRIPTION "The storage type for this conceptual row.
Conceptual rows having the value 'permanent' need not
allow write-access to any columnar objects in the row.
"
DEFVAL { nonVolatile }
::= { vacmViewTreeFamilyEntry 5 }
vacmViewTreeFamilyStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION "The status of this conceptual row.
The RowStatus TC [RFC2579] requires that this
DESCRIPTION clause states under which circumstances
other objects in this row can be modified:
The value of this object has no effect on whether
other objects in this conceptual row can be modified.
"
::= { vacmViewTreeFamilyEntry 6 }
-- Conformance information *******************************************
vacmMIBCompliances OBJECT IDENTIFIER ::= { vacmMIBConformance 1 }
vacmMIBGroups OBJECT IDENTIFIER ::= { vacmMIBConformance 2 }
-- Compliance statements *********************************************
vacmMIBCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION "The compliance statement for SNMP engines which
implement the SNMP View-based Access Control Model
configuration MIB.
"
MODULE -- this module
MANDATORY-GROUPS { vacmBasicGroup }
OBJECT vacmAccessContextMatch
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
OBJECT vacmAccessReadViewName
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
OBJECT vacmAccessWriteViewName
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
OBJECT vacmAccessNotifyViewName
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
OBJECT vacmAccessStorageType
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
OBJECT vacmAccessStatus
MIN-ACCESS read-only
DESCRIPTION "Create/delete/modify access to the
vacmAccessTable is not required.
"
OBJECT vacmViewTreeFamilyMask
WRITE-SYNTAX OCTET STRING (SIZE (0))
MIN-ACCESS read-only
DESCRIPTION "Support for configuration via SNMP of subtree
families using wild-cards is not required.
"
OBJECT vacmViewTreeFamilyType
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
OBJECT vacmViewTreeFamilyStorageType
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
OBJECT vacmViewTreeFamilyStatus
MIN-ACCESS read-only
DESCRIPTION "Create/delete/modify access to the
vacmViewTreeFamilyTable is not required.
"
::= { vacmMIBCompliances 1 }
-- Units of conformance **********************************************
vacmBasicGroup OBJECT-GROUP
OBJECTS {
vacmContextName,
vacmGroupName,
vacmSecurityToGroupStorageType,
vacmSecurityToGroupStatus,
vacmAccessContextMatch,
vacmAccessReadViewName,
vacmAccessWriteViewName,
vacmAccessNotifyViewName,
vacmAccessStorageType,
vacmAccessStatus,
vacmViewSpinLock,
vacmViewTreeFamilyMask,
vacmViewTreeFamilyType,
vacmViewTreeFamilyStorageType,
vacmViewTreeFamilyStatus
}
STATUS current
DESCRIPTION "A collection of objects providing for remote
configuration of an SNMP engine which implements
the SNMP View-based Access Control Model.
"
::= { vacmMIBGroups 1 }
END
share/snmp/mibs/UCD-IPFWACC-MIB.txt 0000644 00000017666 15055304121 0012424 0 ustar 00 UCD-IPFWACC-MIB DEFINITIONS ::= BEGIN
IMPORTS
OBJECT-TYPE, MODULE-IDENTITY, IpAddress, Integer32, Counter32
FROM SNMPv2-SMI
DisplayString
FROM SNMPv2-TC
ucdExperimental
FROM UCD-SNMP-MIB;
ucdIpFwAccMIB MODULE-IDENTITY
LAST-UPDATED "9912160000Z"
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 module defines MIB components for reading information
from the accounting rules IP Firewall. This would typically
let you read the rules and the counters. I did not include
some flags and fields that I considered irrelevant for the
accounting rules. Resetting the counters of the rules by SNMP
would be simple, but I don't consider it so useful. I gave no
consideration to implementing write access for allowing
modification of the accounting rules.
Cristian.Estan@net.utcluj.ro "
REVISION "9912160000Z"
DESCRIPTION
"SMIv2 version converted from an older MIB definition."
::= { ucdExperimental 1 }
ipFwAccTable OBJECT-TYPE
SYNTAX SEQUENCE OF IpFwAccEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table with the accounting rules of the IP firewall"
::= { ucdIpFwAccMIB 1 }
ipFwAccEntry OBJECT-TYPE
SYNTAX IpFwAccEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An accounting rule of the IP firewall"
INDEX { ipFwAccIndex }
::= { ipFwAccTable 1 }
IpFwAccEntry ::= SEQUENCE {
ipFwAccIndex Integer32,
ipFwAccSrcAddr IpAddress,
ipFwAccSrcNetMask IpAddress,
ipFwAccDstAddr IpAddress,
ipFwAccDstNetMask IpAddress,
ipFwAccViaName DisplayString,
ipFwAccViaAddr IpAddress,
ipFwAccProto INTEGER,
ipFwAccBidir INTEGER,
ipFwAccDir INTEGER,
ipFwAccBytes Counter32,
ipFwAccPackets Counter32,
ipFwAccNrSrcPorts Integer32,
ipFwAccNrDstPorts Integer32,
ipFwAccSrcIsRange INTEGER,
ipFwAccDstIsRange INTEGER,
ipFwAccPort1 Integer32,
ipFwAccPort2 Integer32,
ipFwAccPort3 Integer32,
ipFwAccPort4 Integer32,
ipFwAccPort5 Integer32,
ipFwAccPort6 Integer32,
ipFwAccPort7 Integer32,
ipFwAccPort8 Integer32,
ipFwAccPort9 Integer32,
ipFwAccPort10 Integer32
}
ipFwAccIndex OBJECT-TYPE
SYNTAX Integer32 (0..2147483647)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Reference index for each firewall rule."
::= { ipFwAccEntry 1 }
ipFwAccSrcAddr OBJECT-TYPE
SYNTAX IpAddress
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The source address in the firewall rule."
::= { ipFwAccEntry 2 }
ipFwAccSrcNetMask OBJECT-TYPE
SYNTAX IpAddress
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The netmask of the source address in the firewall rule."
::= { ipFwAccEntry 3 }
ipFwAccDstAddr OBJECT-TYPE
SYNTAX IpAddress
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The destination address in the firewall rule."
::= { ipFwAccEntry 4 }
ipFwAccDstNetMask OBJECT-TYPE
SYNTAX IpAddress
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The netmask of the destination address in the firewall rule."
::= { ipFwAccEntry 5 }
ipFwAccViaName OBJECT-TYPE
SYNTAX DisplayString (SIZE(1..64))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The name of the interface to which the rule applies. If no
interface is associated with the present rule, this should
contain a dash (-)."
::= { ipFwAccEntry 6 }
ipFwAccViaAddr OBJECT-TYPE
SYNTAX IpAddress
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The address of the interface to which the rule applies.
Using this parameter makes sense when multiple addresses are
associated to the same physical interface. If not defined
for the current rule this should be set to 0."
::= { ipFwAccEntry 7 }
ipFwAccProto OBJECT-TYPE
SYNTAX INTEGER {
other(1),
all(2),
tcp(3),
udp(4),
icmp(5)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The protocol(s) to which the rule applies."
::= { ipFwAccEntry 8 }
ipFwAccBidir OBJECT-TYPE
SYNTAX INTEGER {
unidirectional(1),
bidirectional(2)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Whether the rule works in both directions (i.e. with the
source and destination parts swapped) or not."
::= { ipFwAccEntry 9 }
ipFwAccDir OBJECT-TYPE
SYNTAX INTEGER {
both(1),
in(2),
out(3)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Whether the rule applies to packets entering or exiting the
kernel."
::= { ipFwAccEntry 10 }
ipFwAccBytes OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of bytes that matched this rule since the last
reset of the counters."
::= { ipFwAccEntry 11 }
ipFwAccPackets OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of packets that matched this rule since the last
reset of the counters."
::= { ipFwAccEntry 12 }
ipFwAccNrSrcPorts OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of ports that refer to the source address."
::= { ipFwAccEntry 13 }
ipFwAccNrDstPorts OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of ports that refer to the destination address."
::= { ipFwAccEntry 14 }
ipFwAccSrcIsRange OBJECT-TYPE
SYNTAX INTEGER {
srchasrange(1),
srchasnorange(2)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Interpret the first two ports of the source part as
the upper and lower limit of an interval or not."
::= { ipFwAccEntry 15 }
ipFwAccDstIsRange OBJECT-TYPE
SYNTAX INTEGER {
dsthasrange(1),
dsthasnorange(2)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Interpret the first two ports of the destination part as
the upper and lower limit of an interval or not."
::= { ipFwAccEntry 16 }
ipFwAccPort1 OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Port number 1."
::= { ipFwAccEntry 17 }
ipFwAccPort2 OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Port number 2."
::= { ipFwAccEntry 18 }
ipFwAccPort3 OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Port number 3."
::= { ipFwAccEntry 19 }
ipFwAccPort4 OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Port number 4."
::= { ipFwAccEntry 20 }
ipFwAccPort5 OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Port number 5."
::= { ipFwAccEntry 21 }
ipFwAccPort6 OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Port number 6."
::= { ipFwAccEntry 22 }
ipFwAccPort7 OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Port number 7."
::= { ipFwAccEntry 23 }
ipFwAccPort8 OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Port number 8."
::= { ipFwAccEntry 24 }
ipFwAccPort9 OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Port number 9."
::= { ipFwAccEntry 25 }
ipFwAccPort10 OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Port number 10."
::= { ipFwAccEntry 26 }
END
share/snmp/mibs/IPV6-TC.txt 0000644 00000006122 15055304121 0011343 0 ustar 00 IPV6-TC DEFINITIONS ::= BEGIN
-- Copyright (c) 2017 IETF Trust and the persons identified as
-- authors of the code. All rights reserved.
-- Redistribution and use in source and binary forms, with or without
-- modification, is permitted pursuant to, and subject to the license
-- terms contained in, the Simplified BSD License set forth in Section
-- 4.c of the IETF Trust's Legal Provisions Relating to IETF Documents
-- (http://trustee.ietf.org/license-info).
IMPORTS
Integer32 FROM SNMPv2-SMI
TEXTUAL-CONVENTION FROM SNMPv2-TC;
-- definition of textual conventions
Ipv6Address ::= TEXTUAL-CONVENTION
DISPLAY-HINT "2x:"
STATUS obsolete
DESCRIPTION
"This data type is used to model IPv6 addresses.
This is a binary string of 16 octets in network
byte-order.
This object is obsoleted by INET-ADDRESS-MIB::InetAddress."
SYNTAX OCTET STRING (SIZE (16))
Ipv6AddressPrefix ::= TEXTUAL-CONVENTION
DISPLAY-HINT "2x:"
STATUS obsolete
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.
This object is obsoleted by INET-ADDRESS-MIB::InetAddress."
SYNTAX OCTET STRING (SIZE (0..16))
Ipv6AddressIfIdentifier ::= TEXTUAL-CONVENTION
DISPLAY-HINT "2x:"
STATUS obsolete
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.
This object is obsoleted by IP-MIB::Ipv6AddressIfIdentifierTC."
SYNTAX OCTET STRING (SIZE (0..8))
Ipv6IfIndex ::= TEXTUAL-CONVENTION
DISPLAY-HINT "d"
STATUS obsolete
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.
This object is obsoleted by IF-MIB::InterfaceIndex."
SYNTAX Integer32 (1..2147483647)
Ipv6IfIndexOrZero ::= TEXTUAL-CONVENTION
DISPLAY-HINT "d"
STATUS obsolete
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.
This object is obsoleted by IF-MIB::InterfaceIndexOrZero."
SYNTAX Integer32 (0..2147483647)
END
share/snmp/mibs/HOST-RESOURCES-MIB.txt 0000644 00000146500 15055304121 0013052 0 ustar 00 HOST-RESOURCES-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, OBJECT-TYPE, mib-2,
Integer32, Counter32, Gauge32, TimeTicks FROM SNMPv2-SMI
TEXTUAL-CONVENTION, DisplayString,
TruthValue, DateAndTime, AutonomousType FROM SNMPv2-TC
MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF
InterfaceIndexOrZero FROM IF-MIB;
hostResourcesMibModule MODULE-IDENTITY
LAST-UPDATED "200003060000Z" -- 6 March 2000
ORGANIZATION "IETF Host Resources MIB Working Group"
CONTACT-INFO
"Steve Waldbusser
Postal: Lucent Technologies, Inc.
1213 Innsbruck Dr.
Sunnyvale, CA 94089
USA
Phone: 650-318-1251
Fax: 650-318-1633
Email: waldbusser@lucent.com
In addition, the Host Resources MIB mailing list is
dedicated to discussion of this MIB. To join the
mailing list, send a request message to
hostmib-request@andrew.cmu.edu. The mailing list
address is hostmib@andrew.cmu.edu."
DESCRIPTION
"This MIB is for use in managing host systems. The term
`host' is construed to mean any computer that communicates
with other similar computers attached to the internet and
that is directly used by one or more human beings. Although
this MIB does not necessarily apply to devices whose primary
function is communications services (e.g., terminal servers,
routers, bridges, monitoring equipment), such relevance is
not explicitly precluded. This MIB instruments attributes
common to all internet hosts including, for example, both
personal computers and systems that run variants of Unix."
REVISION "200003060000Z" -- 6 March 2000
DESCRIPTION
"Clarifications and bug fixes based on implementation
experience. This revision was also reformatted in the SMIv2
format. The revisions made were:
New RFC document standards:
Added Copyright notice, updated introduction to SNMP
Framework, updated references section, added reference to
RFC 2119, and added a meaningful Security Considerations
section.
New IANA considerations section for registration of new types
Conversion to new SMIv2 syntax for the following types and
macros:
Counter32, Integer32, Gauge32, MODULE-IDENTITY,
OBJECT-TYPE, TEXTUAL-CONVENTION, OBJECT-IDENTITY,
MODULE-COMPLIANCE, OBJECT-GROUP
Used new Textual Conventions:
TruthValue, DateAndTime, AutonomousType,
InterfaceIndexOrZero
Fixed typo in hrPrinterStatus.
Added missing error bits to hrPrinterDetectedErrorState and
clarified confusion resulting from suggested mappings to
hrPrinterStatus.
Clarified that size of objects of type
InternationalDisplayString is number of octets, not number
of encoded symbols.
Clarified the use of the following objects based on
implementation experience:
hrSystemInitialLoadDevice, hrSystemInitialLoadParameters,
hrMemorySize, hrStorageSize, hrStorageAllocationFailures,
hrDeviceErrors, hrProcessorLoad, hrNetworkIfIndex,
hrDiskStorageCapacity, hrSWRunStatus, hrSWRunPerfCPU,
and hrSWInstalledDate.
Clarified implementation technique for hrSWInstalledTable.
Used new AUGMENTS clause for hrSWRunPerfTable.
Added Internationalization Considerations section.
This revision published as RFC2790."
REVISION "9910202200Z" -- 20 October, 1999
DESCRIPTION
"The original version of this MIB, published as
RFC1514."
::= { hrMIBAdminInfo 1 }
host OBJECT IDENTIFIER ::= { mib-2 25 }
hrSystem OBJECT IDENTIFIER ::= { host 1 }
hrStorage OBJECT IDENTIFIER ::= { host 2 }
hrDevice OBJECT IDENTIFIER ::= { host 3 }
hrSWRun OBJECT IDENTIFIER ::= { host 4 }
hrSWRunPerf OBJECT IDENTIFIER ::= { host 5 }
hrSWInstalled OBJECT IDENTIFIER ::= { host 6 }
hrMIBAdminInfo OBJECT IDENTIFIER ::= { host 7 }
-- textual conventions
KBytes ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Storage size, expressed in units of 1024 bytes."
SYNTAX Integer32 (0..2147483647)
ProductID ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"This textual convention is intended to identify the
manufacturer, model, and version of a specific
hardware or software product. It is suggested that
these OBJECT IDENTIFIERs are allocated such that all
products from a particular manufacturer are registered
under a subtree distinct to that manufacturer. In
addition, all versions of a product should be
registered under a subtree distinct to that product.
With this strategy, a management station may uniquely
determine the manufacturer and/or model of a product
whose productID is unknown to the management station.
Objects of this type may be useful for inventory
purposes or for automatically detecting
incompatibilities or version mismatches between
various hardware and software components on a system.
For example, the product ID for the ACME 4860 66MHz
clock doubled processor might be:
enterprises.acme.acmeProcessors.a4860DX2.MHz66
A software product might be registered as:
enterprises.acme.acmeOperatingSystems.acmeDOS.six(6).one(1)
"
SYNTAX OBJECT IDENTIFIER
-- unknownProduct will be used for any unknown ProductID
-- unknownProduct OBJECT IDENTIFIER ::= { 0 0 }
InternationalDisplayString ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"This data type is used to model textual information
in some character set. A network management station
should use a local algorithm to determine which
character set is in use and how it should be
displayed. Note that this character set may be
encoded with more than one octet per symbol, but will
most often be NVT ASCII. When a size clause is
specified for an object of this type, the size refers
to the length in octets, not the number of symbols."
SYNTAX OCTET STRING
-- The Host Resources System Group
hrSystemUptime OBJECT-TYPE
SYNTAX TimeTicks
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The amount of time since this host was last
initialized. Note that this is different from
sysUpTime in the SNMPv2-MIB [RFC1907] because
sysUpTime is the uptime of the network management
portion of the system."
::= { hrSystem 1 }
hrSystemDate OBJECT-TYPE
SYNTAX DateAndTime
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The host's notion of the local date and time of day."
::= { hrSystem 2 }
hrSystemInitialLoadDevice OBJECT-TYPE
SYNTAX Integer32 (1..2147483647)
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The index of the hrDeviceEntry for the device from
which this host is configured to load its initial
operating system configuration (i.e., which operating
system code and/or boot parameters).
Note that writing to this object just changes the
configuration that will be used the next time the
operating system is loaded and does not actually cause
the reload to occur."
::= { hrSystem 3 }
hrSystemInitialLoadParameters OBJECT-TYPE
SYNTAX InternationalDisplayString (SIZE (0..128))
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This object contains the parameters (e.g. a pathname
and parameter) supplied to the load device when
requesting the initial operating system configuration
from that device.
Note that writing to this object just changes the
configuration that will be used the next time the
operating system is loaded and does not actually cause
the reload to occur."
::= { hrSystem 4 }
hrSystemNumUsers OBJECT-TYPE
SYNTAX Gauge32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of user sessions for which this host is
storing state information. A session is a collection
of processes requiring a single act of user
authentication and possibly subject to collective job
control."
::= { hrSystem 5 }
hrSystemProcesses OBJECT-TYPE
SYNTAX Gauge32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of process contexts currently loaded or
running on this system."
::= { hrSystem 6 }
hrSystemMaxProcesses OBJECT-TYPE
SYNTAX Integer32 (0..2147483647)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The maximum number of process contexts this system
can support. If there is no fixed maximum, the value
should be zero. On systems that have a fixed maximum,
this object can help diagnose failures that occur when
this maximum is reached."
::= { hrSystem 7 }
-- The Host Resources Storage Group
-- Registration point for storage types, for use with hrStorageType.
-- These are defined in the HOST-RESOURCES-TYPES module.
hrStorageTypes OBJECT IDENTIFIER ::= { hrStorage 1 }
hrMemorySize OBJECT-TYPE
SYNTAX KBytes
UNITS "KBytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The amount of physical read-write main memory,
typically RAM, contained by the host."
::= { hrStorage 2 }
hrStorageTable OBJECT-TYPE
SYNTAX SEQUENCE OF HrStorageEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The (conceptual) table of logical storage areas on
the host.
An entry shall be placed in the storage table for each
logical area of storage that is allocated and has
fixed resource limits. The amount of storage
represented in an entity is the amount actually usable
by the requesting entity, and excludes loss due to
formatting or file system reference information.
These entries are associated with logical storage
areas, as might be seen by an application, rather than
physical storage entities which are typically seen by
an operating system. Storage such as tapes and
floppies without file systems on them are typically
not allocated in chunks by the operating system to
requesting applications, and therefore shouldn't
appear in this table. Examples of valid storage for
this table include disk partitions, file systems, ram
(for some architectures this is further segmented into
regular memory, extended memory, and so on), backing
store for virtual memory (`swap space').
This table is intended to be a useful diagnostic for
`out of memory' and `out of buffers' types of
failures. In addition, it can be a useful performance
monitoring tool for tracking memory, disk, or buffer
usage."
::= { hrStorage 3 }
hrStorageEntry OBJECT-TYPE
SYNTAX HrStorageEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A (conceptual) entry for one logical storage area on
the host. As an example, an instance of the
hrStorageType object might be named hrStorageType.3"
INDEX { hrStorageIndex }
::= { hrStorageTable 1 }
HrStorageEntry ::= SEQUENCE {
hrStorageIndex Integer32,
hrStorageType AutonomousType,
hrStorageDescr DisplayString,
hrStorageAllocationUnits Integer32,
hrStorageSize Integer32,
hrStorageUsed Integer32,
hrStorageAllocationFailures Counter32
}
hrStorageIndex OBJECT-TYPE
SYNTAX Integer32 (1..2147483647)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A unique value for each logical storage area
contained by the host."
::= { hrStorageEntry 1 }
hrStorageType OBJECT-TYPE
SYNTAX AutonomousType
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The type of storage represented by this entry."
::= { hrStorageEntry 2 }
hrStorageDescr OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A description of the type and instance of the storage
described by this entry."
::= { hrStorageEntry 3 }
hrStorageAllocationUnits OBJECT-TYPE
SYNTAX Integer32 (1..2147483647)
UNITS "Bytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The size, in bytes, of the data objects allocated
from this pool. If this entry is monitoring sectors,
blocks, buffers, or packets, for example, this number
will commonly be greater than one. Otherwise this
number will typically be one."
::= { hrStorageEntry 4 }
hrStorageSize OBJECT-TYPE
SYNTAX Integer32 (0..2147483647)
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The size of the storage represented by this entry, in
units of hrStorageAllocationUnits. This object is
writable to allow remote configuration of the size of
the storage area in those cases where such an
operation makes sense and is possible on the
underlying system. For example, the amount of main
memory allocated to a buffer pool might be modified or
the amount of disk space allocated to virtual memory
might be modified."
::= { hrStorageEntry 5 }
hrStorageUsed OBJECT-TYPE
SYNTAX Integer32 (0..2147483647)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The amount of the storage represented by this entry
that is allocated, in units of
hrStorageAllocationUnits."
::= { hrStorageEntry 6 }
hrStorageAllocationFailures OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of requests for storage represented by
this entry that could not be honored due to not enough
storage. It should be noted that as this object has a
SYNTAX of Counter32, that it does not have a defined
initial value. However, it is recommended that this
object be initialized to zero, even though management
stations must not depend on such an initialization."
::= { hrStorageEntry 7 }
-- The Host Resources Device Group
--
-- The device group is useful for identifying and diagnosing the
-- devices on a system. The hrDeviceTable contains common
-- information for any type of device. In addition, some devices
-- have device-specific tables for more detailed information. More
-- such tables may be defined in the future for other device types.
-- Registration point for device types, for use with hrDeviceType.
-- These are defined in the HOST-RESOURCES-TYPES module.
hrDeviceTypes OBJECT IDENTIFIER ::= { hrDevice 1 }
hrDeviceTable OBJECT-TYPE
SYNTAX SEQUENCE OF HrDeviceEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The (conceptual) table of devices contained by the
host."
::= { hrDevice 2 }
hrDeviceEntry OBJECT-TYPE
SYNTAX HrDeviceEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A (conceptual) entry for one device contained by the
host. As an example, an instance of the hrDeviceType
object might be named hrDeviceType.3"
INDEX { hrDeviceIndex }
::= { hrDeviceTable 1 }
HrDeviceEntry ::= SEQUENCE {
hrDeviceIndex Integer32,
hrDeviceType AutonomousType,
hrDeviceDescr DisplayString,
hrDeviceID ProductID,
hrDeviceStatus INTEGER,
hrDeviceErrors Counter32
}
hrDeviceIndex OBJECT-TYPE
SYNTAX Integer32 (1..2147483647)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A unique value for each device contained by the host.
The value for each device must remain constant at
least from one re-initialization of the agent to the
next re-initialization."
::= { hrDeviceEntry 1 }
hrDeviceType OBJECT-TYPE
SYNTAX AutonomousType
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"An indication of the type of device.
If this value is
`hrDeviceProcessor { hrDeviceTypes 3 }' then an entry
exists in the hrProcessorTable which corresponds to
this device.
If this value is
`hrDeviceNetwork { hrDeviceTypes 4 }', then an entry
exists in the hrNetworkTable which corresponds to this
device.
If this value is
`hrDevicePrinter { hrDeviceTypes 5 }', then an entry
exists in the hrPrinterTable which corresponds to this
device.
If this value is
`hrDeviceDiskStorage { hrDeviceTypes 6 }', then an
entry exists in the hrDiskStorageTable which
corresponds to this device."
::= { hrDeviceEntry 2 }
hrDeviceDescr OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..64))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A textual description of this device, including the
device's manufacturer and revision, and optionally,
its serial number."
::= { hrDeviceEntry 3 }
hrDeviceID OBJECT-TYPE
SYNTAX ProductID
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The product ID for this device."
::= { hrDeviceEntry 4 }
hrDeviceStatus OBJECT-TYPE
SYNTAX INTEGER {
unknown(1),
running(2),
warning(3),
testing(4),
down(5)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The current operational state of the device described
by this row of the table. A value unknown(1)
indicates that the current state of the device is
unknown. running(2) indicates that the device is up
and running and that no unusual error conditions are
known. The warning(3) state indicates that agent has
been informed of an unusual error condition by the
operational software (e.g., a disk device driver) but
that the device is still 'operational'. An example
would be a high number of soft errors on a disk. A
value of testing(4), indicates that the device is not
available for use because it is in the testing state.
The state of down(5) is used only when the agent has
been informed that the device is not available for any
use."
::= { hrDeviceEntry 5 }
hrDeviceErrors OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of errors detected on this device. It
should be noted that as this object has a SYNTAX of
Counter32, that it does not have a defined initial
value. However, it is recommended that this object be
initialized to zero, even though management stations
must not depend on such an initialization."
::= { hrDeviceEntry 6 }
hrProcessorTable OBJECT-TYPE
SYNTAX SEQUENCE OF HrProcessorEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The (conceptual) table of processors contained by the
host.
Note that this table is potentially sparse: a
(conceptual) entry exists only if the correspondent
value of the hrDeviceType object is
`hrDeviceProcessor'."
::= { hrDevice 3 }
hrProcessorEntry OBJECT-TYPE
SYNTAX HrProcessorEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A (conceptual) entry for one processor contained by
the host. The hrDeviceIndex in the index represents
the entry in the hrDeviceTable that corresponds to the
hrProcessorEntry.
As an example of how objects in this table are named,
an instance of the hrProcessorFrwID object might be
named hrProcessorFrwID.3"
INDEX { hrDeviceIndex }
::= { hrProcessorTable 1 }
HrProcessorEntry ::= SEQUENCE {
hrProcessorFrwID ProductID,
hrProcessorLoad Integer32
}
hrProcessorFrwID OBJECT-TYPE
SYNTAX ProductID
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The product ID of the firmware associated with the
processor."
::= { hrProcessorEntry 1 }
hrProcessorLoad OBJECT-TYPE
SYNTAX Integer32 (0..100)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The average, over the last minute, of the percentage
of time that this processor was not idle.
Implementations may approximate this one minute
smoothing period if necessary."
::= { hrProcessorEntry 2 }
hrNetworkTable OBJECT-TYPE
SYNTAX SEQUENCE OF HrNetworkEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The (conceptual) table of network devices contained
by the host.
Note that this table is potentially sparse: a
(conceptual) entry exists only if the correspondent
value of the hrDeviceType object is
`hrDeviceNetwork'."
::= { hrDevice 4 }
hrNetworkEntry OBJECT-TYPE
SYNTAX HrNetworkEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A (conceptual) entry for one network device contained
by the host. The hrDeviceIndex in the index
represents the entry in the hrDeviceTable that
corresponds to the hrNetworkEntry.
As an example of how objects in this table are named,
an instance of the hrNetworkIfIndex object might be
named hrNetworkIfIndex.3"
INDEX { hrDeviceIndex }
::= { hrNetworkTable 1 }
HrNetworkEntry ::= SEQUENCE {
hrNetworkIfIndex InterfaceIndexOrZero
}
hrNetworkIfIndex OBJECT-TYPE
SYNTAX InterfaceIndexOrZero
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of ifIndex which corresponds to this
network device. If this device is not represented in
the ifTable, then this value shall be zero."
::= { hrNetworkEntry 1 }
hrPrinterTable OBJECT-TYPE
SYNTAX SEQUENCE OF HrPrinterEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The (conceptual) table of printers local to the host.
Note that this table is potentially sparse: a
(conceptual) entry exists only if the correspondent
value of the hrDeviceType object is
`hrDevicePrinter'."
::= { hrDevice 5 }
hrPrinterEntry OBJECT-TYPE
SYNTAX HrPrinterEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A (conceptual) entry for one printer local to the
host. The hrDeviceIndex in the index represents the
entry in the hrDeviceTable that corresponds to the
hrPrinterEntry.
As an example of how objects in this table are named,
an instance of the hrPrinterStatus object might be
named hrPrinterStatus.3"
INDEX { hrDeviceIndex }
::= { hrPrinterTable 1 }
HrPrinterEntry ::= SEQUENCE {
hrPrinterStatus INTEGER,
hrPrinterDetectedErrorState OCTET STRING
}
hrPrinterStatus OBJECT-TYPE
SYNTAX INTEGER {
other(1),
unknown(2),
idle(3),
printing(4),
warmup(5)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The current status of this printer device."
::= { hrPrinterEntry 1 }
hrPrinterDetectedErrorState OBJECT-TYPE
SYNTAX OCTET STRING
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object represents any error conditions detected
by the printer. The error conditions are encoded as
bits in an octet string, with the following
definitions:
Condition Bit #
lowPaper 0
noPaper 1
lowToner 2
noToner 3
doorOpen 4
jammed 5
offline 6
serviceRequested 7
inputTrayMissing 8
outputTrayMissing 9
markerSupplyMissing 10
outputNearFull 11
outputFull 12
inputTrayEmpty 13
overduePreventMaint 14
Bits are numbered starting with the most significant
bit of the first byte being bit 0, the least
significant bit of the first byte being bit 7, the
most significant bit of the second byte being bit 8,
and so on. A one bit encodes that the condition was
detected, while a zero bit encodes that the condition
was not detected.
This object is useful for alerting an operator to
specific warning or error conditions that may occur,
especially those requiring human intervention."
::= { hrPrinterEntry 2 }
hrDiskStorageTable OBJECT-TYPE
SYNTAX SEQUENCE OF HrDiskStorageEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The (conceptual) table of long-term storage devices
contained by the host. In particular, disk devices
accessed remotely over a network are not included
here.
Note that this table is potentially sparse: a
(conceptual) entry exists only if the correspondent
value of the hrDeviceType object is
`hrDeviceDiskStorage'."
::= { hrDevice 6 }
hrDiskStorageEntry OBJECT-TYPE
SYNTAX HrDiskStorageEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A (conceptual) entry for one long-term storage device
contained by the host. The hrDeviceIndex in the index
represents the entry in the hrDeviceTable that
corresponds to the hrDiskStorageEntry. As an example,
an instance of the hrDiskStorageCapacity object might
be named hrDiskStorageCapacity.3"
INDEX { hrDeviceIndex }
::= { hrDiskStorageTable 1 }
HrDiskStorageEntry ::= SEQUENCE {
hrDiskStorageAccess INTEGER,
hrDiskStorageMedia INTEGER,
hrDiskStorageRemoveble TruthValue,
hrDiskStorageCapacity KBytes
}
hrDiskStorageAccess OBJECT-TYPE
SYNTAX INTEGER {
readWrite(1),
readOnly(2)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"An indication if this long-term storage device is
readable and writable or only readable. This should
reflect the media type, any write-protect mechanism,
and any device configuration that affects the entire
device."
::= { hrDiskStorageEntry 1 }
hrDiskStorageMedia OBJECT-TYPE
SYNTAX INTEGER {
other(1),
unknown(2),
hardDisk(3),
floppyDisk(4),
opticalDiskROM(5),
opticalDiskWORM(6), -- Write Once Read Many
opticalDiskRW(7),
ramDisk(8)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"An indication of the type of media used in this long-
term storage device."
::= { hrDiskStorageEntry 2 }
hrDiskStorageRemoveble OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Denotes whether or not the disk media may be removed
from the drive."
::= { hrDiskStorageEntry 3 }
hrDiskStorageCapacity OBJECT-TYPE
SYNTAX KBytes
UNITS "KBytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total size for this long-term storage device. If
the media is removable and is currently removed, this
value should be zero."
::= { hrDiskStorageEntry 4 }
hrPartitionTable OBJECT-TYPE
SYNTAX SEQUENCE OF HrPartitionEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The (conceptual) table of partitions for long-term
storage devices contained by the host. In particular,
partitions accessed remotely over a network are not
included here."
::= { hrDevice 7 }
hrPartitionEntry OBJECT-TYPE
SYNTAX HrPartitionEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A (conceptual) entry for one partition. The
hrDeviceIndex in the index represents the entry in the
hrDeviceTable that corresponds to the
hrPartitionEntry.
As an example of how objects in this table are named,
an instance of the hrPartitionSize object might be
named hrPartitionSize.3.1"
INDEX { hrDeviceIndex, hrPartitionIndex }
::= { hrPartitionTable 1 }
HrPartitionEntry ::= SEQUENCE {
hrPartitionIndex Integer32,
hrPartitionLabel InternationalDisplayString,
hrPartitionID OCTET STRING,
hrPartitionSize KBytes,
hrPartitionFSIndex Integer32
}
hrPartitionIndex OBJECT-TYPE
SYNTAX Integer32 (1..2147483647)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A unique value for each partition on this long-term
storage device. The value for each long-term storage
device must remain constant at least from one re-
initialization of the agent to the next re-
initialization."
::= { hrPartitionEntry 1 }
hrPartitionLabel OBJECT-TYPE
SYNTAX InternationalDisplayString (SIZE (0..128))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A textual description of this partition."
::= { hrPartitionEntry 2 }
hrPartitionID OBJECT-TYPE
SYNTAX OCTET STRING
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A descriptor which uniquely represents this partition
to the responsible operating system. On some systems,
this might take on a binary representation."
::= { hrPartitionEntry 3 }
hrPartitionSize OBJECT-TYPE
SYNTAX KBytes
UNITS "KBytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The size of this partition."
::= { hrPartitionEntry 4 }
hrPartitionFSIndex OBJECT-TYPE
SYNTAX Integer32 (0..2147483647)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The index of the file system mounted on this
partition. If no file system is mounted on this
partition, then this value shall be zero. Note that
multiple partitions may point to one file system,
denoting that that file system resides on those
partitions. Multiple file systems may not reside on
one partition."
::= { hrPartitionEntry 5 }
-- The File System Table
-- Registration point for popular File System types,
-- for use with hrFSType. These are defined in the
-- HOST-RESOURCES-TYPES module.
hrFSTypes OBJECT IDENTIFIER ::= { hrDevice 9 }
hrFSTable OBJECT-TYPE
SYNTAX SEQUENCE OF HrFSEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The (conceptual) table of file systems local to this
host or remotely mounted from a file server. File
systems that are in only one user's environment on a
multi-user system will not be included in this table."
::= { hrDevice 8 }
hrFSEntry OBJECT-TYPE
SYNTAX HrFSEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A (conceptual) entry for one file system local to
this host or remotely mounted from a file server.
File systems that are in only one user's environment
on a multi-user system will not be included in this
table.
As an example of how objects in this table are named,
an instance of the hrFSMountPoint object might be
named hrFSMountPoint.3"
INDEX { hrFSIndex }
::= { hrFSTable 1 }
HrFSEntry ::= SEQUENCE {
hrFSIndex Integer32,
hrFSMountPoint InternationalDisplayString,
hrFSRemoteMountPoint InternationalDisplayString,
hrFSType AutonomousType,
hrFSAccess INTEGER,
hrFSBootable TruthValue,
hrFSStorageIndex Integer32,
hrFSLastFullBackupDate DateAndTime,
hrFSLastPartialBackupDate DateAndTime
}
hrFSIndex OBJECT-TYPE
SYNTAX Integer32 (1..2147483647)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A unique value for each file system local to this
host. The value for each file system must remain
constant at least from one re-initialization of the
agent to the next re-initialization."
::= { hrFSEntry 1 }
hrFSMountPoint OBJECT-TYPE
SYNTAX InternationalDisplayString (SIZE(0..128))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The path name of the root of this file system."
::= { hrFSEntry 2 }
hrFSRemoteMountPoint OBJECT-TYPE
SYNTAX InternationalDisplayString (SIZE(0..128))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A description of the name and/or address of the
server that this file system is mounted from. This
may also include parameters such as the mount point on
the remote file system. If this is not a remote file
system, this string should have a length of zero."
::= { hrFSEntry 3 }
hrFSType OBJECT-TYPE
SYNTAX AutonomousType
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of this object identifies the type of this
file system."
::= { hrFSEntry 4 }
hrFSAccess OBJECT-TYPE
SYNTAX INTEGER {
readWrite(1),
readOnly(2)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"An indication if this file system is logically
configured by the operating system to be readable and
writable or only readable. This does not represent
any local access-control policy, except one that is
applied to the file system as a whole."
::= { hrFSEntry 5 }
hrFSBootable OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A flag indicating whether this file system is
bootable."
::= { hrFSEntry 6 }
hrFSStorageIndex OBJECT-TYPE
SYNTAX Integer32 (0..2147483647)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The index of the hrStorageEntry that represents
information about this file system. If there is no
such information available, then this value shall be
zero. The relevant storage entry will be useful in
tracking the percent usage of this file system and
diagnosing errors that may occur when it runs out of
space."
::= { hrFSEntry 7 }
hrFSLastFullBackupDate OBJECT-TYPE
SYNTAX DateAndTime
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The last date at which this complete file system was
copied to another storage device for backup. This
information is useful for ensuring that backups are
being performed regularly.
If this information is not known, then this variable
shall have the value corresponding to January 1, year
0000, 00:00:00.0, which is encoded as
(hex)'00 00 01 01 00 00 00 00'."
::= { hrFSEntry 8 }
hrFSLastPartialBackupDate OBJECT-TYPE
SYNTAX DateAndTime
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The last date at which a portion of this file system
was copied to another storage device for backup. This
information is useful for ensuring that backups are
being performed regularly.
If this information is not known, then this variable
shall have the value corresponding to January 1, year
0000, 00:00:00.0, which is encoded as
(hex)'00 00 01 01 00 00 00 00'."
::= { hrFSEntry 9 }
-- The Host Resources Running Software Group
--
-- The hrSWRunTable contains an entry for each distinct piece of
-- software that is running or loaded into physical or virtual
-- memory in preparation for running. This includes the host's
-- operating system, device drivers, and applications.
hrSWOSIndex OBJECT-TYPE
SYNTAX Integer32 (1..2147483647)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of the hrSWRunIndex for the hrSWRunEntry
that represents the primary operating system running
on this host. This object is useful for quickly and
uniquely identifying that primary operating system."
::= { hrSWRun 1 }
hrSWRunTable OBJECT-TYPE
SYNTAX SEQUENCE OF HrSWRunEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The (conceptual) table of software running on the
host."
::= { hrSWRun 2 }
hrSWRunEntry OBJECT-TYPE
SYNTAX HrSWRunEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A (conceptual) entry for one piece of software
running on the host Note that because the installed
software table only contains information for software
stored locally on this host, not every piece of
running software will be found in the installed
software table. This is true of software that was
loaded and run from a non-local source, such as a
network-mounted file system.
As an example of how objects in this table are named,
an instance of the hrSWRunName object might be named
hrSWRunName.1287"
INDEX { hrSWRunIndex }
::= { hrSWRunTable 1 }
HrSWRunEntry ::= SEQUENCE {
hrSWRunIndex Integer32,
hrSWRunName InternationalDisplayString,
hrSWRunID ProductID,
hrSWRunPath InternationalDisplayString,
hrSWRunParameters InternationalDisplayString,
hrSWRunType INTEGER,
hrSWRunStatus INTEGER
}
hrSWRunIndex OBJECT-TYPE
SYNTAX Integer32 (1..2147483647)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A unique value for each piece of software running on
the host. Wherever possible, this should be the
system's native, unique identification number."
::= { hrSWRunEntry 1 }
hrSWRunName OBJECT-TYPE
SYNTAX InternationalDisplayString (SIZE (0..64))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A textual description of this running piece of
software, including the manufacturer, revision, and
the name by which it is commonly known. If this
software was installed locally, this should be the
same string as used in the corresponding
hrSWInstalledName."
::= { hrSWRunEntry 2 }
hrSWRunID OBJECT-TYPE
SYNTAX ProductID
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The product ID of this running piece of software."
::= { hrSWRunEntry 3 }
hrSWRunPath OBJECT-TYPE
SYNTAX InternationalDisplayString (SIZE(0..128))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A description of the location on long-term storage
(e.g. a disk drive) from which this software was
loaded."
::= { hrSWRunEntry 4 }
hrSWRunParameters OBJECT-TYPE
SYNTAX InternationalDisplayString (SIZE(0..128))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A description of the parameters supplied to this
software when it was initially loaded."
::= { hrSWRunEntry 5 }
hrSWRunType OBJECT-TYPE
SYNTAX INTEGER {
unknown(1),
operatingSystem(2),
deviceDriver(3),
application(4)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The type of this software."
::= { hrSWRunEntry 6 }
hrSWRunStatus OBJECT-TYPE
SYNTAX INTEGER {
running(1),
runnable(2), -- waiting for resource
-- (i.e., CPU, memory, IO)
notRunnable(3), -- loaded but waiting for event
invalid(4) -- not loaded
}
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The status of this running piece of software.
Setting this value to invalid(4) shall cause this
software to stop running and to be unloaded. Sets to
other values are not valid."
::= { hrSWRunEntry 7 }
-- The Host Resources Running Software Performance Group
--
-- The hrSWRunPerfTable contains an entry corresponding to
-- each entry in the hrSWRunTable.
hrSWRunPerfTable OBJECT-TYPE
SYNTAX SEQUENCE OF HrSWRunPerfEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The (conceptual) table of running software
performance metrics."
::= { hrSWRunPerf 1 }
hrSWRunPerfEntry OBJECT-TYPE
SYNTAX HrSWRunPerfEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A (conceptual) entry containing software performance
metrics. As an example, an instance of the
hrSWRunPerfCPU object might be named
hrSWRunPerfCPU.1287"
AUGMENTS { hrSWRunEntry } -- This table augments information in
-- the hrSWRunTable.
::= { hrSWRunPerfTable 1 }
HrSWRunPerfEntry ::= SEQUENCE {
hrSWRunPerfCPU Integer32,
hrSWRunPerfMem KBytes
}
hrSWRunPerfCPU OBJECT-TYPE
SYNTAX Integer32 (0..2147483647)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of centi-seconds of the total system's CPU
resources consumed by this process. Note that on a
multi-processor system, this value may increment by
more than one centi-second in one centi-second of real
(wall clock) time."
::= { hrSWRunPerfEntry 1 }
hrSWRunPerfMem OBJECT-TYPE
SYNTAX KBytes
UNITS "KBytes"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total amount of real system memory allocated to
this process."
::= { hrSWRunPerfEntry 2 }
-- The Host Resources Installed Software Group
--
-- The hrSWInstalledTable contains an entry for each piece
-- of software installed in long-term storage (e.g. a disk
-- drive) locally on this host. Note that this does not
-- include software loadable remotely from a network
-- server.
--
-- Different implementations may track software in varying
-- ways. For example, while some implementations may track
-- executable files as distinct pieces of software, other
-- implementations may use other strategies such as keeping
-- track of software "packages" (e.g., related groups of files)
-- or keeping track of system or application "patches".
--
-- This table is useful for identifying and inventorying
-- software on a host and for diagnosing incompatibility
-- and version mismatch problems between various pieces
-- of hardware and software.
hrSWInstalledLastChange OBJECT-TYPE
SYNTAX TimeTicks
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of sysUpTime when an entry in the
hrSWInstalledTable was last added, renamed, or
deleted. Because this table is likely to contain many
entries, polling of this object allows a management
station to determine when re-downloading of the table
might be useful."
::= { hrSWInstalled 1 }
hrSWInstalledLastUpdateTime OBJECT-TYPE
SYNTAX TimeTicks
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of sysUpTime when the hrSWInstalledTable
was last completely updated. Because caching of this
data will be a popular implementation strategy,
retrieval of this object allows a management station
to obtain a guarantee that no data in this table is
older than the indicated time."
::= { hrSWInstalled 2 }
hrSWInstalledTable OBJECT-TYPE
SYNTAX SEQUENCE OF HrSWInstalledEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The (conceptual) table of software installed on this
host."
::= { hrSWInstalled 3 }
hrSWInstalledEntry OBJECT-TYPE
SYNTAX HrSWInstalledEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A (conceptual) entry for a piece of software
installed on this host.
As an example of how objects in this table are named,
an instance of the hrSWInstalledName object might be
named hrSWInstalledName.96"
INDEX { hrSWInstalledIndex }
::= { hrSWInstalledTable 1 }
HrSWInstalledEntry ::= SEQUENCE {
hrSWInstalledIndex Integer32,
hrSWInstalledName InternationalDisplayString,
hrSWInstalledID ProductID,
hrSWInstalledType INTEGER,
hrSWInstalledDate DateAndTime
}
hrSWInstalledIndex OBJECT-TYPE
SYNTAX Integer32 (1..2147483647)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A unique value for each piece of software installed
on the host. This value shall be in the range from 1
to the number of pieces of software installed on the
host."
::= { hrSWInstalledEntry 1 }
hrSWInstalledName OBJECT-TYPE
SYNTAX InternationalDisplayString (SIZE (0..64))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A textual description of this installed piece of
software, including the manufacturer, revision, the
name by which it is commonly known, and optionally,
its serial number."
::= { hrSWInstalledEntry 2 }
hrSWInstalledID OBJECT-TYPE
SYNTAX ProductID
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The product ID of this installed piece of software."
::= { hrSWInstalledEntry 3 }
hrSWInstalledType OBJECT-TYPE
SYNTAX INTEGER {
unknown(1),
operatingSystem(2),
deviceDriver(3),
application(4)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The type of this software."
::= { hrSWInstalledEntry 4 }
hrSWInstalledDate OBJECT-TYPE
SYNTAX DateAndTime
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The last-modification date of this application as it
would appear in a directory listing.
If this information is not known, then this variable
shall have the value corresponding to January 1, year
0000, 00:00:00.0, which is encoded as
(hex)'00 00 01 01 00 00 00 00'."
::= { hrSWInstalledEntry 5 }
-- Conformance information
hrMIBCompliances OBJECT IDENTIFIER ::= { hrMIBAdminInfo 2 }
hrMIBGroups OBJECT IDENTIFIER ::= { hrMIBAdminInfo 3 }
-- Compliance Statements
hrMIBCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"The requirements for conformance to the Host Resources MIB."
MODULE -- this module
MANDATORY-GROUPS { hrSystemGroup, hrStorageGroup,
hrDeviceGroup }
OBJECT hrSystemDate
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT hrSystemInitialLoadDevice
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT hrSystemInitialLoadParameters
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT hrStorageSize
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT hrFSLastFullBackupDate
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT hrFSLastPartialBackupDate
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
GROUP hrSWRunGroup
DESCRIPTION
"The Running Software Group. Implementation
of this group is mandatory only when the
hrSWRunPerfGroup is implemented."
OBJECT hrSWRunStatus
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
GROUP hrSWRunPerfGroup
DESCRIPTION
"The Running Software Performance Group.
Implementation of this group is at the discretion
of the implementor."
GROUP hrSWInstalledGroup
DESCRIPTION
"The Installed Software Group.
Implementation of this group is at the discretion
of the implementor."
::= { hrMIBCompliances 1 }
hrSystemGroup OBJECT-GROUP
OBJECTS {
hrSystemUptime, hrSystemDate,
hrSystemInitialLoadDevice,
hrSystemInitialLoadParameters,
hrSystemNumUsers, hrSystemProcesses,
hrSystemMaxProcesses
}
STATUS current
DESCRIPTION
"The Host Resources System Group."
::= { hrMIBGroups 1 }
hrStorageGroup OBJECT-GROUP
OBJECTS {
hrMemorySize, hrStorageIndex, hrStorageType,
hrStorageDescr, hrStorageAllocationUnits,
hrStorageSize, hrStorageUsed,
hrStorageAllocationFailures
}
STATUS current
DESCRIPTION
"The Host Resources Storage Group."
::= { hrMIBGroups 2 }
hrDeviceGroup OBJECT-GROUP
OBJECTS {
hrDeviceIndex, hrDeviceType, hrDeviceDescr,
hrDeviceID, hrDeviceStatus, hrDeviceErrors,
hrProcessorFrwID, hrProcessorLoad,
hrNetworkIfIndex, hrPrinterStatus,
hrPrinterDetectedErrorState,
hrDiskStorageAccess, hrDiskStorageMedia,
hrDiskStorageRemoveble, hrDiskStorageCapacity,
hrPartitionIndex, hrPartitionLabel,
hrPartitionID, hrPartitionSize,
hrPartitionFSIndex, hrFSIndex, hrFSMountPoint,
hrFSRemoteMountPoint, hrFSType, hrFSAccess,
hrFSBootable, hrFSStorageIndex,
hrFSLastFullBackupDate,
hrFSLastPartialBackupDate
}
STATUS current
DESCRIPTION
"The Host Resources Device Group."
::= { hrMIBGroups 3 }
hrSWRunGroup OBJECT-GROUP
OBJECTS {
hrSWOSIndex, hrSWRunIndex, hrSWRunName,
hrSWRunID, hrSWRunPath, hrSWRunParameters,
hrSWRunType, hrSWRunStatus
}
STATUS current
DESCRIPTION
"The Host Resources Running Software Group."
::= { hrMIBGroups 4 }
hrSWRunPerfGroup OBJECT-GROUP
OBJECTS { hrSWRunPerfCPU, hrSWRunPerfMem }
STATUS current
DESCRIPTION
"The Host Resources Running Software
Performance Group."
::= { hrMIBGroups 5 }
hrSWInstalledGroup OBJECT-GROUP
OBJECTS {
hrSWInstalledLastChange,
hrSWInstalledLastUpdateTime,
hrSWInstalledIndex, hrSWInstalledName,
hrSWInstalledID, hrSWInstalledType,
hrSWInstalledDate
}
STATUS current
DESCRIPTION
"The Host Resources Installed Software Group."
::= { hrMIBGroups 6 }
END
share/snmp/mibs/TCP-MIB.txt 0000644 00000067624 15055304123 0011366 0 ustar 00 TCP-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, OBJECT-TYPE, Integer32, Unsigned32,
Gauge32, Counter32, Counter64, IpAddress, mib-2
FROM SNMPv2-SMI
MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF
InetAddress, InetAddressType,
InetPortNumber FROM INET-ADDRESS-MIB;
tcpMIB MODULE-IDENTITY
LAST-UPDATED "200502180000Z" -- 18 February 2005
ORGANIZATION
"IETF IPv6 MIB Revision Team
http://www.ietf.org/html.charters/ipv6-charter.html"
CONTACT-INFO
"Rajiv Raghunarayan (editor)
Cisco Systems Inc.
170 West Tasman Drive
San Jose, CA 95134
Phone: +1 408 853 9612
Email: <raraghun@cisco.com>
Send comments to <ipv6@ietf.org>"
DESCRIPTION
"The MIB module for managing TCP implementations.
Copyright (C) The Internet Society (2005). This version
of this MIB module is a part of RFC 4022; see the RFC
itself for full legal notices."
REVISION "200502180000Z" -- 18 February 2005
DESCRIPTION
"IP version neutral revision, published as RFC 4022."
REVISION "9411010000Z"
DESCRIPTION
"Initial SMIv2 version, published as RFC 2012."
REVISION "9103310000Z"
DESCRIPTION
"The initial revision of this MIB module was part of
MIB-II."
::= { mib-2 49 }
-- the TCP base variables group
tcp OBJECT IDENTIFIER ::= { mib-2 6 }
-- Scalars
tcpRtoAlgorithm OBJECT-TYPE
SYNTAX INTEGER {
other(1), -- none of the following
constant(2), -- a constant rto
rsre(3), -- MIL-STD-1778, Appendix B
vanj(4), -- Van Jacobson's algorithm
rfc2988(5) -- RFC 2988
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The algorithm used to determine the timeout value used for
retransmitting unacknowledged octets."
::= { tcp 1 }
tcpRtoMin OBJECT-TYPE
SYNTAX Integer32 (0..2147483647)
UNITS "milliseconds"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The minimum value permitted by a TCP implementation for
the retransmission timeout, measured in milliseconds.
More refined semantics for objects of this type depend
on the algorithm used to determine the retransmission
timeout; in particular, the IETF standard algorithm
rfc2988(5) provides a minimum value."
::= { tcp 2 }
tcpRtoMax OBJECT-TYPE
SYNTAX Integer32 (0..2147483647)
UNITS "milliseconds"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The maximum value permitted by a TCP implementation for
the retransmission timeout, measured in milliseconds.
More refined semantics for objects of this type depend
on the algorithm used to determine the retransmission
timeout; in particular, the IETF standard algorithm
rfc2988(5) provides an upper bound (as part of an
adaptive backoff algorithm)."
::= { tcp 3 }
tcpMaxConn OBJECT-TYPE
SYNTAX Integer32 (-1 | 0..2147483647)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The limit on the total number of TCP connections the entity
can support. In entities where the maximum number of
connections is dynamic, this object should contain the
value -1."
::= { tcp 4 }
tcpActiveOpens OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of times that TCP connections have made a direct
transition to the SYN-SENT state from the CLOSED state.
Discontinuities in the value of this counter are
indicated via discontinuities in the value of sysUpTime."
::= { tcp 5 }
tcpPassiveOpens OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of times TCP connections have made a direct
transition to the SYN-RCVD state from the LISTEN state.
Discontinuities in the value of this counter are
indicated via discontinuities in the value of sysUpTime."
::= { tcp 6 }
tcpAttemptFails OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of times that TCP connections have made a direct
transition to the CLOSED state from either the SYN-SENT
state or the SYN-RCVD state, plus the number of times that
TCP connections have made a direct transition to the
LISTEN state from the SYN-RCVD state.
Discontinuities in the value of this counter are
indicated via discontinuities in the value of sysUpTime."
::= { tcp 7 }
tcpEstabResets OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of times that TCP connections have made a direct
transition to the CLOSED state from either the ESTABLISHED
state or the CLOSE-WAIT state.
Discontinuities in the value of this counter are
indicated via discontinuities in the value of sysUpTime."
::= { tcp 8 }
tcpCurrEstab OBJECT-TYPE
SYNTAX Gauge32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of TCP connections for which the current state
is either ESTABLISHED or CLOSE-WAIT."
::= { tcp 9 }
tcpInSegs OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total number of segments received, including those
received in error. This count includes segments received
on currently established connections.
Discontinuities in the value of this counter are
indicated via discontinuities in the value of sysUpTime."
::= { tcp 10 }
tcpOutSegs OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total number of segments sent, including those on
current connections but excluding those containing only
retransmitted octets.
Discontinuities in the value of this counter are
indicated via discontinuities in the value of sysUpTime."
::= { tcp 11 }
tcpRetransSegs OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total number of segments retransmitted; that is, the
number of TCP segments transmitted containing one or more
previously transmitted octets.
Discontinuities in the value of this counter are
indicated via discontinuities in the value of sysUpTime."
::= { tcp 12 }
tcpInErrs OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total number of segments received in error (e.g., bad
TCP checksums).
Discontinuities in the value of this counter are
indicated via discontinuities in the value of sysUpTime."
::= { tcp 14 }
tcpOutRsts OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of TCP segments sent containing the RST flag.
Discontinuities in the value of this counter are
indicated via discontinuities in the value of sysUpTime."
::= { tcp 15 }
-- { tcp 16 } was used to represent the ipv6TcpConnTable in RFC 2452,
-- which has since been obsoleted. It MUST not be used.
tcpHCInSegs OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total number of segments received, including those
received in error. This count includes segments received
on currently established connections. This object is
the 64-bit equivalent of tcpInSegs.
Discontinuities in the value of this counter are
indicated via discontinuities in the value of sysUpTime."
::= { tcp 17 }
tcpHCOutSegs OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total number of segments sent, including those on
current connections but excluding those containing only
retransmitted octets. This object is the 64-bit
equivalent of tcpOutSegs.
Discontinuities in the value of this counter are
indicated via discontinuities in the value of sysUpTime."
::= { tcp 18 }
-- The TCP Connection table
tcpConnectionTable OBJECT-TYPE
SYNTAX SEQUENCE OF TcpConnectionEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table containing information about existing TCP
connections. Note that unlike earlier TCP MIBs, there
is a separate table for connections in the LISTEN state."
::= { tcp 19 }
tcpConnectionEntry OBJECT-TYPE
SYNTAX TcpConnectionEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A conceptual row of the tcpConnectionTable containing
information about a particular current TCP connection.
Each row of this table is transient in that it ceases to
exist when (or soon after) the connection makes the
transition to the CLOSED state."
INDEX { tcpConnectionLocalAddressType,
tcpConnectionLocalAddress,
tcpConnectionLocalPort,
tcpConnectionRemAddressType,
tcpConnectionRemAddress,
tcpConnectionRemPort }
::= { tcpConnectionTable 1 }
TcpConnectionEntry ::= SEQUENCE {
tcpConnectionLocalAddressType InetAddressType,
tcpConnectionLocalAddress InetAddress,
tcpConnectionLocalPort InetPortNumber,
tcpConnectionRemAddressType InetAddressType,
tcpConnectionRemAddress InetAddress,
tcpConnectionRemPort InetPortNumber,
tcpConnectionState INTEGER,
tcpConnectionProcess Unsigned32
}
tcpConnectionLocalAddressType OBJECT-TYPE
SYNTAX InetAddressType
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The address type of tcpConnectionLocalAddress."
::= { tcpConnectionEntry 1 }
tcpConnectionLocalAddress OBJECT-TYPE
SYNTAX InetAddress
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The local IP address for this TCP connection. The type
of this address is determined by the value of
tcpConnectionLocalAddressType.
As this object is used in the index for the
tcpConnectionTable, implementors should be
careful not to create entries that would result in OIDs
with more than 128 subidentifiers; otherwise the information
cannot be accessed by using SNMPv1, SNMPv2c, or SNMPv3."
::= { tcpConnectionEntry 2 }
tcpConnectionLocalPort OBJECT-TYPE
SYNTAX InetPortNumber
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The local port number for this TCP connection."
::= { tcpConnectionEntry 3 }
tcpConnectionRemAddressType OBJECT-TYPE
SYNTAX InetAddressType
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The address type of tcpConnectionRemAddress."
::= { tcpConnectionEntry 4 }
tcpConnectionRemAddress OBJECT-TYPE
SYNTAX InetAddress
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The remote IP address for this TCP connection. The type
of this address is determined by the value of
tcpConnectionRemAddressType.
As this object is used in the index for the
tcpConnectionTable, implementors should be
careful not to create entries that would result in OIDs
with more than 128 subidentifiers; otherwise the information
cannot be accessed by using SNMPv1, SNMPv2c, or SNMPv3."
::= { tcpConnectionEntry 5 }
tcpConnectionRemPort OBJECT-TYPE
SYNTAX InetPortNumber
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The remote port number for this TCP connection."
::= { tcpConnectionEntry 6 }
tcpConnectionState OBJECT-TYPE
SYNTAX INTEGER {
closed(1),
listen(2),
synSent(3),
synReceived(4),
established(5),
finWait1(6),
finWait2(7),
closeWait(8),
lastAck(9),
closing(10),
timeWait(11),
deleteTCB(12)
}
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The state of this TCP connection.
The value listen(2) is included only for parallelism to the
old tcpConnTable and should not be used. A connection in
LISTEN state should be present in the tcpListenerTable.
The only value that may be set by a management station is
deleteTCB(12). Accordingly, it is appropriate for an agent
to return a `badValue' response if a management station
attempts to set this object to any other value.
If a management station sets this object to the value
deleteTCB(12), then the TCB (as defined in [RFC793]) of
the corresponding connection on the managed node is
deleted, resulting in immediate termination of the
connection.
As an implementation-specific option, a RST segment may be
sent from the managed node to the other TCP endpoint (note,
however, that RST segments are not sent reliably)."
::= { tcpConnectionEntry 7 }
tcpConnectionProcess OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The system's process ID for the process associated with
this connection, or zero if there is no such process. This
value is expected to be the same as HOST-RESOURCES-MIB::
hrSWRunIndex or SYSAPPL-MIB::sysApplElmtRunIndex for some
row in the appropriate tables."
::= { tcpConnectionEntry 8 }
-- The TCP Listener table
tcpListenerTable OBJECT-TYPE
SYNTAX SEQUENCE OF TcpListenerEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table containing information about TCP listeners. A
listening application can be represented in three
possible ways:
1. An application that is willing to accept both IPv4 and
IPv6 datagrams is represented by
a tcpListenerLocalAddressType of unknown (0) and
a tcpListenerLocalAddress of ''h (a zero-length
octet-string).
2. An application that is willing to accept only IPv4 or
IPv6 datagrams is represented by a
tcpListenerLocalAddressType of the appropriate address
type and a tcpListenerLocalAddress of '0.0.0.0' or '::'
respectively.
3. An application that is listening for data destined
only to a specific IP address, but from any remote
system, is represented by a tcpListenerLocalAddressType
of an appropriate address type, with
tcpListenerLocalAddress as the specific local address.
NOTE: The address type in this table represents the
address type used for the communication, irrespective
of the higher-layer abstraction. For example, an
application using IPv6 'sockets' to communicate via
IPv4 between ::ffff:10.0.0.1 and ::ffff:10.0.0.2 would
use InetAddressType ipv4(1))."
::= { tcp 20 }
tcpListenerEntry OBJECT-TYPE
SYNTAX TcpListenerEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A conceptual row of the tcpListenerTable containing
information about a particular TCP listener."
INDEX { tcpListenerLocalAddressType,
tcpListenerLocalAddress,
tcpListenerLocalPort }
::= { tcpListenerTable 1 }
TcpListenerEntry ::= SEQUENCE {
tcpListenerLocalAddressType InetAddressType,
tcpListenerLocalAddress InetAddress,
tcpListenerLocalPort InetPortNumber,
tcpListenerProcess Unsigned32
}
tcpListenerLocalAddressType OBJECT-TYPE
SYNTAX InetAddressType
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The address type of tcpListenerLocalAddress. The value
should be unknown (0) if connection initiations to all
local IP addresses are accepted."
::= { tcpListenerEntry 1 }
tcpListenerLocalAddress OBJECT-TYPE
SYNTAX InetAddress
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The local IP address for this TCP connection.
The value of this object can be represented in three
possible ways, depending on the characteristics of the
listening application:
1. For an application willing to accept both IPv4 and
IPv6 datagrams, the value of this object must be
''h (a zero-length octet-string), with the value
of the corresponding tcpListenerLocalAddressType
object being unknown (0).
2. For an application willing to accept only IPv4 or
IPv6 datagrams, the value of this object must be
'0.0.0.0' or '::' respectively, with
tcpListenerLocalAddressType representing the
appropriate address type.
3. For an application which is listening for data
destined only to a specific IP address, the value
of this object is the specific local address, with
tcpListenerLocalAddressType representing the
appropriate address type.
As this object is used in the index for the
tcpListenerTable, implementors should be
careful not to create entries that would result in OIDs
with more than 128 subidentifiers; otherwise the information
cannot be accessed, using SNMPv1, SNMPv2c, or SNMPv3."
::= { tcpListenerEntry 2 }
tcpListenerLocalPort OBJECT-TYPE
SYNTAX InetPortNumber
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The local port number for this TCP connection."
::= { tcpListenerEntry 3 }
tcpListenerProcess OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The system's process ID for the process associated with
this listener, or zero if there is no such process. This
value is expected to be the same as HOST-RESOURCES-MIB::
hrSWRunIndex or SYSAPPL-MIB::sysApplElmtRunIndex for some
row in the appropriate tables."
::= { tcpListenerEntry 4 }
-- The deprecated TCP Connection table
tcpConnTable OBJECT-TYPE
SYNTAX SEQUENCE OF TcpConnEntry
MAX-ACCESS not-accessible
STATUS deprecated
DESCRIPTION
"A table containing information about existing IPv4-specific
TCP connections or listeners. This table has been
deprecated in favor of the version neutral
tcpConnectionTable."
::= { tcp 13 }
tcpConnEntry OBJECT-TYPE
SYNTAX TcpConnEntry
MAX-ACCESS not-accessible
STATUS deprecated
DESCRIPTION
"A conceptual row of the tcpConnTable containing information
about a particular current IPv4 TCP connection. Each row
of this table is transient in that it ceases to exist when
(or soon after) the connection makes the transition to the
CLOSED state."
INDEX { tcpConnLocalAddress,
tcpConnLocalPort,
tcpConnRemAddress,
tcpConnRemPort }
::= { tcpConnTable 1 }
TcpConnEntry ::= SEQUENCE {
tcpConnState INTEGER,
tcpConnLocalAddress IpAddress,
tcpConnLocalPort Integer32,
tcpConnRemAddress IpAddress,
tcpConnRemPort Integer32
}
tcpConnState OBJECT-TYPE
SYNTAX INTEGER {
closed(1),
listen(2),
synSent(3),
synReceived(4),
established(5),
finWait1(6),
finWait2(7),
closeWait(8),
lastAck(9),
closing(10),
timeWait(11),
deleteTCB(12)
}
MAX-ACCESS read-write
STATUS deprecated
DESCRIPTION
"The state of this TCP connection.
The only value that may be set by a management station is
deleteTCB(12). Accordingly, it is appropriate for an agent
to return a `badValue' response if a management station
attempts to set this object to any other value.
If a management station sets this object to the value
deleteTCB(12), then the TCB (as defined in [RFC793]) of
the corresponding connection on the managed node is
deleted, resulting in immediate termination of the
connection.
As an implementation-specific option, a RST segment may be
sent from the managed node to the other TCP endpoint (note,
however, that RST segments are not sent reliably)."
::= { tcpConnEntry 1 }
tcpConnLocalAddress OBJECT-TYPE
SYNTAX IpAddress
MAX-ACCESS read-only
STATUS deprecated
DESCRIPTION
"The local IP address for this TCP connection. In the case
of a connection in the listen state willing to
accept connections for any IP interface associated with the
node, the value 0.0.0.0 is used."
::= { tcpConnEntry 2 }
tcpConnLocalPort OBJECT-TYPE
SYNTAX Integer32 (0..65535)
MAX-ACCESS read-only
STATUS deprecated
DESCRIPTION
"The local port number for this TCP connection."
::= { tcpConnEntry 3 }
tcpConnRemAddress OBJECT-TYPE
SYNTAX IpAddress
MAX-ACCESS read-only
STATUS deprecated
DESCRIPTION
"The remote IP address for this TCP connection."
::= { tcpConnEntry 4 }
tcpConnRemPort OBJECT-TYPE
SYNTAX Integer32 (0..65535)
MAX-ACCESS read-only
STATUS deprecated
DESCRIPTION
"The remote port number for this TCP connection."
::= { tcpConnEntry 5 }
-- conformance information
tcpMIBConformance OBJECT IDENTIFIER ::= { tcpMIB 2 }
tcpMIBCompliances OBJECT IDENTIFIER ::= { tcpMIBConformance 1 }
tcpMIBGroups OBJECT IDENTIFIER ::= { tcpMIBConformance 2 }
-- compliance statements
tcpMIBCompliance2 MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"The compliance statement for systems that implement TCP.
A number of INDEX objects cannot be
represented in the form of OBJECT clauses in SMIv2 but
have the following compliance requirements,
expressed in OBJECT clause form in this description
clause:
-- OBJECT tcpConnectionLocalAddressType
-- SYNTAX InetAddressType { ipv4(1), ipv6(2) }
-- DESCRIPTION
-- This MIB requires support for only global IPv4
-- and IPv6 address types.
--
-- OBJECT tcpConnectionRemAddressType
-- SYNTAX InetAddressType { ipv4(1), ipv6(2) }
-- DESCRIPTION
-- This MIB requires support for only global IPv4
-- and IPv6 address types.
--
-- OBJECT tcpListenerLocalAddressType
-- SYNTAX InetAddressType { unknown(0), ipv4(1),
-- ipv6(2) }
-- DESCRIPTION
-- This MIB requires support for only global IPv4
-- and IPv6 address types. The type unknown also
-- needs to be supported to identify a special
-- case in the listener table: a listen using
-- both IPv4 and IPv6 addresses on the device.
--
"
MODULE -- this module
MANDATORY-GROUPS { tcpBaseGroup, tcpConnectionGroup,
tcpListenerGroup }
GROUP tcpHCGroup
DESCRIPTION
"This group is mandatory for systems that are capable
of receiving or transmitting more than 1 million TCP
segments per second. 1 million segments per second will
cause a Counter32 to wrap in just over an hour."
OBJECT tcpConnectionState
SYNTAX INTEGER { closed(1), listen(2), synSent(3),
synReceived(4), established(5),
finWait1(6), finWait2(7), closeWait(8),
lastAck(9), closing(10), timeWait(11) }
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required, nor is support for the value
deleteTCB (12)."
::= { tcpMIBCompliances 2 }
tcpMIBCompliance MODULE-COMPLIANCE
STATUS deprecated
DESCRIPTION
"The compliance statement for IPv4-only systems that
implement TCP. In order to be IP version independent, this
compliance statement is deprecated in favor of
tcpMIBCompliance2. However, agents are still encouraged
to implement these objects in order to interoperate with
the deployed base of managers."
MODULE -- this module
MANDATORY-GROUPS { tcpGroup }
OBJECT tcpConnState
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
::= { tcpMIBCompliances 1 }
-- units of conformance
tcpGroup OBJECT-GROUP
OBJECTS { tcpRtoAlgorithm, tcpRtoMin, tcpRtoMax,
tcpMaxConn, tcpActiveOpens,
tcpPassiveOpens, tcpAttemptFails,
tcpEstabResets, tcpCurrEstab, tcpInSegs,
tcpOutSegs, tcpRetransSegs, tcpConnState,
tcpConnLocalAddress, tcpConnLocalPort,
tcpConnRemAddress, tcpConnRemPort,
tcpInErrs, tcpOutRsts }
STATUS deprecated
DESCRIPTION
"The tcp group of objects providing for management of TCP
entities."
::= { tcpMIBGroups 1 }
tcpBaseGroup OBJECT-GROUP
OBJECTS { tcpRtoAlgorithm, tcpRtoMin, tcpRtoMax,
tcpMaxConn, tcpActiveOpens,
tcpPassiveOpens, tcpAttemptFails,
tcpEstabResets, tcpCurrEstab, tcpInSegs,
tcpOutSegs, tcpRetransSegs,
tcpInErrs, tcpOutRsts }
STATUS current
DESCRIPTION
"The group of counters common to TCP entities."
::= { tcpMIBGroups 2 }
tcpConnectionGroup OBJECT-GROUP
OBJECTS { tcpConnectionState, tcpConnectionProcess }
STATUS current
DESCRIPTION
"The group provides general information about TCP
connections."
::= { tcpMIBGroups 3 }
tcpListenerGroup OBJECT-GROUP
OBJECTS { tcpListenerProcess }
STATUS current
DESCRIPTION
"This group has objects providing general information about
TCP listeners."
::= { tcpMIBGroups 4 }
tcpHCGroup OBJECT-GROUP
OBJECTS { tcpHCInSegs, tcpHCOutSegs }
STATUS current
DESCRIPTION
"The group of objects providing for counters of high speed
TCP implementations."
::= { tcpMIBGroups 5 }
END
share/snmp/mibs/DISMAN-EVENT-MIB.txt 0000644 00000205010 15055304124 0012552 0 ustar 00 DISMAN-EVENT-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, OBJECT-TYPE,
Integer32, Unsigned32,
NOTIFICATION-TYPE, Counter32,
Gauge32, mib-2, zeroDotZero FROM SNMPv2-SMI
TEXTUAL-CONVENTION, RowStatus,
TruthValue FROM SNMPv2-TC
MODULE-COMPLIANCE, OBJECT-GROUP,
NOTIFICATION-GROUP FROM SNMPv2-CONF
sysUpTime FROM SNMPv2-MIB
SnmpTagValue FROM SNMP-TARGET-MIB
SnmpAdminString FROM SNMP-FRAMEWORK-MIB;
dismanEventMIB MODULE-IDENTITY
LAST-UPDATED "200010160000Z" -- 16 October 2000
ORGANIZATION "IETF Distributed Management Working Group"
CONTACT-INFO "Ramanathan Kavasseri
Cisco Systems, Inc.
170 West Tasman Drive,
San Jose CA 95134-1706.
Phone: +1 408 526 4527
Email: ramk@cisco.com"
DESCRIPTION
"The MIB module for defining event triggers and actions
for network management purposes."
-- Revision History
REVISION "200010160000Z" -- 16 October 2000
DESCRIPTION "This is the initial version of this MIB.
Published as RFC 2981"
::= { mib-2 88 }
dismanEventMIBObjects OBJECT IDENTIFIER ::= { dismanEventMIB 1 }
-- Management Triggered Event (MTE) objects
mteResource OBJECT IDENTIFIER ::= { dismanEventMIBObjects 1 }
mteTrigger OBJECT IDENTIFIER ::= { dismanEventMIBObjects 2 }
mteObjects OBJECT IDENTIFIER ::= { dismanEventMIBObjects 3 }
mteEvent OBJECT IDENTIFIER ::= { dismanEventMIBObjects 4 }
--
-- Textual Conventions
--
FailureReason ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Reasons for failures in an attempt to perform a management
request.
The first group of errors, numbered less than 0, are related
to problems in sending the request. The existence of a
particular error code here does not imply that all
implementations are capable of sensing that error and
returning that code.
The second group, numbered greater than 0, are copied
directly from SNMP protocol operations and are intended to
carry exactly the meanings defined for the protocol as returned
in an SNMP response.
localResourceLack some local resource such as memory
lacking or
mteResourceSampleInstanceMaximum
exceeded
badDestination unrecognized domain name or otherwise
invalid destination address
destinationUnreachable can't get to destination address
noResponse no response to SNMP request
badType the data syntax of a retrieved object
as not as expected
sampleOverrun another sample attempt occurred before
the previous one completed"
SYNTAX INTEGER { localResourceLack(-1),
badDestination(-2),
destinationUnreachable(-3),
noResponse(-4),
badType(-5),
sampleOverrun(-6),
noError(0),
tooBig(1),
noSuchName(2),
badValue(3),
readOnly(4),
genErr(5),
noAccess(6),
wrongType(7),
wrongLength(8),
wrongEncoding(9),
wrongValue(10),
noCreation(11),
inconsistentValue(12),
resourceUnavailable(13),
commitFailed(14),
undoFailed(15),
authorizationError(16),
notWritable(17),
inconsistentName(18) }
--
-- Resource Control Section
--
mteResourceSampleMinimum OBJECT-TYPE
SYNTAX Integer32 (1..2147483647)
UNITS "seconds"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The minimum mteTriggerFrequency this system will
accept. A system may use the larger values of this minimum to
lessen the impact of constant sampling. For larger
sampling intervals the system samples less often and
suffers less overhead. This object provides a way to enforce
such lower overhead for all triggers created after it is
set.
Unless explicitly resource limited, a system's value for
this object SHOULD be 1, allowing as small as a 1 second
interval for ongoing trigger sampling.
Changing this value will not invalidate an existing setting
of mteTriggerFrequency."
::= { mteResource 1 }
mteResourceSampleInstanceMaximum OBJECT-TYPE
SYNTAX Unsigned32
UNITS "instances"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The maximum number of instance entries this system will
support for sampling.
These are the entries that maintain state, one for each
instance of each sampled object as selected by
mteTriggerValueID. Note that wildcarded objects result
in multiple instances of this state.
A value of 0 indicates no preset limit, that is, the limit
is dynamic based on system operation and resources.
Unless explicitly resource limited, a system's value for
this object SHOULD be 0.
Changing this value will not eliminate or inhibit existing
sample state but could prevent allocation of additional state
information."
::= { mteResource 2 }
mteResourceSampleInstances OBJECT-TYPE
SYNTAX Gauge32
UNITS "instances"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of currently active instance entries as
defined for mteResourceSampleInstanceMaximum."
::= { mteResource 3 }
mteResourceSampleInstancesHigh OBJECT-TYPE
SYNTAX Gauge32
UNITS "instances"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The highest value of mteResourceSampleInstances that has
occurred since initialization of the management system."
::= { mteResource 4 }
mteResourceSampleInstanceLacks OBJECT-TYPE
SYNTAX Counter32
UNITS "instances"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of times this system could not take a new sample
because that allocation would have exceeded the limit set by
mteResourceSampleInstanceMaximum."
::= { mteResource 5 }
--
-- Trigger Section
--
-- Counters
mteTriggerFailures OBJECT-TYPE
SYNTAX Counter32
UNITS "failures"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of times an attempt to check for a trigger
condition has failed. This counts individually for each
attempt in a group of targets or each attempt for a
wildcarded object."
::= { mteTrigger 1 }
--
-- Trigger Table
--
mteTriggerTable OBJECT-TYPE
SYNTAX SEQUENCE OF MteTriggerEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of management event trigger information."
::= { mteTrigger 2 }
mteTriggerEntry OBJECT-TYPE
SYNTAX MteTriggerEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Information about a single trigger. Applications create and
delete entries using mteTriggerEntryStatus."
INDEX { mteOwner, IMPLIED mteTriggerName }
::= { mteTriggerTable 1 }
MteTriggerEntry ::= SEQUENCE {
mteOwner SnmpAdminString,
mteTriggerName SnmpAdminString,
mteTriggerComment SnmpAdminString,
mteTriggerTest BITS,
mteTriggerSampleType INTEGER,
mteTriggerValueID OBJECT IDENTIFIER,
mteTriggerValueIDWildcard TruthValue,
mteTriggerTargetTag SnmpTagValue,
mteTriggerContextName SnmpAdminString,
mteTriggerContextNameWildcard TruthValue,
mteTriggerFrequency Unsigned32,
mteTriggerObjectsOwner SnmpAdminString,
mteTriggerObjects SnmpAdminString,
mteTriggerEnabled TruthValue,
mteTriggerEntryStatus RowStatus
}
mteOwner OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE(0..32))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The owner of this entry. The exact semantics of this
string are subject to the security policy defined by the
security administrator."
::= { mteTriggerEntry 1 }
mteTriggerName OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (1..32))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A locally-unique, administratively assigned name for the
trigger within the scope of mteOwner."
::= { mteTriggerEntry 2 }
mteTriggerComment OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"A description of the trigger's function and use."
DEFVAL { ''H }
::= { mteTriggerEntry 3 }
mteTriggerTest OBJECT-TYPE
SYNTAX BITS { existence(0), boolean(1), threshold(2) }
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The type of trigger test to perform. For 'boolean' and
'threshold' tests, the object at mteTriggerValueID MUST
evaluate to an integer, that is, anything that ends up encoded
for transmission (that is, in BER, not ASN.1) as an integer.
For 'existence', the specific test is as selected by
mteTriggerExistenceTest. When an object appears, vanishes
or changes value, the trigger fires. If the object's
appearance caused the trigger firing, the object MUST
vanish before the trigger can be fired again for it, and
vice versa. If the trigger fired due to a change in the
object's value, it will be fired again on every successive
value change for that object.
For 'boolean', the specific test is as selected by
mteTriggerBooleanTest. If the test result is true the trigger
fires. The trigger will not fire again until the value has
become false and come back to true.
For 'threshold' the test works as described below for
mteTriggerThresholdStartup, mteTriggerThresholdRising, and
mteTriggerThresholdFalling.
Note that combining 'boolean' and 'threshold' tests on the
same object may be somewhat redundant."
DEFVAL { { boolean } }
::= { mteTriggerEntry 4 }
mteTriggerSampleType OBJECT-TYPE
SYNTAX INTEGER { absoluteValue(1), deltaValue(2) }
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The type of sampling to perform.
An 'absoluteValue' sample requires only a single sample to be
meaningful, and is exactly the value of the object at
mteTriggerValueID at the sample time.
A 'deltaValue' requires two samples to be meaningful and is
thus not available for testing until the second and subsequent
samples after the object at mteTriggerValueID is first found
to exist. It is the difference between the two samples. For
unsigned values it is always positive, based on unsigned
arithmetic. For signed values it can be positive or negative.
For SNMP counters to be meaningful they should be sampled as a
'deltaValue'.
For 'deltaValue' mteTriggerDeltaTable contains further
parameters.
If only 'existence' is set in mteTriggerTest this object has
no meaning."
DEFVAL { absoluteValue }
::= { mteTriggerEntry 5 }
mteTriggerValueID OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The object identifier of the MIB object to sample to see
if the trigger should fire.
This may be wildcarded by truncating all or part of the
instance portion, in which case the value is obtained
as if with a GetNext function, checking multiple values
if they exist. If such wildcarding is applied,
mteTriggerValueIDWildcard must be 'true' and if not it must
be 'false'.
Bad object identifiers or a mismatch between truncating the
identifier and the value of mteTriggerValueIDWildcard result
in operation as one would expect when providing the wrong
identifier to a Get or GetNext operation. The Get will fail
or get the wrong object. The GetNext will indeed get whatever
is next, proceeding until it runs past the initial part of the
identifier and perhaps many unintended objects for confusing
results. If the value syntax of those objects is not usable,
that results in a 'badType' error that terminates the scan.
Each instance that fills the wildcard is independent of any
additional instances, that is, wildcarded objects operate
as if there were a separate table entry for each instance
that fills the wildcard without having to actually predict
all possible instances ahead of time."
DEFVAL { zeroDotZero }
::= { mteTriggerEntry 6 }
mteTriggerValueIDWildcard OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"Control for whether mteTriggerValueID is to be treated as
fully-specified or wildcarded, with 'true' indicating wildcard."
DEFVAL { false }
::= { mteTriggerEntry 7 }
mteTriggerTargetTag OBJECT-TYPE
SYNTAX SnmpTagValue
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The tag for the target(s) from which to obtain the condition
for a trigger check.
A length of 0 indicates the local system. In this case,
access to the objects indicated by mteTriggerValueID is under
the security credentials of the requester that set
mteTriggerEntryStatus to 'active'. Those credentials are the
input parameters for isAccessAllowed from the Architecture for
Describing SNMP Management Frameworks.
Otherwise access rights are checked according to the security
parameters resulting from the tag."
DEFVAL { ''H }
::= { mteTriggerEntry 8 }
mteTriggerContextName OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The management context from which to obtain mteTriggerValueID.
This may be wildcarded by leaving characters off the end. For
example use 'Repeater' to wildcard to 'Repeater1',
'Repeater2', 'Repeater-999.87b', and so on. To indicate such
wildcarding is intended, mteTriggerContextNameWildcard must
be 'true'.
Each instance that fills the wildcard is independent of any
additional instances, that is, wildcarded objects operate
as if there were a separate table entry for each instance
that fills the wildcard without having to actually predict
all possible instances ahead of time.
Operation of this feature assumes that the local system has a
list of available contexts against which to apply the
wildcard. If the objects are being read from the local
system, this is clearly the system's own list of contexts.
For a remote system a local version of such a list is not
defined by any current standard and may not be available, so
this function MAY not be supported."
DEFVAL { ''H }
::= { mteTriggerEntry 9 }
mteTriggerContextNameWildcard OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"Control for whether mteTriggerContextName is to be treated as
fully-specified or wildcarded, with 'true' indicating wildcard."
DEFVAL { false }
::= { mteTriggerEntry 10 }
mteTriggerFrequency OBJECT-TYPE
SYNTAX Unsigned32
UNITS "seconds"
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The number of seconds to wait between trigger samples. To
encourage consistency in sampling, the interval is measured
from the beginning of one check to the beginning of the next
and the timer is restarted immediately when it expires, not
when the check completes.
If the next sample begins before the previous one completed the
system may either attempt to make the check or treat this as an
error condition with the error 'sampleOverrun'.
A frequency of 0 indicates instantaneous recognition of the
condition. This is not possible in many cases, but may
be supported in cases where it makes sense and the system is
able to do so. This feature allows the MIB to be used in
implementations where such interrupt-driven behavior is
possible and is not likely to be supported for all MIB objects
even then since such sampling generally has to be tightly
integrated into low-level code.
Systems that can support this SHOULD document those cases
where it can be used. In cases where it can not, setting this
object to 0 should be disallowed."
DEFVAL { 600 }
::= { mteTriggerEntry 11 }
mteTriggerObjectsOwner OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"To go with mteTriggerObjects, the mteOwner of a group of
objects from mteObjectsTable."
DEFVAL { ''H }
::= { mteTriggerEntry 12 }
mteTriggerObjects OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The mteObjectsName of a group of objects from
mteObjectsTable. These objects are to be added to any
Notification resulting from the firing of this trigger.
A list of objects may also be added based on the event or on
the value of mteTriggerTest.
A length of 0 indicates no additional objects."
DEFVAL { ''H }
::= { mteTriggerEntry 13 }
mteTriggerEnabled OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"A control to allow a trigger to be configured but not used.
When the value is 'false' the trigger is not sampled."
DEFVAL { false }
::= { mteTriggerEntry 14 }
mteTriggerEntryStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The control that allows creation and deletion of entries.
Once made active an entry may not be modified except to
delete it."
::= { mteTriggerEntry 15 }
--
-- Trigger Delta Table
--
mteTriggerDeltaTable OBJECT-TYPE
SYNTAX SEQUENCE OF MteTriggerDeltaEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of management event trigger information for delta
sampling."
::= { mteTrigger 3 }
mteTriggerDeltaEntry OBJECT-TYPE
SYNTAX MteTriggerDeltaEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Information about a single trigger's delta sampling. Entries
automatically exist in this this table for each mteTriggerEntry
that has mteTriggerSampleType set to 'deltaValue'."
INDEX { mteOwner, IMPLIED mteTriggerName }
::= { mteTriggerDeltaTable 1 }
MteTriggerDeltaEntry ::= SEQUENCE {
mteTriggerDeltaDiscontinuityID OBJECT IDENTIFIER,
mteTriggerDeltaDiscontinuityIDWildcard TruthValue,
mteTriggerDeltaDiscontinuityIDType INTEGER
}
sysUpTimeInstance OBJECT IDENTIFIER ::= { sysUpTime 0 }
mteTriggerDeltaDiscontinuityID OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The OBJECT IDENTIFIER (OID) of a TimeTicks, TimeStamp, or
DateAndTime object that indicates a discontinuity in the value
at mteTriggerValueID.
The OID may be for a leaf object (e.g. sysUpTime.0) or may
be wildcarded to match mteTriggerValueID.
This object supports normal checking for a discontinuity in a
counter. Note that if this object does not point to sysUpTime
discontinuity checking MUST still check sysUpTime for an overall
discontinuity.
If the object identified is not accessible the sample attempt
is in error, with the error code as from an SNMP request.
Bad object identifiers or a mismatch between truncating the
identifier and the value of mteDeltaDiscontinuityIDWildcard
result in operation as one would expect when providing the
wrong identifier to a Get operation. The Get will fail or get
the wrong object. If the value syntax of those objects is not
usable, that results in an error that terminates the sample
with a 'badType' error code."
DEFVAL { sysUpTimeInstance }
::= { mteTriggerDeltaEntry 1 }
mteTriggerDeltaDiscontinuityIDWildcard OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"Control for whether mteTriggerDeltaDiscontinuityID is to be
treated as fully-specified or wildcarded, with 'true'
indicating wildcard. Note that the value of this object will
be the same as that of the corresponding instance of
mteTriggerValueIDWildcard when the corresponding
mteTriggerSampleType is 'deltaValue'."
DEFVAL { false }
::= { mteTriggerDeltaEntry 2 }
mteTriggerDeltaDiscontinuityIDType OBJECT-TYPE
SYNTAX INTEGER { timeTicks(1), timeStamp(2), dateAndTime(3) }
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The value 'timeTicks' indicates the
mteTriggerDeltaDiscontinuityID of this row is of syntax
TimeTicks. The value 'timeStamp' indicates syntax TimeStamp.
The value 'dateAndTime' indicates syntax DateAndTime."
DEFVAL { timeTicks }
::= { mteTriggerDeltaEntry 3 }
--
-- Trigger Existence Table
--
mteTriggerExistenceTable OBJECT-TYPE
SYNTAX SEQUENCE OF MteTriggerExistenceEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of management event trigger information for existence
triggers."
::= { mteTrigger 4 }
mteTriggerExistenceEntry OBJECT-TYPE
SYNTAX MteTriggerExistenceEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Information about a single existence trigger. Entries
automatically exist in this this table for each mteTriggerEntry
that has 'existence' set in mteTriggerTest."
INDEX { mteOwner, IMPLIED mteTriggerName }
::= { mteTriggerExistenceTable 1 }
MteTriggerExistenceEntry ::= SEQUENCE {
mteTriggerExistenceTest BITS,
mteTriggerExistenceStartup BITS,
mteTriggerExistenceObjectsOwner SnmpAdminString,
mteTriggerExistenceObjects SnmpAdminString,
mteTriggerExistenceEventOwner SnmpAdminString,
mteTriggerExistenceEvent SnmpAdminString
}
mteTriggerExistenceTest OBJECT-TYPE
SYNTAX BITS { present(0), absent(1), changed(2) }
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The type of existence test to perform. The trigger fires
when the object at mteTriggerValueID is seen to go from
present to absent, from absent to present, or to have it's
value changed, depending on which tests are selected:
present(0) - when this test is selected, the trigger fires
when the mteTriggerValueID object goes from absent to present.
absent(1) - when this test is selected, the trigger fires
when the mteTriggerValueID object goes from present to absent.
changed(2) - when this test is selected, the trigger fires
the mteTriggerValueID object value changes.
Once the trigger has fired for either presence or absence it
will not fire again for that state until the object has been
to the other state. "
DEFVAL { { present, absent } }
::= { mteTriggerExistenceEntry 1 }
mteTriggerExistenceStartup OBJECT-TYPE
SYNTAX BITS { present(0), absent(1) }
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"Control for whether an event may be triggered when this entry
is first set to 'active' and the test specified by
mteTriggerExistenceTest is true. Setting an option causes
that trigger to fire when its test is true."
DEFVAL { { present, absent } }
::= { mteTriggerExistenceEntry 2 }
mteTriggerExistenceObjectsOwner OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"To go with mteTriggerExistenceObjects, the mteOwner of a
group of objects from mteObjectsTable."
DEFVAL { ''H }
::= { mteTriggerExistenceEntry 3 }
mteTriggerExistenceObjects OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The mteObjectsName of a group of objects from
mteObjectsTable. These objects are to be added to any
Notification resulting from the firing of this trigger for
this test.
A list of objects may also be added based on the overall
trigger, the event or other settings in mteTriggerTest.
A length of 0 indicates no additional objects."
DEFVAL { ''H }
::= { mteTriggerExistenceEntry 4 }
mteTriggerExistenceEventOwner OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"To go with mteTriggerExistenceEvent, the mteOwner of an event
entry from the mteEventTable."
DEFVAL { ''H }
::= { mteTriggerExistenceEntry 5 }
mteTriggerExistenceEvent OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The mteEventName of the event to invoke when mteTriggerType is
'existence' and this trigger fires. A length of 0 indicates no
event."
DEFVAL { ''H }
::= { mteTriggerExistenceEntry 6 }
--
-- Trigger Boolean Table
--
mteTriggerBooleanTable OBJECT-TYPE
SYNTAX SEQUENCE OF MteTriggerBooleanEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of management event trigger information for boolean
triggers."
::= { mteTrigger 5 }
mteTriggerBooleanEntry OBJECT-TYPE
SYNTAX MteTriggerBooleanEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Information about a single boolean trigger. Entries
automatically exist in this this table for each mteTriggerEntry
that has 'boolean' set in mteTriggerTest."
INDEX { mteOwner, IMPLIED mteTriggerName }
::= { mteTriggerBooleanTable 1 }
MteTriggerBooleanEntry ::= SEQUENCE {
mteTriggerBooleanComparison INTEGER,
mteTriggerBooleanValue Integer32,
mteTriggerBooleanStartup TruthValue,
mteTriggerBooleanObjectsOwner SnmpAdminString,
mteTriggerBooleanObjects SnmpAdminString,
mteTriggerBooleanEventOwner SnmpAdminString,
mteTriggerBooleanEvent SnmpAdminString
}
mteTriggerBooleanComparison OBJECT-TYPE
SYNTAX INTEGER { unequal(1), equal(2),
less(3), lessOrEqual(4),
greater(5), greaterOrEqual(6) }
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The type of boolean comparison to perform.
The value at mteTriggerValueID is compared to
mteTriggerBooleanValue, so for example if
mteTriggerBooleanComparison is 'less' the result would be true
if the value at mteTriggerValueID is less than the value of
mteTriggerBooleanValue."
DEFVAL { unequal }
::= { mteTriggerBooleanEntry 1 }
mteTriggerBooleanValue OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The value to use for the test specified by
mteTriggerBooleanTest."
DEFVAL { 0 }
::= { mteTriggerBooleanEntry 2 }
mteTriggerBooleanStartup OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"Control for whether an event may be triggered when this entry
is first set to 'active' or a new instance of the object at
mteTriggerValueID is found and the test specified by
mteTriggerBooleanComparison is true. In that case an event is
triggered if mteTriggerBooleanStartup is 'true'."
DEFVAL { true }
::= { mteTriggerBooleanEntry 3 }
mteTriggerBooleanObjectsOwner OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"To go with mteTriggerBooleanObjects, the mteOwner of a group
of objects from mteObjectsTable."
DEFVAL { ''H }
::= { mteTriggerBooleanEntry 4 }
mteTriggerBooleanObjects OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The mteObjectsName of a group of objects from
mteObjectsTable. These objects are to be added to any
Notification resulting from the firing of this trigger for
this test.
A list of objects may also be added based on the overall
trigger, the event or other settings in mteTriggerTest.
A length of 0 indicates no additional objects."
DEFVAL { ''H }
::= { mteTriggerBooleanEntry 5 }
mteTriggerBooleanEventOwner OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"To go with mteTriggerBooleanEvent, the mteOwner of an event
entry from mteEventTable."
DEFVAL { ''H }
::= { mteTriggerBooleanEntry 6 }
mteTriggerBooleanEvent OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The mteEventName of the event to invoke when mteTriggerType is
'boolean' and this trigger fires. A length of 0 indicates no
event."
DEFVAL { ''H }
::= { mteTriggerBooleanEntry 7 }
--
-- Trigger Threshold Table
--
mteTriggerThresholdTable OBJECT-TYPE
SYNTAX SEQUENCE OF MteTriggerThresholdEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of management event trigger information for threshold
triggers."
::= { mteTrigger 6 }
mteTriggerThresholdEntry OBJECT-TYPE
SYNTAX MteTriggerThresholdEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Information about a single threshold trigger. Entries
automatically exist in this table for each mteTriggerEntry
that has 'threshold' set in mteTriggerTest."
INDEX { mteOwner, IMPLIED mteTriggerName }
::= { mteTriggerThresholdTable 1 }
MteTriggerThresholdEntry ::= SEQUENCE {
mteTriggerThresholdStartup INTEGER,
mteTriggerThresholdRising Integer32,
mteTriggerThresholdFalling Integer32,
mteTriggerThresholdDeltaRising Integer32,
mteTriggerThresholdDeltaFalling Integer32,
mteTriggerThresholdObjectsOwner SnmpAdminString,
mteTriggerThresholdObjects SnmpAdminString,
mteTriggerThresholdRisingEventOwner SnmpAdminString,
mteTriggerThresholdRisingEvent SnmpAdminString,
mteTriggerThresholdFallingEventOwner SnmpAdminString,
mteTriggerThresholdFallingEvent SnmpAdminString,
mteTriggerThresholdDeltaRisingEventOwner SnmpAdminString,
mteTriggerThresholdDeltaRisingEvent SnmpAdminString,
mteTriggerThresholdDeltaFallingEventOwner SnmpAdminString,
mteTriggerThresholdDeltaFallingEvent SnmpAdminString
}
mteTriggerThresholdStartup OBJECT-TYPE
SYNTAX INTEGER { rising(1), falling(2), risingOrFalling(3) }
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The event that may be triggered when this entry is first
set to 'active' and a new instance of the object at
mteTriggerValueID is found. If the first sample after this
instance becomes active is greater than or equal to
mteTriggerThresholdRising and mteTriggerThresholdStartup is
equal to 'rising' or 'risingOrFalling', then one
mteTriggerThresholdRisingEvent is triggered for that instance.
If the first sample after this entry becomes active is less
than or equal to mteTriggerThresholdFalling and
mteTriggerThresholdStartup is equal to 'falling' or
'risingOrFalling', then one mteTriggerThresholdRisingEvent is
triggered for that instance."
DEFVAL { risingOrFalling }
::= { mteTriggerThresholdEntry 1 }
mteTriggerThresholdRising OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"A threshold value to check against if mteTriggerType is
'threshold'.
When the current sampled value is greater than or equal to
this threshold, and the value at the last sampling interval
was less than this threshold, one
mteTriggerThresholdRisingEvent is triggered. That event is
also triggered if the first sample after this entry becomes
active is greater than or equal to this threshold and
mteTriggerThresholdStartup is equal to 'rising' or
'risingOrFalling'.
After a rising event is generated, another such event is not
triggered until the sampled value falls below this threshold
and reaches mteTriggerThresholdFalling."
DEFVAL { 0 }
::= { mteTriggerThresholdEntry 2 }
mteTriggerThresholdFalling OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"A threshold value to check against if mteTriggerType is
'threshold'.
When the current sampled value is less than or equal to this
threshold, and the value at the last sampling interval was
greater than this threshold, one
mteTriggerThresholdFallingEvent is triggered. That event is
also triggered if the first sample after this entry becomes
active is less than or equal to this threshold and
mteTriggerThresholdStartup is equal to 'falling' or
'risingOrFalling'.
After a falling event is generated, another such event is not
triggered until the sampled value rises above this threshold
and reaches mteTriggerThresholdRising."
DEFVAL { 0 }
::= { mteTriggerThresholdEntry 3 }
mteTriggerThresholdDeltaRising OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"A threshold value to check against if mteTriggerType is
'threshold'.
When the delta value (difference) between the current sampled
value (value(n)) and the previous sampled value (value(n-1))
is greater than or equal to this threshold,
and the delta value calculated at the last sampling interval
(i.e. value(n-1) - value(n-2)) was less than this threshold,
one mteTriggerThresholdDeltaRisingEvent is triggered. That event
is also triggered if the first delta value calculated after this
entry becomes active, i.e. value(2) - value(1), where value(1)
is the first sample taken of that instance, is greater than or
equal to this threshold.
After a rising event is generated, another such event is not
triggered until the delta value falls below this threshold and
reaches mteTriggerThresholdDeltaFalling."
DEFVAL { 0 }
::= { mteTriggerThresholdEntry 4 }
mteTriggerThresholdDeltaFalling OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"A threshold value to check against if mteTriggerType is
'threshold'.
When the delta value (difference) between the current sampled
value (value(n)) and the previous sampled value (value(n-1))
is less than or equal to this threshold,
and the delta value calculated at the last sampling interval
(i.e. value(n-1) - value(n-2)) was greater than this threshold,
one mteTriggerThresholdDeltaFallingEvent is triggered. That event
is also triggered if the first delta value calculated after this
entry becomes active, i.e. value(2) - value(1), where value(1)
is the first sample taken of that instance, is less than or
equal to this threshold.
After a falling event is generated, another such event is not
triggered until the delta value falls below this threshold and
reaches mteTriggerThresholdDeltaRising."
DEFVAL { 0 }
::= { mteTriggerThresholdEntry 5 }
mteTriggerThresholdObjectsOwner OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"To go with mteTriggerThresholdObjects, the mteOwner of a group
of objects from mteObjectsTable."
DEFVAL { ''H }
::= { mteTriggerThresholdEntry 6 }
mteTriggerThresholdObjects OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The mteObjectsName of a group of objects from
mteObjectsTable. These objects are to be added to any
Notification resulting from the firing of this trigger for
this test.
A list of objects may also be added based on the overall
trigger, the event or other settings in mteTriggerTest.
A length of 0 indicates no additional objects."
DEFVAL { ''H }
::= { mteTriggerThresholdEntry 7 }
mteTriggerThresholdRisingEventOwner OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"To go with mteTriggerThresholdRisingEvent, the mteOwner of an
event entry from mteEventTable."
DEFVAL { ''H }
::= { mteTriggerThresholdEntry 8 }
mteTriggerThresholdRisingEvent OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The mteEventName of the event to invoke when mteTriggerType is
'threshold' and this trigger fires based on
mteTriggerThresholdRising. A length of 0 indicates no event."
DEFVAL { ''H }
::= { mteTriggerThresholdEntry 9 }
mteTriggerThresholdFallingEventOwner OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"To go with mteTriggerThresholdFallingEvent, the mteOwner of an
event entry from mteEventTable."
DEFVAL { ''H }
::= { mteTriggerThresholdEntry 10 }
mteTriggerThresholdFallingEvent OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The mteEventName of the event to invoke when mteTriggerType is
'threshold' and this trigger fires based on
mteTriggerThresholdFalling. A length of 0 indicates no event."
DEFVAL { ''H }
::= { mteTriggerThresholdEntry 11 }
mteTriggerThresholdDeltaRisingEventOwner OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"To go with mteTriggerThresholdDeltaRisingEvent, the mteOwner
of an event entry from mteEventTable."
DEFVAL { ''H }
::= { mteTriggerThresholdEntry 12 }
mteTriggerThresholdDeltaRisingEvent OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The mteEventName of the event to invoke when mteTriggerType is
'threshold' and this trigger fires based on
mteTriggerThresholdDeltaRising. A length of 0 indicates
no event."
DEFVAL { ''H }
::= { mteTriggerThresholdEntry 13 }
mteTriggerThresholdDeltaFallingEventOwner OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"To go with mteTriggerThresholdDeltaFallingEvent, the mteOwner
of an event entry from mteEventTable."
DEFVAL { ''H }
::= { mteTriggerThresholdEntry 14 }
mteTriggerThresholdDeltaFallingEvent OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The mteEventName of the event to invoke when mteTriggerType is
'threshold' and this trigger fires based on
mteTriggerThresholdDeltaFalling. A length of 0 indicates
no event."
DEFVAL { ''H }
::= { mteTriggerThresholdEntry 15 }
--
-- Objects Table
--
mteObjectsTable OBJECT-TYPE
SYNTAX SEQUENCE OF MteObjectsEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of objects that can be added to notifications based
on the trigger, trigger test, or event, as pointed to by
entries in those tables."
::= { mteObjects 1 }
mteObjectsEntry OBJECT-TYPE
SYNTAX MteObjectsEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A group of objects. Applications create and delete entries
using mteObjectsEntryStatus.
When adding objects to a notification they are added in the
lexical order of their index in this table. Those associated
with a trigger come first, then trigger test, then event."
INDEX { mteOwner, mteObjectsName, mteObjectsIndex }
::= { mteObjectsTable 1 }
MteObjectsEntry ::= SEQUENCE {
mteObjectsName SnmpAdminString,
mteObjectsIndex Unsigned32,
mteObjectsID OBJECT IDENTIFIER,
mteObjectsIDWildcard TruthValue,
mteObjectsEntryStatus RowStatus
}
mteObjectsName OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (1..32))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A locally-unique, administratively assigned name for a group
of objects."
::= { mteObjectsEntry 1 }
mteObjectsIndex OBJECT-TYPE
SYNTAX Unsigned32 (1..4294967295)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An arbitrary integer for the purpose of identifying
individual objects within a mteObjectsName group.
Objects within a group are placed in the notification in the
numerical order of this index.
Groups are placed in the notification in the order of the
selections for overall trigger, trigger test, and event.
Within trigger test they are in the same order as the
numerical values of the bits defined for mteTriggerTest.
Bad object identifiers or a mismatch between truncating the
identifier and the value of mteDeltaDiscontinuityIDWildcard
result in operation as one would expect when providing the
wrong identifier to a Get operation. The Get will fail or get
the wrong object. If the object is not available it is omitted
from the notification."
::= { mteObjectsEntry 2 }
mteObjectsID OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The object identifier of a MIB object to add to a
Notification that results from the firing of a trigger.
This may be wildcarded by truncating all or part of the
instance portion, in which case the instance portion of the
OID for obtaining this object will be the same as that used
in obtaining the mteTriggerValueID that fired. If such
wildcarding is applied, mteObjectsIDWildcard must be
'true' and if not it must be 'false'.
Each instance that fills the wildcard is independent of any
additional instances, that is, wildcarded objects operate
as if there were a separate table entry for each instance
that fills the wildcard without having to actually predict
all possible instances ahead of time."
DEFVAL { zeroDotZero }
::= { mteObjectsEntry 3 }
mteObjectsIDWildcard OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"Control for whether mteObjectsID is to be treated as
fully-specified or wildcarded, with 'true' indicating wildcard."
DEFVAL { false }
::= { mteObjectsEntry 4 }
mteObjectsEntryStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The control that allows creation and deletion of entries.
Once made active an entry MAY not be modified except to
delete it."
::= { mteObjectsEntry 5 }
--
-- Event Section
--
-- Counters
mteEventFailures OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of times an attempt to invoke an event
has failed. This counts individually for each
attempt in a group of targets or each attempt for a
wildcarded trigger object."
::= { mteEvent 1 }
--
-- Event Table
--
mteEventTable OBJECT-TYPE
SYNTAX SEQUENCE OF MteEventEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of management event action information."
::= { mteEvent 2 }
mteEventEntry OBJECT-TYPE
SYNTAX MteEventEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Information about a single event. Applications create and
delete entries using mteEventEntryStatus."
INDEX { mteOwner, IMPLIED mteEventName }
::= { mteEventTable 1 }
MteEventEntry ::= SEQUENCE {
mteEventName SnmpAdminString,
mteEventComment SnmpAdminString,
mteEventActions BITS,
mteEventEnabled TruthValue,
mteEventEntryStatus RowStatus
}
mteEventName OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (1..32))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A locally-unique, administratively assigned name for the
event."
::= { mteEventEntry 1 }
mteEventComment OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"A description of the event's function and use."
DEFVAL { ''H }
::= { mteEventEntry 2 }
mteEventActions OBJECT-TYPE
SYNTAX BITS { notification(0), set(1) }
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The actions to perform when this event occurs.
For 'notification', Traps and/or Informs are sent according
to the configuration in the SNMP Notification MIB.
For 'set', an SNMP Set operation is performed according to
control values in this entry."
DEFVAL { {} } -- No bits set.
::= { mteEventEntry 3 }
mteEventEnabled OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"A control to allow an event to be configured but not used.
When the value is 'false' the event does not execute even if
triggered."
DEFVAL { false }
::= { mteEventEntry 4 }
mteEventEntryStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The control that allows creation and deletion of entries.
Once made active an entry MAY not be modified except to
delete it."
::= { mteEventEntry 5 }
--
-- Event Notification Table
--
mteEventNotificationTable OBJECT-TYPE
SYNTAX SEQUENCE OF MteEventNotificationEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of information about notifications to be sent as a
consequence of management events."
::= { mteEvent 3 }
mteEventNotificationEntry OBJECT-TYPE
SYNTAX MteEventNotificationEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Information about a single event's notification. Entries
automatically exist in this this table for each mteEventEntry
that has 'notification' set in mteEventActions."
INDEX { mteOwner, IMPLIED mteEventName }
::= { mteEventNotificationTable 1 }
MteEventNotificationEntry ::= SEQUENCE {
mteEventNotification OBJECT IDENTIFIER,
mteEventNotificationObjectsOwner SnmpAdminString,
mteEventNotificationObjects SnmpAdminString
}
mteEventNotification OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The object identifier from the NOTIFICATION-TYPE for the
notification to use if metEventActions has 'notification' set."
DEFVAL { zeroDotZero }
::= { mteEventNotificationEntry 1 }
mteEventNotificationObjectsOwner OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"To go with mteEventNotificationObjects, the mteOwner of a
group of objects from mteObjectsTable."
DEFVAL { ''H }
::= { mteEventNotificationEntry 2 }
mteEventNotificationObjects OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The mteObjectsName of a group of objects from
mteObjectsTable if mteEventActions has 'notification' set.
These objects are to be added to any Notification generated by
this event.
Objects may also be added based on the trigger that stimulated
the event.
A length of 0 indicates no additional objects."
DEFVAL { ''H }
::= { mteEventNotificationEntry 3 }
--
-- Event Set Table
--
mteEventSetTable OBJECT-TYPE
SYNTAX SEQUENCE OF MteEventSetEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of management event action information."
::= { mteEvent 4 }
mteEventSetEntry OBJECT-TYPE
SYNTAX MteEventSetEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Information about a single event's set option. Entries
automatically exist in this this table for each mteEventEntry
that has 'set' set in mteEventActions."
INDEX { mteOwner, IMPLIED mteEventName }
::= { mteEventSetTable 1 }
MteEventSetEntry ::= SEQUENCE {
mteEventSetObject OBJECT IDENTIFIER,
mteEventSetObjectWildcard TruthValue,
mteEventSetValue Integer32,
mteEventSetTargetTag SnmpTagValue,
mteEventSetContextName SnmpAdminString,
mteEventSetContextNameWildcard TruthValue
}
mteEventSetObject OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The object identifier from the MIB object to set if
mteEventActions has 'set' set.
This object identifier may be wildcarded by leaving
sub-identifiers off the end, in which case
nteEventSetObjectWildCard must be 'true'.
If mteEventSetObject is wildcarded the instance used to set the
object to which it points is the same as the instance from the
value of mteTriggerValueID that triggered the event.
Each instance that fills the wildcard is independent of any
additional instances, that is, wildcarded objects operate
as if there were a separate table entry for each instance
that fills the wildcard without having to actually predict
all possible instances ahead of time.
Bad object identifiers or a mismatch between truncating the
identifier and the value of mteSetObjectWildcard
result in operation as one would expect when providing the
wrong identifier to a Set operation. The Set will fail or set
the wrong object. If the value syntax of the destination
object is not correct, the Set fails with the normal SNMP
error code."
DEFVAL { zeroDotZero }
::= { mteEventSetEntry 1 }
mteEventSetObjectWildcard OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"Control over whether mteEventSetObject is to be treated as
fully-specified or wildcarded, with 'true' indicating wildcard
if mteEventActions has 'set' set."
DEFVAL { false }
::= { mteEventSetEntry 2 }
mteEventSetValue OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The value to which to set the object at mteEventSetObject
if mteEventActions has 'set' set."
DEFVAL { 0 }
::= { mteEventSetEntry 3 }
mteEventSetTargetTag OBJECT-TYPE
SYNTAX SnmpTagValue
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The tag for the target(s) at which to set the object at
mteEventSetObject to mteEventSetValue if mteEventActions
has 'set' set.
Systems limited to self management MAY reject a non-zero
length for the value of this object.
A length of 0 indicates the local system. In this case,
access to the objects indicated by mteEventSetObject is under
the security credentials of the requester that set
mteTriggerEntryStatus to 'active'. Those credentials are the
input parameters for isAccessAllowed from the Architecture for
Describing SNMP Management Frameworks.
Otherwise access rights are checked according to the security
parameters resulting from the tag."
DEFVAL { ''H }
::= { mteEventSetEntry 4 }
mteEventSetContextName OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The management context in which to set mteEventObjectID.
if mteEventActions has 'set' set.
This may be wildcarded by leaving characters off the end. To
indicate such wildcarding mteEventSetContextNameWildcard must
be 'true'.
If this context name is wildcarded the value used to complete
the wildcarding of mteTriggerContextName will be appended."
DEFVAL { ''H }
::= { mteEventSetEntry 5 }
mteEventSetContextNameWildcard OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"Control for whether mteEventSetContextName is to be treated as
fully-specified or wildcarded, with 'true' indicating wildcard
if mteEventActions has 'set' set."
DEFVAL { false }
::= { mteEventSetEntry 6 }
--
-- Notifications
--
dismanEventMIBNotificationPrefix OBJECT IDENTIFIER ::=
{ dismanEventMIB 2 }
dismanEventMIBNotifications OBJECT IDENTIFIER ::=
{ dismanEventMIBNotificationPrefix 0 }
dismanEventMIBNotificationObjects OBJECT IDENTIFIER
::= { dismanEventMIBNotificationPrefix 1 }
--
-- Notification Objects
--
mteHotTrigger OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS accessible-for-notify
STATUS current
DESCRIPTION
"The name of the trigger causing the notification."
::= { dismanEventMIBNotificationObjects 1 }
mteHotTargetName OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS accessible-for-notify
STATUS current
DESCRIPTION
"The SNMP Target MIB's snmpTargetAddrName related to the
notification."
::= { dismanEventMIBNotificationObjects 2 }
mteHotContextName OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS accessible-for-notify
STATUS current
DESCRIPTION
"The context name related to the notification. This MUST be as
fully-qualified as possible, including filling in wildcard
information determined in processing."
::= { dismanEventMIBNotificationObjects 3 }
mteHotOID OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS accessible-for-notify
STATUS current
DESCRIPTION
"The object identifier of the destination object related to the
notification. This MUST be as fully-qualified as possible,
including filling in wildcard information determined in
processing.
For a trigger-related notification this is from
mteTriggerValueID.
For a set failure this is from mteEventSetObject."
::= { dismanEventMIBNotificationObjects 4 }
mteHotValue OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS accessible-for-notify
STATUS current
DESCRIPTION
"The value of the object at mteTriggerValueID when a
trigger fired."
::= { dismanEventMIBNotificationObjects 5 }
mteFailedReason OBJECT-TYPE
SYNTAX FailureReason
MAX-ACCESS accessible-for-notify
STATUS current
DESCRIPTION
"The reason for the failure of an attempt to check for a
trigger condition or set an object in response to an event."
::= { dismanEventMIBNotificationObjects 6 }
--
-- Notifications
--
mteTriggerFired NOTIFICATION-TYPE
OBJECTS { mteHotTrigger,
mteHotTargetName,
mteHotContextName,
mteHotOID,
mteHotValue }
STATUS current
DESCRIPTION
"Notification that the trigger indicated by the object
instances has fired, for triggers with mteTriggerType
'boolean' or 'existence'."
::= { dismanEventMIBNotifications 1 }
mteTriggerRising NOTIFICATION-TYPE
OBJECTS { mteHotTrigger,
mteHotTargetName,
mteHotContextName,
mteHotOID,
mteHotValue }
STATUS current
DESCRIPTION
"Notification that the rising threshold was met for triggers
with mteTriggerType 'threshold'."
::= { dismanEventMIBNotifications 2 }
mteTriggerFalling NOTIFICATION-TYPE
OBJECTS { mteHotTrigger,
mteHotTargetName,
mteHotContextName,
mteHotOID,
mteHotValue }
STATUS current
DESCRIPTION
"Notification that the falling threshold was met for triggers
with mteTriggerType 'threshold'."
::= { dismanEventMIBNotifications 3 }
mteTriggerFailure NOTIFICATION-TYPE
OBJECTS { mteHotTrigger,
mteHotTargetName,
mteHotContextName,
mteHotOID,
mteFailedReason }
STATUS current
DESCRIPTION
"Notification that an attempt to check a trigger has failed.
The network manager must enable this notification only with
a certain fear and trembling, as it can easily crowd out more
important information. It should be used only to help diagnose
a problem that has appeared in the error counters and can not
be found otherwise."
::= { dismanEventMIBNotifications 4 }
mteEventSetFailure NOTIFICATION-TYPE
OBJECTS { mteHotTrigger,
mteHotTargetName,
mteHotContextName,
mteHotOID,
mteFailedReason }
STATUS current
DESCRIPTION
"Notification that an attempt to do a set in response to an
event has failed.
The network manager must enable this notification only with
a certain fear and trembling, as it can easily crowd out more
important information. It should be used only to help diagnose
a problem that has appeared in the error counters and can not
be found otherwise."
::= { dismanEventMIBNotifications 5 }
--
-- Conformance
--
dismanEventMIBConformance OBJECT IDENTIFIER ::= { dismanEventMIB 3 }
dismanEventMIBCompliances OBJECT IDENTIFIER ::=
{ dismanEventMIBConformance 1 }
dismanEventMIBGroups OBJECT IDENTIFIER ::=
{ dismanEventMIBConformance 2 }
-- Compliance
dismanEventMIBCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"The compliance statement for entities which implement
the Event MIB."
MODULE -- this module
MANDATORY-GROUPS {
dismanEventResourceGroup,
dismanEventTriggerGroup,
dismanEventObjectsGroup,
dismanEventEventGroup,
dismanEventNotificationObjectGroup,
dismanEventNotificationGroup
}
OBJECT mteTriggerTargetTag
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required, thus limiting
monitoring to the local system or pre-configured
remote systems."
OBJECT mteEventSetTargetTag
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required, thus limiting
setting to the local system or pre-configured
remote systems."
OBJECT mteTriggerValueIDWildcard
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required, thus allowing
the system not to implement wildcarding."
OBJECT mteTriggerContextNameWildcard
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required, thus allowing
the system not to implement wildcarding."
OBJECT mteObjectsIDWildcard
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required, thus allowing
the system not to implement wildcarding."
OBJECT mteEventSetContextNameWildcard
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required, thus allowing
the system not to implement wildcarding."
::= { dismanEventMIBCompliances 1 }
-- Units of Conformance
dismanEventResourceGroup OBJECT-GROUP
OBJECTS {
mteResourceSampleMinimum,
mteResourceSampleInstanceMaximum,
mteResourceSampleInstances,
mteResourceSampleInstancesHigh,
mteResourceSampleInstanceLacks
}
STATUS current
DESCRIPTION
"Event resource status and control objects."
::= { dismanEventMIBGroups 1 }
dismanEventTriggerGroup OBJECT-GROUP
OBJECTS {
mteTriggerFailures,
mteTriggerComment,
mteTriggerTest,
mteTriggerSampleType,
mteTriggerValueID,
mteTriggerValueIDWildcard,
mteTriggerTargetTag,
mteTriggerContextName,
mteTriggerContextNameWildcard,
mteTriggerFrequency,
mteTriggerObjectsOwner,
mteTriggerObjects,
mteTriggerEnabled,
mteTriggerEntryStatus,
mteTriggerDeltaDiscontinuityID,
mteTriggerDeltaDiscontinuityIDWildcard,
mteTriggerDeltaDiscontinuityIDType,
mteTriggerExistenceTest,
mteTriggerExistenceStartup,
mteTriggerExistenceObjectsOwner,
mteTriggerExistenceObjects,
mteTriggerExistenceEventOwner,
mteTriggerExistenceEvent,
mteTriggerBooleanComparison,
mteTriggerBooleanValue,
mteTriggerBooleanStartup,
mteTriggerBooleanObjectsOwner,
mteTriggerBooleanObjects,
mteTriggerBooleanEventOwner,
mteTriggerBooleanEvent,
mteTriggerThresholdStartup,
mteTriggerThresholdObjectsOwner,
mteTriggerThresholdObjects,
mteTriggerThresholdRising,
mteTriggerThresholdFalling,
mteTriggerThresholdDeltaRising,
mteTriggerThresholdDeltaFalling,
mteTriggerThresholdRisingEventOwner,
mteTriggerThresholdRisingEvent,
mteTriggerThresholdFallingEventOwner,
mteTriggerThresholdFallingEvent,
mteTriggerThresholdDeltaRisingEventOwner,
mteTriggerThresholdDeltaRisingEvent,
mteTriggerThresholdDeltaFallingEventOwner,
mteTriggerThresholdDeltaFallingEvent
}
STATUS current
DESCRIPTION
"Event triggers."
::= { dismanEventMIBGroups 2 }
dismanEventObjectsGroup OBJECT-GROUP
OBJECTS {
mteObjectsID,
mteObjectsIDWildcard,
mteObjectsEntryStatus
}
STATUS current
DESCRIPTION
"Supplemental objects."
::= { dismanEventMIBGroups 3 }
dismanEventEventGroup OBJECT-GROUP
OBJECTS {
mteEventFailures,
mteEventComment,
mteEventActions,
mteEventEnabled,
mteEventEntryStatus,
mteEventNotification,
mteEventNotificationObjectsOwner,
mteEventNotificationObjects,
mteEventSetObject,
mteEventSetObjectWildcard,
mteEventSetValue,
mteEventSetTargetTag,
mteEventSetContextName,
mteEventSetContextNameWildcard
}
STATUS current
DESCRIPTION
"Events."
::= { dismanEventMIBGroups 4 }
dismanEventNotificationObjectGroup OBJECT-GROUP
OBJECTS {
mteHotTrigger,
mteHotTargetName,
mteHotContextName,
mteHotOID,
mteHotValue,
mteFailedReason
}
STATUS current
DESCRIPTION
"Notification objects."
::= { dismanEventMIBGroups 5 }
dismanEventNotificationGroup NOTIFICATION-GROUP
NOTIFICATIONS {
mteTriggerFired,
mteTriggerRising,
mteTriggerFalling,
mteTriggerFailure,
mteEventSetFailure
}
STATUS current
DESCRIPTION
"Notifications."
::= { dismanEventMIBGroups 6 }
END
share/snmp/mibs/DISMAN-SCRIPT-MIB.txt 0000644 00000175467 15055304130 0012720 0 ustar 00 DISMAN-SCRIPT-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE,
Integer32, Unsigned32, mib-2
FROM SNMPv2-SMI
RowStatus, TimeInterval, DateAndTime, StorageType, DisplayString
FROM SNMPv2-TC
MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP
FROM SNMPv2-CONF
SnmpAdminString
FROM SNMP-FRAMEWORK-MIB;
scriptMIB MODULE-IDENTITY
LAST-UPDATED "200108210000Z"
ORGANIZATION "IETF Distributed Management Working Group"
CONTACT-INFO
"WG EMail: disman@dorothy.bmc.com
Subscribe: disman-request@dorothy.bmc.com
Chair: Randy Presuhn
BMC Software, Inc.
Postal: Office 1-3141
2141 North First Street
San Jose, California 95131
USA
EMail: rpresuhn@bmc.com
Phone: +1 408 546-1006
Editor: David B. Levi
Nortel Networks
Postal: 4401 Great America Parkway
Santa Clara, CA 95052-8185
USA
EMail: dlevi@nortelnetworks.com
Phone: +1 423 686 0432
Editor: Juergen Schoenwaelder
TU Braunschweig
Postal: Bueltenweg 74/75
38106 Braunschweig
Germany
EMail: schoenw@ibr.cs.tu-bs.de
Phone: +49 531 391-3283"
DESCRIPTION
"This MIB module defines a set of objects that allow to
delegate management scripts to distributed managers."
REVISION "200108210000Z"
DESCRIPTION
"Revised version, published as RFC 3165.
This revision introduces several new objects: smScriptError,
smScriptLastChange, smLaunchError, smLaunchLastChange,
smLaunchRowExpireTime, smRunResultTime, and smRunErrorTime.
The following existing objects were updated: the maximum
value of smRunLifeTime now disables the timer, an
autostart value was added to the smLaunchAdminStatus
object, and a new expired state was added to the
smLaunchOperStatus object.
A new smScriptException notification has been added to
support runtime error notifications.
Created new conformance and compliance statements that
take care of the new objects and notifications.
Clarifications have been added in several places to remove
ambiguities or contradictions that were discovered and
reported by implementors."
REVISION "199902221800Z"
DESCRIPTION
"Initial version, published as RFC 2592."
::= { mib-2 64 }
--
-- The groups defined within this MIB module:
--
smObjects OBJECT IDENTIFIER ::= { scriptMIB 1 }
smNotifications OBJECT IDENTIFIER ::= { scriptMIB 2 }
smConformance OBJECT IDENTIFIER ::= { scriptMIB 3 }
--
-- Script language and language extensions.
--
-- This group defines tables which list the languages and the
-- language extensions supported by a Script MIB implementation.
-- Languages are uniquely identified by object identifier values.
--
smLangTable OBJECT-TYPE
SYNTAX SEQUENCE OF SmLangEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table lists supported script languages."
::= { smObjects 1 }
smLangEntry OBJECT-TYPE
SYNTAX SmLangEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry describing a particular language."
INDEX { smLangIndex }
::= { smLangTable 1 }
SmLangEntry ::= SEQUENCE {
smLangIndex Integer32,
smLangLanguage OBJECT IDENTIFIER,
smLangVersion SnmpAdminString,
smLangVendor OBJECT IDENTIFIER,
smLangRevision SnmpAdminString,
smLangDescr SnmpAdminString
}
smLangIndex OBJECT-TYPE
SYNTAX Integer32 (1..2147483647)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The locally arbitrary, but unique identifier associated
with this language entry.
The value is expected to remain constant at least from one
re-initialization of the entity's network management system
to the next re-initialization.
Note that the data type and the range of this object must
be consistent with the definition of smScriptLanguage."
::= { smLangEntry 1 }
smLangLanguage OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The globally unique identification of the language."
::= { smLangEntry 2 }
smLangVersion OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The version number of the language. The zero-length string
shall be used if the language does not have a version
number.
It is suggested that the version number consist of one or
more decimal numbers separated by dots, where the first
number is called the major version number."
::= { smLangEntry 3 }
smLangVendor OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"An object identifier which identifies the vendor who
provides the implementation of the language. This object
identifier SHALL point to the object identifier directly
below the enterprise object identifier {1 3 6 1 4 1}
allocated for the vendor. The value must be the object
identifier {0 0} if the vendor is not known."
::= { smLangEntry 4 }
smLangRevision OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The version number of the language implementation.
The value of this object must be an empty string if
version number of the implementation is unknown.
It is suggested that the value consist of one or more
decimal numbers separated by dots, where the first
number is called the major version number."
::= { smLangEntry 5 }
smLangDescr OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A textual description of the language."
::= { smLangEntry 6 }
smExtsnTable OBJECT-TYPE
SYNTAX SEQUENCE OF SmExtsnEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table lists supported language extensions."
::= { smObjects 2 }
smExtsnEntry OBJECT-TYPE
SYNTAX SmExtsnEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry describing a particular language extension."
INDEX { smLangIndex, smExtsnIndex }
::= { smExtsnTable 1 }
SmExtsnEntry ::= SEQUENCE {
smExtsnIndex Integer32,
smExtsnExtension OBJECT IDENTIFIER,
smExtsnVersion SnmpAdminString,
smExtsnVendor OBJECT IDENTIFIER,
smExtsnRevision SnmpAdminString,
smExtsnDescr SnmpAdminString
}
smExtsnIndex OBJECT-TYPE
SYNTAX Integer32 (1..2147483647)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The locally arbitrary, but unique identifier associated
with this language extension entry.
The value is expected to remain constant at least from one
re-initialization of the entity's network management system
to the next re-initialization."
::= { smExtsnEntry 1}
smExtsnExtension OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The globally unique identification of the language
extension."
::= { smExtsnEntry 2 }
smExtsnVersion OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The version number of the language extension.
It is suggested that the version number consist of one or
more decimal numbers separated by dots, where the first
number is called the major version number."
::= { smExtsnEntry 3 }
smExtsnVendor OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"An object identifier which identifies the vendor who
provides the implementation of the extension. The
object identifier value should point to the OID node
directly below the enterprise OID {1 3 6 1 4 1}
allocated for the vendor. The value must by the object
identifier {0 0} if the vendor is not known."
::= { smExtsnEntry 4 }
smExtsnRevision OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The version number of the extension implementation.
The value of this object must be an empty string if
version number of the implementation is unknown.
It is suggested that the value consist of one or more
decimal numbers separated by dots, where the first
number is called the major version number."
::= { smExtsnEntry 5 }
smExtsnDescr OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A textual description of the language extension."
::= { smExtsnEntry 6 }
--
-- Scripts known by the Script MIB implementation.
--
-- This group defines a table which lists all known scripts.
-- Scripts can be added and removed through manipulation of the
-- smScriptTable.
--
smScriptObjects OBJECT IDENTIFIER ::= { smObjects 3 }
smScriptTable OBJECT-TYPE
SYNTAX SEQUENCE OF SmScriptEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table lists and describes locally known scripts."
::= { smScriptObjects 1 }
smScriptEntry OBJECT-TYPE
SYNTAX SmScriptEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry describing a particular script. Every script that
is stored in non-volatile memory is required to appear in
this script table."
INDEX { smScriptOwner, smScriptName }
::= { smScriptTable 1 }
SmScriptEntry ::= SEQUENCE {
smScriptOwner SnmpAdminString,
smScriptName SnmpAdminString,
smScriptDescr SnmpAdminString,
smScriptLanguage Integer32,
smScriptSource DisplayString,
smScriptAdminStatus INTEGER,
smScriptOperStatus INTEGER,
smScriptStorageType StorageType,
smScriptRowStatus RowStatus,
smScriptError SnmpAdminString,
smScriptLastChange DateAndTime
}
smScriptOwner OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The manager who owns this row in the smScriptTable."
::= { smScriptEntry 1 }
smScriptName OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (1..32))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The locally-unique, administratively assigned name for this
script. This object allows an smScriptOwner to have multiple
entries in the smScriptTable.
This value of this object may be used to derive the name
(e.g. a file name) which is used by the Script MIB
implementation to access the script in non-volatile
storage. The details of this mapping are implementation
specific. However, the mapping needs to ensure that scripts
created by different owners with the same script name do not
map to the same name in non-volatile storage."
::= { smScriptEntry 2 }
smScriptDescr OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"A description of the purpose of the script."
::= { smScriptEntry 3 }
smScriptLanguage OBJECT-TYPE
SYNTAX Integer32 (0..2147483647)
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The value of this object type identifies an entry in the
smLangTable which is used to execute this script.
The special value 0 may be used by hard-wired scripts
that can not be modified and that are executed by
internal functions.
Set requests to change this object are invalid if the
value of smScriptOperStatus is `enabled' or `compiling'
and will result in an inconsistentValue error.
Note that the data type and the range of this object must
be consistent with the definition of smLangIndex."
::= { smScriptEntry 4 }
smScriptSource OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object either contains a reference to the script
source or an empty string. A reference must be given
in the form of a Uniform Resource Locator (URL) as
defined in RFC 2396. The allowed character sets and the
encoding rules defined in RFC 2396 section 2 apply.
When the smScriptAdminStatus object is set to `enabled',
the Script MIB implementation will `pull' the script
source from the URL contained in this object if the URL
is not empty.
An empty URL indicates that the script source is loaded
from local storage. The script is read from the smCodeTable
if the value of smScriptStorageType is volatile. Otherwise,
the script is read from non-volatile storage.
Note: This document does not mandate implementation of any
specific URL scheme. An attempt to load a script from a
nonsupported URL scheme will cause the smScriptOperStatus
to report an `unknownProtocol' error.
Set requests to change this object are invalid if the
value of smScriptOperStatus is `enabled', `editing',
`retrieving' or `compiling' and will result in an
inconsistentValue error."
DEFVAL { ''H }
::= { smScriptEntry 5 }
smScriptAdminStatus OBJECT-TYPE
SYNTAX INTEGER {
enabled(1),
disabled(2),
editing(3)
}
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The value of this object indicates the desired status of
the script. See the definition of smScriptOperStatus for
a description of the values.
When the smScriptAdminStatus object is set to `enabled' and
the smScriptOperStatus is `disabled' or one of the error
states, the Script MIB implementation will `pull' the script
source from the URL contained in the smScriptSource object
if the URL is not empty."
DEFVAL { disabled }
::= { smScriptEntry 6 }
smScriptOperStatus OBJECT-TYPE
SYNTAX INTEGER {
enabled(1),
disabled(2),
editing(3),
retrieving(4),
compiling(5),
noSuchScript(6),
accessDenied(7),
wrongLanguage(8),
wrongVersion(9),
compilationFailed(10),
noResourcesLeft(11),
unknownProtocol(12),
protocolFailure(13),
genericError(14)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The actual status of the script in the runtime system. The
value of this object is only meaningful when the value of
the smScriptRowStatus object is `active'.
The smScriptOperStatus object may have the following values:
- `enabled' indicates that the script is available and can
be started by a launch table entry.
- `disabled' indicates that the script can not be used.
- `editing' indicates that the script can be modified in the
smCodeTable.
- `retrieving' indicates that the script is currently being
loaded from non-volatile storage or a remote system.
- `compiling' indicates that the script is currently being
compiled by the runtime system.
- `noSuchScript' indicates that the script does not exist
at the smScriptSource.
- `accessDenied' indicates that the script can not be loaded
from the smScriptSource due to a lack of permissions.
- `wrongLanguage' indicates that the script can not be
loaded from the smScriptSource because of a language
mismatch.
- `wrongVersion' indicates that the script can not be loaded
from the smScriptSource because of a language version
mismatch.
- `compilationFailed' indicates that the compilation failed.
- `noResourcesLeft' indicates that the runtime system does
not have enough resources to load the script.
- `unknownProtocol' indicates that the script could not be
loaded from the smScriptSource because the requested
protocol is not supported.
- `protocolFailure' indicates that the script could not be
loaded from the smScriptSource because of a protocol
failure.
- `genericError' indicates that the script could not be
loaded due to an error condition not listed above.
The `retrieving' and `compiling' states are transient states
which will either lead to one of the error states or the
`enabled' state. The `disabled' and `editing' states are
administrative states which are only reached by explicit
management operations.
All launch table entries that refer to this script table
entry shall have an smLaunchOperStatus value of `disabled'
when the value of this object is not `enabled'."
DEFVAL { disabled }
::= { smScriptEntry 7 }
smScriptStorageType OBJECT-TYPE
SYNTAX StorageType
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object defines whether this row and the script
controlled by this row are kept in volatile storage and
lost upon reboot or if this row is backed up by
non-volatile or permanent storage.
The storage type of this row always complies with the value
of this entry if the value of the corresponding RowStatus
object is `active'.
However, the storage type of the script controlled by this
row may be different, if the value of this entry is
`non-volatile'. The script controlled by this row is written
into local non-volatile storage if the following condition
becomes true:
(a) the URL contained in the smScriptSource object is empty
and
(b) the smScriptStorageType is `nonVolatile'
and
(c) the smScriptOperStatus is `enabled'
Setting this object to `volatile' removes a script from
non-volatile storage if the script controlled by this row
has been in non-volatile storage before. Attempts to set
this object to permanent will always fail with an
inconsistentValue error.
The value of smScriptStorageType is only meaningful if the
value of the corresponding RowStatus object is `active'.
If smScriptStorageType has the value permanent(4), then all
objects whose MAX-ACCESS value is read-create must be
writable, with the exception of the smScriptStorageType and
smScriptRowStatus objects, which shall be read-only."
DEFVAL { volatile }
::= { smScriptEntry 8 }
smScriptRowStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"A control that allows entries to be added and removed from
this table.
Changing the smScriptRowStatus from `active' to
`notInService' will remove the associated script from the
runtime system.
Deleting conceptual rows from this table may affect the
deletion of other resources associated with this row. For
example, a script stored in non-volatile storage may be
removed from non-volatile storage.
An entry may not exist in the `active' state unless all
required objects in the entry have appropriate values. Rows
that are not complete or not in service are not known by the
script runtime system.
Attempts to `destroy' a row or to set a row `notInService'
while the smScriptOperStatus is `enabled' will result in an
inconsistentValue error.
Attempts to `destroy' a row or to set a row `notInService'
where the value of the smScriptStorageType object is
`permanent' or `readOnly' will result in an
inconsistentValue error.
The value of this object has no effect on whether other
objects in this conceptual row can be modified."
::= { smScriptEntry 9 }
smScriptError OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object contains a descriptive error message if the
transition into the operational status `enabled' failed.
Implementations must reset the error message to a
zero-length string when a new attempt to change the
script status to `enabled' is started."
DEFVAL { ''H }
::= { smScriptEntry 10 }
smScriptLastChange OBJECT-TYPE
SYNTAX DateAndTime
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The date and time when this script table entry was last
modified. The value '0000000000000000'H is returned if
the script table entry has not yet been modified.
Note that the resetting of smScriptError is not considered
a change of the script table entry."
DEFVAL { '0000000000000000'H }
::= { smScriptEntry 11 }
--
-- Access to script code via SNMP
--
-- The smCodeTable allows script code to be read and modified
-- via SNMP.
--
smCodeTable OBJECT-TYPE
SYNTAX SEQUENCE OF SmCodeEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table contains the script code for scripts that are
written via SNMP write operations."
::= { smScriptObjects 2 }
smCodeEntry OBJECT-TYPE
SYNTAX SmCodeEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry describing a particular fragment of a script."
INDEX { smScriptOwner, smScriptName, smCodeIndex }
::= { smCodeTable 1 }
SmCodeEntry ::= SEQUENCE {
smCodeIndex Unsigned32,
smCodeText OCTET STRING,
smCodeRowStatus RowStatus
}
smCodeIndex OBJECT-TYPE
SYNTAX Unsigned32 (1..4294967295)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The index value identifying this code fragment."
::= { smCodeEntry 1 }
smCodeText OBJECT-TYPE
SYNTAX OCTET STRING (SIZE (1..1024))
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The code that makes up a fragment of a script. The format
of this code fragment depends on the script language which
is identified by the associated smScriptLanguage object."
::= { smCodeEntry 2 }
smCodeRowStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"A control that allows entries to be added and removed from
this table.
The value of this object has no effect on whether other
objects in this conceptual row can be modified."
::= { smCodeEntry 3 }
--
-- Script execution.
--
-- This group defines tables which allow script execution to be
-- initiated, suspended, resumed, and terminated. It also provides
-- a mechanism for keeping a history of recent script executions
-- and their results.
--
smRunObjects OBJECT IDENTIFIER ::= { smObjects 4 }
smLaunchTable OBJECT-TYPE
SYNTAX SEQUENCE OF SmLaunchEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table lists and describes scripts that are ready
to be executed together with their parameters."
::= { smRunObjects 1 }
smLaunchEntry OBJECT-TYPE
SYNTAX SmLaunchEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry describing a particular executable script."
INDEX { smLaunchOwner, smLaunchName }
::= { smLaunchTable 1 }
SmLaunchEntry ::= SEQUENCE {
smLaunchOwner SnmpAdminString,
smLaunchName SnmpAdminString,
smLaunchScriptOwner SnmpAdminString,
smLaunchScriptName SnmpAdminString,
smLaunchArgument OCTET STRING,
smLaunchMaxRunning Unsigned32,
smLaunchMaxCompleted Unsigned32,
smLaunchLifeTime TimeInterval,
smLaunchExpireTime TimeInterval,
smLaunchStart Integer32,
smLaunchControl INTEGER,
smLaunchAdminStatus INTEGER,
smLaunchOperStatus INTEGER,
smLaunchRunIndexNext Integer32,
smLaunchStorageType StorageType,
smLaunchRowStatus RowStatus,
smLaunchError SnmpAdminString,
smLaunchLastChange DateAndTime,
smLaunchRowExpireTime TimeInterval
}
smLaunchOwner OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The manager who owns this row in the smLaunchTable. Every
instance of a running script started from a particular entry
in the smLaunchTable (i.e. entries in the smRunTable) will
be owned by the same smLaunchOwner used to index the entry
in the smLaunchTable. This owner is not necessarily the same
as the owner of the script itself (smLaunchScriptOwner)."
::= { smLaunchEntry 1 }
smLaunchName OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (1..32))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The locally-unique, administratively assigned name for this
launch table entry. This object allows an smLaunchOwner to
have multiple entries in the smLaunchTable. The smLaunchName
is an arbitrary name that must be different from any other
smLaunchTable entries with the same smLaunchOwner but can be
the same as other entries in the smLaunchTable with
different smLaunchOwner values. Note that the value of
smLaunchName is not related in any way to the name of the
script being launched."
::= { smLaunchEntry 2 }
smLaunchScriptOwner OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The value of this object in combination with the value of
smLaunchScriptName identifies the script that can be
launched from this smLaunchTable entry. Attempts to write
this object will fail with an inconsistentValue error if
the value of smLaunchOperStatus is `enabled'."
::= { smLaunchEntry 3 }
smLaunchScriptName OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The value of this object in combination with the value of
the smLaunchScriptOwner identifies the script that can be
launched from this smLaunchTable entry. The zero-length
string may be used to point to a non-existing script.
Attempts to write this object will fail with an
inconsistentValue error if the value of smLaunchOperStatus
is `enabled'."
DEFVAL { ''H }
::= { smLaunchEntry 4 }
smLaunchArgument OBJECT-TYPE
SYNTAX OCTET STRING
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The argument supplied to the script. When a script is
invoked, the value of this object is used to initialize
the smRunArgument object."
DEFVAL { ''H }
::= { smLaunchEntry 5 }
smLaunchMaxRunning OBJECT-TYPE
SYNTAX Unsigned32 (1..4294967295)
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The maximum number of concurrently running scripts that may
be invoked from this entry in the smLaunchTable. Lowering
the current value of this object does not affect any scripts
that are already executing."
DEFVAL { 1 }
::= { smLaunchEntry 6 }
smLaunchMaxCompleted OBJECT-TYPE
SYNTAX Unsigned32 (1..4294967295)
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The maximum number of finished scripts invoked from this
entry in the smLaunchTable allowed to be retained in the
smRunTable. Whenever the value of this object is changed
and whenever a script terminates, entries in the smRunTable
are deleted if necessary until the number of completed
scripts is smaller than the value of this object. Scripts
whose smRunEndTime value indicates the oldest completion
time are deleted first."
DEFVAL { 1 }
::= { smLaunchEntry 7 }
smLaunchLifeTime OBJECT-TYPE
SYNTAX TimeInterval
UNITS "centi-seconds"
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The default maximum amount of time a script launched
from this entry may run. The value of this object is used
to initialize the smRunLifeTime object when a script is
launched. Changing the value of an smLaunchLifeTime
instance does not affect scripts previously launched from
this entry."
DEFVAL { 360000 }
::= { smLaunchEntry 8 }
smLaunchExpireTime OBJECT-TYPE
SYNTAX TimeInterval
UNITS "centi-seconds"
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The default maximum amount of time information about a
script launched from this entry is kept in the smRunTable
after the script has completed execution. The value of
this object is used to initialize the smRunExpireTime
object when a script is launched. Changing the value of an
smLaunchExpireTime instance does not affect scripts
previously launched from this entry."
DEFVAL { 360000 }
::= { smLaunchEntry 9 }
smLaunchStart OBJECT-TYPE
SYNTAX Integer32 (0..2147483647)
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object is used to start the execution of scripts.
When retrieved, the value will be the value of smRunIndex
for the last script that started execution by manipulating
this object. The value will be zero if no script started
execution yet.
A script is started by setting this object to an unused
smRunIndex value. A new row in the smRunTable will be
created which is indexed by the value supplied by the
set-request in addition to the value of smLaunchOwner and
smLaunchName. An unused value can be obtained by reading
the smLaunchRunIndexNext object.
Setting this object to the special value 0 will start
the script with a self-generated smRunIndex value. The
consequence is that the script invoker has no reliable
way to determine the smRunIndex value for this script
invocation and that the invoker has therefore no way
to obtain the results from this script invocation. The
special value 0 is however useful for scheduled script
invocations.
If this object is set, the following checks must be
performed:
1) The value of the smLaunchOperStatus object in this
entry of the smLaunchTable must be `enabled'.
2) The values of smLaunchScriptOwner and
smLaunchScriptName of this row must identify an
existing entry in the smScriptTable.
3) The value of smScriptOperStatus of this entry must
be `enabled'.
4) The principal performing the set operation must have
read access to the script. This must be checked by
calling the isAccessAllowed abstract service interface
defined in RFC 2271 on the row in the smScriptTable
identified by smLaunchScriptOwner and smLaunchScriptName.
The isAccessAllowed abstract service interface must be
called on all columnar objects in the smScriptTable with
a MAX-ACCESS value different than `not-accessible'. The
test fails as soon as a call indicates that access is
not allowed.
5) If the value provided by the set operation is not 0,
a check must be made that the value is currently not
in use. Otherwise, if the value provided by the set
operation is 0, a suitable unused value must be
generated.
6) The number of currently executing scripts invoked
from this smLaunchTable entry must be less than
smLaunchMaxRunning.
Attempts to start a script will fail with an
inconsistentValue error if one of the checks described
above fails.
Otherwise, if all checks have been passed, a new entry
in the smRunTable will be created indexed by smLaunchOwner,
smLaunchName and the new value for smRunIndex. The value
of smLaunchArgument will be copied into smRunArgument,
the value of smLaunchLifeTime will be copied to
smRunLifeTime, and the value of smLaunchExpireTime
will be copied to smRunExpireTime.
The smRunStartTime will be set to the current time and
the smRunState will be set to `initializing' before the
script execution is initiated in the appropriate runtime
system.
Note that the data type and the range of this object must
be consistent with the smRunIndex object. Since this
object might be written from the scheduling MIB, the
data type Integer32 rather than Unsigned32 is used."
DEFVAL { 0 }
::= { smLaunchEntry 10 }
smLaunchControl OBJECT-TYPE
SYNTAX INTEGER {
abort(1),
suspend(2),
resume(3),
nop(4)
}
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object is used to request a state change for all
running scripts in the smRunTable that were started from
this row in the smLaunchTable.
Setting this object to abort(1), suspend(2) or resume(3)
will set the smRunControl object of all applicable rows
in the smRunTable to abort(1), suspend(2) or resume(3)
respectively. The phrase `applicable rows' means the set of
rows which were created from this entry in the smLaunchTable
and whose value of smRunState allows the corresponding
state change as described in the definition of the
smRunControl object. Setting this object to nop(4) has no
effect.
Attempts to set this object lead to an inconsistentValue
error only if all implicated sets on all the applicable
rows lead to inconsistentValue errors. It is not allowed
to return an inconsistentValue error if at least one state
change on one of the applicable rows was successful."
DEFVAL { nop }
::= { smLaunchEntry 11 }
smLaunchAdminStatus OBJECT-TYPE
SYNTAX INTEGER {
enabled(1),
disabled(2),
autostart(3)
}
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The value of this object indicates the desired status of
this launch table entry. The values enabled(1) and
autostart(3) both indicate that the launch table entry
should transition into the operational enabled(1) state as
soon as the associated script table entry is enabled(1).
The value autostart(3) further indicates that the script
is started automatically by conceptually writing the
value 0 into the associated smLaunchStart object during
the transition from the `disabled' into the `enabled'
operational state. This is useful for scripts that are
to be launched on system start-up."
DEFVAL { disabled }
::= { smLaunchEntry 12 }
smLaunchOperStatus OBJECT-TYPE
SYNTAX INTEGER {
enabled(1),
disabled(2),
expired(3)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of this object indicates the actual status of
this launch table entry. The smLaunchOperStatus object
may have the following values:
- `enabled' indicates that the launch table entry is
available and can be used to start scripts.
- `disabled' indicates that the launch table entry can
not be used to start scripts.
- `expired' indicates that the launch table entry can
not be used to start scripts and will disappear as
soon as all smRunTable entries associated with this
launch table entry have disappeared.
The value `enabled' requires that the smLaunchRowStatus
object is active. The value `disabled' requires that there
are no entries in the smRunTable associated with this
smLaunchTable entry."
DEFVAL { disabled }
::= { smLaunchEntry 13 }
smLaunchRunIndexNext OBJECT-TYPE
SYNTAX Integer32 (1..2147483647)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This variable is used for creating rows in the smRunTable.
The value of this variable is a currently unused value
for smRunIndex, which can be written into the smLaunchStart
object associated with this row to launch a script.
The value returned when reading this variable must be unique
for the smLaunchOwner and smLaunchName associated with this
row. Subsequent attempts to read this variable must return
different values.
This variable will return the special value 0 if no new rows
can be created.
Note that the data type and the range of this object must be
consistent with the definition of smRunIndex."
::= { smLaunchEntry 14 }
smLaunchStorageType OBJECT-TYPE
SYNTAX StorageType
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object defines if this row is kept in volatile storage
and lost upon reboot or if this row is backed up by stable
storage.
The value of smLaunchStorageType is only meaningful if the
value of the corresponding RowStatus object is active.
If smLaunchStorageType has the value permanent(4), then all
objects whose MAX-ACCESS value is read-create must be
writable, with the exception of the smLaunchStorageType and
smLaunchRowStatus objects, which shall be read-only."
DEFVAL { volatile }
::= { smLaunchEntry 15 }
smLaunchRowStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"A control that allows entries to be added and removed from
this table.
Attempts to `destroy' a row or to set a row `notInService'
while the smLaunchOperStatus is `enabled' will result in
an inconsistentValue error.
Attempts to `destroy' a row or to set a row `notInService'
where the value of the smLaunchStorageType object is
`permanent' or `readOnly' will result in an
inconsistentValue error.
The value of this object has no effect on whether other
objects in this conceptual row can be modified."
::= { smLaunchEntry 16 }
smLaunchError OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object contains a descriptive error message if an
attempt to launch a script fails. Implementations must reset
the error message to a zero-length string when a new attempt
to launch a script is started."
DEFVAL { ''H }
::= { smLaunchEntry 17 }
smLaunchLastChange OBJECT-TYPE
SYNTAX DateAndTime
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The date and time when this launch table entry was last
modified. The value '0000000000000000'H is returned if
the launch table entry has not yet been modified.
Note that a change of smLaunchStart, smLaunchControl,
smLaunchRunIndexNext, smLaunchRowExpireTime, or the
resetting of smLaunchError is not considered a change
of this launch table entry."
DEFVAL { '0000000000000000'H }
::= { smLaunchEntry 18 }
smLaunchRowExpireTime OBJECT-TYPE
SYNTAX TimeInterval
UNITS "centi-seconds"
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The value of this object specifies how long this row remains
in the `enabled' or `disabled' operational state. The value
reported by this object ticks backwards. When the value
reaches 0, it stops ticking backward and the row is
deleted if there are no smRunTable entries associated with
this smLaunchTable entry. Otherwise, the smLaunchOperStatus
changes to `expired' and the row deletion is deferred
until there are no smRunTable entries associated with this
smLaunchTable entry.
The smLaunchRowExpireTime will not tick backwards if it is
set to its maximum value (2147483647). In other words,
setting this object to its maximum value turns the timer
off.
The value of this object may be set in order to increase
or reduce the remaining time that the launch table entry
may be used. Setting the value to 0 will cause an immediate
row deletion or transition into the `expired' operational
state.
It is not possible to set this object while the operational
status is `expired'. Attempts to modify this object while
the operational status is `expired' leads to an
inconsistentValue error.
Note that the timer ticks backwards independent of the
operational state of the launch table entry."
DEFVAL { 2147483647 }
::= { smLaunchEntry 19 }
smRunTable OBJECT-TYPE
SYNTAX SEQUENCE OF SmRunEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table lists and describes scripts that are currently
running or have been running in the past."
::= { smRunObjects 2 }
smRunEntry OBJECT-TYPE
SYNTAX SmRunEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry describing a particular running or finished
script."
INDEX { smLaunchOwner, smLaunchName, smRunIndex }
::= { smRunTable 1 }
SmRunEntry ::= SEQUENCE {
smRunIndex Integer32,
smRunArgument OCTET STRING,
smRunStartTime DateAndTime,
smRunEndTime DateAndTime,
smRunLifeTime TimeInterval,
smRunExpireTime TimeInterval,
smRunExitCode INTEGER,
smRunResult OCTET STRING,
smRunControl INTEGER,
smRunState INTEGER,
smRunError SnmpAdminString,
smRunResultTime DateAndTime,
smRunErrorTime DateAndTime
}
smRunIndex OBJECT-TYPE
SYNTAX Integer32 (1..2147483647)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The locally arbitrary, but unique identifier associated
with this running or finished script. This value must be
unique for all rows in the smRunTable with the same
smLaunchOwner and smLaunchName.
Note that the data type and the range of this object must
be consistent with the definition of smLaunchRunIndexNext
and smLaunchStart."
::= { smRunEntry 1 }
smRunArgument OBJECT-TYPE
SYNTAX OCTET STRING
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The argument supplied to the script when it started."
DEFVAL { ''H }
::= { smRunEntry 2 }
smRunStartTime OBJECT-TYPE
SYNTAX DateAndTime
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The date and time when the execution started. The value
'0000000000000000'H is returned if the script has not
started yet."
DEFVAL { '0000000000000000'H }
::= { smRunEntry 3 }
smRunEndTime OBJECT-TYPE
SYNTAX DateAndTime
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The date and time when the execution terminated. The value
'0000000000000000'H is returned if the script has not
terminated yet."
DEFVAL { '0000000000000000'H }
::= { smRunEntry 4 }
smRunLifeTime OBJECT-TYPE
SYNTAX TimeInterval
UNITS "centi-seconds"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This object specifies how long the script can execute.
This object returns the remaining time that the script
may run. The object is initialized with the value of the
associated smLaunchLifeTime object and ticks backwards.
The script is aborted immediately when the value reaches 0.
The value of this object may be set in order to increase or
reduce the remaining time that the script may run. Setting
this value to 0 will abort script execution immediately,
and, if the value of smRunExpireTime is also 0, will remove
this entry from the smRunTable once it has terminated.
If smRunLifeTime is set to its maximum value (2147483647),
either by a set operation or by its initialization from the
smLaunchLifeTime object, then it will not tick backwards.
A running script with a maximum smRunLifeTime value will
thus never be terminated with a `lifeTimeExceeded' exit
code.
The value of smRunLifeTime reflects the real-time execution
time as seen by the outside world. The value of this object
will always be 0 for a script that finished execution, that
is smRunState has the value `terminated'.
The value of smRunLifeTime does not change while a script
is suspended, that is smRunState has the value `suspended'.
Note that this does not affect set operations. It is legal
to modify smRunLifeTime via set operations while a script
is suspended."
::= { smRunEntry 5 }
smRunExpireTime OBJECT-TYPE
SYNTAX TimeInterval
UNITS "centi-seconds"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The value of this object specifies how long this row can
exist in the smRunTable after the script has terminated.
This object returns the remaining time that the row may
exist before it is aged out. The object is initialized with
the value of the associated smLaunchExpireTime object and
ticks backwards. The entry in the smRunTable is destroyed
when the value reaches 0 and the smRunState has the value
`terminated'.
The value of this object may be set in order to increase or
reduce the remaining time that the row may exist. Setting
the value to 0 will destroy this entry as soon as the
smRunState has the value `terminated'."
::= { smRunEntry 6 }
smRunExitCode OBJECT-TYPE
SYNTAX INTEGER {
noError(1),
halted(2),
lifeTimeExceeded(3),
noResourcesLeft(4),
languageError(5),
runtimeError(6),
invalidArgument(7),
securityViolation(8),
genericError(9)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of this object indicates the reason why a
script finished execution. The smRunExitCode code may have
one of the following values:
- `noError', which indicates that the script completed
successfully without errors;
- `halted', which indicates that the script was halted
by a request from an authorized manager;
- `lifeTimeExceeded', which indicates that the script
exited because a time limit was exceeded;
- `noResourcesLeft', which indicates that the script
exited because it ran out of resources (e.g. memory);
- `languageError', which indicates that the script exited
because of a language error (e.g. a syntax error in an
interpreted language);
- `runtimeError', which indicates that the script exited
due to a runtime error (e.g. a division by zero);
- `invalidArgument', which indicates that the script could
not be run because of invalid script arguments;
- `securityViolation', which indicates that the script
exited due to a security violation;
- `genericError', which indicates that the script exited
for an unspecified reason.
If the script has not yet begun running, or is currently
running, the value will be `noError'."
DEFVAL { noError }
::= { smRunEntry 7 }
smRunResult OBJECT-TYPE
SYNTAX OCTET STRING
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The result value produced by the running script. Note that
the result may change while the script is executing."
DEFVAL { ''H }
::= { smRunEntry 8 }
smRunControl OBJECT-TYPE
SYNTAX INTEGER {
abort(1),
suspend(2),
resume(3),
nop(4)
}
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The value of this object indicates the desired status of the
script execution defined by this row.
Setting this object to `abort' will abort execution if the
value of smRunState is `initializing', `executing',
`suspending', `suspended' or `resuming'. Setting this object
to `abort' when the value of smRunState is `aborting' or
`terminated', or if the implementation can determine that
the attempt to abort the execution would fail, will result
in an inconsistentValue error.
Setting this object to `suspend' will suspend execution
if the value of smRunState is `executing'. Setting this
object to `suspend' will cause an inconsistentValue error
if the value of smRunState is not `executing' or if the
implementation can determine that the attempt to suspend
the execution would fail.
Setting this object to `resume' will resume execution
if the value of smRunState is `suspending' or
`suspended'. Setting this object to `resume' will cause an
inconsistentValue error if the value of smRunState is
not `suspended' or if the implementation can determine
that the attempt to resume the execution would fail.
Setting this object to nop(4) has no effect."
DEFVAL { nop }
::= { smRunEntry 9 }
smRunState OBJECT-TYPE
SYNTAX INTEGER {
initializing(1),
executing(2),
suspending(3),
suspended(4),
resuming(5),
aborting(6),
terminated(7)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of this object indicates the script's execution
state. If the script has been invoked but has not yet
begun execution, the value will be `initializing'. If the
script is running, the value will be `executing'.
A running script which received a request to suspend
execution first transitions into a temporary `suspending'
state. The temporary `suspending' state changes to
`suspended' when the script has actually been suspended. The
temporary `suspending' state changes back to `executing' if
the attempt to suspend the running script fails.
A suspended script which received a request to resume
execution first transitions into a temporary `resuming'
state. The temporary `resuming' state changes to `running'
when the script has actually been resumed. The temporary
`resuming' state changes back to `suspended' if the attempt
to resume the suspended script fails.
A script which received a request to abort execution but
which is still running first transitions into a temporary
`aborting' state.
A script which has finished its execution is `terminated'."
::= { smRunEntry 10 }
smRunError OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object contains a descriptive error message if the
script startup or execution raised an abnormal condition.
An implementation must store a descriptive error message
in this object if the script exits with the smRunExitCode
`genericError'."
DEFVAL { ''H }
::= { smRunEntry 11 }
smRunResultTime OBJECT-TYPE
SYNTAX DateAndTime
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The date and time when the smRunResult was last updated.
The value '0000000000000000'H is returned if smRunResult
has not yet been updated after the creation of this
smRunTable entry."
DEFVAL { '0000000000000000'H }
::= { smRunEntry 12 }
smRunErrorTime OBJECT-TYPE
SYNTAX DateAndTime
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The date and time when the smRunError was last updated.
The value '0000000000000000'H is returned if smRunError
has not yet been updated after the creation of this
smRunTable entry."
DEFVAL { '0000000000000000'H }
::= { smRunEntry 13 }
--
-- Notifications. The definition of smTraps makes notification
-- registrations reversible (see STD 58, RFC 2578).
--
smTraps OBJECT IDENTIFIER ::= { smNotifications 0 }
smScriptAbort NOTIFICATION-TYPE
OBJECTS { smRunExitCode, smRunEndTime, smRunError }
STATUS current
DESCRIPTION
"This notification is generated whenever a running script
terminates with an smRunExitCode unequal to `noError'."
::= { smTraps 1 }
smScriptResult NOTIFICATION-TYPE
OBJECTS { smRunResult }
STATUS current
DESCRIPTION
"This notification can be used by scripts to notify other
management applications about results produced by the
script.
This notification is not automatically generated by the
Script MIB implementation. It is the responsibility of
the executing script to emit this notification where it
is appropriate to do so."
::= { smTraps 2 }
smScriptException NOTIFICATION-TYPE
OBJECTS { smRunError }
STATUS current
DESCRIPTION
"This notification can be used by scripts to notify other
management applications about script errors.
This notification is not automatically generated by the
Script MIB implementation. It is the responsibility of
the executing script or the runtime system to emit this
notification where it is appropriate to do so."
::= { smTraps 3 }
-- conformance information
smCompliances OBJECT IDENTIFIER ::= { smConformance 1 }
smGroups OBJECT IDENTIFIER ::= { smConformance 2 }
-- compliance statements
smCompliance2 MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"The compliance statement for SNMP entities which implement
the Script MIB."
MODULE -- this module
MANDATORY-GROUPS {
smLanguageGroup, smScriptGroup2, smLaunchGroup2,
smRunGroup2, smNotificationsGroup2
}
GROUP smCodeGroup
DESCRIPTION
"The smCodeGroup is mandatory only for those implementations
that support the downloading of scripts via SNMP."
OBJECT smScriptSource
MIN-ACCESS read-only
DESCRIPTION
"The smScriptSource object is read-only for implementations
that are not able to download script code from a URL."
OBJECT smCodeText
DESCRIPTION
"A compliant implementation need only support write access to
the smCodeText object only during row creation."
OBJECT smLaunchArgument
DESCRIPTION
"A compliant implementation has to support a minimum size
for smLaunchArgument of 255 octets."
OBJECT smRunArgument
DESCRIPTION
"A compliant implementation has to support a minimum size
for smRunArgument of 255 octets."
OBJECT smRunResult
DESCRIPTION
"A compliant implementation has to support a minimum size
for smRunResult of 255 octets."
OBJECT smRunState
DESCRIPTION
"A compliant implementation does not have to support script
suspension and the smRunState `suspended'. Such an
implementation will change into the `suspending' state
when the smRunControl is set to `suspend' and remain in this
state until smRunControl is set to `resume' or the script
terminates."
::= { smCompliances 2 }
smLanguageGroup OBJECT-GROUP
OBJECTS {
smLangLanguage, smLangVersion,
smLangVendor, smLangRevision,
smLangDescr, smExtsnExtension,
smExtsnVersion, smExtsnVendor,
smExtsnRevision, smExtsnDescr
}
STATUS current
DESCRIPTION
"A collection of objects providing information about the
capabilities of the scripting engine."
::= { smGroups 1 }
smScriptGroup2 OBJECT-GROUP
OBJECTS {
smScriptDescr, smScriptLanguage,
smScriptSource, smScriptAdminStatus,
smScriptOperStatus, smScriptStorageType,
smScriptRowStatus, smScriptError,
smScriptLastChange
}
STATUS current
DESCRIPTION
"A collection of objects providing information about
installed scripts."
::= { smGroups 7 }
smCodeGroup OBJECT-GROUP
OBJECTS {
smCodeText, smCodeRowStatus
}
STATUS current
DESCRIPTION
"A collection of objects used to download or modify scripts
by using SNMP set requests."
::= { smGroups 3 }
smLaunchGroup2 OBJECT-GROUP
OBJECTS {
smLaunchScriptOwner, smLaunchScriptName,
smLaunchArgument, smLaunchMaxRunning,
smLaunchMaxCompleted, smLaunchLifeTime,
smLaunchExpireTime, smLaunchStart,
smLaunchControl, smLaunchAdminStatus,
smLaunchOperStatus, smLaunchRunIndexNext,
smLaunchStorageType, smLaunchRowStatus,
smLaunchError, smLaunchLastChange,
smLaunchRowExpireTime
}
STATUS current
DESCRIPTION
"A collection of objects providing information about scripts
that can be launched."
::= { smGroups 8 }
smRunGroup2 OBJECT-GROUP
OBJECTS {
smRunArgument, smRunStartTime,
smRunEndTime, smRunLifeTime,
smRunExpireTime, smRunExitCode,
smRunResult, smRunState,
smRunControl, smRunError,
smRunResultTime, smRunErrorTime
}
STATUS current
DESCRIPTION
"A collection of objects providing information about running
scripts."
::= { smGroups 9 }
smNotificationsGroup2 NOTIFICATION-GROUP
NOTIFICATIONS {
smScriptAbort,
smScriptResult,
smScriptException
}
STATUS current
DESCRIPTION
"The notifications emitted by the Script MIB."
::= { smGroups 10 }
--
-- Deprecated compliance and conformance group definitions
-- from RFC 2592.
--
smCompliance MODULE-COMPLIANCE
STATUS deprecated
DESCRIPTION
"The compliance statement for SNMP entities which implement
the Script MIB."
MODULE -- this module
MANDATORY-GROUPS {
smLanguageGroup, smScriptGroup, smLaunchGroup, smRunGroup
}
GROUP smCodeGroup
DESCRIPTION
"The smCodeGroup is mandatory only for those implementations
that support the downloading of scripts via SNMP."
OBJECT smScriptSource
MIN-ACCESS read-only
DESCRIPTION
"The smScriptSource object is read-only for implementations
that are not able to download script code from a URL."
OBJECT smCodeText
DESCRIPTION
"A compliant implementation need only support write access
to the smCodeText object during row creation."
OBJECT smLaunchArgument
DESCRIPTION
"A compliant implementation has to support a minimum size
for smLaunchArgument of 255 octets."
OBJECT smRunArgument
DESCRIPTION
"A compliant implementation has to support a minimum size
for smRunArgument of 255 octets."
OBJECT smRunResult
DESCRIPTION
"A compliant implementation has to support a minimum size
for smRunResult of 255 octets."
OBJECT smRunState
DESCRIPTION
"A compliant implementation does not have to support script
suspension and the smRunState `suspended'. Such an
implementation will change into the `suspending' state
when the smRunControl is set to `suspend' and remain in this
state until smRunControl is set to `resume' or the script
terminates."
::= { smCompliances 1 }
smScriptGroup OBJECT-GROUP
OBJECTS {
smScriptDescr, smScriptLanguage,
smScriptSource, smScriptAdminStatus,
smScriptOperStatus, smScriptStorageType,
smScriptRowStatus
}
STATUS deprecated
DESCRIPTION
"A collection of objects providing information about
installed scripts."
::= { smGroups 2 }
smLaunchGroup OBJECT-GROUP
OBJECTS {
smLaunchScriptOwner, smLaunchScriptName,
smLaunchArgument, smLaunchMaxRunning,
smLaunchMaxCompleted, smLaunchLifeTime,
smLaunchExpireTime, smLaunchStart,
smLaunchControl, smLaunchAdminStatus,
smLaunchOperStatus, smLaunchRunIndexNext,
smLaunchStorageType, smLaunchRowStatus
}
STATUS deprecated
DESCRIPTION
"A collection of objects providing information about scripts
that can be launched."
::= { smGroups 4 }
smRunGroup OBJECT-GROUP
OBJECTS {
smRunArgument, smRunStartTime,
smRunEndTime, smRunLifeTime,
smRunExpireTime, smRunExitCode,
smRunResult, smRunState,
smRunControl, smRunError
}
STATUS deprecated
DESCRIPTION
"A collection of objects providing information about running
scripts."
::= { smGroups 5 }
smNotificationsGroup NOTIFICATION-GROUP
NOTIFICATIONS {
smScriptAbort,
smScriptResult
}
STATUS deprecated
DESCRIPTION
"The notifications emitted by the Script MIB."
::= { smGroups 6 }
END
share/snmp/mibs/RFC-1215.txt 0000644 00000002226 15055304130 0011314 0 ustar 00
RFC-1215 DEFINITIONS ::= BEGIN
-- This module is a empty module. It has been created solely for the
-- purpose of allowing other modules to correctly import the TRAP-TYPE
-- clause from RFC-1215 where it should be imported from. It's a
-- built in type in the UCD-SNMP code, and in fact RFC-1215 doesn't
-- actually define a mib at all; it only defines macros. However,
-- importing the TRAP-TYPE is conventionally done from an import
-- clause pointing to RFC-1215.
--
-- Wes 7/17/98
TRAP-TYPE MACRO ::=
BEGIN
TYPE NOTATION ::= "ENTERPRISE" value
(enterprise OBJECT IDENTIFIER)
VarPart
DescrPart
ReferPart
VALUE NOTATION ::= value (VALUE INTEGER)
VarPart ::=
"VARIABLES" "{" VarTypes "}"
| empty
VarTypes ::=
VarType | VarTypes "," VarType
VarType ::=
value (vartype ObjectName)
DescrPart ::=
"DESCRIPTION" value (description DisplayString)
| empty
ReferPart ::=
"REFERENCE" value (reference DisplayString)
| empty
END
END
share/snmp/mibs/SNMP-USM-DH-OBJECTS-MIB.txt 0000644 00000051155 15055304130 0013525 0 ustar 00 SNMP-USM-DH-OBJECTS-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, OBJECT-TYPE,
-- OBJECT-IDENTITY,
experimental, Integer32
FROM SNMPv2-SMI
TEXTUAL-CONVENTION
FROM SNMPv2-TC
MODULE-COMPLIANCE, OBJECT-GROUP
FROM SNMPv2-CONF
usmUserEntry
FROM SNMP-USER-BASED-SM-MIB
SnmpAdminString
FROM SNMP-FRAMEWORK-MIB;
snmpUsmDHObjectsMIB MODULE-IDENTITY
LAST-UPDATED "200003060000Z" -- 6 March 2000, Midnight
ORGANIZATION "Excite@Home"
CONTACT-INFO "Author: Mike StJohns
Postal: Excite@Home
450 Broadway
Redwood City, CA 94063
Email: stjohns@corp.home.net
Phone: +1-650-556-5368"
DESCRIPTION
"The management information definitions for providing forward
secrecy for key changes for the usmUserTable, and for providing a
method for 'kickstarting' access to the agent via a Diffie-Helman
key agreement."
REVISION "200003060000Z"
DESCRIPTION
"Initial version published as RFC 2786."
::= { experimental 101 } -- IANA DHKEY-CHANGE 101
-- Administrative assignments
usmDHKeyObjects OBJECT IDENTIFIER ::= { snmpUsmDHObjectsMIB 1 }
usmDHKeyConformance OBJECT IDENTIFIER ::= { snmpUsmDHObjectsMIB 2 }
-- Textual conventions
DHKeyChange ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Upon initialization, or upon creation of a row containing an
object of this type, and after any successful SET of this value, a
GET of this value returns 'y' where y = g^xa MOD p, and where g is
the base from usmDHParameters, p is the prime from
usmDHParameters, and xa is a new random integer selected by the
agent in the interval 2^(l-1) <= xa < 2^l < p-1. 'l' is the
optional privateValueLength from usmDHParameters in bits. If 'l'
is omitted, then xa (and xr below) is selected in the interval 0
<= xa < p-1. y is expressed as an OCTET STRING 'PV' of length 'k'
which satisfies
k
y = SUM 2^(8(k-i)) PV'i
i=1
where PV1,...,PVk are the octets of PV from first to last, and
where PV1 <> 0.
A successful SET consists of the value 'y' expressed as an OCTET
STRING as above concatenated with the value 'z'(expressed as an
OCTET STRING in the same manner as y) where z = g^xr MOD p, where
g, p and l are as above, and where xr is a new random integer
selected by the manager in the interval 2^(l-1) <= xr < 2^l <
p-1. A SET to an object of this type will fail with the error
wrongValue if the current 'y' does not match the 'y' portion of
the value of the varbind for the object. (E.g. GET yout, SET
concat(yin, z), yout <> yin).
Note that the private values xa and xr are never transmitted from
manager to device or vice versa, only the values y and z.
Obviously, these values must be retained until a successful SET on
the associated object.
The shared secret 'sk' is calculated at the agent as sk = z^xa MOD
p, and at the manager as sk = y^xr MOD p.
Each object definition of this type MUST describe how to map from
the shared secret 'sk' to the operational key value used by the
protocols and operations related to the object. In general, if n
bits of key are required, the author suggests using the n
right-most bits of the shared secret as the operational key value."
REFERENCE
"-- Diffie-Hellman Key-Agreement Standard, PKCS #3;
RSA Laboratories, November 1993"
SYNTAX OCTET STRING
-- Diffie Hellman public values
usmDHPublicObjects OBJECT IDENTIFIER ::= { usmDHKeyObjects 1 }
usmDHParameters OBJECT-TYPE
SYNTAX OCTET STRING
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The public Diffie-Hellman parameters for doing a Diffie-Hellman
key agreement for this device. This is encoded as an ASN.1
DHParameter per PKCS #3, section 9. E.g.
DHParameter ::= SEQUENCE {
prime INTEGER, -- p
base INTEGER, -- g
privateValueLength INTEGER OPTIONAL }
Implementors are encouraged to use either the values from
Oakley Group 1 or the values of from Oakley Group 2 as specified
in RFC-2409, The Internet Key Exchange, Section 6.1, 6.2 as the
default for this object. Other values may be used, but the
security properties of those values MUST be well understood and
MUST meet the requirements of PKCS #3 for the selection of
Diffie-Hellman primes.
In addition, any time usmDHParameters changes, all values of
type DHKeyChange will change and new random numbers MUST be
generated by the agent for each DHKeyChange object."
REFERENCE
"-- Diffie-Hellman Key-Agreement Standard, PKCS #3,
RSA Laboratories, November 1993
-- The Internet Key Exchange, RFC 2409, November 1998,
Sec 6.1, 6.2"
::= { usmDHPublicObjects 1 }
usmDHUserKeyTable OBJECT-TYPE
SYNTAX SEQUENCE OF UsmDHUserKeyEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table augments and extends the usmUserTable and provides
4 objects which exactly mirror the objects in that table with the
textual convention of 'KeyChange'. This extension allows key
changes to be done in a manner where the knowledge of the current
secret plus knowledge of the key change data exchanges (e.g. via
wiretapping) will not reveal the new key."
::= { usmDHPublicObjects 2 }
usmDHUserKeyEntry OBJECT-TYPE
SYNTAX UsmDHUserKeyEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A row of DHKeyChange objects which augment or replace the
functionality of the KeyChange objects in the base table row."
AUGMENTS { usmUserEntry }
::= {usmDHUserKeyTable 1 }
UsmDHUserKeyEntry ::= SEQUENCE {
usmDHUserAuthKeyChange DHKeyChange,
usmDHUserOwnAuthKeyChange DHKeyChange,
usmDHUserPrivKeyChange DHKeyChange,
usmDHUserOwnPrivKeyChange DHKeyChange
}
usmDHUserAuthKeyChange OBJECT-TYPE
SYNTAX DHKeyChange
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The object used to change any given user's Authentication Key
using a Diffie-Hellman key exchange.
The right-most n bits of the shared secret 'sk', where 'n' is the
number of bits required for the protocol defined by
usmUserAuthProtocol, are installed as the operational
authentication key for this row after a successful SET."
::= { usmDHUserKeyEntry 1 }
usmDHUserOwnAuthKeyChange OBJECT-TYPE
SYNTAX DHKeyChange
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The object used to change the agents own Authentication Key
using a Diffie-Hellman key exchange.
The right-most n bits of the shared secret 'sk', where 'n' is the
number of bits required for the protocol defined by
usmUserAuthProtocol, are installed as the operational
authentication key for this row after a successful SET."
::= { usmDHUserKeyEntry 2 }
usmDHUserPrivKeyChange OBJECT-TYPE
SYNTAX DHKeyChange
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The object used to change any given user's Privacy Key using
a Diffie-Hellman key exchange.
The right-most n bits of the shared secret 'sk', where 'n' is the
number of bits required for the protocol defined by
usmUserPrivProtocol, are installed as the operational privacy key
for this row after a successful SET."
::= { usmDHUserKeyEntry 3 }
usmDHUserOwnPrivKeyChange OBJECT-TYPE
SYNTAX DHKeyChange
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The object used to change the agent's own Privacy Key using a
Diffie-Hellman key exchange.
The right-most n bits of the shared secret 'sk', where 'n' is the
number of bits required for the protocol defined by
usmUserPrivProtocol, are installed as the operational privacy key
for this row after a successful SET."
::= { usmDHUserKeyEntry 4 }
usmDHKickstartGroup OBJECT IDENTIFIER ::= { usmDHKeyObjects 2 }
usmDHKickstartTable OBJECT-TYPE
SYNTAX SEQUENCE OF UsmDHKickstartEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of mappings between zero or more Diffie-Helman key
agreement values and entries in the usmUserTable. Entries in this
table are created by providing the associated device with a
Diffie-Helman public value and a usmUserName/usmUserSecurityName
pair during initialization. How these values are provided is
outside the scope of this MIB, but could be provided manually, or
through a configuration file. Valid public value/name pairs
result in the creation of a row in this table as well as the
creation of an associated row (with keys derived as indicated) in
the usmUserTable. The actual access the related usmSecurityName
has is dependent on the entries in the VACM tables. In general,
an implementor will specify one or more standard security names
and will provide entries in the VACM tables granting various
levels of access to those names. The actual content of the VACM
table is beyond the scope of this MIB.
Note: This table is expected to be readable without authentication
using the usmUserSecurityName 'dhKickstart'. See the conformance
statements for details."
::= { usmDHKickstartGroup 1 }
usmDHKickstartEntry OBJECT-TYPE
SYNTAX UsmDHKickstartEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry in the usmDHKickstartTable. The agent SHOULD either
delete this entry or mark it as inactive upon a successful SET of
any of the KeyChange-typed objects in the usmUserEntry or upon a
successful SET of any of the DHKeyChange-typed objects in the
usmDhKeyChangeEntry where the related usmSecurityName (e.g. row of
usmUserTable or row of ushDhKeyChangeTable) equals this entry's
usmDhKickstartSecurityName. In otherwords, once you've changed
one or more of the keys for a row in usmUserTable with a
particular security name, the row in this table with that same
security name is no longer useful or meaningful."
INDEX { usmDHKickstartIndex }
::= {usmDHKickstartTable 1 }
UsmDHKickstartEntry ::= SEQUENCE {
usmDHKickstartIndex Integer32,
usmDHKickstartMyPublic OCTET STRING,
usmDHKickstartMgrPublic OCTET STRING,
usmDHKickstartSecurityName SnmpAdminString
}
usmDHKickstartIndex OBJECT-TYPE
SYNTAX Integer32 (1..2147483647)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Index value for this row."
::= { usmDHKickstartEntry 1 }
usmDHKickstartMyPublic OBJECT-TYPE
SYNTAX OCTET STRING
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The agent's Diffie-Hellman public value for this row. At
initialization, the agent generates a random number and derives
its public value from that number. This public value is published
here. This public value 'y' equals g^r MOD p where g is the from
the set of Diffie-Hellman parameters, p is the prime from those
parameters, and r is a random integer selected by the agent in the
interval 2^(l-1) <= r < p-1 < 2^l. If l is unspecified, then r is
a random integer selected in the interval 0 <= r < p-1
The public value is expressed as an OCTET STRING 'PV' of length
'k' which satisfies
k
y = SUM 2^(8(k-i)) PV'i
i = 1
where PV1,...,PVk are the octets of PV from first to last, and
where PV1 != 0.
The following DH parameters (Oakley group #2, RFC 2409, sec 6.1,
6.2) are used for this object:
g = 2
p = FFFFFFFF FFFFFFFF C90FDAA2 2168C234 C4C6628B 80DC1CD1
29024E08 8A67CC74 020BBEA6 3B139B22 514A0879 8E3404DD
EF9519B3 CD3A431B 302B0A6D F25F1437 4FE1356D 6D51C245
E485B576 625E7EC6 F44C42E9 A637ED6B 0BFF5CB6 F406B7ED
EE386BFB 5A899FA5 AE9F2411 7C4B1FE6 49286651 ECE65381
FFFFFFFF FFFFFFFF
l=1024
"
REFERENCE
"-- Diffie-Hellman Key-Agreement Standard, PKCS#3v1.4;
RSA Laboratories, November 1993
-- The Internet Key Exchange, RFC2409;
Harkins, D., Carrel, D.; November 1998"
::= { usmDHKickstartEntry 2 }
usmDHKickstartMgrPublic OBJECT-TYPE
SYNTAX OCTET STRING
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The manager's Diffie-Hellman public value for this row. Note
that this value is not set via the SNMP agent, but may be set via
some out of band method, such as the device's configuration file.
The manager calculates this value in the same manner and using the
same parameter set as the agent does. E.g. it selects a random
number 'r', calculates y = g^r mod p and provides 'y' as the
public number expressed as an OCTET STRING. See
usmDHKickstartMyPublic for details.
When this object is set with a valid value during initialization,
a row is created in the usmUserTable with the following values:
usmUserEngineID localEngineID
usmUserName [value of usmDHKickstartSecurityName]
usmUserSecurityName [value of usmDHKickstartSecurityName]
usmUserCloneFrom ZeroDotZero
usmUserAuthProtocol usmHMACMD5AuthProtocol
usmUserAuthKeyChange -- derived from set value
usmUserOwnAuthKeyChange -- derived from set value
usmUserPrivProtocol usmDESPrivProtocol
usmUserPrivKeyChange -- derived from set value
usmUserOwnPrivKeyChange -- derived from set value
usmUserPublic ''
usmUserStorageType permanent
usmUserStatus active
A shared secret 'sk' is calculated at the agent as sk =
mgrPublic^r mod p where r is the agents random number and p is the
DH prime from the common parameters. The underlying privacy key
for this row is derived from sk by applying the key derivation
function PBKDF2 defined in PKCS#5v2.0 with a salt of 0xd1310ba6,
and iterationCount of 500, a keyLength of 16 (for
usmDESPrivProtocol), and a prf (pseudo random function) of
'id-hmacWithSHA1'. The underlying authentication key for this row
is derived from sk by applying the key derivation function PBKDF2
with a salt of 0x98dfb5ac , an interation count of 500, a
keyLength of 16 (for usmHMAC5AuthProtocol), and a prf of
'id-hmacWithSHA1'. Note: The salts are the first two words in the
ks0 [key schedule 0] of the BLOWFISH cipher from 'Applied
Cryptography' by Bruce Schnier - they could be any relatively
random string of bits.
The manager can use its knowledge of its own random number and the
agent's public value to kickstart its access to the agent in a
secure manner. Note that the security of this approach is
directly related to the strength of the authorization security of
the out of band provisioning of the managers public value
(e.g. the configuration file), but is not dependent at all on the
strength of the confidentiality of the out of band provisioning
data."
REFERENCE
"-- Password-Based Cryptography Standard, PKCS#5v2.0;
RSA Laboratories, March 1999
-- Applied Cryptography, 2nd Ed.; B. Schneier,
Counterpane Systems; John Wiley & Sons, 1996"
::= { usmDHKickstartEntry 3 }
usmDHKickstartSecurityName OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The usmUserName and usmUserSecurityName in the usmUserTable
associated with this row. This is provided in the same manner and
at the same time as the usmDHKickstartMgrPublic value -
e.g. possibly manually, or via the device's configuration file."
::= { usmDHKickstartEntry 4 }
-- Conformance Information
usmDHKeyMIBCompliances OBJECT IDENTIFIER ::= { usmDHKeyConformance 1 }
usmDHKeyMIBGroups OBJECT IDENTIFIER ::= { usmDHKeyConformance 2 }
-- Compliance statements
usmDHKeyMIBCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"The compliance statement for this module."
MODULE
GROUP usmDHKeyMIBBasicGroup
DESCRIPTION
"This group MAY be implemented by any agent which
implements the usmUserTable and which wishes to provide the
ability to change user and agent authentication and privacy
keys via Diffie-Hellman key exchanges."
GROUP usmDHKeyParamGroup
DESCRIPTION
"This group MUST be implemented by any agent which
implements a MIB containing the DHKeyChange Textual
Convention defined in this module."
GROUP usmDHKeyKickstartGroup
DESCRIPTION
"This group MAY be implemented by any agent which
implements the usmUserTable and which wishes the ability to
populate the USM table based on out-of-band provided DH
ignition values.
Any agent implementing this group is expected to provide
preinstalled entries in the vacm tables as follows:
In the usmUserTable: This entry allows access to the
system and dhKickstart groups
usmUserEngineID localEngineID
usmUserName 'dhKickstart'
usmUserSecurityName 'dhKickstart'
usmUserCloneFrom ZeroDotZero
usmUserAuthProtocol none
usmUserAuthKeyChange ''
usmUserOwnAuthKeyChange ''
usmUserPrivProtocol none
usmUserPrivKeyChange ''
usmUserOwnPrivKeyChange ''
usmUserPublic ''
usmUserStorageType permanent
usmUserStatus active
In the vacmSecurityToGroupTable: This maps the initial
user into the accessible objects.
vacmSecurityModel 3 (USM)
vacmSecurityName 'dhKickstart'
vacmGroupName 'dhKickstart'
vacmSecurityToGroupStorageType permanent
vacmSecurityToGroupStatus active
In the vacmAccessTable: Group name to view name translation.
vacmGroupName 'dhKickstart'
vacmAccessContextPrefix ''
vacmAccessSecurityModel 3 (USM)
vacmAccessSecurityLevel noAuthNoPriv
vacmAccessContextMatch exact
vacmAccessReadViewName 'dhKickRestricted'
vacmAccessWriteViewName ''
vacmAccessNotifyViewName 'dhKickRestricted'
vacmAccessStorageType permanent
vacmAccessStatus active
In the vacmViewTreeFamilyTable: Two entries to allow the
initial entry to access the system and kickstart groups.
vacmViewTreeFamilyViewName 'dhKickRestricted'
vacmViewTreeFamilySubtree 1.3.6.1.2.1.1 (system)
vacmViewTreeFamilyMask ''
vacmViewTreeFamilyType 1
vacmViewTreeFamilyStorageType permanent
vacmViewTreeFamilyStatus active
vacmViewTreeFamilyViewName 'dhKickRestricted'
vacmViewTreeFamilySubtree (usmDHKickstartTable OID)
vacmViewTreeFamilyMask ''
vacmViewTreeFamilyType 1
vacmViewTreeFamilyStorageType permanent
vacmViewTreeFamilyStatus active
"
OBJECT usmDHParameters
MIN-ACCESS read-only
DESCRIPTION
"It is compliant to implement this object as read-only for
any device."
::= { usmDHKeyMIBCompliances 1 }
-- Units of Compliance
usmDHKeyMIBBasicGroup OBJECT-GROUP
OBJECTS {
usmDHUserAuthKeyChange,
usmDHUserOwnAuthKeyChange,
usmDHUserPrivKeyChange,
usmDHUserOwnPrivKeyChange
}
STATUS current
DESCRIPTION
""
::= { usmDHKeyMIBGroups 1 }
usmDHKeyParamGroup OBJECT-GROUP
OBJECTS {
usmDHParameters
}
STATUS current
DESCRIPTION
"The mandatory object for all MIBs which use the DHKeyChange
textual convention."
::= { usmDHKeyMIBGroups 2 }
usmDHKeyKickstartGroup OBJECT-GROUP
OBJECTS {
usmDHKickstartMyPublic,
usmDHKickstartMgrPublic,
usmDHKickstartSecurityName
}
STATUS current
DESCRIPTION
"The objects used for kickstarting one or more SNMPv3 USM
associations via a configuration file or other out of band,
non-confidential access."
::= { usmDHKeyMIBGroups 3 }
END
share/snmp/mibs/IP-MIB.txt 0000644 00000552503 15055304130 0011241 0 ustar 00 IP-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, OBJECT-TYPE,
Integer32, Counter32, IpAddress,
mib-2, Unsigned32, Counter64,
zeroDotZero FROM SNMPv2-SMI
PhysAddress, TruthValue,
TimeStamp, RowPointer,
TEXTUAL-CONVENTION, TestAndIncr,
RowStatus, StorageType FROM SNMPv2-TC
MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF
InetAddress, InetAddressType,
InetAddressPrefixLength,
InetVersion, InetZoneIndex FROM INET-ADDRESS-MIB
InterfaceIndex FROM IF-MIB;
ipMIB MODULE-IDENTITY
LAST-UPDATED "200602020000Z"
ORGANIZATION "IETF IPv6 MIB Revision Team"
CONTACT-INFO
"Editor:
Shawn A. Routhier
Interworking Labs
108 Whispering Pines Dr. Suite 235
Scotts Valley, CA 95066
USA
EMail: <sar@iwl.com>"
DESCRIPTION
"The MIB module for managing IP and ICMP implementations, but
excluding their management of IP routes.
Copyright (C) The Internet Society (2006). This version of
this MIB module is part of RFC 4293; see the RFC itself for
full legal notices."
REVISION "200602020000Z"
DESCRIPTION
"The IP version neutral revision with added IPv6 objects for
ND, default routers, and router advertisements. As well as
being the successor to RFC 2011, this MIB is also the
successor to RFCs 2465 and 2466. Published as RFC 4293."
REVISION "199411010000Z"
DESCRIPTION
"A separate MIB module (IP-MIB) for IP and ICMP management
objects. Published as RFC 2011."
REVISION "199103310000Z"
DESCRIPTION
"The initial revision of this MIB module was part of MIB-II,
which was published as RFC 1213."
::= { mib-2 48}
--
-- The textual conventions we define and use in this MIB.
--
IpAddressOriginTC ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"The origin of the address.
manual(2) indicates that the address was manually configured
to a specified address, e.g., by user configuration.
dhcp(4) indicates an address that was assigned to this
system by a DHCP server.
linklayer(5) indicates an address created by IPv6 stateless
auto-configuration.
random(6) indicates an address chosen by the system at
random, e.g., an IPv4 address within 169.254/16, or an RFC
3041 privacy address."
SYNTAX INTEGER {
other(1),
manual(2),
dhcp(4),
linklayer(5),
random(6)
}
IpAddressStatusTC ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"The status of an address. Most of the states correspond to
states from the IPv6 Stateless Address Autoconfiguration
protocol.
The preferred(1) state indicates that this is a valid
address that can appear as the destination or source address
of a packet.
The deprecated(2) state indicates that this is a valid but
deprecated address that should no longer be used as a source
address in new communications, but packets addressed to such
an address are processed as expected.
The invalid(3) state indicates that this isn't a valid
address and it shouldn't appear as the destination or source
address of a packet.
The inaccessible(4) state indicates that the address is not
accessible because the interface to which this address is
assigned is not operational.
The unknown(5) state indicates that the status cannot be
determined for some reason.
The tentative(6) state indicates that the uniqueness of the
address on the link is being verified. Addresses in this
state should not be used for general communication and
should only be used to determine the uniqueness of the
address.
The duplicate(7) state indicates the address has been
determined to be non-unique on the link and so must not be
used.
The optimistic(8) state indicates the address is available
for use, subject to restrictions, while its uniqueness on
a link is being verified.
In the absence of other information, an IPv4 address is
always preferred(1)."
REFERENCE "RFC 2462"
SYNTAX INTEGER {
preferred(1),
deprecated(2),
invalid(3),
inaccessible(4),
unknown(5),
tentative(6),
duplicate(7),
optimistic(8)
}
IpAddressPrefixOriginTC ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"The origin of this prefix.
manual(2) indicates a prefix that was manually configured.
wellknown(3) indicates a well-known prefix, e.g., 169.254/16
for IPv4 auto-configuration or fe80::/10 for IPv6 link-local
addresses. Well known prefixes may be assigned by IANA,
the address registries, or by specification in a standards
track RFC.
dhcp(4) indicates a prefix that was assigned by a DHCP
server.
routeradv(5) indicates a prefix learned from a router
advertisement.
Note: while IpAddressOriginTC and IpAddressPrefixOriginTC
are similar, they are not identical. The first defines how
an address was created, while the second defines how a
prefix was found."
SYNTAX INTEGER {
other(1),
manual(2),
wellknown(3),
dhcp(4),
routeradv(5)
}
Ipv6AddressIfIdentifierTC ::= 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))
--
-- the IP general group
-- some objects that affect all of IPv4
--
ip OBJECT IDENTIFIER ::= { mib-2 4 }
ipForwarding OBJECT-TYPE
SYNTAX INTEGER {
forwarding(1), -- acting as a router
notForwarding(2) -- NOT acting as a router
}
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The indication of whether this entity is acting as an IPv4
router in respect to the forwarding of datagrams received
by, but not addressed to, this entity. IPv4 routers forward
datagrams. IPv4 hosts do not (except those source-routed
via the host).
When this object is written, the entity should save the
change to non-volatile storage and restore the object from
non-volatile storage upon re-initialization of the system.
Note: a stronger requirement is not used because this object
was previously defined."
::= { ip 1 }
ipDefaultTTL OBJECT-TYPE
SYNTAX Integer32 (1..255)
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The default value inserted into the Time-To-Live field of
the IPv4 header of datagrams originated at this entity,
whenever a TTL value is not supplied by the transport layer
protocol.
When this object is written, the entity should save the
change to non-volatile storage and restore the object from
non-volatile storage upon re-initialization of the system.
Note: a stronger requirement is not used because this object
was previously defined."
::= { ip 2 }
ipReasmTimeout OBJECT-TYPE
SYNTAX Integer32
UNITS "seconds"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The maximum number of seconds that received fragments are
held while they are awaiting reassembly at this entity."
::= { ip 13 }
--
-- the IPv6 general group
-- Some objects that affect all of IPv6
--
ipv6IpForwarding OBJECT-TYPE
SYNTAX INTEGER {
forwarding(1), -- acting as a router
notForwarding(2) -- NOT acting as a router
}
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The indication of whether this entity is acting as an IPv6
router on any interface in respect to the forwarding of
datagrams received by, but not addressed to, this entity.
IPv6 routers forward datagrams. IPv6 hosts do not (except
those source-routed via the host).
When this object is written, the entity SHOULD save the
change to non-volatile storage and restore the object from
non-volatile storage upon re-initialization of the system."
::= { ip 25 }
ipv6IpDefaultHopLimit OBJECT-TYPE
SYNTAX Integer32 (0..255)
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The default value inserted into the Hop Limit field of the
IPv6 header of datagrams originated at this entity whenever
a Hop Limit value is not supplied by the transport layer
protocol.
When this object is written, the entity SHOULD save the
change to non-volatile storage and restore the object from
non-volatile storage upon re-initialization of the system."
REFERENCE "RFC 2461 Section 6.3.2"
::= { ip 26 }
--
-- IPv4 Interface Table
--
ipv4InterfaceTableLastChange OBJECT-TYPE
SYNTAX TimeStamp
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of sysUpTime on the most recent occasion at which
a row in the ipv4InterfaceTable was added or deleted, or
when an ipv4InterfaceReasmMaxSize or an
ipv4InterfaceEnableStatus object was modified.
If new objects are added to the ipv4InterfaceTable that
require the ipv4InterfaceTableLastChange to be updated when
they are modified, they must specify that requirement in
their description clause."
::= { ip 27 }
ipv4InterfaceTable OBJECT-TYPE
SYNTAX SEQUENCE OF Ipv4InterfaceEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The table containing per-interface IPv4-specific
information."
::= { ip 28 }
ipv4InterfaceEntry OBJECT-TYPE
SYNTAX Ipv4InterfaceEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry containing IPv4-specific information for a specific
interface."
INDEX { ipv4InterfaceIfIndex }
::= { ipv4InterfaceTable 1 }
Ipv4InterfaceEntry ::= SEQUENCE {
ipv4InterfaceIfIndex InterfaceIndex,
ipv4InterfaceReasmMaxSize Integer32,
ipv4InterfaceEnableStatus INTEGER,
ipv4InterfaceRetransmitTime Unsigned32
}
ipv4InterfaceIfIndex OBJECT-TYPE
SYNTAX InterfaceIndex
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The index value that uniquely identifies the interface to
which this entry is applicable. The interface identified by
a particular value of this index is the same interface as
identified by the same value of the IF-MIB's ifIndex."
::= { ipv4InterfaceEntry 1 }
ipv4InterfaceReasmMaxSize OBJECT-TYPE
SYNTAX Integer32 (0..65535)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The size of the largest IPv4 datagram that this entity can
re-assemble from incoming IPv4 fragmented datagrams received
on this interface."
::= { ipv4InterfaceEntry 2 }
ipv4InterfaceEnableStatus OBJECT-TYPE
SYNTAX INTEGER {
up(1),
down(2)
}
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The indication of whether IPv4 is enabled (up) or disabled
(down) on this interface. This object does not affect the
state of the interface itself, only its connection to an
IPv4 stack. The IF-MIB should be used to control the state
of the interface."
::= { ipv4InterfaceEntry 3 }
ipv4InterfaceRetransmitTime OBJECT-TYPE
SYNTAX Unsigned32
UNITS "milliseconds"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The time between retransmissions of ARP requests to a
neighbor when resolving the address or when probing the
reachability of a neighbor."
REFERENCE "RFC 1122"
DEFVAL { 1000 }
::= { ipv4InterfaceEntry 4 }
--
-- v6 interface table
--
ipv6InterfaceTableLastChange OBJECT-TYPE
SYNTAX TimeStamp
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of sysUpTime on the most recent occasion at which
a row in the ipv6InterfaceTable was added or deleted or when
an ipv6InterfaceReasmMaxSize, ipv6InterfaceIdentifier,
ipv6InterfaceEnableStatus, ipv6InterfaceReachableTime,
ipv6InterfaceRetransmitTime, or ipv6InterfaceForwarding
object was modified.
If new objects are added to the ipv6InterfaceTable that
require the ipv6InterfaceTableLastChange to be updated when
they are modified, they must specify that requirement in
their description clause."
::= { ip 29 }
ipv6InterfaceTable OBJECT-TYPE
SYNTAX SEQUENCE OF Ipv6InterfaceEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The table containing per-interface IPv6-specific
information."
::= { ip 30 }
ipv6InterfaceEntry OBJECT-TYPE
SYNTAX Ipv6InterfaceEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry containing IPv6-specific information for a given
interface."
INDEX { ipv6InterfaceIfIndex }
::= { ipv6InterfaceTable 1 }
Ipv6InterfaceEntry ::= SEQUENCE {
ipv6InterfaceIfIndex InterfaceIndex,
ipv6InterfaceReasmMaxSize Unsigned32,
ipv6InterfaceIdentifier Ipv6AddressIfIdentifierTC,
ipv6InterfaceEnableStatus INTEGER,
ipv6InterfaceReachableTime Unsigned32,
ipv6InterfaceRetransmitTime Unsigned32,
ipv6InterfaceForwarding INTEGER
}
ipv6InterfaceIfIndex OBJECT-TYPE
SYNTAX InterfaceIndex
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The index value that uniquely identifies the interface to
which this entry is applicable. The interface identified by
a particular value of this index is the same interface as
identified by the same value of the IF-MIB's ifIndex."
::= { ipv6InterfaceEntry 1 }
ipv6InterfaceReasmMaxSize OBJECT-TYPE
SYNTAX Unsigned32 (1500..65535)
UNITS "octets"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The size of the largest IPv6 datagram that this entity can
re-assemble from incoming IPv6 fragmented datagrams received
on this interface."
::= { ipv6InterfaceEntry 2 }
ipv6InterfaceIdentifier OBJECT-TYPE
SYNTAX Ipv6AddressIfIdentifierTC
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The Interface Identifier for this interface. The Interface
Identifier is combined with an address prefix to form an
interface address.
By default, the Interface Identifier is auto-configured
according to the rules of the link type to which this
interface is attached.
A zero length identifier may be used where appropriate. One
possible example is a loopback interface."
::= { ipv6InterfaceEntry 3 }
-- This object ID is reserved as it was used in earlier versions of
-- the MIB module. In theory, OIDs are not assigned until the
-- specification is released as an R