What Is in the Distribution Rick Landau 20090518 Copyright (c) 2008, 2009, Dell, Inc. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of the Dell, Inc., nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. What the Process Does The program in this software distribution is a translator that maps management data from one data model to another. The input management data is expressed in SNMP format; the output data is in CIM format. The purpose of this was to demonstrate a proper mapping from SNMP data from a network printer to CIM data for a CIM_Printer device. The intention of the new CIM model of a printer device was to embody the semantics of the existing PWG model of a printer device, as defined in the SNMP Printer MIB 2, Finisher MIB, and Semantic Model. If the new CIM model accurately reflects the older SNMP models, then a translation from one model to the other should be straightforward. The data may be packaged differently, but the content should be the same. Additionally, if such a translator were packaged as a CIM provider module running under a CIM Object Manager (CIMOM), say, for WMI on Windows or OpenPegasus or OpenWBEM on Linux, that translator could proxy the live management data from SNMP-based network printers to CIM-based management utilities for those same devices. The test output files here are demonstrations of the level of accuracy of such a translation. To avoid depending on the real-time availability of a variety of network printers, the translation runs from static data files that describe the state of real network printers. Program Files The program consists of a number of source code files in Python, initialization files to describe the management data, and several shell scripts to establish the environment and invoke the program. The distribution directory tree also includes sample test data representing a variety of printers. Directory Layout Directory Contents Provider Python source code, shell scripts, makefile to make a kit Provider/ini Initialization files containing tables of CIM properties, SNMP variables, and other runtime data structures Provider/dat SNMP input data for test printers Provider/docs Explanatory documentation, UML diagrams of the CIM printer device model Provider/mibs SNMP MIB definition files for printers and finishers Provider/mofs DMTF MOF definition files for printer devices