                                     C                                         WASD VMS Hypertext Services >                                          . . . read this first      !                    17th July 1998                       Supercedes:  *                      1st March 1998 (v5.0)+                      1st August 1997 (v4.3) *                      1st July, 1997 (v4.2))                      1st June 1997 (v4.1) ,                      1st January 1996 (v3.1)                      Please Note  G                    As of July 1997 High Frequency Radar Division (HFRD) F                    underwent a change of role and name. It is now WideF                    Area Surveillance Division (WASD). This package has8                    been renamed in accordance with that.                      Abstract   F                    This document is an essential read prior to furtherI                    investigating the freeware WASD VMS Hypertext Services I                    software package. It covers the version 5.0 release of E                    the WASD VMS HTTPd server and associated software.                       Author   !                    Mark G. Daniel 8                    Senior Information Technology Officer2                    Wide Area Surveillance Division>                    Defence Science and Technology Organisation  2                    Mark.Daniel@dsto.defence.gov.au  )                    +61 (8) 82596031 (bus) )                    +61 (8) 82596673 (fax)                                      PO Box 1500                    Salisbury'                    South Australia 5108                                                                                                            ii                 .                    WASD VMS Hypertext Services  8                    Copyright  1996-1998 Mark G. Daniel.  I                    This package is free software; you can redistribute it F                    and/or modify it under the terms of the GNU GeneralC                    Public License as published by the Free Software E                    Foundation; version 2 of the License, or any later                     version.   G                    This package is distributed in the hope that it will H                    be useful, but WITHOUT ANY WARRANTY; without even theG                    implied warranty of MERCHANTABILITY or FITNESS FOR A I                    PARTICULAR PURPOSE. See the GNU General Public License $                    for more details.  E                    You should have received a copy of the GNU General H                    Public License along with this package; if not, writeG                    to the Free Software Foundation, Inc., 675 Mass Ave, ,                    Cambridge, MA 02139, USA.                       Eric A. Young  B                    This package can include cryptographic softwareI                    (SSLeay) copyright by Eric Young (eric@CryptSoft.com):   ]                       This library is free for commercial and non-commercial use provided ... N                       Eric Young should be given attribution as the author ...2                       copyright notice is retained  #                    MadGoat Software   H                    For supporting non-Digital-TCP/IP (UCX) this software>                    uses the NETLIB package by Matthew Madison:  H                       permission is granted to copy and redistribute ...,                       for no commercial gain  (                    Ohio State University  G                    This package contains software provided with the OSU F                    (DECthreads) HTTP server package, authored by David                    Jones:   D                       Copyright 1994,1997 The Ohio State University.V                       The Ohio State University will not assert copyright with respectT                       to reproduction, distribution, performance and/or modificationS                       of this program by any person or entity that ensures that all U                       copies made, controlled or distributed by or for him or it bear S                       appropriate acknowlegement of the developers of this program.   N                                                                            iii                 $                    RSA Data Security  G                    This software contains code derived in part from RSA &                    Data Security, Inc:  \                       permission granted to make and use derivative works provided that suchW                       works are identified as "derived from the RSA Data Security, Inc. ]                       MD5 Message-Digest Algorithm" in all material mentioning or referencing '                       the derived work.   #                    Bailey Brown Jr.   G                    LZW compression is implemented using code derived in I                    part from the PBM suite. This code is copyright by the #                    original author:   X                       * GIF Image compression - LZW algorithm implemented with Tree type:                       *                         structure.L                       *                         Written by Bailey Brown, Jr.H                       *                         last change May 24, 1990?                       *                         file: compgif.c                        * \                       *  You may use or modify this code as you wish, as long as you mention7                       *  my name in your documentation.                       Other  G                    OpenVMS, Digital TCP/IP Services for OpenVMS, VAX C, %                    DEC C, VAX and AXP A                    are registered trademarks of Digital Equipment                     Corporation.   G                    MultiNet is a registered trademark of Cisco Systems,                     Inc.   H                    Pathway is a registered trademark of Attachmate, Inc.  H                    TCPware is a registered trademark of Process Software                    Corporation.                                    iv                       P                Contents_________________________________________________________  P                Chapter_1__Disclaimer____________________________________________      P                Chapter_2__Overview______________________________________________      P                Chapter_3__Requirements__________________________________________    P                Chapter_4__Support_______________________________________________      P                Chapter_5__GNU_General_Public_License____________________________                                                            1                                               iii                      M             Chapter__1_______________________________________________________                Disclaimer    J                As Wide Area Surveillance Division (formerly High FrequencyI                Radar Division) currently employs some useful (and in that G                sense valuable) freeware and public-domain software, its I                management has consented, in the spirit of wishing to "pay L                its dues" and encourage this environment, to make some of itsM                own, locally implemented hypertext services software available ,                to the broader VMS community.  I                The Division recognises that although having no commercial E                value, this software can never-the-less be valuable to G                other sites because of its low cost (usually media only) K                and in that it may address niche requirements not viable for K                commercial vendors. It should be emphasized that this is not J                a commercial-grade package, has not been designed with thatJ                in mind, should not be recognised as such, nor is it in anyH                way endorsed by the Wide Area Surveillance Divison or its                management.  K                This package is free software provided under the GNU General K                Public License, there is ABSOLUTELY NO WARRANTY of any kind. K                See Chapter 5. If you are not familiar with this approach to 9                licensing please take the time to read it.                   Author's Note  J                It definitely is not a commercial-grade package but I stillJ                think it works well (and am only moderately reticent to let*                others scrutinize my work)!                              N                                                                Disclaimer  1-1                     M             Chapter__2_______________________________________________________                Overview    M                This is a revision of the original freeware release read-this- I                first (version 3.1). Little has changed. I quote from that                 document:  K                " This read this first is a quick "throw-together" providing H                an introduction and some guidance for support external toM                WASD. It does not pretend to be as exhaustive as is necessary, :                but hey I'm not getting paid for this :^) "  G                This revision and it's associated documentation is still J                thrown-together, at the last minute and with even less timeM                than before. If this sounds like an apology, it's not meant to K                ... well not exactly. I would still prefer that it be better J                packaged, but it's not, and it doesn't look like it's goingK                to happen that way. So if you have to struggle a little with K                it then I'm sorry, because I don't like my jobs to be harder J                than they might be, but that's way this one is! Look on theL                optimistic side, it might (and has) worked the way you wanted*                (or at all) the first time!  K                These releases are derived from our working Web environment. H                I'm afraid this is getting a little cluttered with "junk"I                files ... dead-end software development, other Web-related I                freeware packages, Perl scripts, etc. I have tried to cull K                this as best I can but suspect there are still some lurking.                 Apologies!                   Some Background  G                The implementation of the internal hypertext environment H                started off as a Divisional management action-item, "makeJ                it easier to access information-systems-based documentationF                and other data in a multi-platform environment". GopherG                was a first and brief stop, just as the power of the WWW F                technologies was becoming obvious (mid 1994). Like manyI                others, I became impressed with the potential to integrate H                disparate data formats and platforms with the ease of the<                point-and-click functionality of the browser.  F                After evaluating the CERN (live) and an early OSU (DEC-G                threads, by documentation) servers I decided some of the F                limitations and other idiosyncracies of these warrantedI                investing a little in our own (how's that for hubris!) The   N                                                                  Overview  2-1                 J                upshot was that although the Divison provided core time andG                justification for development and implementation of this F                environment, I spent considerable of my own time on theJ                package as well. The HTTPd server's multi-threading is doneH                using VMS ASTs, and this is by far the largest AST-drivenG                system I have designed and built. In short, I found it a K                challenge, I learned a remarkable amount (particularly about M                VMS' ASTs), and gained a great deal of satisfaction from it. I G                hope its of some use to someone out there other than us.   G                Without apology, the server and its environment has been H                designed to support an intra-organisational (the industryJ                has now settled on the term Intranet) hypertext environmentI                and has been tailored to the requirements of the Wide Area F                Surveillance Divison and its VMS environment. Any otherM                usefulness is purely coincidental! All this not-with-standing, J                it should prove useful in the broader context. As mentionedF                above, it is not a commercial-grade product so a littleK                fiddling and experimentation may be required (of course none K                of us have had to fiddle around commercial packages either!)                   Documentation  K                Some documentation is provided, but again this is mainly for I                internal, Divisional support purposes. If external readers L                find it useful then that's a bonus! It is basically unalteredM                from its original, internal purpose, apart from more extensive J                author contact information, the copyright notices, and some6                small disclaimers in the introductions.  K                See the <[.DOC]> (hypertext link) directory. You should find L                HTML, Bookreader (and HyperReader), plain-text and PostScriptK                versions (all generated from SDML sources using DEC Document B                and the SDM2HTM application found in this package).  J                The "Proceedings of the Twenty-Fifth Annual DECUS AustraliaK                Symposium, 1995" contain a paper by the author summarising a K                presentation made during that event, titled "Introduction to I                World Wide Web Technologies ... what the surfboard is made M                from". Even though now (1998) every man and his dog can recite J                the Litany Of The Web I have taken the liberty of includingJ                it for informational purposes, in PostScript format, in theJ                <[.DOC.MISC]> (hypertext link) directory. It documents someL                of the uses WASD (HFRD) has made of the hypertext environmentI                from late 1994, and although the technology content is now J                (1998) definitely getting dated it could still be useful if,                only for historical purposes!                   2-2  Overview                                  CGIplus  F                A major revision and improvement under v4.2 was made toG                the DCL module. This provides some SSI functionality but J                more importantly CGI scripting. The scripting mechanism hasG                been redesigned to support persistant-subprocesses. This I                improves script response time (200-300%) and significantly I                reduces the system impact. In addition, the development of L                CGIplus provides the capability to enhance CGI scripting, andK                further improve response latency (another 200-300%). This is 4                documented in the technical overview.  0                WASD HTTPd Has Spread It's Wings!  L                The WASD server supports Digital TCP/IP Services (UCX) with a                native image.  J                As of v4.3, and using the excellent MadGoat Software NETLIBB                package, this server can also (potentially) support  ;                o  PathWay from Attachmate Inc., any version   H                o  TCPware from Process Software Corporation, any version  9                o  Cisco MultiNet for OpenVMS, any version   L                o  CMU TCP/IP (VAX only) v6.5 or later is not supported! (too=                   much variation from mainstream IP packages)   K                NETLIB requires VAX/VMS v5.2 or later, or OpenVMS Alpha v1.5                 or later.  L                NETLIB must be obtained and installed separately. This is notI                a difficult job for there is an excellent VMSINSTAL-driven .                installation and configuration.  M                The WASD NETLIB support was developed using v2.1, which may beV?                obtained from http://www.madgoat.com/netlib.html.  -                ftp://ftp.madgoat.com/madgoat/t  K                The NETLIB support within the WASD server is tested in-househJ                using the Digital TCP/IP Services package via NETLIB. Other@                TCP/IP packages may or may not perform as tested.                  SSL and Privacy  I                The provision of SSL with v5.0 has greatly enhanced WASD'sfE                potential uses. Not longer is the transmission of userdG                identification and password a major concern, meaning the E                server administration menu becomes viable, even across J                extended networks, and the use of SYSUAF authentication and>                user profiles become less fraught with concern.  N                                                                  Overview  2-3                 &                Swan-Song ... Prospects  J                With the advent of good commercial HTTP servers for VMS theC                need for a package such as this diminishes somewhat.   M                During 1997 my role with respect to VMS underwent some change,dM                as is the general role of VMS within IT. Certainly I will have K                much less to do with VMS in the future. Whether VMS has much L                less to do within IT seems likely but has not yet culminated.  -                Swan-Song ... Perhaps Not Yet!5  D                Hmmm, this section is beginning to ramble a bit . . .  G                It's now 1998 and over the year-end an OSU-emulation for E                scripting has been introduced (but yet to be proved in D                the field) and the promised security and privacy of aD                Secure Sockets Layer implemented using SSLeay v0.8.1.J                Other "improvements" to the internals of the HTTPd was alsoE                undertaken (releasing a small swarm of bugs no doubt).h  M                I still seem to be spending too much of my spare time with the,L                WASD package, encouraged by positive feedback on it. However,I                more of this must be spent elsewhere. The package has beenuI                good to me over the last four years, teaching a great dealtI                more about VMS, and the C Programming Language, and event-SJ                driven code. The package has proved to be invaluable in ourK                VMS environment, and continues providing the backbone of our                 Web environment.l                  Feedbacko  I                It would be interesting to know who is using what parts ofAM                this package and where. If you find it of use could you please.L                make a moment to drop an e-mail (or even snail-mail) listing:                  o  name  *                o  organisation and address                   o  e-mail address  J                o  components and version of WASD VMS Hypertext Services in                   useo  I                o  platform(s) (AXP/VAX, VMS version, network software ando                   version)  $                o  any other comments  E                This information will be confidential. I may use it to H                feedback to you any monumental changes in the package :^)                With thanks.o               2-4  Overview                  :                <E-Mail me now!> (hypertext mailto: anchor)                                                                                                  N                                                                  Overview  2-5                     M             Chapter__3_______________________________________________________                Requirements    E                "Out-of-the-box" the package executes using DEC TCP/IPsH                Services or other UCX compatible emulation (e.g. TCPware)H                under VMS 6.0, 6.1, 6.2 and 7.1 It will also execute withJ                other TCP/IP packages supported by MadGoat NETLIB (see WASD-                HTTPd Has Spread It's Wings!).h  D                The software was originally written in a VAX C (v3.2)E                and later DEC C (v5.n) environments, under VMS 6.n. No J                consideration has been given to any other environments. TheG                DEC C run-time environment is prefered to the VAX C run- J                time environment because the former's greater integrity and4                improved performance over the latter.                  NO EXECUTABLESS  H                Previous releases of the package provided executables. InI                an effort to make the package more universal and easier to H                distribute and maintain only object code is now provided.G                To ease installation and updates relevant procedures HT_tF                ROOT:[000000]INSTALL.COM and HT_ROOT:[000000]UPDATE.COMJ                are provided. After the package is unzipped the appropriateL                procedure must be run to create the required executables. See5                the Technical Overview for the detail.   F                For VAX systems there may be an incompatibility for VMSJ                versions prior to 6.2, as noted in the Open VMS Version 6.2                Release Notes:   2                   4.5.2.2  DECC$SHR.EXE (VAX Only)                     V6.2  I                   A new package of internationalization routines has beennM                   added to the DEC C RTL (see Section 4.5.1.3) and the trans-/P                   fer vector has been extended, necessitating an increase in theL                   minor ident (GSMATCH) of the image.  Because of this, pro-D                   grams using the DEC C RTL (DECC$SHR.EXE) linked onG                   OpenVMS VAX Version 6.2 systems will not run on priorw*                   versions of OpenVMS VAX.  K                If your VAX site does not support the DEC C compiler or run-eG                time environment (check here for the run-time, shareable H                image: <SYS$COMMON:[SYSLIB]DECC$SHR.EXE> (hypertext link)I                ), the run-time components alone can be installed and used_  N                                                              Requirements  3-1 _  _            G                without additional licensing. This is a simple and short_J                duration exercise. The DEC C/C++ Run-Time Components kit isM                available on the Digital consolidated distribution CD-ROM. SeerH                comments in the <[.AACRT060]> (hypertext link) directory.  1                                              Note     D                      Needless-to-say (but I will anyway), the serverF                      requires a privileged environment (either account3                      or image) in which to execute.e                  NETLIB Supporte  F                NETLIB must be installed separately. The package may be@                obtained from: http://www.madgoat.com/netlib.html  -                ftp://ftp.madgoat.com/madgoat/g                  Building   J                As the software has been written to the requirements of DECH                C (in an uncritical, VAXC-backward-compatible compilationJ                mode, i.e. /STANDARD=VAXC (when moving from VAXC C to DEC CM                the author discovered he wasn't the rigorous software engineer K                he had hoped he was :^)) its build and run-time behaviour in <                other compiler environments is unpredictable.  I                All applications are linked against the DEC C DECC$SHR.EXElK                RTL. The DEC C run-time environment is prefered to the VAX CiJ                run-time environment because the former's greater integrity8                and improved performance over the latter.  I                Brute-force build procedures are provided in each softwarelC                application source directory. They are named "BUILD_iF                whatever.COM". All package applications may be build orI                linked using the procedures HT_ROOT:[SRC]BUILD_ALL.COM and (                HT_ROOT:[SRC]LINK_ALL.COM                                     3-2  Requirementss a  t                M             Chapter__4_______________________________________________________o               Supportb    K                The WASD VMS hypertext services have become an integral com-oL                ponent of the Wide Area Surveillance Division's documentationI                access strategy. During the three years of its development M                the environment has also achieved a high degree of integration_L                of available documentation and software resources for the VMS9                user and software development environment.   L                Although always in need of further development and refinementM                the level of functionality meets the Division's current intra--H                organisational hypertext environment requirements, and soK                it will not be driving any further significant (foreseeable)s:                developments (see Swan-Song ... Prospects).  D                This not-with-standing, the author may, if demand, orG                requirements, or inclination arises, further develop theiJ                package, either by refining the existing server or scripts,@                or by adding additional functionality or scripts.  G                Investigation of bug reports/fixes and implementation ofiH                additional functionality will be completely contingent onK                its impact or relevance to WASD's use of or desirability forsL                the instance in question. Anything other than this would needH                to be done in the author's own time and therefore is also/                contingent on the circumstances.d  G                The author welcomes bug reports (I don't really) and anyeG                other feedback or comments, particularly if they are notiK                too damaging to his fragile ego. E-mail is preferable. EveryaI                effort will be made to respond, as is possible at the timekH                (sooner better than later), but no guarantees. For a more8                formal request see Feedback in Chapter 2.  H                Of course, because this package is free software providedK                under the GNU General Public License, there is ABSOLUTELY NOd3                WARRANTY of any kind. See Chapter 5.                 N                                                                   Support  4-1 d                   M             Chapter__5_______________________________________________________e  &             GNU General Public License        >                                     GNU GENERAL PUBLIC LICENSE;                                        Version 2, June 1991   H                  Copyright (C) 1989, 1991 Free Software Foundation, Inc.P                                           675 Mass Ave, Cambridge, MA 02139, USAM                  Everyone is permitted to copy and distribute verbatim copiesaJ                  of this license document, but changing it is not allowed.  4                                             Preamble  O                   The licenses for most software are designed to take away your T                 freedom to share and change it.  By contrast, the GNU General PublicV                 License is intended to guarantee your freedom to share and change freeT                 software--to make sure the software is free for all its users.  ThisK                 General Public License applies to most of the Free SoftwareeV                 Foundation's software and to any other program whose authors commit toV                 using it.  (Some other Free Software Foundation software is covered byU                 the GNU Library General Public License instead.)  You can apply it to #                 your programs, too.a  R                   When we speak of free software, we are referring to freedom, notV                 price.  Our General Public Licenses are designed to make sure that youV                 have the freedom to distribute copies of free software (and charge forU                 this service if you wish), that you receive source code or can get it T                 if you want it, that you can change the software or use pieces of itP                 in new free programs; and that you know you can do these things.  R                   To protect your rights, we need to make restrictions that forbidV                 anyone to deny you these rights or to ask you to surrender the rights.W                 These restrictions translate to certain responsibilities for you if youeG                 distribute copies of the software, or if you modify it.s  R                   For example, if you distribute copies of such a program, whetherU                 gratis or for a fee, you must give the recipients all the rights thatsT                 you have.  You must make sure that they, too, receive or can get theS                 source code.  And you must show them these terms so they know their                  rights.   X                   We protect your rights with two steps: (1) copyright the software, andT                 (2) offer you this license which gives you legal permission to copy,6                 distribute and/or modify the software.  N                                                GNU General Public License  5-1    L            V                   Also, for each author's protection and ours, we want to make certainQ                 that everyone understands that there is no warranty for this free X                 software.  If the software is modified by someone else and passed on, weW                 want its recipients to know that what they have is not the original, soeW                 that any problems introduced by others will not reflect on the originale%                 authors' reputations.   P                   Finally, any free program is threatened constantly by softwareS                 patents.  We wish to avoid the danger that redistributors of a freeIV                 program will individually obtain patent licenses, in effect making theU                 program proprietary.  To prevent this, we have made it clear that anyhW                 patent must be licensed for everyone's free use or not licensed at all.l  P                   The precise terms and conditions for copying, distribution and$                 modification follow.  >                                     GNU GENERAL PUBLIC LICENSER                    TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION  U                   0. This License applies to any program or other work which containssT                 a notice placed by the copyright holder saying it may be distributedV                 under the terms of this General Public License.  The "Program", below,U                 refers to any such program or work, and a "work based on the Program"hT                 means either the Program or any derivative work under copyright law:Q                 that is to say, a work containing the Program or a portion of it,vT                 either verbatim or with modifications and/or translated into anotherV                 language.  (Hereinafter, translation is included without limitation inO                 the term "modification".)  Each licensee is addressed as "you".   T                 Activities other than copying, distribution and modification are notP                 covered by this License; they are outside its scope.  The act ofV                 running the Program is not restricted, and the output from the ProgramN                 is covered only if its contents constitute a work based on theQ                 Program (independent of having been made by running the Program).NF                 Whether that is true depends on what the Program does.  Q                   1. You may copy and distribute verbatim copies of the Program'siO                 source code as you receive it, in any medium, provided that youeS                 conspicuously and appropriately publish on each copy an appropriatesP                 copyright notice and disclaimer of warranty; keep intact all theV                 notices that refer to this License and to the absence of any warranty;S                 and give any other recipients of the Program a copy of this License '                 along with the Program.a  U                 You may charge a fee for the physical act of transferring a copy, and W                 you may at your option offer warranty protection in exchange for a fee.l  U                   2. You may modify your copy or copies of the Program or any portiondM                 of it, thus forming a work based on the Program, and copy and R                 distribute such modifications or work under the terms of Section 1K                 above, provided that you also meet all of these conditions:e  +             5-2  GNU General Public License                  S                     a) You must cause the modified files to carry prominent notices R                     stating that you changed the files and the date of any change.  V                     b) You must cause any work that you distribute or publish, that inS                     whole or in part contains or is derived from the Program or anyeU                     part thereof, to be licensed as a whole at no charge to all third <                     parties under the terms of this License.  T                     c) If the modified program normally reads commands interactivelyN                     when run, you must cause it, when started running for suchT                     interactive use in the most ordinary way, to print or display anP                     announcement including an appropriate copyright notice and aV                     notice that there is no warranty (or else, saying that you provideQ                     a warranty) and that users may redistribute the program under U                     these conditions, and telling the user how to view a copy of thisrR                     License.  (Exception: if the Program itself is interactive butT                     does not normally print such an announcement, your work based onJ                     the Program is not required to print an announcement.)  M                 These requirements apply to the modified work as a whole.  If T                 identifiable sections of that work are not derived from the Program,R                 and can be reasonably considered independent and separate works inS                 themselves, then this License, and its terms, do not apply to thoseeR                 sections when you distribute them as separate works.  But when youU                 distribute the same sections as part of a whole which is a work basedaU                 on the Program, the distribution of the whole must be on the terms oftQ                 this License, whose permissions for other licensees extend to the Y                 entire whole, and thus to each and every part regardless of who wrote it.   U                 Thus, it is not the intent of this section to claim rights or contest U                 your rights to work written entirely by you; rather, the intent is to O                 exercise the right to control the distribution of derivative oro6                 collective works based on the Program.  V                 In addition, mere aggregation of another work not based on the ProgramU                 with the Program (or with a work based on the Program) on a volume ofrT                 a storage or distribution medium does not bring the other work under*                 the scope of this License.  T                   3. You may copy and distribute the Program (or a work based on it,U                 under Section 2) in object code or executable form under the terms of V                 Sections 1 and 2 above provided that you also do one of the following:  T                     a) Accompany it with the complete corresponding machine-readableV                     source code, which must be distributed under the terms of Sections\                     1 and 2 above on a medium customarily used for software interchange; or,  R                     b) Accompany it with a written offer, valid for at least threeR                     years, to give any third party, for a charge no more than yourQ                     cost of physically performing source distribution, a completeCQ                     machine-readable copy of the corresponding source code, to bemU                     distributed under the terms of Sections 1 and 2 above on a mediumrB                     customarily used for software interchange; or,  N                                                GNU General Public License  5-3 a  t            U                     c) Accompany it with the information you received as to the offersR                     to distribute corresponding source code.  (This alternative isO                     allowed only for noncommercial distribution and only if you T                     received the program in object code or executable form with suchA                     an offer, in accord with Subsection b above.)   S                 The source code for a work means the preferred form of the work foreT                 making modifications to it.  For an executable work, complete sourceT                 code means all the source code for all modules it contains, plus anyO                 associated interface definition files, plus the scripts used toaV                 control compilation and installation of the executable.  However, as aO                 special exception, the source code distributed need not includexQ                 anything that is normally distributed (in either source or binaryfT                 form) with the major components (compiler, kernel, and so on) of theT                 operating system on which the executable runs, unless that component2                 itself accompanies the executable.  P                 If distribution of executable or object code is made by offeringP                 access to copy from a designated place, then offering equivalentL                 access to copy the source code from the same place counts asR                 distribution of the source code, even though third parties are notH                 compelled to copy the source along with the object code.  T                   4. You may not copy, modify, sublicense, or distribute the ProgramM                 except as expressly provided under this License.  Any attempt R                 otherwise to copy, modify, sublicense or distribute the Program isV                 void, and will automatically terminate your rights under this License.T                 However, parties who have received copies, or rights, from you underT                 this License will not have their licenses terminated so long as such2                 parties remain in full compliance.  T                   5. You are not required to accept this License, since you have notT                 signed it.  However, nothing else grants you permission to modify orR                 distribute the Program or its derivative works.  These actions areS                 prohibited by law if you do not accept this License.  Therefore, byCO                 modifying or distributing the Program (or any work based on theeT                 Program), you indicate your acceptance of this License to do so, andS                 all its terms and conditions for copying, distributing or modifying 1                 the Program or works based on it.   U                   6. Each time you redistribute the Program (or any work based on thekQ                 Program), the recipient automatically receives a license from theeV                 original licensor to copy, distribute or modify the Program subject toK                 these terms and conditions.  You may not impose any further V                 restrictions on the recipients' exercise of the rights granted herein.T                 You are not responsible for enforcing compliance by third parties to                 this License.b      +             5-4  GNU General Public Licenser H  O            U                   7. If, as a consequence of a court judgment or allegation of patent T                 infringement or for any other reason (not limited to patent issues),S                 conditions are imposed on you (whether by court order, agreement or V                 otherwise) that contradict the conditions of this License, they do notN                 excuse you from the conditions of this License.  If you cannotV                 distribute so as to satisfy simultaneously your obligations under thisV                 License and any other pertinent obligations, then as a consequence youP                 may not distribute the Program at all.  For example, if a patentV                 license would not permit royalty-free redistribution of the Program byU                 all those who receive copies directly or indirectly through you, then S                 the only way you could satisfy both it and this License would be to B                 refrain entirely from distribution of the Program.  U                 If any portion of this section is held invalid or unenforceable undernV                 any particular circumstance, the balance of the section is intended toN                 apply and the section as a whole is intended to apply in other                 circumstances.  S                 It is not the purpose of this section to induce you to infringe any T                 patents or other property right claims or to contest validity of anyP                 such claims; this section has the sole purpose of protecting theL                 integrity of the free software distribution system, which isO                 implemented by public license practices.  Many people have madeeP                 generous contributions to the wide range of software distributedQ                 through that system in reliance on consistent application of thatbV                 system; it is up to the author/donor to decide if he or she is willingU                 to distribute software through any other system and a licensee cannot #                 impose that choice.   U                 This section is intended to make thoroughly clear what is believed tos=                 be a consequence of the rest of this License.s  S                   8. If the distribution and/or use of the Program is restricted iniU                 certain countries either by patents or by copyrighted interfaces, the S                 original copyright holder who places the Program under this LicenserR                 may add an explicit geographical distribution limitation excludingS                 those countries, so that distribution is permitted only in or among U                 countries not thus excluded.  In such case, this License incorporates I                 the limitation as if written in the body of this License.r  Y                   9. The Free Software Foundation may publish revised and/or new versionsgX                 of the General Public License from time to time.  Such new versions willX                 be similar in spirit to the present version, but may differ in detail to1                 address new problems or concerns.   V                 Each version is given a distinguishing version number.  If the ProgramW                 specifies a version number of this License which applies to it and "any Y                 later version", you have the option of following the terms and conditions T                 either of that version or of any later version published by the FreeY                 Software Foundation.  If the Program does not specify a version number ofs\                 this License, you may choose any version ever published by the Free Software                 Foundation.o  N                                                GNU General Public License  5-5 )  o            U                   10. If you wish to incorporate parts of the Program into other free Y                 programs whose distribution conditions are different, write to the authornU                 to ask for permission.  For software which is copyrighted by the FreecX                 Software Foundation, write to the Free Software Foundation; we sometimesW                 make exceptions for this.  Our decision will be guided by the two goals Y                 of preserving the free status of all derivatives of our free software andoI                 of promoting the sharing and reuse of software generally.   7                                             NO WARRANTY   Z                   11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTYX                 FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHENV                 OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIESZ                 PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSEDT                 OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OFY                 MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK ASeV                 TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THEX                 PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,%                 REPAIR OR CORRECTION.i  [                   12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING S                 WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR Z                 REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,[                 INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISINGaY                 OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITEDsX                 TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BYZ                 YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHERU                 PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE ,                 POSSIBILITY OF SUCH DAMAGES.  @                                      END OF TERMS AND CONDITIONS                                      +             5-6  GNU General Public License 