<?xml version="1.0" encoding="UTF-8"?>

<xmpMIB xmlns="http://xmlns.krupczak.org/xsd/xmptypes-2.0">

<mibName>coreMib</mibName>

<mibOrganization>
The Krupczak Organization, LLC.
</mibOrganization>

<mibDescription>
MIB objects considered core to the protocol and agent engine.  These MIB 
objects must be implemented by all agents implementing the XML Management
Protocol (XMP).  Schemas for the protocol and SMI can be found at
http://xmlns.krupczak.org/
</mibDescription>

<mibContactInfo>
Bobby Krupczak, rdk@krupczak.org, http://www.krupczak.org/cartographer/
</mibContactInfo>

<mibLastUpdate>Thu Oct 11 10:51:50 EDT 2012</mibLastUpdate>

<!-- core system group from MIB-2, RFC 1213 -->

<mibObject>
 <objectName>sysDescr</objectName>
 <objectSyntax>displayString</objectSyntax>
 <objectDescription>Description of the underlying system on which this XMP agent and core MIB are running.</objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>sysObjectID</objectName>
 <objectSyntax>displayString</objectSyntax>
 <objectDescription>
 The Internet Management Framework SMI object identifier of the vendor 
 implementing this MIB.  This value should be registered with IANA.  Since
 the XMP SMI does not use object identifiers, we use the displayString 
 syntax.  In practice, the value can be virtually any valid string.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>sysUpTime</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 The count, in seconds, that the XMP agent has been up and operational.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>sysName</objectName>
 <objectSyntax>displayString</objectSyntax>
 <objectDescription>
 The FQDN of the underlying system on which this agent is running.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>sysServices</objectName>
 <objectSyntax>integer</objectSyntax>
 <objectDescription>
 The Internet Management Framework MIB-2 sysServices MIB object.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>sysUpTimeStr</objectName>
 <objectSyntax>displayString</objectSyntax>
 <objectDescription>
 How long, days, hours, minutes, seconds, the system has been up and running.
 This object is essentially current time minus boot time.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>sysBootTime</objectName>
 <objectSyntax>displayString</objectSyntax>
 <objectDescription>
 The date and time that the system was booted.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>sysDateTime</objectName>
 <objectSyntax>displayString</objectSyntax>
 <objectDescription>
 The system's current date and time.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>cartographerUptime</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 The time, in seconds, that the Cartographer agent has been up and running.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>cartographerUptimeStr</objectName>
 <objectSyntax>displayString</objectSyntax>
 <objectDescription>
 String version of the time the Cartographer agent has been up and running 
 in days, hours, minutes, and seconds.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>xmpdUptime</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 Duplicate of cartographerUptime.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>xmpdUptimeStr</objectName>
 <objectSyntax>displayString</objectSyntax>
 <objectDescription>
 Duplicate of cartographerUptimeStr.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<!-- XMP message and protocol statistics group -->

<mibObject>
 <objectName>inMessages</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 Number of XMP messages received by this agent.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>inXmlParseErrs</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 Number of XML errors encountered while parsing received messages.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>inNoSuchNames</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 Number of times an object was requested that was not contained in this 
 agent's MIB.  A request may contain multiple requested objects that are
 not present but often only the first missing object will be counted 
 because agent message processing normally ceases after the first error
 is encountered.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>inBadValues</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 Number of objects with bad value that have been received and processed.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>inTotalReqVars</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 The total number of MIB objects that have been requested of this agent.
 This number is not necessarily equivalent to the number of messages that 
 have been received.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>inSessions</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 The number of incoming session requests that have been successfully 
 established.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>inBytes</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 Total number of bytes, across all messages and sessions, that have been
 received.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>outMessages</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 The total number of messages sent by this agent across all the sessions
 that have been established.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>outSessions</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 The total number of sessions that have been successfully initiated by 
 this agent. 
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>outBytes</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 Total number of bytes, across all messages and sessions, that have been
 sent by this agent.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>outTotalReqVars</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 Total number of MIB objects that have been requested by this agent.  This
 number is not necessarily equivalent to the number of messages that
 have been sent.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>inGets</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 Number of XMP GetRequest messages that have been received.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>inSets</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 Number of XMP SetRequest messages that have been received.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>inResponses</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 Number of XMP Response messages that have been received.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>inTraps</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 Number of XMP Trap messages that have been received.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>inSelects</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 Number of XMP Select messages that have been received.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>inInserts</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 Number of XMP Insert messages that have been received.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>inDeletes</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 Number of XMP Delete messages that have been received.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>inUpdates</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 Number of XMP Update messages that have been received.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>outGets</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 Number of XMP Get messages that have been sent.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>outSets</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 Number of XMP Set messages that have been sent.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>outResponses</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 Number of XMP Response messages that have been sent.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>outTraps</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 Number of XMP Trap messages that have been sent.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>outSelects</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 Number of XMP Select messages that have been sent.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>outInserts</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 Number of XMP Insert messages that have been sent.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>outDeletes</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 Number of XMP Delete messages that have been sent.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>outUpdates</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 Number of XMP Update messages that have been sent.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>inAuthenErrors</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 The number of times an authentication error has been generated by
 received messages.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>outAuthenErrors</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>inInformation</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 Number of XMP Information messages that have been received.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>outInformation</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 Number of XMP Information messages that have been sent.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>outErrors</objectName>
 <objectSyntax>counter</objectSyntax>
 <objectDescription>
 Running counter of the number times the errorStatus field, in outgoing 
 messages, has been set. 
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<!-- XMP agent config/install/operating parameters group -->

<mibObject>
 <objectName>xmpdVersion</objectName>
 <objectSyntax>floatingPoint</objectSyntax>
 <objectDescription>
 The version of the XMP agent engine.  This version is distinct from 
 plugin libraries which may be loaded.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>xmpdDaemonMode</objectName>
 <objectSyntax>bool</objectSyntax>
 <objectDescription>
 Boolean true if the agent is running in daemon or service mode, false if not.
 </objectDescription>
 <objectAccess>get set</objectAccess>
</mibObject>

<mibObject>
 <objectName>xmpdTrace</objectName>
 <objectSyntax>bool</objectSyntax>
 <objectDescription>
 True if the trace option is enabled, false otherwise.  This option
 enables dumping of sent/received messages to stdout.
 </objectDescription>
 <objectAccess>get set</objectAccess>
</mibObject>

<mibObject>
 <objectName>xmpdPort</objectName>
 <objectSyntax>integer</objectSyntax>
 <objectDescription>
 The TCP port that this agent is listening on.
 </objectDescription>
 <objectAccess>get set</objectAccess>
</mibObject>

<mibObject>
 <objectName>xmpdHomeDir</objectName>
 <objectSyntax>displayString</objectSyntax>
 <objectDescription>
 The directory in which the agent, config files, and plugins reside.  On
 UNIX, /opt/cartographer is often used while c:\program files\cartographer
 is the default on Windows.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>xmpdVerbose</objectName>
 <objectSyntax>integer</objectSyntax>
 <objectDescription>
 Boolean indicating if verbose logging and debugging output enabled.
 </objectDescription>
 <objectAccess>get set</objectAccess>
</mibObject>

<mibObject>
 <objectName>xmpdConfigFile</objectName>
 <objectSyntax>displayString</objectSyntax>
 <objectDescription>
 The pathname of the config file used by the agent.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>xmpdNumPlugins</objectName>
 <objectSyntax>gauge</objectSyntax>
 <objectDescription>
 The number of plugins currently loaded by the agent engine.
 </objectDescription>
 <objectAccess>get</objectAccess>
</mibObject>

<mibObject>
 <objectName>xmpdEventAgeOutInterval</objectName>
 <objectSyntax>gauge</objectSyntax>
 <objectDescription>
 How quickly, in seconds, do events age out of the agent's event table.
 </objectDescription>
 <objectAccess>get set</objectAccess>
</mibObject>

<mibObject>
 <objectName>xmpdDefaultManager</objectName>
 <objectSyntax>displayString</objectSyntax>
 <objectDescription>
 The default 'manager' that this agent will send Traps and Information messages
 to.  In the Cartographer management model, managers do not really exist.  
 However, this parameter is used so that an isolated system will sent 
 traps and information messages at least to one other system.
 </objectDescription>
 <objectAccess>get set</objectAccess>
</mibObject>

<mibObject>
 <objectName>xmpdAutoUpgrade</objectName>
 <objectSyntax>bool</objectSyntax>
 <objectDescription>
 Boolean describing if the auto upgrade feature is enabled or disabled.  If
 enabled, the agent will exchange Cartographer modules and components with
 other agents for the purpose of updating itself.
 </objectDescription>
 <objectAccess>get set</objectAccess>
</mibObject>

<!-- supported MIB objects table and columns -->

<tableObject>
<tableName>varTable</tableName>
<tableDescription>
Table containing and entry per MIB object implemented and supported 
by this agent.  This table contains a subset of the objects defined
in the MIB specification.
</tableDescription>
<tableOps>select</tableOps>
<tableKey>mibName.objName</tableKey>

 <columnObject>
  <objectName>varMibName</objectName>
  <objectSyntax>displayString</objectSyntax>
  <objectDescription>
  The name of the MIB that this particular object is contained in.  Agent
  engines may implement multiple MIBs or they may have plugins that are 
  loaded and implementing MIB specifications.
  </objectDescription>
  <objectAccess>get</objectAccess>
 </columnObject>

 <columnObject>
  <objectName>varObjName</objectName>
  <objectSyntax>displayString</objectSyntax>
  <objectDescription>
  The name of the MIB object.
  </objectDescription>
  <objectAccess>get</objectAccess>
 </columnObject>

 <columnObject>
  <objectName>varSyntax</objectName>
  <objectSyntax>displayString</objectSyntax>
  <objectDescription>
  The syntax (type) of this MIB object, in string format.
  </objectDescription>
  <objectAccess>get</objectAccess>
 </columnObject>

 <columnObject>
  <objectName>varTableName</objectName>
  <objectSyntax>displayString</objectSyntax>
  <objectDescription>
  If this MIB object is contained within a table, the name of that table
  is returned in this variable.  Otherwise, a zero-length string
  value is returned.
  </objectDescription>
  <objectAccess>get</objectAccess>
 </columnObject>

</tableObject>

<!-- loaded-plugin table -->

<tableObject>
 <tableName>pluginTable</tableName>
 <tableDescription>
 Table containing an entry for each plugin that is currently loaded by the 
 agent engine.
 </tableDescription>
 <tableOps>select</tableOps>
 <tableKey>pluginName</tableKey>

 <columnObject>
  <objectName>pluginName</objectName>
  <objectSyntax>displayString</objectSyntax>
  <objectDescription>
  The name of the plugin module.
  </objectDescription>
  <objectAccess>get</objectAccess>
 </columnObject>

 <columnObject>
  <objectName>pluginPathName</objectName>
  <objectSyntax>displayString</objectSyntax>
  <objectDescription>
  The filename of the plugin module.
  </objectDescription>
  <objectAccess>get</objectAccess>
 </columnObject>

 <columnObject>
  <objectName>pluginDescr</objectName>
  <objectSyntax>displayString</objectSyntax>
  <objectDescription>
  Description of the plugin.
  </objectDescription>
  <objectAccess>get</objectAccess>
 </columnObject>

 <columnObject>
  <objectName>pluginLoadTime</objectName>
  <objectSyntax>displayString</objectSyntax>
  <objectDescription>
  The date/time the plugin was loaded.
  </objectDescription>
  <objectAccess>get</objectAccess>
 </columnObject>

</tableObject>

<!-- module table -->

<tableObject>
 <tableName>moduleTable</tableName>
 <tableDescription>
 A list of the modules (plugins, datafiles, config files, and utilities) that
 the agent is tracking for software distribution purposes.  These files be 
 updated and distributed amongst peer agents.
 </tableDescription>
 <tableOps>select update</tableOps>
 <tableKey>moduleName</tableKey>

 <columnObject>
   <objectName>moduleName</objectName>
   <objectSyntax>displayString</objectSyntax>
   <objectDescription>
   The name of the module being tracked.
   </objectDescription>
   <objectAccess>get</objectAccess>
 </columnObject>

 <columnObject>
   <objectName>moduleVersion</objectName>
   <objectSyntax>displayString</objectSyntax>
   <objectDescription>
   The version number of the module.  Version is automatically detected 
   by the agent.  Modules that wish to export their version, for tracking, 
   contained a specially formatted string of the pattern 'KorgVersion %3.2f'
   </objectDescription>
   <objectAccess>get</objectAccess>
 </columnObject>

 <columnObject>
   <objectName>moduleOwner</objectName>
   <objectSyntax>displayString</objectSyntax>
   <objectDescription>
   The 'owner' of the module.  Since Cartographer agents can be used to 
   distribute and update many plugins, utilities, and config files, owner
   specifies the plugin or utility to which this module is associated with.
   </objectDescription>
   <objectAccess>get</objectAccess>
 </columnObject>

 <columnObject>
   <objectName>moduleDependList</objectName>
   <objectSyntax>displayString</objectSyntax>
   <objectDescription>
   A comma-separated list of modules or plugins upon which this module is
   dependent.  For example, the Cartographer plugin relies on the MIB-2
   plugin.
   </objectDescription>
   <objectAccess>get</objectAccess>
 </columnObject>

 <columnObject>
   <objectName>moduleType</objectName>
   <objectSyntax>coreModuleType</objectSyntax>
   <objectDescription>
   Type type of module as defined by enumerated integer type.  See
   XMP types schema definition.
   </objectDescription>
   <objectAccess>get</objectAccess>
 </columnObject>

 <columnObject>
   <objectName>moduleContent</objectName>
   <objectSyntax>displayString</objectSyntax>
   <objectDescription>
   </objectDescription>
   <objectAccess>get</objectAccess>
 </columnObject>

 <columnObject>
   <objectName>moduleTime</objectName>
   <objectSyntax>displayString</objectSyntax>
   <objectDescription>
   Last time this module entry was modified.
   </objectDescription>
   <objectAccess>get</objectAccess>
 </columnObject>

 <columnObject>
   <objectName>modulePendingVersion</objectName>
   <objectSyntax>displayString</objectSyntax>
   <objectDescription>
   The pending version of a new module waiting for installation.  A module
   is pending when its been downloaded by underlying agent.
   </objectDescription>
   <objectAccess>get</objectAccess>
 </columnObject>

</tableObject>

<!-- event table -->

<tableObject>
 <tableName>eventTable</tableName>
 <tableDescription>
 A table of events sent and received by this agent and plugins.
 </tableDescription>
 <tableOps>select</tableOps>
 <tableKey>eventSource eventTime eventType eventSysObjectID</tableKey>

 <columnObject>
   <objectName>eventSource</objectName>
   <objectSyntax>displayString</objectSyntax>
   <objectDescription>
   The system that the event originated from.
   </objectDescription>
   <objectAccess>get</objectAccess>
 </columnObject>

 <columnObject>
   <objectName>eventTimeStamp</objectName>
   <objectSyntax>displayString</objectSyntax>
   <objectDescription> 
   String version of time that event was received or created locally.
   </objectDescription>
   <objectAccess>get</objectAccess>
 </columnObject>

 <columnObject>
   <objectName>eventType</objectName>
   <objectSyntax>displayString</objectSyntax>
   <objectDescription>
   Event type string.
   </objectDescription>
   <objectAccess>get</objectAccess>
 </columnObject>

 <columnObject>
   <objectName>eventSysObjectID</objectName>
   <objectSyntax>displayString</objectSyntax>
   <objectDescription>
   SysobjectID of agent sending/generating the event.
   </objectDescription>
   <objectAccess>get</objectAccess>
 </columnObject>

 <columnObject>
   <objectName>eventAgeOut</objectName>
   <objectSyntax>gauge</objectSyntax>
   <objectDescription>
   Age-out interval in seconds.  After this interval has passed, the event 
   will be removed from this table.
   </objectDescription>
   <objectAccess>get</objectAccess>
 </columnObject>

 <columnObject>
   <objectName>eventPDU</objectName>
   <objectSyntax>displayString</objectSyntax>
   <objectDescription>
   A display-string copy of the actual XMP Trap/Information PDU.  Because
   the event PDU is in XML and XML documents cannot be contained in
   themselves, the PDU is Base64 encoded prior to transmission.  The receiver
   should Base64 decode this variable's value in order to recover the
   actual XMP PDU document.
   </objectDescription>
   <objectAccess>get</objectAccess>
 </columnObject>

</tableObject>

</xmpMIB>

