END-USER LICENSE AGREEMENT FOR PAUL BUNYAN® MESSAGE LOGGING SOFTWARE
IMPORTANT—READ CAREFULLY: This Diamond Sierra End-User License Agreement ("EULA") is a legal agreement between you (either an individual or a single entity) and Diamond Sierra for the Diamond Sierra software product identified above, which includes computer software and may include associated media, printed materials, and "online" or electronic documentation ("SOFTWARE PRODUCT"). The term "SOFTWARE PRODUCT" shall also include any upgrades, modified versions or updates of the Software licensed to you by Diamond Sierra . By installing, copying, or otherwise using the SOFTWARE PRODUCT, you agree to be bound by all of the terms and conditions of this EULA. If you do not agree to be bound by all of the terms and conditions of this EULA, you are not authorized to install or use the SOFTWARE PRODUCT.
SOFTWARE PRODUCT LICENSE
The SOFTWARE PRODUCT is protected by copyright laws and international copyright treaties, as well as other intellectual property laws and treaties. The SOFTWARE PRODUCT is licensed, not sold.
1 - GRANT OF LICENSE
Upon your acceptance of this EULA, Diamond Sierra grants the following limited, non-exclusive rights:
You may install and use one copy of the SOFTWARE PRODUCT, or any prior version thereof, on a single computer.
The SOFTWARE PRODUCT is licensed as a single product. Its component parts may not be separated for use on more than one computer.
You may also store or install a copy of the SOFTWARE PRODUCT on a storage device, such as a network server, used only to install or run the SOFTWARE PRODUCT on your other computers over an internal network; however, you must acquire and dedicate a license for each separate computer on which the SOFTWARE PRODUCT is installed or run from the storage device. A license for the SOFTWARE PRODUCT may not be shared or used concurrently on different computers.
You may copy and redistribute the SOFTWARE PRODUCT in whole or in part subject to the distribution requirements described below and the technical requirements specified in the “Redistribution” appendix of the help file, PB.hlp. You must review the Redistribution appendix before you exercise any of the rights described therein. If you do not agree to all of the terms and conditions described in the Redistribution appendix and to the distribution requirements described below, you are not authorized to use or redistribute any of the files. Note that this requirement applies only to redistribution and does not pertain to simply installing and using the SOFTWARE PRODUCT.
You may copy and redistribute the SOFTWARE PRODUCT as described above provided that: (a) you agree to indemnify, hold harmless, and defend Diamond Sierra from and against any claims or lawsuits, including attorneys’ fees, that arise or result from the use or distribution of your Application; (b) you and your distributors comply with all other terms of this EULA; and (c) your end users comply with all other terms of this EULA.
Diamond Sierra reserves all rights not expressly granted to you. Except as stated above, this license does not grant you any rights to patents, copyrights, trade secrets, trade names or trademarks (whether registered or not), or any other rights, franchises or licenses with respect to the program. Diamond Sierra may update or revise the program or documentation, but is not required to furnish you the updates or revisions. Diamond Sierra and its suppliers, retain title and ownership of all copies of the program.
2 - DESCRIPTION OF OTHER RIGHTS AND LIMITATIONS
You may not modify, adapt, translate, reverse engineer, decompile, disassemble, or otherwise attempt to discover the source code or internal algorithms of the SOFTWARE PRODUCT, except and only to the extent that such activity is expressly permitted by applicable law notwithstanding this limitation.
You may not use any functionality of the SOFTWARE PRODUCT (e.g. the exporting of data) to make or assist in the making of any derivative works or competing software products.
You may not rent, lease, lend, or grant rights in the SOFTWARE PRODUCT to others.
Diamond Sierra may provide you with support services related to the SOFTWARE PRODUCT ("Support Services"). Any supplemental software code provided to you as part of the Support Services shall be considered part of the SOFTWARE PRODUCT and subject to the terms and conditions of this EULA. With respect to any information you provide to Diamond Sierra as part of the Support Services, Diamond Sierra may use such information for its business purposes, including product support and development, provided such information is (i) not confidential or proprietary to you; or (ii) you furnish express written authorization allowing its use. Diamond Sierra will not utilize such information in a form that personally identifies you.
You may permanently transfer all of your rights under this EULA, provided you retain no copies, you transfer all of the SOFTWARE PRODUCT (including all component parts, the media and printed materials, any upgrades, and this EULA), you provide Diamond Sierra. notice of your name, company, and address and the name, company, and address of the person or entity to whom you are transferring the rights granted herein, and the recipient agrees to the terms of this EULA. If the SOFTWARE PRODUCT is an upgrade, any transfer must include all prior versions of the SOFTWARE PRODUCT.
Without prejudice to any other rights, this EULA shall automatically terminate if you fail to comply with the terms and conditions of this EULA. In such event, you must destroy all copies of the SOFTWARE PRODUCT and all of its component parts.
3 - UPGRADES
If the SOFTWARE PRODUCT is sold as an upgrade, you must be properly licensed to use a product identified by Diamond Sierra as being eligible for the upgrade in order to use the SOFTWARE PRODUCT. A SOFTWARE PRODUCT identified as an upgrade replaces and/or supplements the product that formed the basis for your eligibility for the upgrade. You may use the resulting upgraded product only in accordance with the terms of this EULA.
4 - COPYRIGHT
You accept that all title and copyrights in and to the SOFTWARE PRODUCT (including but not limited to any images, photographs, animations, video, audio, music, text, and "applets" incorporated into the SOFTWARE PRODUCT), the accompanying printed materials, and any copies of the SOFTWARE PRODUCT are owned by Diamond Sierra or its suppliers. The SOFTWARE PRODUCT is protected by copyright laws and international treaty provisions.
5 - EXPORT RESTRICTIONS
You agree that neither you nor your customers intend to or will, directly or indirectly, export or transmit the SOFTWARE PRODUCT or related documentation and technical data to any country, or use it in any manner, restricted by any applicable U.S. regulation or statute, without the prior written consent, if required, of the Bureau of Export Administration of the U.S. Department of Commerce, or such other governmental entity as may have jurisdiction over such export, transmission, or usage.
6 - U.S. GOVERNMENT RESTRICTED RIGHTS
The SOFTWARE PRODUCT and documentation are provided with RESTRICTED RIGHTS. Use, duplication, or disclosure by the Government is subject to restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in Technical Data and Computer Software clause at DFARS 252.227-7013 or subparagraphs (c)(1) and (2) of the Commercial Computer Software—Restricted Rights at 48 CFR 52.227-19, as applicable. Manufacturer is Diamond Sierra/23081 Woodland Road/Lakeville, MN 55044.
WARRANTY AND LIABILITY
LIMITED WARRANTY
Diamond Sierra warrants that the SOFTWARE PRODUCT will perform substantially in accordance with the accompanying documentation for a period of ninety (90) days from the date of purchase and that Diamond Sierra support engineers will make commercially reasonable efforts to solve any problem issues. Notwithstanding this Limited Warranty, Diamond Sierra warrants that the SOFTWARE PRODUCT will operate in accordance with Schedule 1, YEAR 2000. Some states and jurisdictions do not allow limitations on duration of an implied warranty, so the above limitation may not apply to you. To the extent allowed by applicable law, implied warranties on the SOFTWARE PRODUCT, if any, are limited to ninety (90) days.
CUSTOMER REMEDIES
Diamond Sierra’s and its suppliers' entire liability and your exclusive remedy shall be, at Diamond Sierra's option, either (a) return of the price paid, if any, or (b) repair or replacement of the SOFTWARE PRODUCT that does not meet Diamond Sierra's Limited Warranty. This Limited Warranty is void if failure of the SOFTWARE PRODUCT has resulted from accident, abuse, or misapplication. Any replacement SOFTWARE PRODUCT will be warranted for the remainder of the original warranty period or thirty (30) days, whichever is longer.
NO OTHER WARRANTIES
To the maximum extent permitted by applicable law, Diamond Sierra and its suppliers disclaim all other warranties and conditions, either express or implied, including, but not limited to, implied warranties of merchantability, fitness for a particular purpose, title, and non-infringement, with regard to the SOFTWARE PRODUCT, and the provision of or failure to provide support services. This limited warranty gives you specific legal rights. You may have others, which vary from state/jurisdiction to state/jurisdiction.
LIMITATION OF LIABILITY
Diamond Sierra’s entire liability and your exclusive remedy under this EULA shall not exceed the amount actually paid by you for the SOFTWARE PRODUCT. Because some states and jurisdictions do not allow the exclusion or limitation of liability, the above limitation may not apply to you.
NO LIABILITY FOR CONSEQUENTIAL DAMAGES
To the maximum extent permitted by applicable law, in no event shall Diamond Sierra or its suppliers be liable for any special, incidental, indirect, or consequential damages whatsoever (including, without limitation, damages for loss of business profits or savings, business interruption, loss of business information, or any other pecuniary loss) arising out of the use of or inability to use the SOFTWARE PRODUCT or the provision of or failure to provide support services, even if Diamond Sierra has been advised of the possibility of such damages, or for any claim by any third party; the entire risk arising out of use or performance of the SOFTWARE PRODUCT remains with you. Because some states and jurisdictions do not allow the exclusion or limitation of liability, the above limitation may not apply to you.
MISCELLANEOUS
This EULA will be governed by the laws of the State of Minnesota, U.S.A. Any action brought for breach of or to construe or enforce any of the provisions of this EULA shall be brought and maintained in the State of Minnesota or in the Federal court located in Minneapolis, Minnesota. In the event that you fail in such action, Diamond Sierra shall be entitled to receive from you, upon demand, an amount equal to all reasonable attorneys’ fees and costs incurred. Any provision held to be unenforceable will be enforced to the maximum extent possible, and all remaining provisions shall remain in full force and effect. Failure or delay in enforcement of any terms or conditions of this EULA shall not be deemed a waiver of any right.
THIS EULA CONSTITUTES THE COMPLETE AND EXCLUSIVE STATEMENT OF THE AGREEMENT BETWEEN YOURSELF AND Diamond Sierra WHICH SUPERSEDES ANY PROPOSAL OR PRIOR AGREEMENT, ORAL OR WRITTEN, AND ANY OTHER COMMUNICATIONS RELATING TO THE SUBJECT MATTER OF THIS LICENSE. NO AMENDMENT TO THIS EULA SHALL BE EFFECTIVE UNLESS IT IS IN WRITTEN FORM AND IS DATED AND SIGNED BY A DULY AUTHORIZED REPRESENTATIVE OF Diamond Sierra.
Should you have any questions concerning this EULA, or if you desire to contact Diamond Sierra for any reason, write: Diamond Sierra/23081 Woodland Road/Lakeville, MN 55044.
SCHEDULE 1: YEAR 2000
Introduction
Since Paul Bunyan is a new product written entirely in the late 1990's, there is no reason to expect it would have any year 2000 limitations. Nevertheless it will not suffer from a little examination. This document first outlines the areas of concern, then details the methods used to ensure compliance.
Use of Dates in Paul Bunyan
Paul Bunyan creates and manipulates log messages. Each message is assigned a time stamp at the time of its creation. Local time zone information for the machine on which the message is generated is also stored. These time stamps can be displayed in the viewer component in a configurable manner. In addition, filter objects can be created containing date and time criteria to determine routing of log messages. Finally, log messages may be passed to custom message handlers through a COM interface.
Internal Date/Time Representation
All dates are stored, transmitted, and manipulated by Paul Bunyan using the Win32 FILETIME structure. This structure stores the date and time as a 64 bit integer representing the number of 100 nanosecond intervals elapsed since January 1, 1601, and so extends well past the year 2000. Time zone information is stored in a 16 bit integer as the number of minutes offset from coordinated universal time.
Date/Time Interfaces
There are two distinct interfaces where Paul Bunyan exchanges dates with the outside world.
Through the message handler interface, log messages containing time stamps are passed through COM to custom code. Dates are passed using a 64 bit integer, equivalent to the internal representation using the Win32 FILETIME structure.
Dates also need to be represented through the user interface. In this case, the Microsoft Foundation Class's COleDateTime class is used to convert dates between the internal representation and a user-readable format. In this class the date and time is represented as a double precision floating point value measuring days from midnight, 12/30/1899. Dates from 1/1/100 through 12/31/9999 can be handled by this class, but since dates must be convertible to the FILETIME format, dates before 1601 are not allowed. Display of log message time stamps is fully customizable; the year can be displayed using two digits or four. User input of dates for filtering is also flexible. Dates can be input using two digit or four digit years; in the case of two digit input, years are assumed to be in the range 1930 - 2029.
Summary
Paul Bunyan Logging System was designed with Y2K issues in mind. All representation and manipulation of dates is done using Y2K compliant data types and interface methods. The product leverages on existing Microsoft implementations to ensure compatibility and extensibility.