From 7c2f14d30c8882eafb58a78e715fa76760884e13 Mon Sep 17 00:00:00 2001 From: Sergey Poznyakoff Date: Mon, 12 Aug 2019 16:49:32 +0300 Subject: Initial commit --- .gitignore | 8 + Makefile | 48 +++++ OWS-STATS.txt | 176 +++++++++++++++++ SESSION-STATS.txt | 83 ++++++++ graphics/bwd.png | Bin 0 -> 180 bytes graphics/ctx.png | Bin 0 -> 312 bytes graphics/fwd.png | Bin 0 -> 180 bytes graphics/idx.png | Bin 0 -> 164 bytes graphics/left.png | Bin 0 -> 193 bytes graphics/right.png | Bin 0 -> 191 bytes graphics/top.png | Bin 0 -> 149 bytes graphics/up.png | Bin 0 -> 193 bytes gray-assignments.texi | 237 +++++++++++++++++++++++ gray.css | 49 +++++ gray.schema | 171 +++++++++++++++++ html.init | 139 ++++++++++++++ umi.schema | 523 ++++++++++++++++++++++++++++++++++++++++++++++++++ 17 files changed, 1434 insertions(+) create mode 100644 .gitignore create mode 100644 Makefile create mode 100644 OWS-STATS.txt create mode 100644 SESSION-STATS.txt create mode 100644 graphics/bwd.png create mode 100644 graphics/ctx.png create mode 100644 graphics/fwd.png create mode 100644 graphics/idx.png create mode 100644 graphics/left.png create mode 100644 graphics/right.png create mode 100644 graphics/top.png create mode 100644 graphics/up.png create mode 100644 gray-assignments.texi create mode 100644 gray.css create mode 100644 gray.schema create mode 100644 html.init create mode 100644 umi.schema diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c672b36 --- /dev/null +++ b/.gitignore @@ -0,0 +1,8 @@ +*.inc +*.info +*~ +SENDMAIL-STATS.txt +MYSQL-STAT-MIB.txt +TALLYMAN-MIB.txt +*.html +gray-assignments diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..f0581d4 --- /dev/null +++ b/Makefile @@ -0,0 +1,48 @@ +SCHEMES = gray.scheme umi.scheme +MIBS = OWS-STATS.txt SESSION-STATS.txt +REFMIBS = TALLYMAN-MIB.txt MYSQL-STAT-MIB.txt SENDMAIL-STATS.txt + +TEXINFO_SOURCES = $(SCHEMES:.scheme=.inc) $(MIBS:.txt=.inc) $(REFMIBS:.txt=.inc) +SOURCES = gray-assignments.texi version.texi $(TEXINFO_SOURCES) + +gray-assignments.info: $(SOURCES) + makeinfo gray-assignments.texi + +html: $(SOURCES) + makeinfo --html --init-file=html.init gray-assignments.texi + +version.texi: gray-assignments.texi + @echo "@set UPDATED " \ + $$(date +"%d %B %Y" --date "$$(stat -c %y gray-assignments.texi)") > version.texi + +.schema.inc: + @sed -e 's/\([{}@]\)/@\1/g' $< > $@ + +.txt.inc: + @sed -e 's/\([{}@]\)/@\1/g' $< > $@ + +.SUFFIXES: .schema .txt .inc + +define localcopy +$(1):; + @curl -sS -o $(1).tmp $(2) + @if test -f $(1) && cmp $(1).tmp $(1) >/dev/null 2>&1; then \ + rm $(1).tmp; \ + else \ + mv $(1).tmp $(1); \ + fi +endef + +.PHONY: $(REFMIBS) + +$(call localcopy,SENDMAIL-STATS.txt,http://git.gnu.org.ua/cgit/netsnmp-sendmail.git/plain/SENDMAIL-STATS.txt) +$(call localcopy,MYSQL-STAT-MIB.txt,http://git.gnu.org.ua/cgit/mysqlstat.git/plain/src/MYSQL-STAT-MIB.txt) +$(call localcopy,TALLYMAN-MIB.txt,http://git.gnu.org.ua/cgit/tallyman.git/plain/src/TALLYMAN-MIB.txt) + +install: html + @if test -z "$(DESTDIR)"; then \ + echo >&2 "usage: make install DESTDIR=DIR"; \ + exit 1; \ + fi + test -d $(DESTDIR) || mkdir -p $(DESTDIR) + rsync -az --delete --exclude=build/ gray-assignments/ gray.css graphics $(DESTDIR) diff --git a/OWS-STATS.txt b/OWS-STATS.txt new file mode 100644 index 0000000..0d9e8d9 --- /dev/null +++ b/OWS-STATS.txt @@ -0,0 +1,176 @@ +OWS-STATS DEFINITIONS ::= BEGIN + +-- ************************************************************* +-- +-- OWS statistics MIB +-- +-- ************************************************************* + +IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, enterprises, Integer32 + FROM SNMPv2-SMI + TEXTUAL-CONVENTION + FROM SNMPv2-TC + OBJECT-GROUP, MODULE-COMPLIANCE + FROM SNMPv2-CONF; + +ows MODULE-IDENTITY + LAST-UPDATED "201811301640Z" + ORGANIZATION "Gray Software" + CONTACT-INFO "Sergey Poznyakoff " + DESCRIPTION + "This MIB module defines objects for OWS statistics." + REVISION "201811301640Z" + DESCRIPTION + "First revision." + ::= { enterprises 9163 110 } + +EndpointNameString ::= TEXTUAL-CONVENTION + DISPLAY-HINT "256t" + STATUS current + DESCRIPTION "A string containing endpoint name." + SYNTAX OCTET STRING (SIZE (0..256)) + +EndpointURLString ::= TEXTUAL-CONVENTION + DISPLAY-HINT "256t" + STATUS current + DESCRIPTION + "A string containing endpoint URL." + SYNTAX OCTET STRING (SIZE (0..256)) + +EndpointCheckStatus ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "Represents the status of the endpoint check" + SYNTAX INTEGER { failure(0), success(1) } + +EndpointService ::= TEXTUAL-CONVENTION + DISPLAY-HINT "64t" + STATUS current + DESCRIPTION "A string containing the service name." + SYNTAX OCTET STRING (SIZE (0..64)) + +EndpointAction ::= TEXTUAL-CONVENTION + DISPLAY-HINT "64t" + STATUS current + DESCRIPTION "A string containing action name." + SYNTAX OCTET STRING (SIZE (0..64)) + +EndpointResponseMessage ::= TEXTUAL-CONVENTION + DISPLAY-HINT "512t" + STATUS current + DESCRIPTION "A string containing action name." + SYNTAX OCTET STRING (SIZE (0..512)) + +EndpointEntry ::= SEQUENCE { + endpointIndex Integer32, + endpointName EndpointNameString, + endpointURL EndpointURLString, + endpointResponseTime Integer32, + endpointCheckStatus EndpointCheckStatus, + endpointErrorService EndpointService, + endpointErrorAction EndpointAction, + endpointLastResponseStatus Integer32, + endpointLastResponseMessage EndpointResponseMessage +} + +endpointTable OBJECT-TYPE + SYNTAX SEQUENCE OF EndpointEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Endpoint statistics table." + ::= { ows 1 } + +endpointEntry OBJECT-TYPE + SYNTAX EndpointEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) describing an endpoint." + INDEX { endpointIndex } + ::= { endpointTable 1 } + +endpointIndex OBJECT-TYPE + SYNTAX Integer32 (0..65535) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A number uniquely identifying each endpoint." + ::= { endpointEntry 1 } + +endpointName OBJECT-TYPE + SYNTAX EndpointNameString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The name of the endpoint." + ::= { endpointEntry 2 } + +endpointURL OBJECT-TYPE + SYNTAX EndpointURLString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "URL of the endpoint." + ::= { endpointEntry 3 } + +endpointResponseTime OBJECT-TYPE + SYNTAX Integer32 (0..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Response time (milliseconds)." + ::= { endpointEntry 4 } + +endpointCheckStatus OBJECT-TYPE + SYNTAX EndpointCheckStatus + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Status of the last check." + ::= { endpointEntry 5 } + +endpointErrorService OBJECT-TYPE + SYNTAX EndpointService + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Name of the service that failed." + ::= { endpointEntry 6 } + +endpointErrorAction OBJECT-TYPE + SYNTAX EndpointAction + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Name of the action that failed." + ::= { endpointEntry 7 } + +endpointLastResponseStatus OBJECT-TYPE + SYNTAX Integer32 (100..600) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "HTTP status code of the failed response" + ::= { endpointEntry 8 } + +endpointLastResponseMessage OBJECT-TYPE + SYNTAX EndpointResponseMessage + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "HTTP status message of the failed response" + ::= { endpointEntry 9 } + +END + +-- Local variables: +-- eval: (add-hook 'write-file-hooks 'time-stamp) +-- time-stamp-start: "\\(LAST-UPDATED\\|REVISION\\) *\"" +-- time-stamp-end: "\"" +-- time-stamp-format: "%:y%02m%02d%02H%02MZ" +-- time-stamp-line-limit: 32 +-- time-stamp-count: 2 +-- end: + diff --git a/SESSION-STATS.txt b/SESSION-STATS.txt new file mode 100644 index 0000000..a14838e --- /dev/null +++ b/SESSION-STATS.txt @@ -0,0 +1,83 @@ +SESSION-STATS DEFINITIONS ::= BEGIN + +-- ************************************************************* +-- +-- PHP session statistics MIB +-- +-- ************************************************************* + +IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, enterprises, Counter64, Integer32 + FROM SNMPv2-SMI + TEXTUAL-CONVENTION, DisplayString + FROM SNMPv2-TC + OBJECT-GROUP, MODULE-COMPLIANCE + FROM SNMPv2-CONF; + +phpsession MODULE-IDENTITY + LAST-UPDATED "201604141630Z" + ORGANIZATION "Gray Software" + CONTACT-INFO "Sergey Poznyakoff " + DESCRIPTION + "This MIB module defines objects for PHP session statistics." + REVISION "201604141630Z" + DESCRIPTION + "First revision." + ::= { enterprises 9163 101 } + +totalSessionFiles OBJECT-TYPE + SYNTAX Integer32 (0..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of session files in use." + ::= { phpsession 1 } + +totalSessionProcesses OBJECT-TYPE + SYNTAX Integer32 (0..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Total number of processes using the session files." + ::= { phpsession 2 } + +avgProcessesPerSession OBJECT-TYPE + SYNTAX Integer32 (0..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Average number of processes using a singe session, + rounded to the nearest integer digit." + ::= { phpsession 3 } + +maxProcessesPerSession OBJECT-TYPE + SYNTAX Integer32 (0..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Maximum number of processes using a singe session." + ::= { phpsession 4 } + +mostUsedSessionFile OBJECT-TYPE + SYNTAX DisplayString (SIZE(0..1024)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Name of the session file corresponding to + maxProcessesPerSession value." + ::= { phpsession 5 } + +END + +-- Local variables: +-- eval: (add-hook 'write-file-hooks 'time-stamp) +-- time-stamp-start: "\\(LAST-UPDATED\\|REVISION\\) *\"" +-- time-stamp-end: "\"" +-- time-stamp-format: "%:y%02m%02d%02H%02MZ" +-- time-stamp-line-limit: 32 +-- time-stamp-count: 2 +-- end: + + + + diff --git a/graphics/bwd.png b/graphics/bwd.png new file mode 100644 index 0000000..0142be8 Binary files /dev/null and b/graphics/bwd.png differ diff --git a/graphics/ctx.png b/graphics/ctx.png new file mode 100644 index 0000000..4a86f08 Binary files /dev/null and b/graphics/ctx.png differ diff --git a/graphics/fwd.png b/graphics/fwd.png new file mode 100644 index 0000000..2e63647 Binary files /dev/null and b/graphics/fwd.png differ diff --git a/graphics/idx.png b/graphics/idx.png new file mode 100644 index 0000000..fd9356b Binary files /dev/null and b/graphics/idx.png differ diff --git a/graphics/left.png b/graphics/left.png new file mode 100644 index 0000000..1eeebee Binary files /dev/null and b/graphics/left.png differ diff --git a/graphics/right.png b/graphics/right.png new file mode 100644 index 0000000..0d1c199 Binary files /dev/null and b/graphics/right.png differ diff --git a/graphics/top.png b/graphics/top.png new file mode 100644 index 0000000..6544b17 Binary files /dev/null and b/graphics/top.png differ diff --git a/graphics/up.png b/graphics/up.png new file mode 100644 index 0000000..65a1897 Binary files /dev/null and b/graphics/up.png differ diff --git a/gray-assignments.texi b/gray-assignments.texi new file mode 100644 index 0000000..0676f4f --- /dev/null +++ b/gray-assignments.texi @@ -0,0 +1,237 @@ +\input texinfo @c -*-texinfo-*- +@c %**start of header +@setfilename gray-assignments.info +@settitle OID Assignments in 1.3.6.1.4.1.9163 + +@include version.texi + +@ifinfo +@dircategory References +@direntry +* Gray Software OID Assignments (gray-assignments). Assignments in 1.3.6.1.4.1.9163. +@end direntry +@end ifinfo + +@copying +Copyright @copyright{} 2019 Sergey Poznyakoff + +Permission is granted to copy, distribute and/or modify this document +under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no +Invariant Sections, no Front-Cover, and no Back-Cover texts. +An online copy of the license is available at +@uref{https://www.gnu.org/licenses/fdl.html}. +@end copying + +@titlepage +@title OID Assignments in 1.3.6.1.4.1.9163 +@subtitle version 1.0, @value{UPDATED} +@author Sergey Poznyakoff. +@page +@vskip 0pt plus 1filll +@insertcopying +@end titlepage + +@ifnottex +@node Top +@top Overview +This edition of the @cite{Assignments}, last updated on +@value{UPDATED}, documents OID assignments within 1.3.6.1.4.1.9163 IANA +Private Enterprise Number node. + +@insertcopying + +@menu +* Assignments:: + +Apendices + +* gray.schema:: +* SENDMAIL-STATS.txt:: +* SESSION-STATS.txt:: +* MYSQL-STAT-MIB.txt:: +* TALLYMAN-MIB.txt:: +* OWS-STATS.txt:: +* umi.schema:: +@end menu +@end ifnottex +@contents + +@node Assignments +@unnumbered Assignments + +The enterprise number 9163 is listed in @cite{IANA enterprise list}@footnote{ +@uref{https://www.iana.org/assignments/enterprise-numbers/enterprise-numbers}} +at line 36608. Initially it was registered for GNU Radius Project. +Since then the project has moved its MIB to the Free Software +Foundation enterprise number (11591) and 9163 got reused for the needs +of various free software projects by Sergey Poznyakoff. + +This document lists current assignments. For additional information, +including allocation requests, +please contact @email{gray@@gnu.org, Sergey Poznyakoff}. + +@defvr {OID} 1.3.6.1.4.1.9163.2 +Name: @samp{gray.schema} +@*Purpose: Various LDAP assignments. +@*References: @xref{gray.schema}. +@end defvr + +@defvr {OID} 1.3.6.1.4.1.9163.100 +Name: @samp{SENDMAIL-STATS.txt} +@*Purpose: MIB assignment for the @command{NetSNMP::Sendmail} project. +@*Project: @uref{https://metacpan.org/pod/NetSNMP::Sendmail}. +@*References: @xref{SENDMAIL-STATS.txt}. +@end defvr + +@defvr {OID} 1.3.6.1.4.1.9163.101 +Name: @samp{SESSION-STATS.txt} +@*Purpose: MIB assignment for @command{NetSNMP::PHPSession}. +@*References: @xref{SESSION-STATS.txt}. +@*Notes: The project exists only in my local repository. It is +unlikely that it will be ever published. This OID can be regarded as +a candidate for the re-assignment. +@end defvr + +@defvr {OID} 1.3.6.1.4.1.9163.102 +Name: @samp{MYSQL-STAT-MIB.txt} +@*Purpose: MIB assignment for @command{mysqlstat}. +@*Project: @uref{https://puszcza.gnu.org.ua/projects/mysqlstat} +@*References: @xref{MYSQL-STAT-MIB.txt}. +@end defvr + +@defvr {OID} 1.3.6.1.4.1.9163.103 +Name: @samp{TALLYMAN-MIB.txt} +@*Purpose: MIB assignment for @command{talliman} +@*Project: @uref{https://puszcza.gnu.org.ua/projects/tallyman} +@*References: @xref{TALLYMAN-MIB.txt}. +@end defvr + +@defvr {OID} 1.3.6.1.4.1.9163.110 +Name: @samp{OWS-STATS.txt} +@*Purpose: MIB assignment for @command{NetSNMP::OWSProbe} +@*References: @xref{OWS-STATS.txt}. +@*Note: The project exists only in my local repository. It is +unlikely that it will be ever published. This OID can be regarded as +a candidate for the re-assignment. +@end defvr + +@defvr {OID} 1.3.6.1.4.1.9163.111 +Name: check_class_snmp +@*Purpose: MIB assignment for @command{check_class_snmp} +@*Note: Project is in development. +@end defvr + +@defvr {OID} 1.3.6.1.4.1.9163.864 +Name: @samp{umi.schema} +@*Purpose: LDAP assignments for @command{UMI}. +@*Project: @uref{https://github.com/z-eos/umi} +@*References: @xref{umi.schema}. +@end defvr + +@node gray.schema +@appendix gray.schema + +The LDAP schema below defines various accounting objects I use on my +servers. + +Base OID: 1.3.6.1.4.1.9163.2 + +@example +@include gray.inc +@end example + +@node SENDMAIL-STATS.txt +@appendix SENDMAIL-STATS.txt + +This MIB provides access to the Sendmail statistics information +obtained by mailq and mailstats. It is used by the +@command{NetSNMP::Sendmail} module (see +@uref{https://metacpan.org/pod/NetSNMP::Sendmail}). + +The most recent version of this MIB is available from +@uref{http://git.gnu.org.ua/cgit/netsnmp-sendmail.git/tree/SENDMAIL-STATS.txt}. + +Base OID: 1.3.6.1.4.1.9163.100 + +@example +@include SENDMAIL-STATS.inc +@end example + +@node SESSION-STATS.txt +@appendix SESSION-STATS.txt + +This MIB is used by the @command{NetSNMP::PHPSession} module, which +provides statistics about the usage of PHP session files. The module +is Linux-specific. Although it is widely used on servers of Norse +Digital, I feel that it is too specific to merit any interest. +Therefore I have never published it. Quite possibly the module would +phase out some of these days, and the OID will be reused for some +other purpose. + +Base OID: 1.3.6.1.4.1.9163.101 + +@example +@include SESSION-STATS.inc +@end example + +@node MYSQL-STAT-MIB.txt +@appendix MYSQL-STAT-MIB.txt + +This MIB is used by the @command{mysqlstat} project - a loadable +module for @command{snmpd} which provides access to the process list +statistics and replication status of @command{mysqld} servers. The +module is available at @uref{https://puszcza.gnu.org.ua/projects/mysqlstat}. + +The most recent version of this MIB is available from +@uref{http://git.gnu.org.ua/cgit/mysqlstat.git/tree/src/MYSQL-STAT-MIB.txt} + +Base OID: 1.3.6.1.4.1.9163.102 + +@example +@include MYSQL-STAT-MIB.inc +@end example + +@node TALLYMAN-MIB.txt +@appendix TALLYMAN-MIB.txt + +This MIB is used by the @command{talliman} package. +@command{Tallyman} is an SNMP monitor for docker containers. It is +avaialable from @uref{https://puszcza.gnu.org.ua/projects/tallyman}. + +The most recent version of this MIB is available from +@uref{http://git.gnu.org.ua/cgit/tallyman.git/tree/src/TALLYMAN-MIB.txt}. + +Base OID: 1.3.6.1.4.1.9163.103 + +@example +@include TALLYMAN-MIB.inc +@end example + +@node OWS-STATS.txt +@appendix OWS-STATS.txt + +Yet another unpublished project: @command{NetSNMP::OWSProbe}. Will +hopefully be withdrawn. + +Base OID: 1.3.6.1.4.1.9163.110 + +@example +@include OWS-STATS.inc +@end example + +@node umi.schema +@appendix umi.schema + +LDAP schema used in the @cite{Unified Management Interface} by +Zeus Panchenko: @uref{https://github.com/z-eos/umi}. + +@example +@include umi.inc +@end example + +@bye + + + + diff --git a/gray.css b/gray.css new file mode 100644 index 0000000..f1450ee --- /dev/null +++ b/gray.css @@ -0,0 +1,49 @@ +/* Basic settings */ +body { + font-family: serif; + font-size: 120%; + color: #333; + background: white; + padding: 4px; + margin-top: 0; + margin-bottom: 2em; + margin-left: 5%; + margin-right: 5%; +} + +a { + color: blue; + text-decoration: none; +} + +a:hover { + text-decoration: underline; +} + +img { + border: none 0; + vertical-align: top; +} + +table { + border-collapse: collapse; +} + +.right { + text-align: right; +} + +dt { + font-weight: bold; +} + +/* Copyright section */ +div.copyright { + font-size: 80%; + padding: 4px; + border-top: solid 2px black; +} + +div.header { + border-bottom: solid 2px black; +} diff --git a/gray.schema b/gray.schema new file mode 100644 index 0000000..7c60a73 --- /dev/null +++ b/gray.schema @@ -0,0 +1,171 @@ +################################################################################ +# Gray's experimental LDAP schema items +# +# depends upon: +# nis.schema +# +# Revision: 201908111852Z +################################################################################ + +attributetype ( 1.3.6.1.4.1.9163.2.1.0 NAME 'grayPublicKey' + DESC 'SSH public key' + EQUALITY caseExactIA5Match + SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 ) + +attributetype ( 1.3.6.1.4.1.9163.2.1.1 NAME 'grayHost' + DESC 'host computer' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} ) + +# Object Class Definitions + +objectclass ( 1.3.6.1.4.1.9163.2.2.0 NAME 'grayAccount' + DESC 'Abstraction of an employee account' + SUP posixAccount AUXILIARY + MUST ( cn $ uid $ uidNumber $ gidNumber $ homeDirectory ) + MAY ( userPassword $ loginShell $ gecos $ grayPublicKey $ grayHost $ mail ) ) + +objectclass ( 1.3.6.1.4.1.9163.2.2.1 NAME 'grayGroup' + DESC 'Abstraction of an access group' + SUP posixGroup STRUCTURAL + MUST ( cn $ gidNumber ) + MAY ( grayHost ) ) +# +attributetype ( 1.3.6.1.4.1.9163.2.1.2 NAME 'grayInstanceID' + DESC 'Virtual Instance ID' + EQUALITY caseExactIA5Match + SUBSTR caseExactIA5SubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{64} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.2.1.3 NAME 'grayInstanceType' + DESC 'Virtual Instance Type' + EQUALITY caseExactIA5Match + SUBSTR caseExactIA5SubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{64} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.2.1.4 NAME 'grayInstanceRegion' + DESC 'Region where the instance is located' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{64} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.2.1.5 NAME 'grayDeviceMapping' + DESC 'Mapping of a virtual device' + EQUALITY caseExactMatch + SUBSTR caseExactSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} ) + +attributetype ( 1.3.6.1.4.1.9163.2.1.6 NAME 'grayStatus' + DESC 'Status of the Instance' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{64} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.2.1.7 NAME 'grayMasterAccount' + DESC 'Master account this machine/instance belongs to' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{64} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.2.1.8 NAME 'grayWSUser' + DESC 'Primary user of a workstation' + EQUALITY caseExactMatch + SUBSTR caseExactSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} ) + +attributetype ( 1.3.6.1.4.1.9163.2.1.9 NAME 'grayHostingID' + DESC 'Hosting ID for the machine' + EQUALITY caseExactMatch + SUBSTR caseExactSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE) + +attributetype ( 1.3.6.1.4.1.9163.2.1.10 NAME 'grayHostName' + DESC 'Host name' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE) + +attributetype ( 1.3.6.1.4.1.9163.2.1.11 NAME 'grayCPUCount' + DESC 'Number of CPUs on the machine' + EQUALITY integerMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE) + +attributetype ( 1.3.6.1.4.1.9163.2.1.12 NAME 'grayRAMSize' + DESC 'Available RAM' + EQUALITY integerMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE) + +attributetype ( 1.3.6.1.4.1.9163.2.1.13 NAME 'grayOSName' + DESC 'Name of the operating system' + EQUALITY caseIgnoreIA5Match + SUBSTR caseIgnoreIA5SubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.2.1.14 NAME 'grayOSDistribution' + DESC 'OS Distribution' + EQUALITY caseIgnoreIA5Match + SUBSTR caseIgnoreIA5SubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.2.1.15 NAME 'grayOSDistributionFamily' + DESC 'OS Distribution Family' + EQUALITY caseIgnoreIA5Match + SUBSTR caseIgnoreIA5SubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.2.1.16 NAME 'grayOSVersion' + DESC 'Version of the operating system' + EQUALITY caseIgnoreIA5Match + SUBSTR caseIgnoreIA5SubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.2.1.17 NAME 'grayOSDistributionVersion' + DESC 'Version of the operating system distribution' + EQUALITY caseIgnoreIA5Match + SUBSTR caseIgnoreIA5SubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.2.1.18 NAME 'grayOSArchitecture' + DESC 'Hardware architecture string' + EQUALITY caseIgnoreIA5Match + SUBSTR caseIgnoreIA5SubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) + +# grayInstanceID Virtual Instance ID, when applicable +# grayInstanceType Virtual Instance Type, when applicable +# grayInstanceRegion Zone +# grayDeviceMapping Device mapping, one attr per device +# grayStatus Machine status: up/down +# grayMasterAccount Master account ID (key for EC2 instances) +#* grayHostingID Hosting ID +#* grayHostName +#* ipHostNumber Primary IP address (from nis.schema) +# description Free-text description +# cn Common Name + +objectclass ( 1.3.6.1.4.1.9163.2.2.2 NAME 'grayMachine' + DESC 'Abstraction for a machine or instance' + SUP account STRUCTURAL + MAY ( grayInstanceID $ grayInstanceType $ grayInstanceRegion $ + grayDeviceMapping $ grayStatus $ grayMasterAccount $ + grayHostingID $ ipHostNumber $ grayHostName $ + grayCPUCount $ grayRAMSize $ + description $ cn $ grayOSName $ grayOSDistribution $ + grayOSDistributionFamily $ grayOSVersion $ + grayOSDistributionVersion $ grayOSArchitecture ) ) + +objectclass ( 1.3.6.1.4.1.9163.2.2.3 NAME 'grayWorkStation' + DESC 'Abstraction for a workstation in a LAN' + SUP account STRUCTURAL + MUST ( uid $ grayWSUser $ macAddress $ ipHostNumber ) + MAY ( cn $ memberUid $ description ) ) + +# Local variables: +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "# *Revision: *" +# time-stamp-end: " *$" +# time-stamp-format: "%:y%02m%02d%02H%02MZ" +# time-stamp-line-limit: 32 +# time-stamp-count: 1 +# end: diff --git a/html.init b/html.init new file mode 100644 index 0000000..93b27d7 --- /dev/null +++ b/html.init @@ -0,0 +1,139 @@ +# Texi2any configuration for mailfromd documentation. -*- perl -*- +# Copyright (C) 2009-2019 Sergey Poznyakoff +# +# Mailfromd is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3, or (at your option) +# any later version. +# +# Mailfromd is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Mailfromd. If not, see . +use strict; + +my $top_html_dir="/software/assignments"; +my $graphics_dir="$top_html_dir/graphics"; + +# Show TOC in place of the @contents directive. +set_from_init_file('INLINE_CONTENTS', 1); +# Do not show Texinfo menus. +set_from_init_file('SHOW_MENU', 0); +# Inhibit output of CSS lines in page headers. +set_from_init_file('CSS_LINES', ''); + +set_from_init_file('BODYTEXT', ""); + +set_from_init_file('EXTRA_HEAD', "\ + \ + + "); + +sub gray_end_file($) +{ + my $self = shift; + my $program_text = ''; + if ($self->get_conf('PROGRAM_NAME_IN_FOOTER')) { + my $program_string = &{$self->{'format_program_string'}}($self); + $program_text = "

+ $program_string +

"; + } + my $pre_body_close = $self->get_conf('PRE_BODY_CLOSE'); + $pre_body_close = '' if (!defined($pre_body_close)); + return " +
+$program_text + +$pre_body_close +
+ + +"; +} + +texinfo_register_formatting_function('end_file', \&gray_end_file); + +set_from_init_file('PRE_BODY_CLOSE', + 'Content is available under GNU Free Documentation License 1.3.'); + +# Print generating program name at the bottom of a page. +set_from_init_file('PROGRAM_NAME_IN_FOOTER',1); + +# Disable horizontal bars +set_from_init_file('DEFAULT_RULE', ''); +set_from_init_file('BIG_RULE', ''); + +sub split_mode() { get_conf('SPLIT') // 'node' } + +# Turn off navigation bars at the bottom of each section. +set_from_init_file('HEADERS', undef); + +# Use navigation icons +set_from_init_file('ICONS', 1); + +set_from_init_file('ACTIVE_ICONS', + { + 'Top' => "$graphics_dir/top.png", + 'Contents' => "$graphics_dir/ctx.png", + 'Overview' => '', + 'Index' => "$graphics_dir/idx.png", + 'This' => '', + 'Back' => "$graphics_dir/left.png", + 'FastBack' => "$graphics_dir/bwd.png", + 'Prev' => "", + 'Up' => "$graphics_dir/up.png", + 'Next' => "$graphics_dir/right.png", + 'NodeUp' => "$graphics_dir/left.png", + 'NodeNext' => "$graphics_dir/up.png", + 'NodePrev' => "$graphics_dir/right.png", + 'Following' => "$graphics_dir/right.png", + 'Forward' => "$graphics_dir/right.png", + 'FastForward' => "$graphics_dir/fwd.png", + 'About' => '', + 'First' => '', + 'Last' => '', + ' ' => '' + }); + +sub gray_document_title($$) +{ + my $self = shift; + my $direction = shift; + + return q{} . $self->{title_string} . ':'; +} + +sub gray_sec_ref($$) +{ + return q{Section:}; +} + +sub gray_chap_ref($$) +{ + return q{Chapter:}; +} + +my @gray_buttons = (\&gray_document_title, ' ', + # There are no sections in the document, so the Section + # buttons are disabled. + ' ', ' ', ' ', ' ', + \&gray_chap_ref, + 'FastBack', ' ', 'Up', ' ', 'FastForward', ' ', + 'Contents', 'Index' ); + +set_from_init_file('TOP_BUTTONS', undef); +set_from_init_file('SECTION_BUTTONS', \@gray_buttons); +set_from_init_file('CHAPTER_BUTTONS', \@gray_buttons); +set_from_init_file('NODE_FOOTER_BUTTONS', \@gray_buttons); +set_from_init_file('SECTION_FOOTER_BUTTONS', \@gray_buttons); +set_from_init_file('MISC_BUTTONS', + [\&gray_document_title, + 'Contents', + 'Index', + ' ', + 'About' + ]); diff --git a/umi.schema b/umi.schema new file mode 100644 index 0000000..6e4c4ac --- /dev/null +++ b/umi.schema @@ -0,0 +1,523 @@ +################################################################################ +# UMI OIDs +# version: 20170809155847 by zeus +################################################################################ + +# Main OID: 1.3.6.1.4.1.9163 +# Sub OID: .864 +# +# OID Tree: +# .864 +# | +# +--.10 userCertificate amendments +# | +# +--.11 openvpn(8) options attributes +# | +# +--.12 additional, not openvpn(8), attributes +# | +# +--.13.0 objectClass: umiOvpnCfg +# | +# +--.14.0 objectClass: umiUserCertificate +# | +# +--.15 Inventory +# | | +# | +--.15.1 HardWare Inventory attributes +# | | +# | +--.15.2 HardWare Inventory object-classes +# | | +# | +--.15.3 Virtual Machines Inventory attributes +# | | +# | +--.15.4 Virtual Machines Inventory object-classes +# | +# +--.16 UMI Settings +# | +# +--.16.1 UMI Settings attributes +# | +# +--.16.2 UMI Settings objectclass +# + +#=========================================================== +# .10 strongAuthenticationUser amendation attributes +#=========================================================== +attributetype ( 1.3.6.1.4.1.9163.864.10.1 NAME 'umiUserCertificateSn' + DESC 'User Certificate SN' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.10.2 NAME 'umiUserCertificateIssuer' + DESC 'User Certificate Issuer' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.10.3 NAME 'umiUserCertificateNotAfter' + DESC 'User Certificate Not After' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.10.4 NAME 'umiUserCertificateNotBefore' + DESC 'User Certificate Not Before' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.10.5 NAME 'umiUserCertificateSubject' + DESC 'User Certificate Subject' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +#=========================================================== +# .11 openvpn(8) options attributes +#=========================================================== + +attributetype ( 1.3.6.1.4.1.9163.864.11.1 NAME 'umiOvpnCfgIfconfigPush' + DESC 'openvpn(8) option --ifconfig-push Push virtual IP endpoints for client tunnel' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.11.2 NAME 'umiOvpnCfgIroute' + DESC 'openvpn(8) option --iroute Internal route to a specific client' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} ) + +attributetype ( 1.3.6.1.4.1.9163.864.11.3 NAME 'umiOvpnCfgPush' + DESC 'openvpn(8) option --push Push a config file option back to the client for remote execution' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} ) + +attributetype ( 1.3.6.1.4.1.9163.864.11.4 NAME 'umiOvpnCfgMaxRoutes' + DESC 'openvpn(8) option --max-routes Allow a maximum number of n --route options to be specified' + EQUALITY integerMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.11.5 NAME 'umiOvpnCfgServer' + DESC 'openvpn(8) option --server A helper directive.' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.11.6 NAME 'umiOvpnCfgRoute' + DESC 'openvpn(8) option --route Add route to routing table after connection is established.' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} ) + +attributetype ( 1.3.6.1.4.1.9163.864.11.7 NAME 'umiOvpnCfgConfig' + DESC 'openvpn(8) option --config Load additional config options from file.' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +#=========================================================== +# .12 additional, not openvpn(8), attributes +#=========================================================== + +attributetype ( 1.3.6.1.4.1.9163.864.12.1 NAME 'umiOvpnAddStatus' + DESC 'client status active/blocked/revoked e.t.c.' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.12.2 NAME 'umiOvpnAddDevType' + DESC 'Device, certificate issued for (notebook, desktop, smartphone, e.t.c.)' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.12.3 NAME 'umiOvpnAddDevMake' + DESC 'Device maker Lenovo/Asus/e.t.c.' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.12.4 NAME 'umiOvpnAddDevModel' + DESC 'Device model' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.12.5 NAME 'umiOvpnAddDevOS' + DESC 'Device Operating System' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.12.6 NAME 'umiOvpnAddDevOSVer' + DESC 'Device Operating System Version' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.12.7 NAME 'umiOvpnAddCcCommonPad' + DESC 'Raw addition to each client config (like when you need to add same confing chunk to each cc)' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + + +#=========================================================== +# .13.0 OpenVPN Configuration +#=========================================================== + +objectclass ( 1.3.6.1.4.1.9163.864.13.0 NAME 'umiOvpnCfg' + DESC 'Abstraction of an OpenVPN configuration. It supposed to contain both, openvpn(8) options and custom (not openvpn(8)) attributes' + SUP ( pkiUser $ domainRelatedObject $ authorizedServiceObject ) AUXILIARY + MUST ( umiOvpnAddStatus $ associatedDomain ) + MAY ( umiOvpnCfgIroute $ umiOvpnCfgServer $umiOvpnCfgPush $ umiOvpnCfgMaxRoutes $ + umiOvpnAddDevType $ umiOvpnCfgConfig $ umiOvpnAddDevMake $ umiOvpnAddDevModel $ + umiOvpnAddDevOS $ umiOvpnAddDevOSVer $ umiOvpnAddCcCommonPad $ umiOvpnCfgRoute $ + umiOvpnCfgIfconfigPush $ userCertificate $ authorizedService ) ) + +#=========================================================== +# .14.0 umiUserCertificate +#=========================================================== + +objectclass ( 1.3.6.1.4.1.9163.864.14.0 NAME 'umiUserCertificate' + DESC 'strongAuthenticationUser amendation with x509 certificate details' + SUP strongAuthenticationUser AUXILIARY + MUST ( umiUserCertificateSn $ umiUserCertificateIssuer $ umiUserCertificateNotAfter $ + umiUserCertificateNotBefore $ umiUserCertificateSubject ) ) + +#=========================================================== +# .15.1.0 hwInventory +#=========================================================== + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.1 NAME 'hwMb' + DESC 'RFC4517 DN of the object holding configuration of MotherBoard' + EQUALITY distinguishedNameMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 ) + + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.2 NAME 'hwCpu' + DESC 'RFC4517 DN of the object holding configuration of CPU unit' + EQUALITY distinguishedNameMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 ) + + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.3 NAME 'hwRam' + DESC 'RFC4517 DN of the object holding configuration of RAM module' + EQUALITY distinguishedNameMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 ) + + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.4 NAME 'hwDisk' + DESC 'RFC4517 DN of the object holding configuration of Disk (HDD/SSD) unit' + EQUALITY distinguishedNameMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 ) + + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.5 NAME 'hwIf' + DESC 'RFC4517 DN of the object holding configuration of an interface' + EQUALITY distinguishedNameMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 ) + + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.6 NAME 'hwMonitor' + DESC 'RFC4517 DN of the object holding configuration of a monitor' + EQUALITY distinguishedNameMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 ) + + +# --- strings --------------------------------------------------------- + + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.100 NAME 'hwType' + DESC 'any type of anything' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.100.1 NAME 'hwTypeIf' + DESC 'type of interface: eth, wlan, bt, onboard or external' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.100.2 NAME 'hwTypeDisk' + DESC 'type of disk (HDD/SSD)' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.101 NAME 'hwState' + DESC 'possible states of the object: new, good, bad, broken, gleetches, burned' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.102 NAME 'hwStatus' + DESC 'possible status/es of the object: assigned, unassigned, lost, stolen' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.103 NAME 'hwAssignedTo' + DESC 'RFC4517 DN of the object, this one assigned too' + EQUALITY distinguishedNameMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 ) + + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.104 NAME 'hwManufacturer' + DESC 'Manufacturer of the device/compart' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.105 NAME 'hwModel' + DESC 'model of the device' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.106 NAME 'hwProductName' + DESC 'Product Name' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + + +# --- BIOS ----------------------------------------------------------- + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.107 NAME 'hwBios' + DESC 'BIOS/Firmvare' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.107.1.1 NAME 'hwBiosVendor' + DESC 'BIOS Vendor' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.107.1.2 NAME 'hwBiosVersion' + DESC 'BIOS Version' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.107.1.3 NAME 'hwBiosReleaseDate' + DESC 'BIOS Release Date' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.107.1.4 NAME 'hwBiosRevision' + DESC 'BIOS Revision' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.107.2.1 NAME 'hwFirmware' + DESC 'Firmware' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.107.2.2 NAME 'hwFirmwareType' + DESC 'Firmware Type' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + + +# --- SPEED ---------------------------------------------------------- + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.108 NAME 'hwSpeed' + DESC 'Speed/MaxSpeed of the device/module/compart/e.t.c.' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.108.1 NAME 'hwSpeedCpu' + DESC 'CPU Max Speed' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.108.2 NAME 'hwSpeedRam' + DESC 'RAM Speed' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.108.3 NAME 'hwSpeedIf' + DESC 'Interface speed' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +# --- SIZE ----------------------------------------------------------- + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.109 NAME 'hwSize' + DESC 'Size/volume/capacity' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.109.1 NAME 'hwSizeDisk' + DESC 'HDD/SDD Size/volume/capacity' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.109.2 NAME 'hwSizeRam' + DESC 'RAM Size/volume/capacity' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +# -------------------------------------------------------------------- + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.110 NAME 'hwBus' + DESC 'type of bus: SATA, SAS, SCSI, PCI, ISA, e.t.c.' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} ) + + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.111 NAME 'hwMac' + DESC 'device MAC address' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +# --- ID ------------------------------------------------------------- + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.112 NAME 'hwId' + DESC 'device/compart ID (like for CPU)' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.112.1 NAME 'inventoryNumber' + DESC 'Inventory Number Assigned' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} ) + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.112.2 NAME 'hwSerialNumber' + DESC 'Serial Number of the device' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.112.3 NAME 'hwPartNumber' + DESC 'Part Number' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.112.4 NAME 'hwFamily' + DESC 'device/compart family (like for CPU)' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.112.5 NAME 'hwVersion' + DESC 'device/compart Version (like for CPU)' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.112.6 NAME 'hwSignature' + DESC 'device/compart Signature (like for CPU)' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.112.7 NAME 'hwUuid' + DESC 'UUID' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.112.8 NAME 'hwFccId' + DESC 'device/compart FCC ID' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.112.9 NAME 'hwSocket' + DESC 'hardware module socket' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.113 NAME 'hwName' + DESC 'device/compart Name' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.113.1 NAME 'hwNameIf' + DESC 'interface Name like eth13, wlan6, e.t.c.' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +#------------------------------------------------------------------- -- + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.114 NAME 'hwBankLocator' + DESC 'RAM (P1_Node1_Channel3_Dimm0 or BANK2)' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.115 NAME 'hwLocator' + DESC 'RAM locator (DIMM5 or P2-DIMMG1)' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.9163.864.15.1.116 NAME 'hwFormFactor' + DESC 'RAM form factor (DIMM)' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE ) + +# --- objectClass --------------------------------------------------------- + +objectclass ( 1.3.6.1.4.1.9163.864.15.2 NAME 'hwInventory' + DESC 'HardWare Inventory' + SUP device STRUCTURAL + MUST ( cn $ hwType $ hwState $ hwStatus ) + MAY ( hwAssignedTo $ description $ hwMb $ hwCpu $ hwRam $ hwDisk $ hwIf $ hwMonitor $ hwManufacturer $ hwModel $ hwProductName $ hwBios $ hwBiosVendor $ hwBiosVersion $ hwBiosReleaseDate $ hwBiosRevision $ hwFirmware $ hwFirmwareType $ hwSpeed $ hwSpeedCpu $ hwSpeedRam $ hwSpeedIf $ hwSize $ hwSizeDisk $ hwSizeRam $ hwBus $ hwMac $ hwId $ inventoryNumber $ hwSerialNumber $ hwPartNumber $ hwFamily $ hwVersion $ hwSignature $ hwUuid $ hwFccId $ hwSocket $ hwName $ hwNameIf $ hwTypeIf $ hwTypeDisk $ hwBankLocator $ hwLocator $ hwFormFactor ) ) + +#=========================================================== +# .16.1 umiSettings UMI UI related attributes +#=========================================================== +attributetype ( 1.3.6.1.4.1.9163.864.16.1.1 NAME 'umiSettingsJson' + DESC 'UMI UI settings JSON structure up to 32K in length.' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{32768} SINGLE-VALUE ) + +#=========================================================== +# .16.2 umiSettings +#=========================================================== + +objectclass ( 1.3.6.1.4.1.9163.864.16.2 NAME 'umiSettings' + DESC 'UMI UI settings' + SUP extensibleObject AUXILIARY + MAY ( umiSettingsJson ) ) + -- cgit v1.2.1