DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Rational R1000/400

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦207ff8fd4⟧ TextFile

    Length: 305229 (0x4a84d)
    Types: TextFile
    Notes: R1k Text-file segment

Derivation

└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
    └─ ⟦5a81ac88f⟧ »Space Info Vol 1« 
        └─⟦7a38f6b77⟧ 
            └─⟦this⟧ 

TextFile




        




















                   Rational Environment Release Information

                               Release D_12_6_5
































        \f




        





       Copyright  1992 by Rational



       Part Number: 508-003207-006

       May 1992 (Software Release D_12_6_5)
















       IBM is a registered trademark and RISC System/6000 is a trademark
       of International Business Machines Corporation.

       PostScript is a registered trademark of Adobe Systems
       Incorporated.

       Rational and R1000 are registered trademarks and Rational
       Environment is a trademark of Rational.

       Sun Workstation is a registered trademark of Sun Microsystems,
       Inc.

       UNIX is a registered trademark of UNIX System Laboratories, Inc.







                                   Rational
                             3320 Scott Boulevard
                      Santa Clara, California  95054-3197
        \f


                                                        Release D_12_6_5


       1.  Overview

       The D_12_6_5 release of the Rational Environment is primarily a
       maintenance release that:

       *  Fixes a large number of problems from previous releases,
          enabling existing commands to work correctly. Some of these
          fixes introduce new features (see section 6); other fixes
          involve changed features (see section 7).

          Efforts to fix problems have been focused in:

          -  System reliability.

             Several problems that could cause the Environment to crash
             have been fixed; and the Environment has been made more
             robust in many (previously fatal) error conditions.

          -  The Ada compilation system.

             In select cases, some changes may cause code that used to
             compile to no longer compile. For details, see section 7.6.

       *  Changes the default value of the
          R1000_Cg.Retain_Delta1_Compatibility library switch (from True
          to False) so that, by default, the R1000 code generator takes
          advantage of numerous features and bug fixes introduced in the
          D_12_1_1 compiler. These features and bug fixes may cause the
          code generator to emit code that is not compatible with
          releases prior to D_12_1_1; see section 7.7.

       *  Introduces various new Environment interfaces, including:

          -  New procedures and functions in packages Access_List_Tools,
             System_Maintenance, and Dfs; see sections 6.1, 6.2, and
             6.3.

          -  A new world (!Machine.Login_Policy), in which you can place
             subprograms and files that control login policies and
             messages; see section 6.4.

          -  A new subsystem (!Tools.Telnet_Tools), which provides tools
             for writing programs that use the Environment's networking
             facilities; see section 6.5.

       *  Delivers the Documentation Tools, Rational X Interface (RXI),
          and Rational Windows Interface (RWI) products with the
          standard Environment. Product authorization tokens are no
          longer required to use these products. See sections 3 and
          7.14.

       *  Introduces three expanded and up-to-date volumes of the
          Rational Environment Reference Manual:

          -  Volume 4: Session and Job Management (SJM)

       RATIONAL     May 1992                                           1\f

       Rational Environment Release Information


          -  Volume 5: Library Management (LM)

          -  Volume 10: System Management Utilities (SMU)

          New online help is also provided for each of the packages
          described in these books; see section 8.

       Note: This release information can be found in the
       !Machine.Release.Release_Notes world in line-printer
       (Environment_Release12_6_5_Lpt) and PostScript
       (Environment_Release12_6_4_Ps) formats.


       2.  Supported Configurations and Upgrades

       D_12_6_5 supports the following configurations of the R1000:

       *  Series 100

       *  Series 200 (Models 10, 20, and 40)

       *  Series 300 System (300S)

       *  Series 300 Coprocessor (300C) for the IBM RISC System/6000
          and Sun Workstation servers

       *  Series 400 System (400S)

       *  Series 400 Coprocessor (400C) for the IBM RISC System/6000 and
          Sun Workstation servers

       D_12_6_5 supports two kinds of tape drive:

       *  The 9-track tape drive, which is standard on the Series 100
          and 200, and an optional upgrade to the Series 300S

       *  The 8-millimeter tape drive, which is standard on the Series
          300S, 300C, 400S, and 400C, and an optional upgrade to the
          Series 200

       D_12_6_5 also supports the optional expansion of memory from 32
       megabytes to 64 megabytes to improve system performance. This
       upgrade applies to all series except the Series 100. The
       combinations of configurations and upgrades supported by D_12_6_5
       are shown in Table 1.











       2                                           May 1992     RATIONAL\f

                                                        Release D_12_6_5




          Table 1   Configurations and Upgrades Supported by D_12_6_5
               ---------------------------------------------- 
              |          |        |        |        |        |
              |          |  8-mm  |9-Track | 32-Mb  |  64-Mb |
              |Configurat|  Tape  |  Tape  | Memory |  Memory|
              |   ion    | Drive  | Drive  |        |        |
               ---------------------------------------------- 
              |          |        |        |        |        |
              |Series 100|N/A     |Standard|Standard| N/A    |
               ---------------------------------------------- 
              |          |        |        |        |        |
              |Series 200|Upgrade |Standard|Standard| Upgrade|
               ---------------------------------------------- 
              |          |        |        |        |        |
              |Series    |Standard|Upgrade |Standard| Upgrade|
              |300S      |        |        |        |        |
               ---------------------------------------------- 
              |          |        |        |        |        |
              |Series    |Standard|N/A     |Standard| Upgrade|
              |300C      |        |        |        |        |
               ---------------------------------------------- 
              |          |        |        |        |        |
              |Series    |Standard|N/A     |Standard| Upgrade|
              |400S      |        |        |        |        |
               ---------------------------------------------- 
              |          |        |        |        |        |
              |Series    |Standard|N/A     |Standard| Upgrade|
              |400C      |        |        |        |        |
               ---------------------------------------------- 




       3.  Compatibility

       D_12_6_5 is fully compatible with all production versions of
       Rational layered-software products (Table 2).



                     Table 2   Compatibility with D_12_6_5
                       ------------------------------- 
                      |                    |          |
                      |                    |Compatible|
                      |  Rational Product  | Release  |
                       ------------------------------- 
                      |                    |          |
                      |CDF: Mc68020_Bare   |5_1_2*or  |
                      |                    |later     |
                       ------------------------------- 




       RATIONAL     May 1992                                           3\f

       Rational Environment Release Information





              Table 2   Compatibility with D_12_6_5  (continued)
                       ------------------------------- 
                      |                    |          |
                      |                    |Compatible|
                      |  Rational Product  | Release  |
                       ------------------------------- 
                      |                    |          |
                      |CDF: Mc68020_Os2000 |6_1_3 or  |
                      |                    |later     |
                       ------------------------------- 
                      |                    |          |
                      |CDF: Mc68020_Hp_Unix|6_2_4 or  |
                      |                    |later     |
                       ------------------------------- 
                      |                    |          |
                      |Design Facility:    |6_0_7 or  |
                      |2167                |later     |
                       ------------------------------- 
                      |                    |          |
                      |Design Facility:    |6_2_5 or  |
                      |2167A               |later     |
                       ------------------------------- 
                      |                    |          |
                      |Design Tools        |10_2_9 or |
                      |                    |later     |
                       ------------------------------- 
                      |                    |          |
                      |Documentation Tools |10_2_# or |
                      |                    |later     |
                       ------------------------------- 
                      |                    |          |
                      |Mail                |11_4_5 or |
                      |                    |later     |
                       ------------------------------- 
                      |                    |          |
                      |Rational Publishing |1_0_2 or  |
                      |Interface           |later     |
                       ------------------------------- 
                      |                    |          |
                      |Rational Teamwork   |2_1_2 or  |
                      |Interface           |later     |
                       ------------------------------- 
                      |                    |          |
                      |Rational X Interface|10_5_# or |
                      |                    |later     |
                       ------------------------------- 
                      |                    |          |
                      |Rational Windows    |10_1_# or |
                      |Interface           |later     |
                       ------------------------------- 



       4                                           May 1992     RATIONAL\f

                                                        Release D_12_6_5




              Table 2   Compatibility with D_12_6_5  (continued)
                       ------------------------------- 
                      |                    |          |
                      |                    |Compatible|
                      |  Rational Product  | Release  |
                       ------------------------------- 
                      |                    |          |
                      |Remote Compilation  |1_1_1 or  |
                      |Facility            |later     |
                       ------------------------------- 
                      |                    |          |
                      |RCF: Ibm_Rs6000_Aix |1_1_0 or  |
                      |                    |later     |
                       ------------------------------- 
                      |                    |          |
                      |RPC                 |1_0_2 or  |
                      |                    |later     |
                       ------------------------------- 
                      |                    |          |
                      |Software Analysis   |6_0_0 or  |
                      |Workstation         |later     |
                       ------------------------------- 
                      |                    |          |
                      |Target Build Utility|10_0_3 or |
                      |                    |later     |
                       ------------------------------- 


       *
         Before attempting to install new or changed CDF products or
       customizations, see section 5.1.
       #
         Beginning with D_12_6_5, the most recent releases of
       Documentation Tools, RXI, and RWI are delivered with the
       Environment. Thus, compatibility with these products is no longer
       an issue. For more information, see sections 6.6 and 7.14.


       4.  Upgrade Impact

       The Environment can be upgraded from to D_12_6_5 without forcing
       you to Archive.Save and Archive.Restore your applications. You
       will not have to modify or recompile any of your own tools, with
       the possible exception of:

       *  Tools written against the unit specifications listed in
          "Impact of Specification Changes," below.

       *  Customizations of unit bodies listed in "Impact of
          Implementation Changes," below.

       The new declarations listed in section 6 are all installed
       upward-compatibly and therefore have no impact on user-written

       RATIONAL     May 1992                                           5\f

       Rational Environment Release Information


       tools.

       Rational does not provide tools for reverting to previous
       releases of the Environment. You will be able to revert to the
       previous release, however, if you make a complete backup of the
       Environment, including the Diagnostic File System (DFS), before
       you upgrade.


       4.1.  Impact of Specification Changes

       The installation process for D_12_6_5 changes several Environment
       specifications. The installation process attempts to make all
       changes incrementally; however, if incremental changes fail, the
       installation process overwrites the necessary specifications.
       Overwriting these specifications will cause the demotion of any
       customer-created tools written against them. The installation
       process tries to recompile such tools automatically; however,
       depending on the nature of the tools, some may require
       modification before they can be recompiled. Units that cannot be
       recompiled during installation are listed in the installation
       log.

       The unit specifications that are overwritten depend on the
       release from which you are upgrading.


       4.1.1.  Upgrading from D_12_5_0

       The following unit specifications are overwritten when you
       upgrade from D_12_5_0 to D_12_6_5:

       *  !Commands.Library'Spec

       *  !Commands.System_Backup'Spec

       *  !Tools.Access_List_Tools'Spec

       *  !Tools.Code_Segment_Object_Editor'Spec

       *  !Tools.Library_Object_Editor'Spec


       4.1.2.  Upgrading from D_12_2_4

       In addition to the unit specifications overwritten when upgrading
       from D_12_5_0, upgrading from D_12_2_4 overwrites the following
       unit specification:

       *  !Commands.Abbreviations.Print'Spec

       *  !Commands.Access_List'Spec

       *  !Commands.Archive'Spec


       6                                           May 1992     RATIONAL\f

                                                        Release D_12_6_5


       *  !Commands.Queue'Spec

       *  !Commands.Remote_Passwords'Spec

       *  !Tools.Networking.Tcp_Ip_Boot'Spec

       *  !Tools.Networking.Transport'Spec

       *  !Tools.Networking.Transport_Defs'Spec

       *  !Tools.Networking.Transport_Name'Spec

       Furthermore, the units in !Machine.Initialize@ are either demoted
       or moved to other locations to accommodate the D_12_5_0
       mechanisms for initializing an R1000; for complete details, see
       Appendix A, "Guide to Machine Initialization," or the online
       information in
       !Machine.Initialization.Guide_To_Machine_Initialization.

       If you are upgrading from D_12_2_4, you should also see the
       release information for D_12_5_0; release information is located
       online in !Machine.Release.Release_Notes.


       4.1.3.  Upgrading from D_12_1_1

       In addition to the unit specifications overwritten when upgrading
       from D_12_5_0 and D_12_2_4, upgrading from D_12_1_1 overwrites
       the following unit specification:

       *  !Implementation.Work_Order_Implementation'Spec

       If you are upgrading from D_12_1_1, you should also see the
       release information for D_12_2_4 and D_12_5_0; release
       information is located online in !Machine.Release.Release_Notes.


       4.2.  Impact of Implementation Changes

       The installation process for D_12_6_5 overwrites one Environment
       unit body (regardless of the release from which you are
       upgrading):

       *  !Commands.Abbreviations.Print'Body

       Because this body may contain user customizations, its contents
       are saved in a text file in the same library as the overwritten
       body. The name of the file is of the form Unit_Name_Vnn, where nn
       is the unit's default version number. These customizations then
       can be transferred to the new implementation.


       5.  Known Problems and Limitations



       RATIONAL     May 1992                                           7\f

       Rational Environment Release Information


       5.1.  Problem Installing the Cross-Development Facility

       The D_12_6_5 release of the Environment affects the installation
       of any of Rational's family of Cross-Development Facility (CDF)
       products. Specifically, you will not be able to install new or
       changed CDF products or customizations without first making a
       minor change to the following package specification:

          !Targets.Target_Key.Io.Floating_Point.M68k_Floats'Spec

       As delivered, the CDF products release prior to the D_12_6_5
       Environment cannot be promoted to the coded state on a D_12_6_5
       system because of changes made to the Environment's compilation
       system that enable it to comply with validation. Existing CDFs
       are not affected by this problem unless package M68k_Floats is
       demoted and an attempt is made to repromote it.

       The change you need to make to M68k_Floats'Spec follows.

       Note: Changing M68k_Floats'Spec will cause the demotion of
       M68k_Floats'Body, M68k_Float_Conversions'Body, and
       M68k_Float_Conversions.Based_Value'Body. Demoting
       these units will also demote any coded main programs that were
       coded with the CDF.

       1. Locate the following two representation clauses. They can be
          found at the beginning of the private part (line 164 of the
          unit).

          for Single_Format use
              record at mod 4;
                  Negative at 0 range 0 .. 0;
                  Exponent at 0 range 1 .. 8;
                  Fraction at 0 range 9 .. 31;
              end record;

          for Double_Format use
              record at mod 4;
                  Negative    at 0 range 0 .. 0;
                  Exponent    at 0 range 1 .. 11;
                  Fraction_Hi at 0 range 12 .. 31;
                  Fraction_Lo at 0 range 32 .. 63;
              end record;

       2. Move the representation clause for Single_Format so that it
          immediately follows the declaration of its type (line 34 of
          the unit).

          type Single_Format is       -- line 34
              record
                  Negative : Boolean;
                  Exponent : Single_Exponent;
                  Fraction : Single_Fraction;
              end record;


       8                                           May 1992     RATIONAL\f

                                                        Release D_12_6_5


          for Single_Format use      -- move rep clause to here
              record at mod 4;
                  Negative at 0 range 0 .. 0;
                  Exponent at 0 range 1 .. 8;
                  Fraction at 0 range 9 .. 31;
              end record;

          function Convert_Out is new Unchecked_Conversion
                                          (Source => Single_Float,
                                           Target => Single_Format);

          function Convert_In  is new Unchecked_Conversion
                                          (Source => Single_Format,
                                           Target => Single_Float);

       3. Move the representation clause for Double_Format so that it
          immediately follows the declaration of its type (now line 60
          of the unit).

          type Double_Format is       -- line 60
              record
                  Negative    : Boolean;
                  Exponent    : Double_Exponent;
                  Fraction_Hi : Double_Fraction_Hi;
                  Fraction_Lo : Double_Fraction_Lo;
              end record;

          for Double_Format use       -- move rep clause to here
              record at mod 4;
                  Negative    at 0 range 0 .. 0;
                  Exponent    at 0 range 1 .. 11;
                  Fraction_Hi at 0 range 12 .. 31;
                  Fraction_Lo at 0 range 32 .. 63;
              end record;

          function Convert_Out is new Unchecked_Conversion
                                          (Source => Double_Float,
                                           Target => Double_Format);

          function Convert_In is new Unchecked_Conversion
                                          (Source => Double_Format,
                                           Target => Double_Float);

       4. Repromote M68k_Floats'Spec.

       5. Repromote M68k_Floats'Body and the other two units that have
          been demoted, M68k_Float_Conversions'Body and
          M68k_Float_Conversions.Based_Value'Body.

       6. Repromote any coded main programs that were coded with the
          CDF.

       This problem will be fixed in Release6_3_3 of the Bare compiler,
       which should be available soon. Rational is also in the process
       of creating a new version of the OS2000 CDF product with this fix

       RATIONAL     May 1992                                           9\f

       Rational Environment Release Information


       in place.


       5.2.  Errors Reported When Archiving Switch Files to Non-D_12_6_5
       Machines

       The D_12_6_5 release of the Environment makes several changes to
       switches. When combined, two of these changes result in error
       messages when archiving switch files from D_12_6_5 systems to
       previous releases:

       *  The D_12_6_5 release of the Environment changes the way in
          which switch files are copied. When used to copy a switch file
          in previous releases, the Archive.Copy procedure copied only
          switches that had nondefault values. In D_12_6_5, the
          Archive.Copy procedure copies the entire switch file,
          including switches that have default values.

       *  D_12_6_5 also introduces a new library switch (see section
          7.7).

       As a result of these changes, if you use Archive.Copy to copy
       library switches from D_12_6_5 to a system running a previous
       release of the Environment, Archive.Copy may generate errors
       indicating that certain switches do not exist. These errors can
       be ignored; the copy operation will complete successfully.

       Note that these errors are not considered a bug and will not be
       fixed in future releases.


       5.3.  Limitation in Archiving between Machines Running Different
       Releases

       There is a potential problem when performing Archive.Resore
       operations between two systems that are running different
       releases of the Environment.

       Because of changes made in D_12_5_0 (and perpetuated in D_12_6_5)
       in the way Archive saves subsystem compatibility databases
       (CDBs), you may experience problems when trying to restore a
       D_12_5_0 or D_12_6_5 archive on a pre-D_12_5_0 system. For
       example, the Archive operation may generate internal errors such
       as:

          INTERNAL ERROR (declaration mapping): ARCHIVE_IS_BAD restoring
          !Subsystem_Name.State.Compatibility.Declaration_Numbers.Unit_
          Name

       A simple workaround exists. When saving objects to pre-D_12_5_0
       systems, specify Version=527 in the the Options parameter of
       Archive.Save. For example, the following operation successfully
       saves My_View:

          Archive.Save (Objects  => "My_View",

       10                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


                        Options  => "Version=527",
                        Device   => "Machine.Devices.Tape_0",
                        Response => "<PROFILE>");

       When an attempt is made to restore My_View to a D_12_5_0 or
       D_12_6_5 system, Archive.Restore checks to see under what version
       of Archive the object was saved and adjusts accordingly.

       Note that this problem does not affect:

       *  Archive.Copy operations, which copy over the network. In this
          case, Archive checks the version number on each end and uses
          the lower version number of the two.

       *  Archive operations on text files, Ada units, or other non-CDB
          objects.

       *  Archive operations between systems running D_12_6_5 and
          D_12_5_0.

       Note also that this is a compatibility issue with how CDBs are
       saved and not a bug.


       5.4.  Problem with Record Representation Clauses and Long_Integer
       Type

       A record representation clause may not include a component clause
       corresponding to a component of type Standard.Long_Integer (or a
       type derived, directly or indirectly, from type Long_Integer)
       unless an explicit range constraint has been given.

       An update that fixes this problem is already being developed and
       will be available shortly.

       (PRS number 8391844-Gato-Gbd)


       5.5.  Problem Using DFS Tools with Coprocessors

       A problem has been found with the new Diagnostic File System
       (DFS) tools, located in !Machine.Dfs. Specifically, the
       Fs_Download procedure does not work correctly when attempting to
       load a new DFS onto either a series 300C or 400C. This is
       considered a bug and will be fixed in a future release.

       Furthermore, the Fs_Download procedure cannot be used to load a
       new DFS onto a 100. This is a permanent limitation and will not
       be fixed.


       5.6.  Problems with Documentation Tools

       The Documentation Tools delivered with the D_12_6_5 release of
       the Environment include only the Document Formatter; they do not

       RATIONAL     May 1992                                          11\f

       Rational Environment Release Information


       include the Spelling Checker. If you would like to obtain the
       Spelling Checker, contact your Rational representative.

       For information about the Document Formatter, see section 6.6.2.


       5.7.  Problem When Initializing Session Switch Files

       A problem has been found in the way in which the Environment
       initializes session switch files for sessions other than the
       default session. This problem is not introduced by the D_12_6_5
       release; however, it has become more obvious with the
       introduction of new documentation for session switches in the SJM
       book.

       Each user's default session (S_1) obtains its initial
       session-switch values from system-defined default values. If a
       switch file does not exist for session S_1, the session uses the
       same system-defined default values.

       Subsequent sessions for which switch files have not been created
       use the switch values set for the user's default session, S_1. If
       a user creates a switch file for any of these subsequent
       sessions, the initial values are copied from the system-defined
       default values. This is a bug. Subsequent sessions should copy
       their initial switch values from the default session, S_1, as
       described in the new SJM book.


       6.  New Environment Interfaces

       D_12_6_5 provides a number of new interfaces, including:

       *  New procedures and functions in:

          -  Package Access_List_Tools; see section 6.1

          -  Package System_Maintenance; see section 6.2

          -  Package Dfs; see section 6.3

       *  New login policy features; see section 6.4.

       *  A new subsystem that provides networking tools; see section
          6.5.

       *  New interface and documentation facilities that were
          previously delivered separately; see section 6.6.


       6.1.  New Declarations in Package Access_List_Tools

       Package !Tools.Access_List_Tools contains the new procedures and
       functions described in the following paragraphs.


       12                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


       For complete information about this subprograms, see the new
       documentation for package Access_List_Tools in the Library
       Management (LM) book or in online help.


       6.1.1.  Function Grants

          function Grants (For_List  : Acl;
                           Desired   : Access_Class;
                           User_Name : String := "") return Boolean;

       Returns a Boolean value indicating whether the specified
       access-control list grants the specified username the desired
       access rights. This function is useful for restricting jobs that
       normally have unlimited access, such as servers and other *SYSTEM
       jobs. For example, you can use this function to cause a job or
       program to operate on objects only if members of the group
       Network_Public are permitted the appropriate access to those
       objects.


       6.1.2.  Function Is_In_Group

          function Is_In_Group (User_Name  : String;
                                Group_Name : String) return Boolean;

       Returns a Boolean value indicating whether the specified username
       is a member of the specified access-control group. This function
       returns True if the specified user is a member of the specified
       access-control group. This function returns False if an error is
       detected during the test or if the user is not a member of the
       specified access-control group.

       (PRS numbers 0-0301-9 and 9723630-0011-5)


       6.1.3.  Function Is_Valid_Group

          function Is_Valid_Group (Name : String) return Boolean;

       Returns a Boolean value indicating whether the specified name is a
       valid access-control group.


       6.1.4.  Procedure Remove

          procedure Remove (Group       :     String;
                            Initial_Acl :
          Bounded_String.Variable_String;
                            New_Acl     : out
          Bounded_String.Variable_String;
                            Group_Found : out Boolean);

       Removes the entry for the specified group from the specified
       access-control list.

       RATIONAL     May 1992                                          13\f

       Rational Environment Release Information


       6.1.5.  Procedure Set

          procedure Set (For_Object :        Directory.Version;
                         To_List    :        Acl;
                         Status     : in out Simple_Status.Condition;
                         Action_Id  :        Action.Id);

       Setting an object's ACL requires owner access to the nearest
       world enclosing the object.

       Note that setting a world's ACL does not require owner access to
       the world itself, provided that you have owner access to its
       parent world. This allows you to change the ACL of a world when
       no one has owner access to it.

       This procedure is the same as other Set procedures, with the
       addition of an Action_Id parameter.


       6.1.6.  Procedure Set_Default

          procedure Set_Default (For_World :        Name;
                                 To_List   :        Acl;
                                 Status    : in out
          Simple_Status.Condition;
                                 Action_Id :        Action.Id);

       Sets the default access-control list (ACL) for the specified world
       or worlds.

       Setting a world's ACL requires owner access to that world. A
       world's default ACL is used to initialize the ACLs of new Ada
       units and files created in the world.

       This procedure does not modify the ACLs of already existing
       objects whose ACLs were set by the previous default ACL.

       This procedure is the same as other Set_Default procedures, with
       the addition of an Action_Id parameter.


       6.2.  New Procedures in System_Maintenance Subsystem

       !Commands.System_Maintenance'Spec_View contains the new
       procedures described in the following paragraphs.


       6.2.1.  Procedure Last_Gasp_Destroy

          procedure Last_Gasp_Destroy (Name : String);

       Caution: Use this procedure only as a last resort.

       Forcibly removes an object from a directory. Use this procedure
       only when you've tried every other means of deleting an object or

       14                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


       set of objects. Normally:

       *

          This procedure should be used only if you are consistently
          getting Version_Error on a particular object.

       *  This procedure can be used instead of elaborating Dir_Tester.

       *  This procedure should not be used if you are getting "Key not
          found" errors.

       This procedure should be used only by Rational personnel or at
       their discretion. For a detailed description, including a
       complete list of steps you should try before using this
       procedure, see this procedure's specification:

          !Commands.System_Maintenance'Spec_View.Units.Last_Gasp_
          Destroy'Spec

       Note that you must be operating in privileged mode to execute
       this procedure.


       6.2.2.  Procedure Release_Tape_User

          procedure Release_Tape_User (Drive : Natural);

       Resets the specified tape drive so that it is free, thereby
       allowing tape-mount requests to proceed without "Drive is in use"
       errors. This procedure also attempts to rewind the tape.

       Note that this procedure does not physically reset the drive.

       Note also that you must be operating in privileged mode to
       execute this procedure.

       The fully qualified name of this procedure is:

          !Commands.System_Maintenance'Spec_View.Units.Release_Tape_User

       (PRS number 9123690-0160-1 and CSR number 4788)


       6.2.3.  Procedure Show_Load_Proc_Unit_Names

          procedure Show_Load_Proc_Unit_Names (Load_Proc : String :=
          "<SELECTION>";
                                               Response  : String :=
          "<PROFILE>");

       Obtains information that allows you to find the objects from
       which a loaded main program (Load_Proc or Load_Func) was created.
       Specifically, this procedure obtains the Ada object instance ID
       numbers for the Ada units that make up the source code for the

       RATIONAL     May 1992                                          15\f

       Rational Environment Release Information


       loaded main program specified in the Load_Proc parameter.

       The display produced by this procedure includes lines of the
       form:

          Library.Resolve ("<[ADA, 12345,1]>");

       These lines indicate the Ada object instance ID of one or more of
       the original Ada source units used to create the loaded main
       program. If those Ada source units still exist, and if they exist
       on the current machine, then the Environment pathnames of those
       units are also displayed.

       If the original source units do not exist (because they have been
       edited, moved, renamed, or deleted), or if the loaded main
       program was copied from another machine, then no pathname is
       printed. To attempt to locate the source units for a loaded main
       program that was copied from another machine:

       1. Take the Library.Resolve lines that were printed by the
          Show_Load_Proc_Unit_Names procedure (as shown above).

       2. Log into each R1000 where the source units might still exist.

       3. Execute the Library.Resolve commands.

       If the source unit exists on any of these machines, the
       Library.Resolve command returns the fully qualified pathname of
       that unit.

       The fully qualified name of this procedure is:

          !Commands.System_Maintenance'Spec_View.Units.Show_Load_Proc_
          Unit_Names

       (PRS number 9123690-0148-4)


       6.2.4.  Procedure Show_Tape_Users

          procedure Show_Tape_Users;

       Displays the current user and session for each tape drive that is
       defined in the IOP configuation.

       The fully qualified name of this procedure is:

          !Commands.System_Maintenance'Spec_View.Units.Show_Tape_Users


       6.3.  New Features in Package Dfs





       16                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


       6.3.1.  Support Tools

       The access routines for the Environment's Diagnostic File System
       (DFS) have been enhanced to make it easier to upgrade the DFS and
       to aid in problem resolution at the DFS (and lower) level. These
       changes allow an operator to:

       *  Read a DFS tape into the Environment.

       *  Create an Environment MT Image file object, containing the
          contents of that tape. (An MT Image object contains an ordered
          collection of DFS files. Creation of an MT Image object makes
          it possible to handle a set of DFS files as a single object.)

       *  Download to the DFS from the Environment (either from an
          arbitrary Environment file object or from an Environment MT
          Image object created from a DFS tape).

       Support tools to create DFS tapes and move DFS files within the
       DFS are also provided. These support tools take the form of:

       *  Several new commands in package
          !Machine.Dfs'Spec_View.Units.Dfs

       *  A new package, !Machine.Dfs'Spec_View.Units.Install_Tools

       For complete details about the new commands in package Dfs and
       the new package Install_Tools, see the exported specifications
       online.

       For information about changes to existing commands in package
       Dfs, see section 7.12.


       6.3.2.  Dfs_Release File

       To aid in tracking updates to the DFS, D_12_6_5 also includes a
       new Dfs_Release file, which contains the release date, number,
       and notes for the current DFS release. To read Dfs_Release from
       the Environment, execute the following command:

          "!Machine.Dfs'Spec_View.Units".Dfs.Copy
                      (Dfs_Filename    => "Dfs_Release",
                       Env_Filename    => "Environment filename for
          output",
                       Allow_Overwrite => False);

       Then traverse to the file specified in the Env_Filename
       parameter. The file should contain DFS release information such
       as the following:

          DFS D3.0

          April 14, 1992


       RATIONAL     May 1992                                          17\f

       Rational Environment Release Information


          DFS release D3.0

            User interface is now menu driven

            New program TOMBSTONE for viewing tombstone files from the
          DFS
              invoked by using "x tombstone" from the "CLI>" prompt.

            New program REWRITE for refreshing all data on a disk from
          the DFS
              invoked by using "x rewrite" from the "CLI>" prompt. For
          details and
              a copy of the standard help dialogue, see below.

            New IOP Kernels for 300C, 300S, 400C and 400S are provided.
          The
            following
              bug(s) was(were) fixed:

              PRS =>  9123690-0165-8/2,
                      9123690-0164-4
              CSR =>  5559

              Software flow control om port 16 has been repaired.

       This file was originally introduced in release D_12_5_0A.


       6.4.  New Login_Policy World

       D_12_6_5 includes a new world, !Machine.Login_Policy, in which
       system managers can create subprograms and files that:

       *  Establish a policy monitoring and responding to successful and
          failed login attempts.

       *  Specify the login message that is displayed when users connect
          to the R1000.

       For security purposes, this world is delivered with Operator
       access only. As delivered, the Login_Policy contains no
       procedures; sites that do not take advantage of this feature will
       notice no change in the system behavior.

       These features are described in more detail in the following
       paragraphs.


       6.4.1.  Establishing a Login Policy

       The login manager now contains a call to operator-defined
       procedures that determine site-specific login policies. Although
       primarily intended as a mechanism for system managers to react
       promptly to invalid login attempts, these facilities also provide
       the basis for additional site-specific features.

       18                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


       When a login attempt is made, the Environment's login manager now
       checks for the existence of operator-defined procedures
       Successful_Login and Failed_Login in world !Machine.Login_Policy.
       If these procedures exist, then:

       *  If the login attempt was successful, the login manager calls
          Successful_Login.

       *  If the login attempt was not successful, the login manager
          calls Failed_Login.

       The user-defined procedures must be placed in
       !Machine.Login_Policy and have the following specifications:

          procedure Successful_Login (Username     : String;
                                      Session      : String;
                                      Time         : String;
                                      Port         : Natural;
                                      Network_Name :
          Transport_Defs.Network_Name;
                                      Host_Id      :
          Transport_Defs.Host_Id;
                                      Socket_Id    :
          Transport_Defs.Socket_Id;
                                      Error_Status : Natural);

          procedure Failed_Login (Username     : String;
                                  Session      : String;
                                  Time         : String;
                                  Port         : Natural;
                                  Network_Name :
          Transport_Defs.Network_Name;
                                  Host_Id      : Transport_Defs.Host_Id;
                                  Socket_Id    :
          Transport_Defs.Socket_Id;
                                  Error_Status : Natural);

       The parameters of these procedures are described below:

       *  Username: the name supplied at the Enter username prompt
          during the attempted login or the null string if this
          information has not yet been entered.

       *  Session: the session specified at the Enter session name
          prompt during the attempted login or the null string if this
          information has not yet been entered. If a [#Return#] is
          supplied at the Enter session name prompt, session S_1 is
          assumed.

       *  Time: the date and time at which the login attempt occurred.
          The format for this string is the date, one blank space, and
          then the time. The date is of the form month/day/year, and the
          time is expressed in military format. Procedures from package
          !Tools.Time_Utilities can be used to process this information.


       RATIONAL     May 1992                                          19\f

       Rational Environment Release Information


       *  Port: the number of the R1000 port on which the login attempt
          is being made.

       *  Network_Name: identifies one of several available protocol
          stacks for the current connection. For example, the value
          TCP.IP is passed for a Telnet connection, and the null string
          is passed for a direct connection to the R1000. See package
          Transport_Defs and subsystem Telnet_Tools in !Tools.Networking
          for procedures to process this variable.

       *  Host_Id: identifies the machine within a network making the
          connection. See package Transport_Defs and subsystem
          Telnet_Tools in !Tools.Networking for procedures to process
          this variable.

       *  Socket_Id: identifies a program within a machine. See package
          Transport_Defs and subsystem Telnet_Tools in !Tools.Networking
          for procedures to process this variable.

       *  Error_Status: a status code that indicates either success or
          the reason that the login attempt failed. The status codes
          are:

          0 - Successful           1 - Bad_Username_Or_Password
          2 - Expired_Password     3 - Abandoned_Login
          4 - Read_Timed_Out       5 - Read_Error
          6 - Input_Unreadable     7 - Terminal_Type_Unreadable
          8 - Resource_Restriction 9 - Product_Not_Authorized
          10 - Internal_Error

       Note: The Successful_Login and Failed_Login procedures are run
       under the identity of *SYSTEM to allow privileged operations to
       be performed. For this reason, system managers may want to use
       existing access-control mechanisms to control access to these
       procedures and ensure system security. As it is delivered, the
       Login_Policy world is accessible only to the members of group
       Operator.

       If the procedures exist, and if an attempt to run either of these
       procedures is unsuccessful, this is noted in the system error
       log. If the procedures do not exist, then the login process runs
       as usual, and nothing is recorded in the system log.

       This change does not affect the disconnect and login behavior
       options for a port. These options are still set separately
       through !Machine.Initialization or through commands in package
       !Commands.Terminal.

       (PRS number 9723630-0074-7)


       6.4.2.  Specifying the Login Message

       The D_12_6_5 release provides the ability for system managers to
       specify the message users see when they connect to an R1000.

       20                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


       The system's standard message indicates the release number for
       the current Environment, a name identifying the machine, the port
       number through which the connection has been made, and the
       current date and time:

          Rational Environment D_12_5_0; Roget - Ada Tech Pubs; Port
          232.
          January 16, 1992 at 2:07:34 PM

       In D_12_6_5, system managers can place other messages in a text
       file of the name !Machine.Login_Policy.Login_Text. If this file
       exists, its contents are displayed when users connect to the
       R1000. Placing the string <Standard_Message> on its own line in
       this file causes the standard login message to be displayed (in
       addition to any other text in the file).

       (PRS number 9723630-0025-8)


       6.5.  New Telnet_Tools Subsystem

       This new subsystem provides programmatic interfaces to Rational
       Networking as well as some new utility software. It includes
       three new packages:

       *  !Tools.Networking.Telnet_Tools'Spec_View.Units.Telnet_Port

       *  !Tools.Networking.Telnet_Tools'Spec_View.Units.Telnet_Protocol

       *  !Tools.Networking.Telnet_Tools'Spec_View.Units.Telnet_Tools

       For more information, see the exported specifications online.


       6.6.  Products Now Delivered with the Environment


       6.6.1.  Rational X-Interface and Windows-Interface

       Rational's X-Interface (RXI) and Windows Interface (RWI) have
       become the primary access mechanisms to the Environment. In
       response to this evolution, the most recent releases of RXI
       (10_9_0) and RWI (10_1_1) are delivered with the D_12_6_5 release
       of the Environment.

       Note that RXI and RWI still must be installed using a separate
       installation process; they are not installed during Environment
       installation:

       *  If you already have RXI and/or RWI installed on your system,
          you do not need to install them again. D_12_6_5 does not
          include any changes to these products.

       *  If you do not have RXI and/or RWI installed on your system and
          would like to install one or the other, contact your Rational

       RATIONAL     May 1992                                          21\f

       Rational Environment Release Information


          representative for installation instructions, keyboard
          overlays, and documentation. To install RWI, you will also
          need to obtain a diskette that contains software to be
          installed on the PC.

       *  If you have purchased a new system, the installation
          instructions for RXI and RWI are included with that system.
          Contact your Rational representative to obtain keyboard
          overlays and documentation.

       For further information about RXI token issues, see section 7.14.
       ll problem reports concerning the improper consumption of tokens
       by RXI


       6.6.2.  Documentation Tools

       D_12_6_5 includes Rational's Documentation Tools as part of the
       standard Environment. As part of the D_12_6_5 release, a new
       release of the Document Formatter has been introduced
       (Rev10_7_12) and the system default activity has been updated to
       reverence this release. To ensure backward compatibility, the
       previous version of the Document Formatter (Rev10_7_7) has been
       preserved and can be used simply by changing your activity file.

       Although the Spelling Checker is part of Rational's Documentation
       Tools, it has not been included in the D_12_6_5 Environment
       release (see section 5.6). If you would like to obtain the
       Spelling Checker, contact your Rational representative.

       Documentation is available for both the Document Formatter and
       the Spelling Checker. For information, contact your Rational
       representative.


       7.  Changes from D_12_5_0

       This section describes the changes, enhancements, and
       user-visible problem fixes that D_12_6_5 makes to existing
       features of the Environment. The information in this section is
       presented in roughly the same order in which it would be found in
       the Rational Environment Reference Manual (ERM):

       *  Information on editing specific types of objects such as Ada
          units (EST) (sections 7.1 and 7.2)

       *  Information on session and job management (SJM)-specifically,
          packages Job, Remote_Passwords, Operator, and Search_List
          (section 7.4)

       *  Library-management information (LM), including changes to
          archive (section 7.5), compilation (7.6), library switches
          (7.7), and other library-management facilities (7.8)

       *  Device input and output (DIO) changes (section 7.9)

       22                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


       *  System-management information (SMU), including changes to
          system backup (section 7.11), the Diagnostic File System (DFS)
          (7.12), crash analysis (7.13), token policies (7.14), and
          miscellaneous system-management facilities (7.15)

       *  Information about subsystems and CMVC (PM) (section 7.16)

       *  Information about changes to the Math_Support subsystem
          (section 7.17)

       *  Information about other miscellaneous changes (section 7.18)


       7.1.  Changes to Package Common

       Performing Common.Definition on an object in a generic
       instantiation now takes you to the declaration in the generic.
       (PRS numbers 9123690-0163-9, 9123690-0165-3, 9123690-0169-0, and
       9723630-0122-0 and CSR numbers 5501, 5454, and 5707)

       The Common.Format procedure has been fixed so that it no longer
       destroys the contents of an Ada unit when an attempt to format
       that unit fails. (PRS numbers 1704151-Shei-Jst, 2437110-Sier-Geb,
       5172201-Cook-Swb, 7039962-Sier-Geb, 7030779-Zebr-Lore,
       8068463-Mago-Sdj, 9123690-0156-7, 9123690-0175-9, and
       9123690-0181-8 and CSR numbers 4786 and 6261)


       7.2.  Changes to Editing Ada Units

       The Ada.Make_Inline procedure now properly maintains Sm_Subunits.
       Sm_Subunits is an attribute on the DIANA nodes for compilation
       units. Specifically, Sm_Subunits is a sequence of the subunit
       Stub_Ids that exists for that unit. (PRS number 6452721-Shei-Jst)

       The Ada.Show_Unused procedure no longer erroneously flags an
       enumeration-type declaration as unused when the enumeration
       type's literals are referenced elsewhere. (PRS number
       9123690-0134-5)

       Procedures Ada.Withdraw, Install_Unit, Install_Stub, and
       Make_Separate now require only that the executing user have
       Create access to the enclosing world or view to enter the unit or
       stub into the library listing. This change fixes a problem
       introduced in D_12_5_0 in which Owner access was required. (PRS
       number 9123690-0171-3 and CSR number 5841)

       Procedure !Commands.Dependents.Find now releases actions that are
       no longer needed. (PRS number 9723630-0120-7)

       A problem has been fixed so that an attempt to incrementally edit
       a statement that depends on another statement that has been
       incrementally demoted itself no longer fails. (PRS number
       6265678-Sier-Geb)


       RATIONAL     May 1992                                          23\f

       Rational Environment Release Information


       The Environment now demotes units in the correct order when:

       *  An attempt is made to incrementally demote a type

       *  That type is used in a procedure's parameter list

       *  Both that procedure and the original type are used as
          parameters in a generic instantiation

       (PRS number 9123690-0161-1)

       A problem has been fixed so that the following valid incremental
       insertions now are accepted:

          package P is
              type T is private;
              type A is array (1 .. 10) of T;  -- insert 1
          private
              type T is new Integer;
              X, Y : A;                        -- insert 2
              B : Boolean := X < Y;            -- insert 3
          end P;

       (PRS number 9924694-Mago-Sdj)


       7.3.  Changes to Debugging

       Function Debug_Tools.Get_Exception_Name now correctly returns the
       fully qualified name of the exception, regardless of the setting
       of the R1000_Cg.Retain_Delta1_Compatibility library switch. In
       previous releases, if this switch was set to False, the function
       returned a string such as <Exception: Unit =-35983540864679680,
       Ord = 0>. (PRS numbers 12729-Star and 9123690-0160-7 and CSR
       number 4626)


       7.3.1.  Quitting While the Debugger is Running

       In previous releases of the Environment, if your session was
       terminated -for example by Quit or Operator.Force_Logoff-while a
       job under the control of the debugger was running, a deadlock
       could occur. The symptoms of this deadlock could be any
       combination of the following:

       *  Job 4 stuck in Awaiting_Entry

       *  Jobs stuck In_Fa_Queue

       *  Jobs hanging on Quit

       Most of these problems have been fixed. If, however, a job hangs
       during a Quit, it is now always possible to use Job.Kill to kill
       all debugger jobs, causing the system to resume normal operation.


       24                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


       (PRS numbers 9123690-0159-0, 9123690-0159-1, 9123690-0172-6, and
       9123690-0183-3 and CSR numbers 4740, 5142, 5917, and 6091)


       7.4.  Changes to Session and Job Management

       Job.Kill has been modified so that it can kill editor jobs-even
       unallocated jobs-and find any tasks holding actions and abort
       them. The user must have operator capability to perform these
       tasks. (PRS numbers 5360143-Rati-Jls and 9123690-0166-0)

       The remote-passwords facility has been changed so that *SYSTEM
       jobs, such as machine initialization and spoolers, now use the
       Operator password as the key for decrypting remote-passwords
       files. To instruct a *SYSTEM job to use a remote-passwords file,
       set the remote-passwords file for the job by calling
       Profile.Set_Remote_Passwords from within the job. For additional
       information, see package !Commands.Remote_Passwords in the new
       Session and Job Management (SJM) book or in online help. (PRS
       number 9123690-0166-5)

       Special names such as "<IMAGE>" can no longer be inserted either
       directly into searchlists or in indirect files named in
       searchlists. Be aware, however, that if you have a special name
       already in a searchlist and if you attempt to delete that
       searchlist or searchlist entry, the system may crash, as it did
       in previous releases. (PRS number 9123690-0138-2)

       The Program.Change_Identity command now delays when it encounters
       an illegal username and password pair. The length of the delay
       increases with each illegal encounter. (PRS number
       3289131-Gato-Bas)

       When logging on to the system in previous releases, if you
       entered a valid username and an invalid password and if the
       correct password associated with that username had expired, the
       password-expiration warning was emitted. The password-expiration
       warning implies that the username was correct. This situation has
       been fixed so that no information is given when either the
       username or password is invalid. (PRS number 4289272-Voya-Cmd)


       7.5.  Archive Changes

       The comments in the specification for package Archive have been
       improved. In particular, the comments now include all supported
       options for the Archive.Copy, Archive.Restore, and Archive.Save
       procedures. (PRS number 9123690-0131-8)


       7.5.1.  Copying Ada Units with Subobjects

       The Archive.Copy, Archive.Save, and Library.Copy procedures now
       copy non-Ada subobjects of Ada units that are not managed by one
       of Rational's layered products as if they were Ada subunits.

       RATIONAL     May 1992                                          25\f

       Rational Environment Release Information


       These subobjects are sometimes called associated files and
       indicated in library images by brackets (<>). A recursive copy of
       a parent unit now will pick up the subobject, but a nonrecursive
       one will not. In previous releases of the Environment, non-Ada
       subobjects of Ada objects were not copied as part of a recursive
       copy operation.


       7.5.2.  Archiving Library Switch Files

       The Archive.Copy and Archive.Save procedures have been changed so
       that archiving a library switch file now archives the complete
       switch file. (In previous releases, only nondefault values were
       archived.) As a result, restoring a D_12_6_5 switch file to a
       system running a previous release will result in messages of the
       form: Switch does not exist. These messages result from the fact
       that new switches exist in the D_12_6_5 switch file that do not
       exist in switch files from the previous release. The messages are
       for your information only; the Archive operation will complete
       successfully. For information about the new switches, see section
       7.7.


       7.6.  Compilation Changes

       Procedures in package !Commands.Compilation now print correct
       symbols for log messages. In particular, commands no longer use
       the note symbol (---) for messages that should be auxiliary
       (:::). For information about log-message symbols and their
       meanings, see the documentation for !Tools.Profile.Msg_Kind. (PRS
       number 1000002-Sier-Geb)

       A problem has been fixed in which compilation operations
       sometimes would hang-without generating an error message-if the
       program library was locked. In particular, if you executed
       Definition ("<*Program_Library>") to display a world's program
       library, the operation would lock the program library. If you
       attempted to perform a compilation operation while the program
       library was locked, the compilation operation would hang. In
       D_12_6_5, compilation operations now time out and produce an
       error message indicating that the program library is locked. (PRS
       number 2949267-Etoi-Hts)


       7.6.1.  Installing Units

       Note: The D_12_6_5 release of the Environment contains a number
       of changes to adhere more closely to the standards defined in the
       Reference Manual For the Ada Programming Language (LRM). In
       certain cases, these changes can cause source code that installed
       in the past to install no longer. Existing installed or coded
       units are not affected by these changes.

       Promoting a unit to the installed state for the first time now
       requires only that the executing user have Create access to the

       26                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


       enclosing world or view. This change fixes a problem introduced
       in D_12_5_0 in which Owner access was required. (PRS number
       9123690-0171-3 and CSR number 5841)

       Semantic checking has been fixed so that the Environment no
       longer allows a private type to be used as a generic formal
       parameter before the type's completion in the private part; this
       way of using a private type is not legal in Ada (see LRM 7.4.1
       (4)). (PRS number 9123690-0128-9)

       In accordance with LRM 13.4.(8), semantic checking now allows
       implementation-dependent attributes to be used in record
       representation clauses. (PRS number 1000000-Sier-Geb)

       Semantic checking has been improved so that an extra nonterminal
       ([expression] prompt) used as a record aggregate is flagged now
       as an error. In previous releases, an error was not generated
       until code was generated. (PRS number 9123690-0128-6)

       Semantic checking now properly supports the renaming of
       subprograms. In previous releases, problems were encountered if
       the renamed subprogram had a parameter for which the default
       value was an expression that could be misinterpreted as a
       predefined type. (PRS number 9123690-0156-3 and CSR number 4845)

       In accordance with LRM 13.1 (7), semantic checking no longer
       allows the following source code to install (PRS number
       1140702-Gato-Gbd):

          package Csr5310 is

              type Type_1 is
                  record
                      Q_Addr_2 : Integer;
                  end record;

              Forcing_Occurrence : constant Type_1 := (Q_Addr_2 => 0);
              -- The compiler detects the violation against LRM 13.1 (7)
          if the
              -- object is not constant.

              for Type_1 use
                  record at mod 2;
                      Q_Addr_2 at 2 range 0 .. 4 * 8 - 1;
                  end record;

          end Csr5310;

       A problem has been fixed in which performing semantic checking
       more than once on a single unit results in the disappearance of
       the error underlines. This problem has been fixed so that the
       same error underlines reappear each time the unit is
       semanticized. (PRS number 9123690-0157-9 and CSR number 5005)



       RATIONAL     May 1992                                          27\f

       Rational Environment Release Information


       Both the R1000 compiler and the Mc68020_Bare Cross-Development
       Facility (CDF) (Rev5_1_1) now flag as an error any renaming of a
       record component in which the record object is returned as the
       result of a function call (see LRM 8.5 (4)). Attempts to install
       subprograms containing such renames now fail with the message
       Expanded name name is not a renamable object. (PRS number
       9123690-0169-8)

       Semantic checking now allows the following to be applied to an
       enumerated type:

       *  An enumeration representation clause that starts with negative
          values

       *  A size clause that comes before the enumeration representation
          clause

       (PRS number 9123690-0180-7 and CSR number 4844)

       In accordance with LRM 3.2 (9) and 3.3.2 (2), semantic checking
       no longer allows you reference a type mark that is not a simple
       name. (PRS number 9123690-0152-8 and CSR number 4735)

       Messages have been improved so that if you reach the
       architectural limit for the size of a DIANA node (2**23 bytes),
       the coding attempt now fails gracefully with the message Promote
       Failed - Other Error in the message window and with the message
       !!! Action.Acquire Invalid_Class nnnnnnnnnn for instance nnnnnn
       machine id 1 on the console error log. (PRS number
       8277786-Voya-Bas)

       Error messages have been improved so that if you attempt to
       declare a record with more than 256 fields, the compiler now
       generates a message such as Field F in record type R exceeds the
       number of fields implementation limit of 256, and the offending
       unit fails to install. (PRS number 9123690-0142-3)

       Messages have been improved so that if the physical
       representation of an enumeration type does not have a range of
       Integer'Range (as specified in LRM 3.4.1), semantic checking
       fails with a message such as *UNIVERSAL_INTEGER* ... Constant
       expression not in Integer'Range. (PRS number 5700190-Etoi-Tnu)

       The error message generated when a body fails to install has been
       punctuated for easier readability. Specifically, quotation marks
       have been added around the declaration of the body. The message
       now appears similar to the following: 1: ERROR The spec for
       "package body FOO is " could not be installed. (PRS number
       10270-Shei-Swb)


       7.6.2.  Coding Units

       The R1000 code generator now successfully codes any package that
       declares a constant of a subtype such that the subtype is:

       28                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


       *  Externally declared

       *  Of an integer type that uses an explicit conversion for a
          range constraint

       In previous releases, attempts to code these packages failed with
       Constraint_Error. (PRS numbers 9123690-0145-5 and
       306859-Cook-Swb)

       Messages have been improved so that if you attempt to code a unit
       that instantiates a generic whose original declaration has been
       corrupted, you no longer get an internal error. The primary cause
       of this kind of corruption is using
       Program_Library_Maintenance.Build on Delta-1-style code views.
       (CSR number 5215)

       As documented in section 1.2.10 of Appendix F for the R1000
       Target of the LRM, the R1000 code generator now ignores pragma
       Private_Eyes_Only for generic units. (PRS number 9123690-0151-1
       and CSR number 4723)

       A problem has been fixed in which the R1000 code generator failed
       with a Constraint_Error when coding a very large task-entry
       family. The code generator now codes the task-entry family
       successfully and generates the following warning: 1: WARNING
       Declaring a very large entry family (may cause STORAGE_ERROR):
       E1. (PRS number 4967545-Voya-Phil)

       You now can control whether the Environment allows you to promote
       to the coded state Ada units that contain [statement] prompts.
       For details, see the description of the new
       Semantics.Reject_Statement_Prompts library switches in section
       7.7. (PRS number 9123690-0143-2)

       The compiler now handles sparse types of discriminants properly.
       In previous releases, when sparse types were used as discriminant
       types, the compiler would not work correctly in assigning the
       variant part of the record, and the incorrect case alternative
       would be chosen. (PRS number 9123690-0166-6 and CSR number 5666)


       7.6.3.  Loading and Executing Units

       The Compilation.Load procedure has been changed so that it always
       builds the specification of the loaded main program (Load_Proc or
       Load_Func) from the specification of the unit specified to the
       Load procedure. If a unit body is specified, the unit
       specification associated with that body is used. This practice
       ensures that the loaded main program obtains its context clause
       from the unit specification. If the Load procedure used the
       context clause from the unit body, and that unit body depended on
       the specification's context clause, the procedure would fail with
       semantic errors. (PRS number 6821610-Stan-Deg)



       RATIONAL     May 1992                                          29\f

       Rational Environment Release Information


       Attempting to execute a derived procedure inherited by
       instantiation in a generic that is itself instantiated no longer
       generates an Internal_Error (unsatisfiable import requirement) if
       the generics are in different subsystems. (PRS number
       9123690-0171-8 and CSR number 5650)

       Declaring a private derived type of
       !Tools.Unbounded_String.Variable_String no longer causes an
       unhandled exception at runtime when the unit that declared the
       derived type is coded with the
       R1000_Cg.Retain_Delta1_Compatibility library switch set to True.
       (PRS number 9123690-0168-1 and CSR number 5723)

       If an unhandled exception is encountered at the outermost level,
       programs coded with the R1000_Cg.Retain_Delta1_Compatibility
       switch set to False no longer generate an Internal_Error. (PRS
       number 12729-Star)


       7.6.4.  Program Libraries

       The Program_Library_Maintenance.Verify procedure and function
       have no valid options. The comments in the specification for
       these subprograms now state this explicitly. The full pathname
       for these subprograms is:

          !Tools.Program_Library'Spec_View.Units.Program_Library_
          Maintenance.Verify

       (PRS number 9123690-0131-7)


       7.7.  Changes to Library Switches

       D_12_6_5 introduces two new library switches and changes the
       default value of one.

       Because of the addition of these two switches, copying library
       switch files from D_12_6_5 to previous releases generates error
       messages indicating that certain switches do not exist. These
       errors can be ignored; the copy operation will complete
       successfully. This behavior is also mentioned in section 5.

       D_12_6_5 also includes new online help for several library
       switches. See section 8.3 for a list of these switches.


       7.7.1.  New Switch: Semantics.Limit_Semantic_Messages

       This switch controls the number of semantic messages (errors and
       warnings combined) that can be attached to an Ada image. Those
       messages with numbers greater than this limit will be discarded.
       Discarded messages can be regenerated by increasing the limit
       specified in this switch and resemanticizing the image. The
       default is 200 messages.

       30                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


       Note that generation of an extremely large number of messages for
       a single unit can cause semanticizing to take an excessive amount
       of time. Setting this switch to a lower number may speed semantic
       checking.

       (PRS number 9123690-0136-8 and CSR number 3956)


       7.7.2.  New Switch: Semantics.Reject_Statement_Prompts

       This switch controls whether the Environment allows you to
       promote to the coded state Ada units that contain [statement]
       prompts. When False (the default), units with [statement] prompts
       can be coded; an error is generated only if an attempt is made to
       execute the prompt. When True, units that contain [statement]
       prompts cannot be coded. Setting this switch to True may cause
       code that was able to code in the past to code no longer but will
       not affect units that are coded already.

       (PRS number 3336165-Shei-Jst and 9123690-0143-2)


       7.7.3.  Change to Default Value of
       R1000_Cg.Retain_Delta1_Compatibility Switch

       The D_12_1_1 release of the Environment contained a major
       revision of the R1000 compiler. The D_12_1_1 version of the
       compiler has been validated under releases 1.10 and 1.11 of the
       Ada validation suite (ACVC 1.10 and 1.11) and includes
       significant new features, improved generated-code quality, and
       numerous bug fixes.

       Certain of the compiler's features and bug fixes are available
       only when explicitly enabled by the Retain_Delta1_Compatibility
       library switch. This is because enabling these features and bug
       fixes causes the compiler to produce code that is incompatible
       with the code generated by versions of the compiler prior to
       D_12_1_1.

       D_12_6_5 changes the default value of this switch to False,
       allowing the compiler to take advantage of the features of the
       D_12_1_1 compiler unless otherwise specified. This change affects
       all new switch files created using Switches.Create or
       Switches.Edit. It also affects all new systems. Installation of
       D_12_6_5 preserves the current settings in switch files so that
       work in progress should not be significantly affected unless new
       switch files are created.

       Note that units coded with one setting of the switch may
       reference units coded with the switch set the other way. However,
       there is one restriction: when a main program is prelinked, a
       check is made to ensure that each unit in a spec view was coded
       with the same switch setting as the corresponding unit in the
       load view. The compatibility checker also makes this check when
       checking load view/spec view compatibility.

       RATIONAL     May 1992                                          31\f

       Rational Environment Release Information


       To avoid confusion, it is recommended that you use the same
       switch setting for all units in a given view. Furthermore, to
       prevent problems with spec view/load view compatibility, it is
       recommended that you use the same switch setting for all views in
       a given subsystem.

       There is no need for you to convert existing code that was
       compiled with the Retain_Delta1_Compatibility switch set to True.
       However, if you choose to convert existing code, you must set the
       switch to False in each of the affected libraries or views,
       demote the units to the installed state, and then repromote them
       to the coded state. Code views cannot be recompiled and therefore
       should be destroyed.

       For more information about the effects of this switch, see the
       new Library Management (LM) book and the D_12_1_1 release
       information. (Release information can be found online in
       !Machine.Release.Release_Notes.)


       7.8.  Changes to Other Library Management Facilities

       Commands in package !Commands.Access_List now print log messages
       indicating when they have completed and whether they completed
       successfully. Commands in package Access_List now also print the
       correct symbols for log messages. For information about
       log-message symbols and their meanings, see the documentation for
       !Tools.Profile.Msg_Kind. (PRS number 1000001-Sier-Geb)

       Comments have been added to the specification for the
       Library.Copy procedure to more accurately describe the default
       value for the Volume parameter. For additional information, see
       the documentation for Library.Nil in the new LM book and in
       online help. (PRS number 9123690-0150-4)

       The Library.Move procedure no longer moves any part of an Ada
       unit-either the specification or body-without sufficient access
       to the destination library. In previous releases, if you
       attempted to move a unit specification and body pair in a single
       operation, the Move command would fail to copy the unit
       specification but would successfully copy the unit body. (PRS
       number 2679572-Roge-Srp)

       The Library.Create@ procedures now require that the executing
       user have only Create access to the enclosing world or view. This
       change fixes a problem introduced in D_12_5_0 in which Owner
       access was required. (PRS number 9123690-0171-3 and CSR number
       5841)

       Procedures !Commands.Links.Edit and Links.Display now require
       Owner access to the world for which the links are being edited or
       displayed. In previous releases, only Read access was required.
       (PRS number 5367576-Blut-Smp)



       32                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


       7.9.  Changes to Device Input and Output

       The Sequential_Io.Read procedure and the
       Polymorphic_Sequential_Io.Read procedure
       have been fixed so that they no longer raise
       !Lrm.System.Operand_Class_Error or Nonexistent_Page_Error when an
       attempt is made to read the first character in a file.
       (CSR number 6016)


       7.10.  Changes to Printing

       The Abbreviations.Print command now handles print requests that
       specify multiple Ada units in the same way that it handles a
       print request for a single Ada unit. That is, when multiple
       objects are specified to the Object_Or_Image parameter and when
       all of those objects are Ada units, the Print command now
       processes the Highlight_Reserved_Words_For_Ada parameter. If any
       of the objects specified are not Ada units, this parameter is
       ignored. (PRS number 9123690-0168-2 and CSR number 5773)

       The Queue.Print command now forms valid VMS filenames for print
       requests. In previous releases, if you printed a file to a queue
       that was physically located on another machine and if that queue
       was FTP-based, then the filename formed for FTP transfer was
       invalid for VMS. When the print spooler tried to dequeue the
       request, several errors were logged and the queue was disabled.
       (PRS number 9123690-0168-8 and CSR number 5710)


       7.11.  Changes to System Backups

       The default parameter for the System_Backup.Backup procedure has
       been corrected so that the procedure now semanticizes
       successfully in command windows. Specifically, the value of the
       Variety parameter has been changed from Full to
       System_Backup.Full. See the new System Management Utilities (SMU)
       book or online help for additional information about this
       command. (PRS numbers 1711335-Gato-Gbd and 9123690-0135-8)

       The process of recovering a system backup has been changed so
       that it always prints some form of diagnostic message whenever it
       detects a situation in which it cannot complete the restoration.
       Furthermore, additional log messages indicate the beginning and
       completion of major stages in the restoration process. In
       previous releases, when a problem occurred while a backup was
       being restored, the process sometimes would hang without
       generating any messages. (PRS number 9123690-0133-9)

       The Verify_Backup procedure has a new parameter, Wait_Until, that
       allows you to specify the amount of time the procedure must wait
       before starting. The tape should be mounted immediately, but
       Verify_Backup does not start reading the tape until Wait_Until
       has expired. The fully qualified pathname for Verify_Backup is:


       RATIONAL     May 1992                                          33\f

       Rational Environment Release Information


          !Commands.System_Maintenance'Spec_View.Units.Verify_Backup

       (PRS number 9123690-0158-6)


       7.12.  Changes to the Diagnostic File System (DFS)


       7.12.1.  Renamed Procedures

       D_12_6_5 changes the specification of package
       !Machine.Dfs'Spec_View.Dfs. Specifically, the Dfs_ prefix has
       been removed from the names of the procedures introduced in
       D_12_5_0:

       *  Procedure Dfs_Copy is now procedure Copy

       *  Procedure Dfs_Directory is now procedure Directory

       *  Procedure Dfs_Display is now procedure Display

       *  Procedure Dfs_Make_Copy is now procedure Make_Copy

       *  Procedure Dfs_Open is now procedure Open

       *  Procedure Dfs_Read is now procedure Read

       Several new procedures also have been added to package Dfs; see
       section 6.3.


       7.12.2.  Analyze_Crashdump Prompts for Input

       Procedure Analyze_Crashdump by default now queries for input in
       an Envirnoment I/O window, rather than from within the log file.
       The full pathname for Analyze_Crashdump is
       !Machine.Dfs'Spec_View.Units.Analyze_Crashdump. (PRS number
       9123690-0165-6 and CSR number 5588)


       7.13.  Changes to Crash Analysis


       7.13.1.  Changes to the Crash Analysis Procedures

       The D_12_6_5 release includes enhancements to the process of
       analyzing R1000 crashes. In particular:

       *  Much of the process has been automated so that the system will
          capture as much information as possible and often will reboot
          automatically.

       *  A series of questions and menus have been added to the crash
          analysis process that:


       34                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


          -  Capture system-crash state

          -  Analyze system hardware

       For complete details, see Appendix B, "Diagnostic Crash
       Procedures."

       (PRS numbers 7483032-Gato-Jls and 7733953-Gato-Vnv)


       7.13.2.  Change to Crashdumps and Tombstones

       A problem with incomplete crashdump and tombstone files that was
       introduced in D_12_5_0 has been fixed. Crashdumps and tombstones
       now work correctly, and the trace and crash reason appear
       correctly in the error logs.

       This fix was released originally in DFS release D_12_5_0A
       (D2.2A).


       7.14.  Changes to Token Policies

       To simplify token administration, two changes have been made to
       token management for D_12_6_5:

       *  Environment-session tokens now can be transferred between
          Series 400 and 300 machines.

       *  The Rational X Interface (RXI) and Windows Interface (RWI) no
          longer require special product tokens. These products now are
          bundled with the Environment and are restricted only by
          Environment session tokens.

       Rational's other token-management facilities have been tightened
       to more rigorously account for other product tokens. Although the
       number of tokens has not been changed for any particular site,
       system, or product, you may discover that you are running out of
       tokens more frequently than in the past.


       7.14.1.  Transferring Tokens between Series 400 and 300

       Beginning with D_12_6_5, Environment tokens may be transferred
       between Series 400 and Series 300 R1000s. That is, Full Session
       tokens and Login tokens now can be transferred between machines
       of different series. This change is intended to make it easier to
       maintain sites that have both Series 400 and 300 machines and to
       enable those sites to move tokens in response to project needs.

       To make this token transfer possible, the
       !Commands.System_Maintenance'Spec_View.Units.Accept_Tokens and
       Donate_Tokens procedures have been changed.



       RATIONAL     May 1992                                          35\f

       Rational Environment Release Information


       For example, assume that you have a Series 400 with twelve Full
       Session tokens and a Series 300 with six Login tokens. To
       transfer two tokens from the Series 400 to the Series 300,
       perform the following steps:

       *  On the donating Series 400, execute the Donate_Tokens command,
          specifying Full Session for the product:

          Donate_Tokens (Product                => "Full Session",
                         Donation               => 2, -- number to
          donate
                         Resulting_Remote_Count => 8, -- original 6 plus
          2 new
                         Remote_Machine_Id      => Id of the accepting
          300,
                         Remote_Site            => ">>SITE ID<<",
                         Response               => "<PROFILE>");


          The output generated by this command indicates that two tokens
          have been donated, resulting in ten tokens remaining on the
          current Series 400. It also supplies the completed
          Accept_Tokens command to be run on the accepting system:

          92/05/18 12:47:03 ::: [Donate_Tokens ("Full Session", 2, 8,
          345678,
          92/05/18 12:47:03 ... "XYZ000001", "<PROFILE>")].
          92/05/18 12:47:03 +++ Donation of 2 tokens for Full Session
          has resulted
          92/05/18 12:47:03 ... in 10 tokens.
          92/05/18 12:47:03 +++ Running Snapshot daemon.
          Run the following on the remote machine:
          Accept_Tokens (Product         => "Full Session",
                         Donation        => 2,
                         Resulting_Count => 8,
                         Code            => "16A8AE0E1E838FB5");
          92/05/18 12:47:15 ::: [end of Donate_Tokens].

       *  On the receiving Series 300, execute the Accept_Tokens command
          generated in the previous step:

          Accept_Tokens (Product         => "Full_Session",
                         Donation        => 2,
                         Resulting_Count => 8,
                         Code            => "16A8AE0E1E838FB5",
                         Authorization   => "",
                         Response        => "<PROFILE>");


          Upon acceptance of the token(s), the Environment automatically
          changes the token kind to Login.

       Note that the site ID must be the same on both the donating and
       accepting machines. (You can use Show_Site to display the site ID
       for a machine.) Note also that the Donate_Tokens and

       36                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


       Accept_Tokens commands must be run on the same day.


       7.14.2.  Token Changes to RXI

       Beginning with D_12_6_5, the most recent release of RXI (10_9_0)
       is delivered with the Environment. Although RXI must still be
       separately installed, it is now authorized on all D_12_6_5
       systems. Thus, product tokens are no longer required. This change
       is in response to the evolution of RXI as one of the primary
       access mechanisms to the Environment.

       All problem reports concerning the improper consumption of tokens
       by RXI now are considered closed. (PRS numbers 2604297-Rati-Pbk,
       4123589-Blut-Jgp, 6398339-Blut-Med, and others)

       For more information about RXI and D_12_6_5, see section 6.6.1.


       7.15.  Miscellaneous Changes to System Management

       You now can set the timeout value for logging in through the
       console command interpreter as part of machine initialization.
       The default setting is 60.0 (1 minute). To change the setting,
       edit the specification for
       !Machine.Initialization.Rational.Servers in either of the
       following ways:

       *  Change the value for the Console_Timeout paramater directly

       *  Insert a notation such as the following at the end of the
          specification:

          --| Parameter Console_Timeout => "2 * 60.0"


       The new value takes effect the next time you reboot your machine.

       The !Machine.Initization.Rational.Terminals procedure now
       generates messages that properly reflect the parameters of the
       Terminal.Set_Login_Disabled procedure, which is called by
       Rational.Terminals. (PRS number 6242437-Blut-Vo)

       A problem has been fixed in which the software flow control on
       port 16 failed for Series 300C, 300S, 400C, and 400S systems.
       (PRS numbers 9123690-0164-4 and 9123690-0165-8 and CSR number
       5559)

       Procedure Log_Reader.Load_Logs has been fixed so that it no
       longer loads the error logs for the current day unless the
       current day is between Start_Time and Stop_Time. The full
       pathname for Load_Logs is
       !Tools.System_Availability'Spec_View.Units.Log_Reader.Load_Logs.
       (PRS number 9123690-0173-8 and CSR number 5990)


       RATIONAL     May 1992                                          37\f

       Rational Environment Release Information


       The Action Manager now detects and recovers gracefully from
       certain types of invalid data. (PRS number 9123690-0152-5 and CSR
       number 4741)

       The comments in the specification for the
       System_Utilities.Get_Board_Info function have been improved. In
       particular, they now explain that board number zero (0) is IOA
       ONLY in a Series 100 and that the number one (1) board is
       SYS/IOC, which is the SYSBUS board for a Series 100 and the IOC
       board for a Series 200, 300, or 400. For additional information,
       see package System_Utilities in the updated System Management
       Utilities book (Volume 10 of the ERM) or in online help. (PRS
       numbers 9123690-0155-0 and 9123690-0155-1)

       The Check_Universe_Acls procedure has been fixed so that it now
       reports the correct access information for
       !Machine.Initialization. The full pathname for
       Check_Universe_Acls is
       !Commands.System_Maintenance'Spec_View.Units.Check_Universe_Acls.
       (PRS number 9176782-Gato-Gbd)

       The directory daemon has been enhanced to perform more
       consistency checking. Whenever a potential problem is detected,
       the directory daemon now attempts to log a meaningful error
       message and to proceed with the collection.

       A problem has been fixed in which the directory manager sometimes
       would detect an inconsistency erroneously when the version of an
       object was being changed (that is, when an existing object was
       being edited). This error would cause the following to be logged
       in the system's error log:

          Directory inconsistency exception in Object_Perform
          Calling task (16#xxxxxxx#) will be stopped in wait service

       (CSR numbers 5260 and 5261)


       7.16.  Changes to CMVC

       The Cmvc.Initial procedure has been fixed so that when it is used
       to create a new path in an existing subsystem, it no longer looks
       at the System_Object_Type and Create_Load_View parameters unless
       they are needed. Now Cmvc.Initial will ignore the default value
       of the System_Object_Type parameter if the subsystem already
       exists. If the subsystem exists and is either a Combined or
       System subsystem, Cmvc.Initial will ignore the Create_Load_View
       parameter because there is no choice of which kind of view to
       create. (PRS number 7311575-Wash-Jim)

       Cmvc.Copy, Make_Path, Make_Subpath, and Make_Spec_View now accept
       a single space as the null string in the View_To_Import
       parameter. Furthermore, log messages have been corrected so that
       if an invalid value is entered for the View_To_Import, the
       resulting message now includes the closing parenthesis. (PRS

       38                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


       Number 2809652-Clem-Jim)

       Cmvc.Copy, Make_Path, Make_Subpath, Release, and Make_Spec_View
       now properly copy Ada units from any directory in the subsystem,
       not just those units in the Units directory. In particular for
       Make_Spec_View, these sibling directories are treated like the
       Units directory and only those items specified in the
       State.Exports file are copied. This file is resolved in the
       context of the Units directory; to include a unit outside this
       directory you must provide an appropriate relative pathname-for
       example, ^.Subdirectory_Name.Simple_Name-or a fully qualified
       pathname. (PRS numbers 0-0358-2 and 9123690-0156-6 and CSR number
       4971)

       To create objects in a world or subsystem view, you now need only
       Create access to that world or view. This change fixes a problem
       introduced in D_12_5_0 in which Owner access was required. (PRS
       numbers 9123690-0171-3 and CSR number 5841)


       7.17.  Update to !Tools.Math_Support

       An update to the !Tools.Math_Support subsystem is included in the
       D_12_6_5 release.

       *  In package Generic_Primitive_Functions:

          -  The Scale function has been corrected for very large and
             very small scales.

          -  The Remainder function has been improved in cases where
             arguments are several orders of magnitude apart.

          -  The Truncate function has been simplified.

       *  The implementation of package Generic_Elementary_Functions has
          been replaced by a package with higher accuracy. The new
          implementation was developed by Peter Tang and Kenneth Dritz,
          from the Argonne National Laboratory, with minor adjustments
          for the R1000. This change fixes several errors in domain
          checking and a major error in the code for Tangent.

       For more details, see the online information in:

          !Tools.Math_Support- .R1000_Code1_1_0.Units.Release_Note


       7.18.  Miscellaneous Changes


       7.18.1.  Change to Library_Object_Editor

       The specification for procedure
       !Tools.Library_Object_Editor.Display has been changed to match
       the Environment's implementation. In particular, the In_Place

       RATIONAL     May 1992                                          39\f

       Rational Environment Release Information


       parameter has been added to the procedure's specification:

          procedure Display (Library      : Directory.Object;
                             Selection    : Directory.Object :=
          Directory.Nil;
                             In_Place     : Boolean          := False;
                             Force_Redraw : Boolean          := False);

       The In_Place parameter specifies whether the current window frame
       should be used. The default is False.


       7.18.2.  Change to Code_Segment_Object_Editor

       The specification to procedure
       !Tools.Code_Segment_Object_Editor.Edit has been changed to match
       the Environment's implementation. In particular, a parameter,
       The_Offset, has been added:

          procedure Edit (The_Segment : Integer;
                          The_Offset  : Integer := 0;
                          In_Place    : Boolean := False);

       Treating a segment as a file, The_Offset allows "editing" from a
       place other than the beginning of the segment.


       8.  Documentation


       8.1.  New Printed Documentation

       The D_12_6_5 release of the Environment is accompanied by three
       updated volumes of the Rational Environment Reference Manual
       (ERM):

       *  Volume 4: Session and Job Management (SJM)

       *  Volume 5: Library Management (LM)

       *  Volume 10: System Management Utilities (SMU)

       These books have been significantly rewritten and feature:

       *  A new, easier-to-read format

       *  Greatly expanded "how to use" information, in the form of:

          -  New Key Concepts sections for each book

          -  Extensive introductions to major packages

       *  A quick reference for parameter-value conventions (naming
          conventions) at the end of each book


       40                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


       *  Two previously undocumented packages, Remote and
          Remote_Passwords (see SJM)

       *  Corrections and clarifications to existing information

       Each customer site should receive one copy of each volume for
       every system under an active support contract. If you have not
       received your new documentation or if you would like to order
       additional documentation, please contact your Rational
       representative.


       8.2.  New Online Documentation

       The D_12_6_5 release of the Environment includes new online help
       for all the packages documented in the SJM, LM, and SMU books:

       *  Session and Job Management (SJM):

             Job                     Log
             Profile                  Program
             Remote                  Remote_Passwords
             Search_List             What

       *  Library Management (LM):

             Access_List             Access_List_Tools
             Archive                 Compilation
             File_Utilities          Library
             Links                   Switches
             Xref

       *  System Management Utilities (SMU):

             Daemon                  Message
             Operator                Queue
             Scheduler               System_Backup
             System_Utilities        Tape
             Terminal

       D_12_6_5 also includes a revision of the online information about
       machine initialization in
       !Machine.Initialization.Guide_To_Machine_Initialization. You can
       obtain this information by requesting online help for
       !Machine.Initialization.

       To obtain online help for a particular package or command, use
       the What.Does command, supplying all or part of the name of the
       package or command in question.


       8.3.  New Help for Switches

       D_12_6_5 includes new online help for many switches. To obtain
       help for a particular switch, place the cursor on the switch in

       RATIONAL     May 1992                                          41\f

       Rational Environment Release Information


       question and execute !Commands.Common.Explain (generally
       available through the [#Explain#] key or the [#Object#] - [#?#]
       key combination).


       8.3.1.  Session Switches

       The following session switches have new help:

          Command_Cg.Check_Compatibility Command_Cg.Elab_Order_Listing
          Command_Cg.Page_Limit         Command_Cg.Retain_Delta1_
       Compatibility
          Command_Cg.Terminal_Echo      Profile.Log_File
          Profile.Reaction               Session_Ftp.Remote_Directory
          Session_Ftp.Remote_Machine    Session_Ftp.Remote_Roof
          Session_Ftp.Remote_Type


       8.3.2.  Library Switches

       The following library switches have new help:

          Directory.Create_Internal_Links Ftp.Remote_Directory
          Ftp.Remote_Machine            Ftp.Remote_Roof
          Ftp.Remote_Type               R1000_Cg.Delta1_Code_View_
       Compatibility
          R1000_Cg.Elab_Order_Listing   R1000_Cg.Page_Limit
          R1000_Cg.Retain_Delta1_Compatibility R1000_Cg.Terminal_Echo
          Semantics.Reject_Inevitable_Exceptions
       Semantics.Reject_Undefined_Pragmas


























       42                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


                                  Appendix A
                        Guide to Machine Initialization

       D_12_5_0 changed the software that is automatically executed by
       the Environment during the boot process. These changes apply to
       D_12_5_0 and all subsequent releases (including D_12_6_5). In
       particular, the software was reorganized to make it easier to:

       *  Install layered products

       *  Distinguish Rational-specific, site-specific, and
          machine-specific customizations

       *  Configure a network of printers for large sites

       The following subsections describe the D_12_5_0 mechanisms for
       initializing an R1000. Change bars indicate sections that have          |
       been added to this document since D_12_5_0; the initialization          |
       mechanisms themselves have not changed. You can read this               |
       document online by traversing to                                        |
       !Machine.Initialization.Guide_To_Machine_Initialization or by           |
       executing What.Does ("!Machine.Initialization").                        |

       See also the "Installation Procedure" for specific steps to
       convert any existing initialization software to the D_12_5_0
       mechanisms.


       A.1.  Overview

       Each time an R1000 is booted, software is executed that
       initializes layered products, sets various system parameters (for
       example, disk-collection thresholds and snapshot intervals),
       starts servers, enables terminals, and so on.

       In Environment releases prior to D_12_5_0, the boot process
       automatically executed !Machine.Initialize, which in turn
       executed a family of procedures (with names of the form
       !Machine.Initialize_@).

       In D_12_5_0 and subsequent releases, !Machine.Initialize is no
       longer used. Instead, all system-initialization software resides
       in the world !Machine.Initialization, which is structured as
       shown:

          !Machine.Initialization : Library (World);
            Local    : Library (World);
            Rational : Library (World);
            Site     : Library (World);
            Start    : Ada (Load_Proc);

       The D_12_5_0 (or later) boot process automatically executes the
       Start procedure, which in turn executes all the procedures that
       reside in (or are referenced in) the Local, Rational, and Site
       worlds:

       RATIONAL     May 1992                                          43\f

       Rational Environment Release Information


       *  The world Rational contains or references software that
          initializes Rational products and provides standard settings
          for many system parameters. Users should not modify the
          objects in this world.

       *  The worlds Site and Local provide a place for system managers
          to put objects that customize the initialization process. Such
          objects can be used to override various standard system
          parameter settings, to initialize customer-written
          applications, and to specify terminal and printer
          configurations:

          -  The world Site is intended for customer-written objects
             that are common to two or more machines at a given site.

          -  The world Local is intended for customer-written objects
             that apply only to the current R1000.

       The following subsections give more detail about these worlds.


       A.1.1.  World !Machine.Initialization.Rational

       The Rational world contains objects supplied by Rational that
       perform basic initialization services for the current R1000.
       These objects include:

       *  Loaded main procedures that are executed by
          !Machine.Initialization.Start whenever the system is booted.

       *  "_Start" files that reference procedures located elsewhere in
          the Environment. These are text files whose names end with
          _Start; the procedures they reference are executed by
          !Machine.Initialization.Start.

       On a typical system, this world contains objects such as the
       following:

          !Machine.Initialization.Rational : Library (World);
            Clean_Machine_Temporary   : C Load_Proc;
            Cross_Compilers           : C Load_Proc;
            Design_Facilities         : C Load_Proc;
            Dtia                      : C Load_Proc;
            Finish_Install            : C Load_Proc;
            Log_Previous_Outage_Start :   Text;
            Mail_Start                :   Text;
            Network                   : C Load_Proc;
            Parameters                : C Load_Proc;
            Printers                  : C Load_Proc;
            Servers                   : C Load_Proc;
            Teamwork_Interface        : C Load_Proc;
            Terminals                 : C Load_Proc;

       The procedures that are supplied or referenced in this world:


       44                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


       *  Perform cleanup and compaction

       *  Initialize the installed Rational products, such as CDFs, RDF,
          Rational Networking, and so on

       *  Initialize servers, including the archive and FTP servers

       *  Set standard values for various system parameters, such as the
          medium-term scheduler, snapshot intervals and warnings,
          disk-collection thresholds, and so on

       *  Initialize terminals and printers according to user-specified
          requirements (given in files in the Site and Local worlds)

       For more specific information, you can browse the comments in
       each object in this world.


       A.1.2.  Worlds !Machine.Initialization.[Site,Local]

       The Site and Local worlds are where system managers can create
       objects to control sitewide or machine-specific initialization
       and configuration. These objects may include:

       *  Ada procedures that supplement or override the basic
          initialization services performed by objects in the Rational
          world. All procedures in the Site and Local worlds are
          executed by !Machine.Initialization.Start each time the system
          is booted.

       *  "_Start" files that reference procedures located elsewhere in
          the Environment. These are text files whose names end with
          _Start; the procedures they reference are executed by
          !Machine.Initialization.Start. Using a "_Start file" is
          equivalent to calling Program.Run or Program.Run_Job to
          execute the referenced procedure. (See section A.3.2.)

       *  Configuration files that tell the Environment how to enable
          and configure ports for login and ports for printing. These
          are text files that are read by two of the procedures executed
          by !Machine.Initialization.Start. A default file for enabling
          login ports is created in the Local world during installation.
          (See sections A.4 and A.5.)

       *  Text files that tell the Environment how to initialize layered
          products such as the Cross-Development Facility or the
          Rational Design Facility. (See the comments in the
          specifications of the Cross_Compilers and Design_Facilities
          procedures in world !Machine.Initialization.Rational.)

       At most sites, system managers will use the Site and/or Local
       worlds as a place for procedures (or "_Start" files) that:

       *  Set password policy


       RATIONAL     May 1992                                          45\f

       Rational Environment Release Information


       *  Set login limits

       *  Start server programs for site-specific networking, databases,
          and applications (for example, a login monitor or network
          security server)

       At some sites, system managers may need to use these worlds for
       procedures that:

       *  Provide nonstandard daemon settings-for example:

          -  The time at which daily and weekly clients run. (The
             standard times are 3:00 a.m. for daily clients and 2:30
             a.m. for weekly clients.)

          -  How often snapshots are taken. (The standard snapshot
             interval is every 30 minutes.)

          -  Whether (and when) to send a snapshot warning, snapshot
             start messages, and snapshot finish messages. (The standard
             is to send a warning 20 seconds before the next snapshot
             and to notify users only when the snapshot has finished.)

          -  The interval for daemon warnings. (The standard is to send
             a warning 2 minutes before the daily clients begin.)

          -  Whether to send disk-collection threshold warnings. (The
             standard is to warn users when collection thresholds have
             been passed.)

          -  What kinds of system log messages appear on the operator
             console. (The standard is to route only warning, problem,
             and fatal messages to the operator console.)

          -  Whether clients should perform access-list compaction. (The
             standard is for all relevant clients to perform access-list
             compaction.)

       *  Provide customized disk-collection thresholds (see also
          section A.3.4). Note, however, that values set by the
          procedure in world Rational are calculated based on your disk
          configuration and should be sufficient; see your Rational
          technical representative if you want to use different
          thresholds.

       *  Provide nonstandard medium-term scheduler settings. (Use the
          Scheduler.Display command to see the standard settings.) Note,
          however, that values set by the procedure in world Rational
          should be sufficient; see your Rational technical
          representative if you want to use different settings.






       46                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


       A.2.  Setting Up the Site and Local Worlds

       If you have a new R1000, you can use the following guidelines to
       set up your Site and Local worlds:

       1. Decide whether you need to provide any system customizations
          such as those listed in section A.1.2. Create the appropriate
          procedures and/or "_Start" files, using the hints given in
          section A.3.

       2. Inspect the default Terminal_Configuration file that was
          created in the Local world during installation. This file
          enables ports 235 through 249 for login. Edit this file if you
          want to enable a different set of ports and/or specify further
          connection or communication information; see section A.4.

       3. Decide whether to implement a printer-configuration mechanism
          to enable users to use !Commands.Abbreviations.Print and to
          facilitate the use of networked printers. Create the
          appropriate files; see section A.5.

       4. If you have layered products such as the CDF or RDF, inspect
          the comments in the specifications of the Cross_Compilers and
          Design_Facilities procedures in world
          !Machine.Initialization.Rational. Create any files required
          for initializing these products (for example, a text file that
          registers an RDF customization).

       If you are upgrading from a release prior to D_12_5_0, the Local
       world will already contain several objects that contain
       customizations:

       *  A Terminal_Configuration file is created automatically in the
          Local world, enabling the same set of ports that were enabled
          at the time of installation. This file also preserves any
          nondefault communication characteristics that were in effect
          for RS232 ports.

       *  The !Machine.Initialize_Site procedure is automatically moved
          into the Local world, as described in the "Installation
          Procedure."

       After your R1000 has been upgraded to D_12_5_0 or a more recent
       release, you can use the following guidelines to set up your Site
       and Local worlds:

       1. Inspect the Initialize_Site procedure that has been copied
          into the Local world during installation. Edit this procedure
          to preserve any system customizations that are still
          appropriate. You may want to split this procedure into
          separate procedures and move appropriate procedures into the
          Site world. See the "Installation Procedure" for specific
          recommendations for handling this procedure. See also section
          A.3 for information about initialization procedures and
          "_Start" files.

       RATIONAL     May 1992                                          47\f

       Rational Environment Release Information


       2. Inspect the default Terminal_Configuration file that was
          created in the Local world during installation. Edit this file
          if you want to enable a different set of ports and/or specify
          further connection or communication information; see section
          A.4.

       3. Decide whether to implement a printer-configuration mechanism
          to enable users to use !Commands.Abbreviations.Print and to
          facilitate the use of networked printers. Create the
          appropriate files; see section A.5.

       4. If you have layered products such as the CDF or RDF, inspect
          the comments in the specifications of the Cross_Compilers and
          Design_Facilities procedures in world
          !Machine.Initialization.Rational. Create any files required
          for initializing these products (for example, a text file that
          registers an RDF customization).


       A.3.  Hints for Implementing System Customizations

       This section provides information about:

       *  Writing customized initialization procedures in the Site and
          Local worlds; see section A.3.1.

       *  Writing "_Start" files that reference procedures that reside
          in other Environment libraries; see section A.3.2.

       *  Controlling the order in which the customized initialization
          procedures and the "_Start" files are processed by the Start
          procedure; see section A.3.3.

       *  Customizing disk-collection thresholds; see section A.3.4.


       A.3.1.  Writing Customized Initialization Procedures

       You can write procedures in the Site or Local worlds to implement
       system customizations such as password policies, system daemon
       settings, and so on. All procedures that appear in these worlds
       are executed by the Start procedure each time the R1000 boots.

       Customized initialization procedures can contain calls to
       procedures in various standard Environment packages. Some useful
       packages include:

       *  Package Daemon, which contains procedures that schedule
          clients and warnings

       *  Package Operator, which contains procedures that set password
          policy and login limits

       *  Package Scheduler, which contains procedures that control the
          medium-term scheduler

       48                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


       *  Package Program, which contains procedures that execute other
          programs

       Note that:

       *  You do not have to provide initialization procedures for
          configuring login ports and printer ports; it is recommended
          that you use configuration files instead (see sections A.4 and
          A.5).

       *  You do not have to write an initialization procedure "from
          scratch" for customizing disk-collection thresholds; if you
          must customize these thresholds, it is recommended that you
          edit the sample initialization procedure provided in the Local
          world (see section A.3.4).

       When writing customized initialization procedures:

       *  You can create separate procedures or put all calls in a
          single procedure. Separate procedures take longer to execute
          but make it easier to see what operations are being performed.

       *  You must not duplicate procedure names across the Rational,
          Site, and Local worlds.

       *  You can specify the relative execution order of procedures
          using annotations (see section A.3.3).


       A.3.2.  Using "_Start" Files to Reference Initialization
       Procedures

       As an alternative to writing procedures directly in the Site and
       Local worlds, you can create "_Start" files in one or both worlds
       to reference customized initialization procedures that reside
       elsewhere in the Environment. "_Start" files are processed by the
       Start procedure each time the R1000 boots, and the procedures
       they reference are executed.

       When writing "_Start" files:

       *  You must choose filenames that use the _Start suffix.

       *  You must not duplicate filenames across the Rational, Site,
          and Local worlds.

       *  You must use annotations to reference the procedure to be
          executed, as illustrated below.

       *  You may use annotations to control the order in which the
          Start procedure executes the referenced procedures (see
          section A.3.3).

       Referencing a procedure in a world or directory: A "_Start" file
       with the following contents illustrates the basic set of

       RATIONAL     May 1992                                          49\f

       Rational Environment Release Information


       annotations required to reference a procedure that resides in an
       Environment world or directory:

          --|Procedure_Name Initialize_Routine
          --|Procedure_Context !Commands.Example
          --|Parameters Notify => "manager",
          --|Parameters Effort_Only => False

       *  The --|Procedure_Name annotation specifies the name of the
          referenced procedure. If the procedure resides directly in a
          library, you supply the procedure's simple name; if it resides
          in a package, supply the name in the form
          Package_Name.Procedure_Name.

       *  The --|Procedure_Context annotation specifies the Environment
          world or directory that contains the referenced procedure.

       *  Each of the --|Parameters annotations specifies the value to
          be used for one of the procedure's parameters. Note that
          string values must be enclosed in quotation marks, and commas
          must be included to separate multiple parameters.

       Referencing a procedure in a subsystem: A "_Start" file with the
       following contents illustrates how to reference a procedure that
       resides in an Environment subsystem. Note that you must replace
       the --|Procedure_Context annotation with the --|Subsystem and
       (optional) --|Activity annotations:

          --|Procedure_Name Excelan_Boot_Server
          --|Subsystem !Targets.Implementation.Motorola_68k_Download
          --|Activity !Machine.Release.Current.Activity
          --|No_Wait

       *  The --|Subsystem annotation specifies the name of the
          subsystem that contains the procedure. (When this annotation
          is specified, the --|Procedure_Context annotation is ignored.)

       *  The --|Activity annotation specifies the activity to be used
          to obtain the view name and construct the full pathname of the
          procedure. If you omit this annotation,
          !Machine.Release.Current.Activity is used.

       *  Note that Excelan_Boot_Server is a parameterless procedure;
          otherwise, one or more --|Parameters annotations would be
          present.

       *  The --|No_Wait annotation permits concurrent execution (see
          section A.3.3). This annotation is present because this
          procedure starts a server.

       Specifying further information: "_Start" files may also contain
       annotations that control the order in which the Start procedure
       will execute the referenced procedures. See section A.3.3.



       50                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


       Using a "_Start" file is equivalent to executing the referenced
       procedure via Program.Run_Job or Program.Run. See the comments in
       the specification of !Machine.Initialization.Start for additional
       annotations that specify the equivalent of the Options parameter
       in the Program.Run_Job procedure and the Context parameter in the
       Program.Run and Program.Run_Job procedures.


       A.3.3.  Controlling the Order of Execution

       You can specify the relative execution order of all
       initialization procedures (including those referenced in "_Start"
       files). To do this, you include annotations in the appropriate
       procedure specifications or "_Start" files:

       *  To specify that procedure A cannot run until procedure B has
          finished, you include the annotation --|Prerequisite B in the
          specification of procedure A (or in the "_Start" file that
          references procedure A).

          If procedure B is referenced in a "_Start" file, you specify
          the filename as the annotation's argument: --|Prerequisite
          B_Start.

          Note that the argument of this annotation is a simple name and
          that all three worlds (Rational, Local, and Site) are searched
          for that simple name. Therefore, simple names must be unique
          across these three worlds if you want to use this annotation.

       *  To specify that procedure A must finish before any other
          procedure can start executing, you include the annotation
          --|Wait in the specification of procedure A (or in the
          "_Start" file that references procedure A).

          Using this annotation is equivalent to executing procedure A
          using Program.Run.

       *  To specify that procedure A is to execute as a separate job
          concurrent with other procedures, you include the annotation
          --|No_Wait in the specification of procedure A (or in the
          "_Start" file that references procedure A).

          Using this annotation is equivalent to executing procedure A
          using Program.Run_Job.

       If none of the annotations listed above are present in a given
       procedure or "_Start" file, the --|Wait annotation is assumed.
       That is, procedures are executed sequentially unless told
       otherwise.

       If a circular dependency results from a combination of
       annotations, it will be reported and ignored, so that each
       procedure will run.



       RATIONAL     May 1992                                          51\f

       Rational Environment Release Information


       Note that you can execute the Start command with the Effort_Only
       parameter set to True to test the execution order that results
       from your annotations.

       See the comments in the specification of the
       !Machine.Initialization.Start procedure for a complete
       description of annotation usage, along with examples.


       A.3.4.  Customizing Disk-Collection Thresholds

       You can customize the disk-collection thresholds for the
       particular needs of your site. To implement a change in your
       disk-collection thresholds:

       1. Create an empty Ada unit in the Local world.

       2. Copy the contents of the
          !Machine.Initialization.Local.Local_Gc_Thresholds_Sample file
          into the empty Ada unit.

       3. In the Ada unit, edit the Thresholds1 and Thresholds2 arrays
          to specify the desired thresholds.

       4. Promote the Ada unit.

       Note, however, that values set by the procedure in world Rational
       are calculated based on your disk configuration and should be
       sufficient; see your Rational technical representative if you
       want to use different thresholds.


       A.4.  Enabling and Configuring Login Ports

       D_12_5_0 and subsequent releases provide a file-driven mechanism
       in !Machine.Initialization for enabling and configuring ports for
       login.

       At the very least, you must ensure that this mechanism has enough
       information to enable the desired login ports (see section
       A.4.1). In addition, you may optionally use this mechanism to
       specify:

       *  Connection and terminal-type characteristics for Telnet and
          RS232 ports, such as logoff on disconnect, disconnect on
          logoff, and so on

       *  Communication characteristics for RS232 ports, such as flow
          control, parity, and so on

       Such information is specified using the options described in
       section A.4.4.




       52                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


       A.4.1.  Enabling Ports for Login

       Ports for terminal devices must be enabled for login each time an
       R1000 boots. Accordingly, the !Machine.Initialization.Start
       procedure calls a procedure called Terminals in the Rational
       world. This procedure in turn consults a file called
       Terminal_Configuration in the Local world to determine which
       ports to enable for login. This file-driven mechanism takes the
       place of a procedure such as !Machine.Initialize_Terminals, which
       enables terminals through calls to the Operator.Enable_Terminal
       procedure.

       The Terminal_Configuration file is created automatically in the
       Local world during installation:

       *  On a new machine, a Terminal_Configuration file is created
          that enables ports 235 through 249 for login.

       *  On an R1000 that is being upgraded from a previous Environment
          release, the Terminal_Configuration file contains entries for
          the same set of ports that were enabled at the time of
          installation. (This file also preserves any nondefault
          communication characteristics that were in effect for RS232
          ports; see section A.4.4.)

       You can edit the Terminal_Configuration file at any time to
       change which ports are enabled. The changes take effect the next
       time you boot the R1000. Alternatively, you can execute the
       Rational.Terminals procedure to make the changes take effect
       without booting the R1000. Note that you must keep the
       Terminal_Configuration file in the Local world, even if you want
       to enable the same ports on all machines at a given site.

       Following is a sample Terminal_Configuration file containing
       basic enabling information:

          16 => (Enable)
          224 .. 249 => (Enable)
          -- Ports 250 and 251 are for printers; disable them for login
          250..251 => (Login_Disabled)

       As shown, the Terminal_Configuration file consists of:

       *  Comments preceded with Ada comment notation (--)

       *  Entries of the general form: Port_Range => (Options), where:

          -  Port_Range can be a single port number or a range of port
             numbers

          -  Options must be enclosed in parentheses

       The options that pertain to enabling and disabling ports are
       summarized in Table A-1.


       RATIONAL     May 1992                                          53\f

       Rational Environment Release Information




             Table A-1   Options for Enabling and Disabling Ports
        ------------------------------------------------------------ 
       |            |                                               |
       |   Option   |                  Description                  |
        ------------------------------------------------------------ 
       |            |                                               |
       |Enable      |When specified for a given port, enables the   |
       |            |port for login. Note that the port cannot      |
       |            |subsequently be enabled for any other device,  |
       |            |such as a printer.                             |
        ------------------------------------------------------------ 
       |            |                                               |
       |Login_      |When specified for a given port, prevents the  |
       |Disabled    |port from being enabled for login-for example, |
       |            |by subsequent usage of the                     |
       |            |Operator.Enable_Terminal command. Note that the|
       |            |port can subsequently be enabled for other     |
       |            |devices, such as printers.                     |
        ------------------------------------------------------------ 
       |            |                                               |
       |Disable     |When specified for a given port, disables the  |
       |            |port for all devices. Note that the port can   |
       |            |subsequently be enabled for any device,        |
       |            |including login. Specifying this option is     |
       |            |equivalent to having no entry for the port in  |
       |            |the file.                                      |
        ------------------------------------------------------------ 



       Port 16 is always enabled for login, regardless of whether an
       entry exists for it. An entry for port 16 is included in the
       automatically created Terminal_Configuration file for
       explicitness.

       Do not assign the Enable option to any port that you plan to
       enable for a printer or other device (such as a CDF). Instead,
       you can assign the Login_Disabled option or the Disable option to
       those ports, or you can simply omit entries for them from the
       file. Assigning the Login_Disabled option is recommended if you
       want to ensure that printer ports cannot be enabled for login
       even if the print spooler is killed.


       A.4.2.  Customizing Port Characteristics

       You can add information to the Terminal_Configuration file to
       specify connection characteristics for RS232 ports and
       communication characteristics for RS232 and Telnet ports. Such
       information is specified through the options listed in section
       A.4.4.



       54                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


       The simplest way to specify multiple options is to assign them
       directly to a port or range of ports:

       *  Multiple options in a single entry must be enclosed in
          parentheses.

       *  Multiple options must be separated by commas.

       *  The options can extend over several lines, although the entry
          itself must start on a new line.

       For example, the following entry assigns several connection
       characteristics to ports 224..249 and then enables those ports:

          224..249 => (Logoff_On_Disconnect,
                       Disconnect_On_Logoff,
                       Enable)

       You can organize recurrent sets of options and improve
       readability in the Terminal_Configuration file by defining an
       abbreviation for each set of options and then assigning each
       abbreviation to a port or range of ports:

       *  Abbreviation entries are of the general form Abbreviation =
          Options. Note that the equals sign (=) is used to define
          abbreviations; the => symbol is used for port assignment.

       *  Existing abbreviations can be nested in the definition of new
          abbreviations.

       For example, the following entries create the abbreviations
       User_Ports and Telnet_Ports, assigning the Telnet_Ports
       abbreviation to ports 224..249:

          -- Port settings for user login ports
          User_Ports   = (Logoff_On_Disconnect, Disconnect_On_Logoff)

          -- Port settings for Telnet ports
          Telnet_Ports = (Terminal_Type => Xrterm, User_Ports)

          224..249     => (Telnet_Ports, Enable)

       When adding entries to a Terminal_Configuration file, bear in
       mind that:

       *  Nondefault communication characteristics for RS232 ports must
          be set each time an R1000 boots. Consequently, if a port is to
          have nondefault values for any of the options listed in Table
          A-4, you must include these options in the entry for that
          port. Omitting an option causes its default value to be set.

       *  Connection and terminal-type characteristics persist across
          boots, retaining the last values that were set for them. Thus,
          in principle, the options listed in Tables A-2 and A-3 need to
          be set only once and then can be omitted from the

       RATIONAL     May 1992                                          55\f

       Rational Environment Release Information


          Terminal_Configuration file. However, you may choose to
          include values for these options in the file to ensure that
          booting the system resets them to the proper values in case
          they had been changed.

       *  The options for each port are set in the order in which they
          are assigned in the Terminal_Configuration file. Similarly,
          the options in an abbreviation are set in the order in which
          they are declared. If a single port number is included in the
          ranges of more than one entry, that port takes the options of
          the last entry in which it appears.


       A.4.3.  A Sample Terminal_Configuration File

       The following sample file shows how a system manager can use
       abbreviations to organize port information meaningfully. Note
       that a number of connection options have been explicitly set to
       ensure that booting the system sets them to a known value. Note
       also that specifying the Disable option for the printer ports is
       not absolutely necessary; however, specifying this option ensures
       that no previous entry in the file had inadvertently enabled
       these ports.

          -- Operator line 16 settings
          Operator_Port = (~Logoff_On_Disconnect,
                           ~Disconnect_On_Logoff,
                           ~Login_Disabled)

          -- User login port settings
          User_Ports = (Logoff_On_Disconnect, Disconnect_On_Logoff,
                        ~Login_Disabled, ~Log_Failed_Logins,
                        ~Disconnect_On_Failed_Login,
          ~Disconnect_On_Disconnect)

          -- Dial-in port connection settings
          Dialin_Ports = (Terminal_Type => VT100,
                          Input_Rate => Baud_2400, Output_Rate =>
          Baud_2400,
                          Parity => None, Bits_Per_Char => Char_8,
          Stop_Bits => 1,
                          User_Ports)

          -- Telnet port settings
          Telnet_Ports = (Terminal_Type => Xrterm, User_Ports)

          -- Printer port settings
          Printer_Ports = (Login_Disabled)

          -- Ports not in use
          Unused = (Login_Disabled)


          16 => (Operator_Port, Enable)
          17..31 => (Dialin_Ports, Enable)

       56                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


          224..249 => (Telnet_Ports, Enable)
          250..251 => (Disable, Printer_Ports)
          252..255 => (Disable, Unused)


       A.4.4.  Terminal-Configuration Options

       Tables A-2, A-3, and A-4 summarize the connection, terminal type,
       and RS232 communication options you can specify in the
       Terminal_Configuration file. These options invoke corresponding
       procedures in package Terminal.



          Table A-2   Boolean Options for Connection Characteristics
        ------------------------------------------------------------ 
       |                      |                                     |
       |        Option        |             Description             |
        ------------------------------------------------------------ 
       |                      |                                     |
       |Disconnect_On_        |When specified for a given port,     |
       |Disconnect            |causes the Environment to respond to |
       |                      |an incoming disconnect signal        |
       |                      |received on that port by initiating  |
       |                      |an outgoing disconnect signal on that|
       |                      |port.                                |
        ------------------------------------------------------------ 
       |                      |                                     |
       |Disconnect_On_Failed_ |When specified for a given port,     |
       |Login                 |causes the Environment to initiate an|
       |                      |outgoing disconnect signal on that   |
       |                      |port when a user repeatedly fails to |
       |                      |log in on that port (for example, by |
       |                      |repeatedly entering an incorrect     |
       |                      |password or unrecognized username).  |
        ------------------------------------------------------------ 
       |                      |                                     |
       |Disconnect_On_Logoff  |When specified for a given port,     |
       |                      |causes the Environment to initiate an|
       |                      |outgoing disconnect signal on that   |
       |                      |port when a user logs off a session  |
       |                      |running on that port.                |
        ------------------------------------------------------------ 
       |                      |                                     |
       |Log_Failed_Logins     |When specified for a given port,     |
       |                      |causes the Environment to write an   |
       |                      |entry to the system error log when a |
       |                      |user fails repeatedly to log in on   |
       |                      |that port (for example, by repeatedly|
       |                      |entering an incorrect password or    |
       |                      |unrecognized username).              |
        ------------------------------------------------------------ 




       RATIONAL     May 1992                                          57\f

       Rational Environment Release Information





          Table A-2   Boolean Options for Connection Characteristics
                                  (continued)
        ------------------------------------------------------------ 
       |                      |                                     |
       |        Option        |             Description             |
        ------------------------------------------------------------ 
       |                      |                                     |
       |Logoff_On_Disconnect  |When specified for a given port,     |
       |                      |causes the Environment to respond to |
       |                      |a disconnect received on that port by|
       |                      |logging off that port's session.     |
        ------------------------------------------------------------ 





          Table A-3   Enumeration Option for Specifying Terminal Type
        ------------------------------------------------------------ 
       |          |                                                 |
       |Option => |                   Description                   |
       |  Value   |                                                 |
        ------------------------------------------------------------ 
       |          |                                                 |
       |Terminal_ |Specifies the output driver type for a given     |
       |Type      |port. Value can be any valid terminal type name, |
       |          |including (but not limited to):                  |
       |          |Cit500r  Facit  Rational  Vt100  Xrterm          |
        ------------------------------------------------------------ 





            Table A-4   Enumeration Options for RS232 Communication
                                Characteristics
        ------------------------------------------------------------- 
       |                    |       |                                |
       |                    |Default|                                |
       |  Option => Value   | Value |          Description           |
        ------------------------------------------------------------- 
       |                    |       |                                |
       |Bits_Per_Char       |Char_8 |Specifies the number of data    |
       |                    |       |bits per character. Value can   |
       |                    |       |be:  Char_5  Char_6  Char_7     |
       |                    |       |Char_8                          |
        ------------------------------------------------------------- 






       58                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5





            Table A-4   Enumeration Options for RS232 Communication
                          Characteristics (continued)
        ------------------------------------------------------------- 
       |                    |       |                                |
       |                    |Default|                                |
       |  Option => Value   | Value |          Description           |
        ------------------------------------------------------------- 
       |                    |       |                                |
       |Flow_Control        | None  |Specifies software flow control |
       |                    |       |for data transmitted by the     |
       |                    |       |R1000 on the specified port.    |
       |                    |       |Value can be:                   |
       |                    |       |None  Xon_Xoff  Dtr  Rts        |
        ------------------------------------------------------------- 
       |                    |       |                                |
       |Input_Rate          | Baud_ |Sets the incoming data rate for |
       |                    | 9600  |a given port. Value can be:     |
       |                    |       |Baud_50     Baud_75     Baud_110|
       |                    |       |Baud_134_5  Baud_150    Baud_200|
       |                    |       |Baud_300    Baud_600            |
       |                    |       |Baud_1200                       |
       |                    |       |Baud_1800   Baud_2400           |
       |                    |       |Baud_9600                       |
       |                    |       |Baud_19200  Disabled            |
       |                    |       |Ext_Rec_Clk                     |
        ------------------------------------------------------------- 
       |                    |       |                                |
       |Output_Rate         | Baud_ |Sets the outgoing data rate for |
       |                    | 9600  |a given port. Values are the    |
       |                    |       |same as for Input_Rate.         |
        ------------------------------------------------------------- 
       |                    |       |                                |
       |Parity              | None  |Sets the parity for transmitted |
       |                    |       |and received data on a given    |
       |                    |       |port. Value can be:  None  Odd  |
       |                    |       |Even                            |
        ------------------------------------------------------------- 
       |                    |       |                                |
       |Stop_Bits           |   2   |Sets the number of stop bits for|
       |                    |       |a given port. Value is a natural|
       |                    |       |number in the range 1..2.       |
        ------------------------------------------------------------- 
       |                    |       |                                |
       |Receive_Flow_Control| None  |Specifies flow control of data  |
       |                    |       |received by the R1000 on the    |
       |                    |       |specified port. Value can be:   |
       |                    |       |None  Xon_Xoff  Dtr  Rts        |
        ------------------------------------------------------------- 





       RATIONAL     May 1992                                          59\f

       Rational Environment Release Information




            Table A-4   Enumeration Options for RS232 Communication
                          Characteristics (continued)
        ------------------------------------------------------------- 
       |                    |       |                                |
       |                    |Default|                                |
       |  Option => Value   | Value |          Description           |
        ------------------------------------------------------------- 
       |                    |       |                                |
       |Receive_Xon_Xoff_   |(17,19)|Specifies flow-control bytes so |
       |Bytes               |       |that the R1000 can regulate the |
       |                    |       |data it receives on the         |
       |                    |       |specified port. Value is (n,m), |
       |                    |       |where n and m are natural       |
       |                    |       |numbers in the range 0..255.    |
        ------------------------------------------------------------- 
       |                    |       |                                |
       |Xon_Xoff_Bytes      |(17,19)|Specifies the flow-control bytes|
       |                    |       |that the R1000 recognizes for   |
       |                    |       |the specified port. Value is:   |
       |                    |       |(n,m), where n and m are natural|
       |                    |       |numbers in the range 0..255.    |
        ------------------------------------------------------------- 




       A.5.  Configuring Printers

       D_12_5_0 and subsequent releases provide a file-driven mechanism
       in !Machine.Initialization for configuring a group of networked
       and/or local printers. This mechanism allows you to define a
       printer name for each printer on the network and to specify how
       each printer is to be accessed. Furthermore, you can also
       associate a printer name with each user, so that when a given
       user enters the Print command (that is,
       !Commands.Abbreviations.Print), the print job will be sent by
       default to the device that is defined by the associated printer
       name.

       This file-driven mechanism automatically adds the specified
       devices to the appropriate R1000s, creates the necessary print
       classes on the appropriate R1000s, and associates each class with
       the specified device, thereby creating print queues. Thus, when
       you use the file-driven mechanism, you do not need to use
       procedures from package Queue (such as Add, Create, Enable, and
       Register) to do these things.

       Existing sites can choose whether to use this file-driven
       mechanism or to continue using procedures from package Queue to
       configure printers. However, because the file-driven mechanism
       combines class and machine information, it is recommended that
       large sites with multiple networked printers use the file-driven
       !Machine.Initialization mechanism. Small sites with few printers

       60                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


       connected directly to R1000s may want to continue using package
       Queue. Sites that want to create a single class with multiple           |
       devices should also use package Queue.                                  |

        Note that the printer configuration (set either through commands       |
       in package Queue or through the file-driven mechanism) applies to       |
       both the Queue.Print and Abbreviations.Print commands. The              |
       ability to associate printer names with usernames is specific to        |
       the Abbreviations.Print command.                                        |


       A.5.1.  Where to Specify Printer Information

       Each time an R1000 boots, the !Machine.Initialization.Start
       procedure calls a procedure called Printers in the Rational
       world. This procedure initializes the print spooler on that R1000
       based on the information in the following user-created files:

       *  !Machine.Initialization.Site.Printer_Configuration, which
          defines a printer name for each of the devices available on
          the network and specifies how each device is to be accessed. A
          copy of this file must exist on all R1000s from which users
          will enter the Print command and on all R1000s that will
          handle print requests for the specified devices.

       *  !Machine.Initialization.Local.Printer_Configuration, which
          defines additional printer names for additional devices
          intended only for users of the current R1000.

       *  !Machine.Initialization.Local.User_Printer_Map, which
          associates a default printer name with individual users on the
          current R1000. When a user executes the Print command with the
          default Printer parameter, the command looks up the user's
          name and sends the print request to the corresponding printer.

       At a minimum, the Print command requires that one
       Printer_Configuration file exist in either the Site or Local
       world. If no User_Printer_Map file exists (or if the file exists
       but contains no entry for a particular user), the Print command
       uses the first printer name defined in the
       Site.Printer_Configuration file. If this file doesn't exist, the
       first printer name defined in the Local.Printer_Configuration
       file is used.

        The classes and devices specified in the Printer_Configuration         |
       files are created when the Printers procedure (that is,                 |
       !Machine.Initialization.Rational.Printers) is executed (normally,       |
       during machine initialization). The Printers procedure also             |
       associates usernames with the appropriate printer information. Be       |
       aware that whenever information is changed in any of the files          |
       listed above, the Printers procedure must be run in order to            |
       update the information.                                                 |

       If you choose not to create any of these files, you will have to:


       RATIONAL     May 1992                                          61\f

       Rational Environment Release Information


       *  Create an initialization procedure (in either the Site or
          Local world) that uses package Queue to create print queues
          each time the system boots.

       *  Either:

          -  Use the Queue.Print command instead of the
             !Commands.Abbreviations.Print command.

          -  Use the !Commands.Abbreviations.Print command, but
             explicitly specify the class name for the Printer
             parameter.


       A.5.2.  Adding Entries to a Printer_Configuration File

       During installation, an empty Printer_Configuration file is
       created in the Local world. After installation, you can:

       *  Add entries to this file to enable the use of the Print
          command.

       *  Move this file (or create an additional file called
          Printer_Configuration) in the Site world, if you need to
          define sitewide printer information.

       Each entry in a Printer_Configuration file defines a printer name
       and specifies the characteristics of the device it represents.

       Each entry must start on a new line, but the information can
       extend over several lines and can include single and in-line
       comments. For readability, the entries are often formatted like
       command parameters.

       Each entry has the general form:

          Printer_Name => (Device_Type  => Device_Info,
          Other_Device_Characteristics,
                           Laser_Comm           => Boolean,
                           Reverse_Output_Pages => Boolean,
                           On_Node              => R1000_Name)

       where:

       *  Printer_Name is the name by which you want to refer to a given
    |     device in a Print command. Printer_Name must be a legal Ada
    |     simple name.

       *  Device_Type is one of the following four kinds of printer
          devices:

          -  Direct, which specifies a printer connected to an R1000 via
             direct line.



       62                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


          -  Telnet, which specifies a printer connected to an R1000 via
             Telnet.

          -  File, which specifies a file on an R1000 in which
             print-spooler output is collected. Subsequent processing is
             required to get this output printed.

          -  Workstation, which specifies a directory on a remote
             workstation to which print requests are sent. Such requests
             are sent via FTP as individual files; from the remote
             directory, they can be printed using the workstation's
             print tools.

       *  Device_Info is further information about the device you
          specified. The information depends on the type of device
          specified (see the paragraphs below).

       *  Other_Device_Characteristics are additional entry elements,
          separated by commas, that give further information about the
          chosen device (see the paragraphs below).

       *  The Laser_Comm option, when True, specifies that printing will
          be done on a laser printer. Omitting this option implies that
          printing will be done on a line printer.

          For Direct and Telnet devices, setting Laser_Comm to True
          specifies that a laser printer is connected; for File and
          Workstation devices, setting Laser_Comm to True specifies that
          the collected print requests will eventually be printed on a
          laser printer.

       *  The Reverse_Output_Pages option allows you to adjust the order
          in which pages are spooled to accommodate the way your printer
          stacks pages in its output tray. This option applies only if
          the Laser_Comm option is set to True.

          -  Setting Reverse_Output_Pages to True causes the print
             spooler to reverse the order of output pages, so that the
             last logical page is printed first. Omitting this option is
             equivalent to specifying True.

          -  Setting Reverse_Output_Pages to False causes the print
             spooler to keep the pages of output in the order in which
             they appear in the source file.

       *  The On_Node option specifies the network name of the R1000
          that contains the print spooler for the device. Omitting this
          option is equivalent to specifying the name of the current
          R1000.

       The following paragraphs describe printer-configuration file
       entries for each of the four kinds of devices. (See also the
       comments in the specification of
       !Machine.Initialization.Rational.Printers.)


       RATIONAL     May 1992                                          63\f

       Rational Environment Release Information


       A.5.3.  Specifying a Directly Connected Printer

       To specify a printer connected to an R1000 via direct line, you
       specify an entry of the following general form:

          Printer_Name => (Direct               => Protocol,
                           Device               => Terminal_N,
                           Laser_Comm           => Boolean,
                           Reverse_Output_Pages => Boolean,
                           On_Node              => R1000_Name)

       where:

       *  Protocol specifies the printer flow control and can be either
          Xon_Xoff or Dtr. See the printer manual for details.

       *  Terminal_N represents the RS232C port to which the printer is
          connected (N is the port number). The specified port must not
          be enabled for login in the Local.Terminal_Configuration file.

       *  The Laser_Comm option, when True, specifies that a laser
          printer is connected and enables a two-way
          printer-communication protocol. Omitting the option is
          equivalent to specifying False, which means that a line
          printer is connected.

       *  The Reverse_Output_Pages option allows you to adjust the order
          in which pages are spooled to accommodate the way your printer
          stacks pages in its output tray, as described in section
          A.5.2. This option applies only if Laser_Comm is set to True.

       *  The On_Node option specifies the network name of the R1000 to
          which the printer is directly connected. Omitting this option
          is equivalent to specifying the name of the current R1000.

       The following entry creates a printer name called Lp, which
       represents a line printer that is directly connected to port 30
       of an R1000 called Jazmo:

          -- Line printer connected to Jazmo
          Lp => (Direct  => Xon_Xoff,
                 Device  => Terminal_30,
                 On_Node => Jazmo)


       A.5.4.  Specifying a Networked Printer

       To specify a printer connected to an R1000 via Telnet, you
       specify an entry of the following general form:

          Printer_Name => (Telnet               => Host_Name,
                           Device               => Terminal_N,
                           Laser_Comm           => Boolean,
                           Reverse_Output_Pages => Boolean,
                           On_Node              => R1000_Name)

       64                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


       where:

       *  Host_Name is the network name of the printer.

       *  Terminal_N represents the Telnet port to which the printer is
          connected (N is the port number). The specified port must not
          be enabled for login in the Local.Terminal_Configuration file.

       *  The Laser_Comm option, when True, specifies that a laser
          printer is connected and enables a two-way
          printer-communication protocol. Omitting the option is
          equivalent to specifying False, which means that a line
          printer is connected.

       *  The Reverse_Output_Pages option allows you to adjust the order
          in which pages are spooled to accommodate the way your printer
          stacks pages in its output tray, as described in section
          A.5.2. This option applies only if Laser_Comm is set to True.

       *  The On_Node option specifies the network name of the R1000 to
          which the printer is connected via Telnet. Omitting this
          option is equivalent to specifying the name of the current
          R1000.

       The following entry creates the printer name Dlaser, which
       represents a laser printer that is connected via Telnet to port
       226 of an R1000 called Roget. Because of the way this printer
       stacks its output, print requests are spooled to this device with
       their pages in ascending (rather than reversed) order:

          -- Documentation's laser printer
          Dlaser => (Telnet               => Doc_Laser,
                     Device               => Terminal_226,
                     Laser_Comm,
                     Reverse_Output_Pages => False,
                     On_Node              => Roget)


       A.5.5.  Specifying an Environment File

       To specify a file in which to collect print-spooler output, you
       specify an entry of the following general form:

          Printer_Name => (File                 => Environment_Pathname,
                           Laser_Comm           => Boolean,
                           Reverse_Output_Pages => Boolean,
                           On_Node              => R1000_Name)

       where:

       *  Environment_Pathname specifies the file to which output is
          written. The pathname must name a file that exists on the
          R1000 named by On_Node. Note that the group Spooler must have
          access to the specified file.


       RATIONAL     May 1992                                          65\f

       Rational Environment Release Information


       *  The Laser_Comm option, when True, specifies that the collected
          print requests will eventually be printed on a laser printer.
          Omitting the option is equivalent to specifying False, which
          means that a line printer will be used.

       *  The Reverse_Output_Pages option allows you to adjust the order
          in which pages are spooled to accommodate the way your printer
          stacks pages in its output tray, as described in section
          A.5.2. This option applies only if Laser_Comm is set to True.

       *  The On_Node option specifies the network name of the R1000 on
          which the file is located. Omitting this option is equivalent
          to specifying the name of the current R1000.

       The following entry creates the printer name Hold, which
       represents a file on an R1000 called Logo. Low-priority print
       requests are sent to this file, where they are held until someone
       prints the file using the Print command (specifying a printer
       name that represents a connected printer):

          -- Place to hold large requests until printers are free in the
          evening
          Hold => (File    => !Machine.Queues.Local.Held_Print_Requests,
                   On_Node => Logo)


       A.5.6.  Specifying a Workstation Directory

       To specify a directory on a workstation to which print requests
       are sent, you specify an entry of the following general form:

          Printer_Name => (Workstation          => Host_Name,
                           Path                 => Directory_Name,
                           Laser_Comm           => Boolean,
                           Suffix               => String,
                           Reverse_Output_Pages => Boolean,
                           On_Node              => R1000_Name)

       where:

       *  Host_Name is the network name of the workstation to which the
          files will be transferred.

       *  Directory_Name is the pathname of the workstation directory
          into which the files will be transferred. The directory
          pathname must have syntax appropriate to the workstation and
          must have trailing punctuation that permits the name of the
          transferred print-request file to be appended.

       *  The Laser_Comm option, when True, specifies that the collected
          print requests will eventually be printed on a laser printer.
          Omitting the option is equivalent to specifying False, which
          means that a line printer will be used.



       66                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


       *  The Suffix option allows you to specify a string to be
          appended to the filenames that are created on the workstation.
          Omitting this option causes no suffix to be appended to the
          filenames. The specified suffix can be used by print tools as
          a way of identifying which files to print. This is useful when
          several printer names send files to the same directory.

       *  The Reverse_Output_Pages option allows you to adjust the order
          in which pages are spooled to accommodate the way your printer
          stacks pages in its output tray, as described in section
          A.5.2. This option applies only if Laser_Comm is set to True.

       *  The On_Node option specifies the network name of the R1000
          whose print spooler handles the print requests. Omitting this
          option is equivalent to specifying the name of the current
          R1000.

        In addition to creating an entry for each workstation in the           |
       Printer_Configuration files, you must also create a                     |
       remote-passwords file, containing the username and password to be       |
       used for accessing each workstation. This remote-passwords file         |
       must be named Remote_Access and exist in the library                    |
       !Machine.Queues.Ftp. (For information about remote-passwords            |
       files, see package Remote_Passwords in the Session and Job              |
       Management book of the Rational Environment Reference Manual.)          |

       When print requests are sent as files to a workstation, any FTP
       messages are directed to a log file that is created in
       !Machine.Queues.Ftp. This log file is automatically cleared after
       each 100 print requests. Messages pertaining to creating print
       classes and enabling devices are directed to the system error
       log.

       The following two entries create printer names Dc_Laser and
       Dc_Lineprinter, both of which direct print requests to a
       directory on a UNIX workstation called Enterprise. These print
       requests, which are routed through the print spooler on an R1000
       called Capitol, are sent as files with different suffixes,
       depending on the printer name (_Lsr and _Lpt, respectively):

          -- Laser printer attached to workstation in Washington, D.C.,
          office;
          -- spooled on R1000 called Capitol.
          Dc_Laser => (Workstation => Enterprise,
                       Path        => /usr/spool/ratqueue/,
                       Laser_Comm,
                       Suffix      => _Lsr,
                       On_Node     => Capitol)

          -- Line printer attached to workstation in Washington, D.C.,
          office;
          -- spooled on R1000 called Capitol.
          Dc_Lineprinter => (Workstation => Enterprise,
                             Path        => /usr/spool/ratqueue/,
                             Suffix      => _Lpt,

       RATIONAL     May 1992                                          67\f

       Rational Environment Release Information


                             On_Node     => Capitol)

       Print tools on the workstation, such as the following sample, are
       required to actually print the requests:

          # This program spools print requests placed in
          /usr/spool/ratqueue to
          # the appropriate printer based on the suffix of the spooled
          file.
          # It checks the spool directory at 5-minute intervals to see
          if any
          # new files need printing. This runs as a C-shell script. To
          execute,
          # type csh and the name of this file.

          :
          set xFTPxDIRx=/usr/spool/ratqueue             #spool directory
          #
          set xFTPxSUFFIXxLSRx=_Lsr      # Laser printer suffix
          set xFTPxSUFFIXxLPTx=_Lpt      # Line printer suffix
          #
          set xPRINTxLISTxLSRx=/tmp/rat_print_lsr.$$    # Laser printer
          list file
          set xPRINTxLISTxLPTx=/tmp/rat_print_lpt.$$    # Line printer
          list file
          #
          set xPRINTxCOMMANDx=/tmp/rat_command.$$       # temporary
          print command file
          #
          set xPRINTxDELAYx=120          # interval to wait before
          printing
          set xRECHECKxTIMEx=180         # interval for checking print
          requests
          #
          cd $xFTPxDIRx
          while (1 == 1)
          #
          # Creates a list of files to print for each printer.
          #
              ls $xFTPxDIRx | grep $xFTPxSUFFIXxLSRx > $xPRINTxLISTxLSRx
              ls $xFTPxDIRx | grep $xFTPxSUFFIXxLPTx > $xPRINTxLISTxLPTx
          #
          # Adds the laser- and line-printer files to the print-command
          file
          # (the device name of each type of printer should be provided
          after the -P).
          #
              cat $xPRINTxLISTxLSRx | sed -e 's^.^lpr -r -Plaser &^' >
          $xPRINTxCOMMANDx
              cat $xPRINTxLISTxLPTx | sed -e 's^.^lpr -r -Pline &^' >>
          $xPRINTxCOMMANDx
          #
          # Waits the specified amount of time before printing the
          requests.
          # (This delay allows time for the FTP operation to complete

       68                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


          and should
          # be adjusted based on the average length of files being
          printed.)
          #
              sleep $xPRINTxDELAYx
          #
          # Prints the files if there are any to print.
          #
              set LCNT=`cat $xPRINTxCOMMANDx | wc -l `
              if ( $LCNT != 0 ) then
                  chmod +x $xPRINTxCOMMANDx
                  $xPRINTxCOMMANDx
              endif
          #
          # Waits the specified amount of time.
          #
              sleep $xRECHECKxTIMEx
          #
          # Removes the old temporary files.
          #
              rm $xPRINTxLISTxLSRx
              rm $xPRINTxLISTxLPTx
              rm $xPRINTxCOMMANDx
          #
          end


       A.5.7.  Associating Default Printers with Individual Users

       To associate a default printer with each user, you must create a
       file called User_Printer_Map in the Local world and add entries
       of the following form:

          Username  Printer_Name

       where:

       *  Username is either:

          -  The username for an R1000 user

          -  The string Others, which represents all users not
             explicitly listed by name.

       *  Printer_Name is defined in a Printer_Configuration file.

       Following is a sample User_Printer_Map file:

          phil dc_laser
          sue dlaser
          others lp

       See also the comments in the specification of
       !Machine.Initialization.Rational.Printers.


       RATIONAL     May 1992                                          69\f

       Rational Environment Release Information


























































       70                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


                                  Appendix B
                          Diagnostic Crash Procedures


       B.1.  Introduction

       The D_12_6_5 release includes enhancements to the process of
       analyzing R1000 crashes. In particular:

       *  Much of the process has been automated so that the system will
          capture as much information as possible and often reboot
          automatically.

       *  A series of questions and menus have been added to the
          diagnostic crash procedures, which:

          -  Capture system crash state

          -  Analyze system hardware

       The instructions in this appendix supersede those in your System
       Manager's Guide. For convenience, you may want to place a copy of
       these procedures with your System Manager's Guide.


       B.2.  When Your System Crashes

       Call the Rational Response Center whenever your R1000 fails. You
       will be guided through the most appropriate parts of the
       procedures below-in some cases through other undocumented steps
       as well-to reach an effective and timely diagnosis of the
       problem. For information about contacting the Rational Response
       Center, see section B.12.

       If your system crashes outside Rational's normal support hours,
       follow one of the three options described below. These options
       are listed in order, from most desirable to least desirable (in
       terms of gathering information needed to determine why your
       machine crashed and to prevent additional crashes):

       *  Wait and contact the Rational Response Center during normal
          support hours (see section B.12).

       *  Gather diagnostic information about your system crash (by
          following the diagnostic crash procedures in this appendix)
          before you try to reboot the machine.

       *  Try to reboot the machine immediately without gathering
          diagnostic information. Be aware that doing so may lengthen
          the time it takes to isolate and resolve the problem.






       RATIONAL     May 1992                                          71\f

       Rational Environment Release Information


       B.3.  Using These Diagnostic Crash Procedures

       The instructions in this appendix are designed to help you
       collect as much diagnostic information as possible about the
       state of your machine at the time of a system crash. By following
       these procedures, you will help shorten the time to diagnose and,
       if necessary, repair your system.

       These procedures are organized into sections roughly according to
       the order in which you may need to perform them.

       No matter why the system crashed, you should always capture
       system-state information, as described in section B.4.

       Then, if you experienced or are experiencing:

       *  A power failure, see section B.5.

       *  Overheating, see section B.6.

       *  The "connect modem" message, begin with section B.7.

       *  Any other failure message, begin with section B.8.

       *  Disk errors, begin with section B.8 and continue through
          section B.10.

       After executing the procedures in the following sections, fax or
       e-mail the information you have gathered to the Rational Response
       Center (see section B.12).

       Note that when the R1000 CPU stops running, the I/O processor
       queries all the boards to determine what caused it to stop. The
       message given by the R1000 when it crashes names the board that
       detected the specific check; therefore, the named board is not
       necessarily the faulty part.


       B.4.  Saving Information about the System State

       When your system fails, you should begin by saving information
       about the system state.

       1. Write down the crash information displayed on the operator
          console. If this information has already scrolled off the
          screen, go to step 2, below. In particular, write down the
          machine check message (MC), crash reason (CR), trace (TR), and
          any other messages (OM) displayed. A sample crash output is
          shown below:

          MC=>  Sequencer has detected a machine check.

          **************************************************************
          *****
          CR=>  Booting R1000 IOP after halt of machine crash detected

       72                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


          CR=>  Boot reason code = 0C, from PC 0001A094
                Restarting R1000-200 February 14th, 1992 at 14:14:35

                -- you may see the Interactive menu here
                -- if so, press [#Return#]

                Logical tape drive 0 is a 8MM cartridge tape drive.
                Logical tape drive 1 is declared non-existent.
                Logical tape drive 2 is declared non-existent.
                Logical tape drive 3 is a 1/2 inch 9 track tape drive at
          physical
                   unit 0.
                Booting I/O Processor
                IOC Bootstrap Version 5.7

                Initializing I/O Processor Kernel 0_8_7
                Disk Controller 0, Disk  0 is ONLINE and WRITE ENABLED
                Disk Controller 0, Disk  1 is ONLINE and WRITE ENABLED
                Disk Controller 0, Disk  2 is ONLINE and WRITE ENABLED
                Disk Controller 0, Disk  3 is ONLINE and WRITE ENABLED

                IOP Kernel is initialized
                Initializing diagnostic file system ... [OK]
                   FREEZE_WORLD.FIU -- several messages like these
          overwrite
                   MF.IOC           -- each other
                ====================================================
          CR=>  Restarting system after R1000 Processor Halt =>
          Processor multi-bit
          CR=>     memory error
                -- previous two lines indicate the crash reason
                -- and appear in reverse video

                Running post-mortem diagnostics.
          TR=>  uaddr trace:  4=2A92  3=018D  2=020E  1=0204 -- ucode
          M207_36
          CR=>  Microcode HALT
          CR=>  The processor got a(n) Halt.
          OM=>  Post-mortem diagnostics do not apply to this kind of
          failure

                Saving state of: board JKLMFQTVI, Special Registers,
          Trace Rams [OK]
                R1000 Crash Save done - tombstone file R1000_DUMP1
          created.

       2. Write down the context of the crash.

          *  How long had the R1000 been running since the last boot?
             Was the R1000 still booting when it crashed?
             Why was it booting?

          *  Was the Environment up at the time?
             Was there anything abnormal about the way the Environment
             was functioning?

       RATIONAL     May 1992                                          73\f

       Rational Environment Release Information


             What were users doing? Any unusual activities?
             Were any daemons (snapshot, daily, or weekly) running?
             Was a tape drive in use?

          *  Have there been any hardware, firmware, or software changes
             to this R1000 within the past week?

          *  Have there been any problems with or modifications of the
             network in the past week?

          *  What was the temperature in the computer room at the time
             of the crash?

          *  Have there been any problems with the air conditioning
             recently?

          *  Are there other computers (R1000s or not) in the same
             building?
             Did any of the other computers crash or have power or
             environmental problems at the same time?

       3. Use the crash reason message (displayed in reverse video below
          the line of equal signs) to locate the appropriate recovery
          process in section B.9.


       B.5.  Crash due to Power Failure

       Note: A crash due to a power failure does not cause the system to
       dial Rational through the system's internal modem, even when the
       system is configured to do so for other types of crashes.


       B.5.1.  Indication of Power Failure

       In most cases, a crash due to power failure is reported by the
       following message in reverse video on the operator console:

          Restarting system after loss of AC power


       B.5.2.  Recovering from Power Failure

       When your system crashes because of a power failure:

       1. If power to the system is still off, turn the system's power
          keyswitch to OFF.

          Turning the power keyswitch to OFF reduces the chance of
          accidental damage to the R1000 when the source of power is
          restored.

       2. Before trying to restart the system, try to determine the
          cause and extent of the power failure and to correct the
          problem.

       74                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


          Determining the cause and extent of the power failure commonly
          requires the aid of your site facilities personnel. If the
          power failure affected your entire site, your site facilities
          personnel should contact your local power company for further
          information.

       3. Restore power to the R1000 and turn the power keyswitch to ON.

       4. After power has been restored, the system will do one of three
          things, depending on its configuration:

          *  Boot automatically

          *  Begin booting and stop at the Interactive menu:

             Options are:
                 1 => Change BOOT/CRASH/MAINTENANCE options
                 2 => Change IOP ENVIRONMENT configuration
                 3 => Enable manual crash debugging (experts only)
                 4 => Boot IOP, prompting for tape or disk
                 5 => Boot system

             Enter option [Boot System]:


             If the system stops at the Interactive menu, press
             [#Return#]. The system will display the Crash menu.

          *  Begin booting and stop at the Crash menu:

             Options are:
               1 => Enter CLI
               2 => Make a CRASHDUMP
               3 => Run the FRU tests
               4 => Boot DDC configuration
               5 => Boot EEDB configuration
               6 => Boot STANDARD configuration
             Enter option [Boot STANDARD] :


             If the system stops at the Crash menu, press [#Return#].
             The system will continue booting.

       5. If the system does not reboot properly, then:

          A. Examine the operator console to see what messages are
             displayed.

          B. Contact the Rational Response Center (see section B.12).


       B.6.  Crash due to Overheating

       Note: A crash due to overheating does not cause the system to
       dial Rational through the system's internal modem (mounted on the

       RATIONAL     May 1992                                          75\f

       Rational Environment Release Information


       PCM card in the PCM unit), even when the system is configured to
       do so for other types of crashes.


       B.6.1.  Indications of Overheating

       In most cases, a crash due to overheating causes all of the front
       panel lights to be off although the power switch is on.

       You can determine if the failure is due to overheating by
       examining the state of the LED overtemp indicator. On Series 200
       and 300 systems, the overtemp indicator is on the power control
       module (PCM) and can be viewed by opening the rear door of the
       CPU cabinet. On a Series 400 system, the indicator is on the I/O
       panel, visible by opening the front door of the cabinet. (See
       your System Manager's Guide if you are unsure of the overtemp
       indicator's location.)

       Warning: Do not reach inside the CPU bay. Electric-shock hazards
       are present inside the R1000 cabinets.

       If the overtemp indicator is lit, this means that sensors in the
       R1000 had detected that the temperature inside the cabinet was
       too high and powered the system off.


       B.6.2.  Recovering from Overheating

       1. Check the room temperature. Note that the room air temperature
          must not exceed 85#F (29#C) while the R1000 is operating. (For
          detailed environmental requirements, refer to the Rational
          R1000 Development System: Site-Planning Guide for your
          system.)

       2. If the room temperature is correct, the problem might be a fan
          failure inside the cabinet, clogged filters, or some other
          problem. In this case:

          A. Verify that the power keyswitch on the control panel is in
             the Off position.

          B. Contact the Rational Response Center for assistance (see
             section B.12).

       3. After the overheating condition has been corrected, power off
          and restart the system by following the instructions in steps
          3 through 5 of section B.5.2, above.

       4. If the system does not reboot properly:

          A. Examine the operator console to see what messages are
             displayed.

          B. Contact the Rational Response Center (see section B.12).


       76                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


       B.7.  Displays "Connect Modem" Message and Hangs


       B.7.1.  Indications of "Failure to Connect Modem"

       The system crashes, displays a reverse-video error message on the
       operator console, and then starts to reboot. Midway through the
       boot process, the system pauses and dials the Rational Response
       Center, displaying:

          Connecting modem

       Wait at least three minutes for the call to complete. If you see
       the message:

          Rational Response Center has instructed this cluster to wait
          for call
          back

       and do not want to wait, you can proceed with booting the system
       as follows:

       1. Press [#Break#] on the operator console.

       2. When the Enter option prompt is displayed, press [#0#] and
          [#Return#], then [#Y#] and [#Return#].

          The modem connection is broken and the boot process begins.

       3. Continue with section B.8, below.

       Note: Systems with restricted-access support contracts may not be
       configured to use this dial-out capability.


       B.8.  Other System Failures

       When your system crashes, it may display one or two menus or
       continue to boot, depending on the setting of the Operator Mode
       key, the setting of the boot/crash/maintenance options, and the
       type of crash:

       *  If the Operator Mode key is set to Interactive, the system
          displays the Interactive Key menu:

          Options are:
              1 => Change BOOT/CRASH/MAINTENANCE options
              2 => Change IOP ENVIRONMENT configuration
              3 => Enable manual crash debugging (experts only)
              4 => Boot IOP, prompting for tape or disk
              5 => Boot system

          Enter option [Boot System]:

          Press [#Return#]. This will take you to the Crash menu.

       RATIONAL     May 1992                                          77\f

       Rational Environment Release Information


       *  If either the Auto Crash Recovery or the Auto Boot option is
          set to No, or if the Operator Mode key is set to Interactive
          and you have pressed [#Return#], then the system displays the
          Crash menu:

          Options are:
            1 => Enter CLI
            2 => Make a CRASHDUMP
            3 => Run the FRU tests
            4 => Boot DDC configuration
            5 => Boot EEDB configuration
            6 => Boot STANDARD configuration
          Enter option [Boot STANDARD] :

          The Crash menu provides access to the Command Line Interpreter
          (CLI), various diagnostic tests, and rebooting options.

       The crash reason is displayed above in reverse video. Use the
       crash reson to find the relevant subsection of B.9, below.


       B.8.1.  Redisplaying the Crash Reason

       If the crash reason is not visible as captured or if you can
       print from the console, then follow the procedures in this
       section to redisplay the crash reason and message. The crash
       reasons and recovery procedures for each are described in section
       B.9.

       1. At the Crash menu, enter option 1 (Enter CLI):

          Enter option [Boot STANDARD]: 1

          Option 1 takes you to the CLI.

       2. Enter x tombstone:

          CLI> x tombstone

          The console displays the Display Tombstone File menu:

          Options are:
              0 => Exit
              1 => Display tombstone file 1
              2 => Display tombstone file 2
              3 => Display tombstone file 3
              4 => Display tombstone file 4

       3. Enter option 1 (Display tombstone file 1).

          The four tombstone files act as a ring buffer with information
          about the most recent crash always in file 1. After entering
          option 1, you will see a message and menu like the one below:



       78                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


          Analysis of tombstone 1 dated - 12:44:52 24-FEB-92
          Options are:
              0 => DONE
              1 => Show all
              2 => Show last console output
              3 => Show crash classifications
              4 => Show restart output
              5 => Show trace
              6 => Show Cpu State
              7 => Show queues

       4. Enter option 4 (Show restart output).

          The system displays the text shown in section B.4.

       5. Make a note of the crash reason, which is indicated in reverse
          video under the line of equal signs. These messages are
          described in section B.9, below.

       6. If your console is set up in such a way that you can easily
          send its output to a file or printer and e-mail or fax the
          output to the Rational Response Center, then:

          *  Enter option 1 (Show all).

          *  Capture the output in a file or send it to the printer.

          If your console is not set up so that you can capture its
          output, you can capture this information from the Environment
          when your system is running again; see section B.11.

       7. Enter option 0 (DONE).

          The system returns you to the Display Tombstone File menu.

       8. Enter option 0 (Exit).

          The system returns you to the CLI> prompt.

       9. Enter bye:

          CLI> bye

          The system returns you to the Crash menu.

       10. Continue with section B.9, below. If you suspect disk
          problems or encountered disk errors, also see section B.10.

       11. Send the information you have gathered to the Rational
          Response Center (see section B.12).






       RATIONAL     May 1992                                          79\f

       Rational Environment Release Information


       B.9.  Common Crash Reasons and Responses

       Once you have determined the crash reason (using the procedure
       described in section B.8, above), you can continue recovering
       from the crash.

       Below are the common crash reasons, listed by number and message,
       and the recovery actions for each.


       B.9.1.  Halt => System Error

       From the Crash menu, enter option 6 (Boot STANDARD
       configuration):

          Enter option [Boot STANDARD] : 6

       The system attempts to boot.

       If your system will not boot, contact the Rational Response
       Center for further instructions (see section B.12).


       B.9.2.  Halt => I/O Processor Hardware Error

       Press the white button to reboot the machine. Choose the Boot
       system or Boot STANDARD configuration options in any menus that
       you encounter.

       If the system still fails to boot or crashes again with the same
       reason, call the Rational Response Center (see section B.12).


       B.9.3.  Halt => I/O Processor Software Error

       Press the white button to reboot the machine. Choose the Boot
       system or Boot STANDARD configuration options in any menus that
       you encounter.

       If the system still fails to boot or crashes again with the same
       reason, call the Rational Response Center (see section B.12).


       B.9.4.  Halt => Processor Hardware Error

       See section B.9.6, below.


       B.9.5.  Halt => Processor Multi Bit Memory Error

       See section B.9.6, below.





       80                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


       B.9.6.  Halt => Processor Sysbus Hardware Error

       Run the confidence (microdiagnostic) and field-replaceable unit
       (FRU) tests, by following the procedure below:

       1. From the Crash menu, enter option 3 (Run the FRU tests):

          Enter [Boot STANDARD] : 3

          The system displays the FRU Main menu:

          Rational R1000 FRU diagnostic driver
          Initializing ...
          Main menu
              1 => Display cluster information
              2 => Execute confidence test (microdiagnostic)
              3 => Execute diagnostics
              4 => Execute PM tests (not implemented yet)
              5 => Margin cluster clocks/power
              6 => Specify test options
              7 => Repair assistance (model 100 CPU power control)
              8 => Initialize processor state
              0 => Exit

       2. Enter option 2 (Execute confidence test (microdiagnostic)):

          The system displays:

          Preparing to run the microdiagnostic (uDIAG)
          The long version stress tests the DRAMs but runs 2 minutes
          longer

       3. When prompted to run the long version, enter y:

          Do you want to run the long version [N] ? y

          The system displays several messages and returns you to the
          FRU Main menu:

          LOAD_HRAM_32_0.FIU ...
          File  : DIAG.M200_UCODE
          Bound : November 15, 1989  13:02:00
          Delta : RM:<MICROCODE.DIAG.IOC_DELTA>UCODE.DB.1
          Mom   : RM:<MICROCODE.DIAG.IOC_MOM>UCODE.DB.4
          Loading Register Files and Dispatch Rams .... [OK]
          Loading Control Store ............ [OK]
             PREP_WRITE_REG.TYP...
          Main menu
              1 => Display cluster information
              2 => Execute confidence test (microdiagnostic)
              3 => Execute diagnostics
              4 => Execute PM tests (not implemented yet)
              5 => Margin cluster clocks/power
              6 => Specify test options
              7 => Repair assistance (model 100 CPU power control)

       RATIONAL     May 1992                                          81\f

       Rational Environment Release Information


              8 => Initialize processor state
              0 => Exit

       4. Enter option 3 (Execute diagnostics).

          The system displays the Diagnostic execution menu:

          Diagnostic execution menu
              1 => Test the foreplane
              2 => Run all tests
              3 => Run all tests applicable to a given FRU (board)
              4 => Run a specific test
              0 => Return to main menu

       5. Enter option 2 (Run all tests).

       6. When prompted for the maximum test phase, enter 2:

          Enter maximum test phase (1-3) : 2

          The system displays a long series of messages, such as those
          shown here:

          Running FRU P1DCOMM...
          ...
          Phase 1 passed
          ...
          Phase 2 passed

          After about 20 minutes, the system then returns you to the
          Diagnostic execution menu.

          If the system halts with an error, the test has failed; skip
          to step 9.

       7. Enter option 0 (Return to main menu).

          The system returns you to the FRU Main menu.

       8. Enter option 0 (Exit).

          The system returns you to the Crash menu.

       9. If either the confidence or the FRU tests failed, call the
          Rational Response Center before attempting to reboot the
          system (see section B.12).

          If the confidence and FRU tests passed, enter option 6 (Boot
          STANDARD configuration):

          Enter [Boot STANDARD] : 6

          The system attempts to continue booting.



       82                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


       B.9.7.  Halt => Processor Microcode Error

       See section B.9.10, below.


       B.9.8.  Halt => Processor Software Error

       See section B.9.10, below.


       B.9.9.  Halt => Shutdown from Environment

       This message indicates that the system was deliberatley shutdown
       with the Operator.Shutdown command. If the system was shutdown
       because of a problem, then see section B.9.10, below.


       B.9.10.  Halt => Processor Crash Error

       1. Make a crash dump tape. Note: Even if your site does not allow
          crash dump tapes to be sent to Rational, you should still make
          the tape because it might be possible for someone to analyze
          it at your site.

          A. From the Crash menu, enter option 2 (Make a CRASHDUMP):

             Enter option [Boot STANDARD] : 2

          B. Mount a tape.

             *   If you have a 9-track tape drive, mount a 2,400-foot
                 9-track tape.

             *   If you have an 8-mm tape drive, mount an 8-mm tape
                 cartridge.

          C. Make sure the tape is write-enabled.

             *   If you are using a 9-track tape, insert the
                 write-enable ring into the hub of the tape reel.

             *   If you are using an 8-mm tape, slide the write-protect
                 tab away from the center of the cartridge.

          D. If your tape drive has a door, close it.

             The system responds by displaying:

             Tape unit number (0..3) [0] ?

          E. Enter the unit number of your tape drive and press
             [#Return#].

             *   If you are making the crash dump tape on a 9-track tape
                 drive, the tape drive is probably configured as Unit 0.

       RATIONAL     May 1992                                          83\f

       Rational Environment Release Information


             *   If you are making a crash dump tape on an 8-mm tape
                 drive, the tape drive is probably configured as Unit 0
                 on a series 300 or 400 system or Unit 3 on a series 200
                 system.

          F. The system may respond by displaying:

             Tape density is currently 6250 BPI,
             do you want to change it [N] ?

             If so, verify the density setting.

             *   If you are using a 9-track tape drive, verify that its
                 density is set to 6,250 BPI.

             *   If you are using an 8-mm tape drive, the density is not
                 selectable.

          G. Press [#Return#] to continue. The system responds by
             displaying:

             Volume Id, (1..6 characters) ?

          H. Enter a six-character tape name (volume identification). For
             example:

             910704

          I. When prompted for comments with a ) prompt, enter comments
             that could help someone isolate or reproduce this problem.
             Include the following in your comments:

             *   The machine's name and cluster ID.

             *   The date and time, using this format: 31 Mar 92 22:17.

             *   The reason the system started to reboot (found in the
                 reverse-video message and in the Restarting system
                 after ... message).

             *   The name of the company or organization that
                 owns/operates the R1000.

             *   The location of the R1000 installation.

             *   Your name.

             *   The information about the state of the machine and what
                 caused the problem that you have gathered so far
                 (except for the trace information).

          J. End your comments by entering, on a new line, a second
             right parenthesis next to the ) comment prompt.

             For example:

       84                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


             ) Mariner, 902469
             ) 31 Mar 92 22:17
             ) WCS TAGSTORE PARITY ERROR
             ) ACME Widgets, Inc.
             ) Rockville, MD
             ) J. Smith
             )
             ) There were no users on the machine.
             ) A backup was in progress.
             ) There had been a power failure two hours earlier.
             ))


             Several messages are displayed while the crash dump is
             made. Wait for the crash dump to complete (about 15
             minutes). The system automatically unloads your tape when
             it is done.

             After the system finishes making the tape, it returns you to
             the Crash menu.

          K. Prepare a label for the tape with the words "Crash Dump"
             and the following items:

             *   The machine's name and cluster ID.

             *   The date and time, using this format: 31 Mar 92 22:17.

             *   Your site's configuration. This can be determined later
                 by executing the Show_Default command from the EEDB:
                 prompt.

             *   A brief, one-line summary of why the system started to
                 reboot.

             *   The CSR number, if you have one.

          L. Dismount and store the tape as follows:

             i. Remove the tape from the tape drive and put the label on
               the 9-track tape reel (or on the 8-mm tape cartridge).

             ii. Remove the write-enable ring from the 9-track tape reel
               (or slide the write-protect tab toward the center of the
               8-mm tape cartridge), thereby write-protecting the tape.

             iii. Put the 9-track tape reel or (8-mm cartridge) in a
               safe storage container.

             At this point you have saved the volatile system state,
             both in your observations and on the crash dump tape.

       2. Enter option 6 (Boot STANDARD configuration):

          Enter option [Boot STANDARD] : 6

       RATIONAL     May 1992                                          85\f

       Rational Environment Release Information


          The system attempts to continue booting.

       3. Contact the Rational Response Center for instructions on
          having your crash dump tape analyzed (see section B.12).


       B.9.11.  Machine Check (Parity Error)

       This message indicates that there was a problem with the CPU
       hardware. The confidence test may automatically run or the
       Rational Response Center may be called via the modem. If the test
       passes, the system may automatically reboot or display the Crash
       menu, in which case you should enter 6 (Boot STANDARD
       configuration) and press [#Return#]. If the confidence tests
       fail, see section B.9.6.


       B.9.12.  Any Other Reason

       Call the Rational Response Center (see section B.12).

       If you are unable to reach someone, then:

       1. From the Crash menu, enter option 2 (Make a CRASHDUMP):

          Enter option [Boot STANDARD] : 2

          The system requests that you load a tape, enter some
          information, and then returns to the Crash menu (for more
          details, see section B.9.10, above).

       2. Run the confidence (microdiagnostic) and field-replaceable
          unit (FRU) tests by following the instructions for "0205
          Have_Sysbus_Hardware_Error" in section B.9.6, above.

       3. If the confidence and FRU tests fail, call the Rational
          Response Center (see section B.12).

          Otherwise, attempt to reboot the system.

       4. Fax or e-mail the information you have gathered to the
          Rational Response Center (see section B.12).


       B.10.  If You Suspect Disk Errors

       If there were any disk errors, or if you suspect disk problems,
       run the disk exerciser (Diskx) and Checkdisk from the CLI.


       B.10.1.  Running Diskx

       You should run the disk exerciser (Diskx) on all disks for at
       least 5 minutes. Diskx is a read-and-write test, but it uses only
       a small test area of each disk for writes, so it will not harm

       86                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


       user data on the disks.

       To run Diskx:

       1. Enter the CLI. To enter the CLI from the Crash menu, enter
          option 1 (Enter CLI):

          Enter option [Boot STANDARD] : 1

       2. At the CLI> prompt, enter x diskx:

          CLI> x diskx

       3. Press the space bar to cause the latest output to be
          displayed. Output similar to the following will appear:

          u0  bytes=> 1246208    Soft=> 0     Hard=> 0     C=> 705  T=>
          25  S=> 6
          u1  bytes=> 1203200    soft=> 0     hard=> 0     C=> 73   T=>
          14  S=> 8
          u2  bytes=> 1206272    soft=> 0     hard=> 0     C=> 611  T=>
          3   S=> 24
          u3  bytes=> 1243208    soft=> 0     hard=> 0     C=> 634  T=>
          11  S=> 10

       4. Press [#Control#][#G#] to stop Diskx.

          The system returns you to the CLI> prompt.

       5. Write down the results and any messages where soft or hard
          does not equal zero (0).

       6. Enter bye to return to the Crash menu:

          CLI> bye


       B.10.2.  Running Checkdisk

       You should run Checkdisk on all disks or at least on each disk
       you suspect.

       Note: Checkdisk may take up to 30 minutes per disk per pass.

       To run Checkdisk:

       1. Enter the CLI. To enter the CLI from the Crash menu, enter
          option 1 (Enter CLI):

          Enter option [Boot STANDARD] : 1

       2. At the CLI> prompt, enter x checkdisk:

          CLI> x checkdisk


       RATIONAL     May 1992                                          87\f

       Rational Environment Release Information


       3. When prompted, request that only new errors be reported.

       4. Run at least one pass. The system returns you to the CLI>
          prompt.

       5. Write down the HDA numbers.

       6. Write down any other results.

       7. Enter bye to return to the Crash menu:

          CLI> bye


       B.11.  Recovering Crash Information from the Environment

       If your console is not set up in such a way that you can capture
       its output, you can obtain the crash information displayed in
       section B.8 from the system error logs when the system boots.

       To obtain the crash information from system error logs:

       1. From an Environment command window, execute the following
          command:

          Operator.Internal_System_Diagnosis

          The system opens an I/O window containing an EEDB: prompt.

       2. Enter kernel and press [#Promote#]:

          EEDB: kernel   [#Promote#]

          The system displays a Kernel: prompt.

       3. Enter show_error_log and press [#Promote#]:

          Kernel: show_error_log   [#Promote#]

          The system displays a range such as:

          first entry => 1; last entry => 440

       4. Enter the first entry of 1 and press [#Promote#]:

          FIRST [-10]: 1   [#Promote#]

       5. Enter the number of the last entry (here 440) and press
          [#Promote#]:

          LAST [-9]: 440   [#Promote#]

          The system displays a message such as the following and
          returns you to the Kernel: prompt:


       88                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


          11:59:29 --- CRASH_ANALYZER INFO  Analysis for Tombstone dated
          11:59:29 ... CRASH_ANALYZER INFO  11:27:52 22-JAN-1992
          11:59:30 --- CRASH_ANALYZER INFO
          11:59:30 --- CRASH_ANALYZER INFO CRASH REASON (based on last
          micro-PC)
          11:59:30 --- CRASH_ANALYZER INFO
          -------------------------------------
          11:59:30 --- CRASH_ANALYZER INFO    0206: cpu microcode error;
          refer to
          11:59:30 --- CRASH_ANALYZER INFO
          11:59:30 --- CRASH_ANALYZER INFO LAST CONSOLE OUTPUT
          11:59:31 --- CRASH_ANALYZER INFO -------------------
          11:59:31 --- CRASH_ANALYZER INFO 2KREAD_NOVRAM_DATA.VAL
             ...
          11:59:38 --- CRASH_ANALYZER INFO MACHINE CRASH, I/O ADAPTOR
          11:59:38 --- CRASH_ANALYZER INFO Restarting system after
          operations console
          11:59:39 --- CRASH_ANALYZER INFO
          11:59:39 --- CRASH_ANALYZER INFO R1000 cpu analysis
          11:59:39 --- CRASH_ANALYZER INFO ------------------
          11:59:39 --- CRASH_ANALYZER INFO UCODE TRACE (last 20 entries)
          11:59:39 --- CRASH_ANALYZER INFO -----------------------------
          11:59:40 --- CRASH_ANALYZER INFO Microcode trace for Wcs
          version  M207_17
          11:59:40 --- CRASH_ANALYZER INFO     8A1
             ...
          11:59:43 --- CRASH_ANALYZER INFO    34CF
          11:59:43 --- CRASH_ANALYZER INFO    34D0
          11:59:44 --- CRASH_ANALYZER INFO  C  210
          11:59:44 --- CRASH_ANALYZER INFO     206
          11:59:44 --- CRASH_ANALYZER INFO
          11:59:44 --- CRASH_ANALYZER INFO Micro Stack contents :
          11:59:45 --- CRASH_ANALYZER INFO  0 -  34D0
             ...
          11:59:47 --- CRASH_ANALYZER INFO 12 -   51F
          11:59:48 --- CRASH_ANALYZER INFO 13 -   51F
          11:59:48 --- CRASH_ANALYZER INFO 14 -   51F
          11:59:48 --- CRASH_ANALYZER INFO 15 -   51F
          11:59:48 --- CRASH_ANALYZER INFO
          11:59:49 --- CRASH_ANALYZER INFO UCODE STATE
          11:59:49 --- CRASH_ANALYZER INFO -----------
          11:59:49 --- CRASH_ANALYZER INFO Top  => 04350C04 00000A80
          (15)
             ...
          12:00:01 --- CRASH_ANALYZER INFO
          Kernel:

       6. Enter quit and press [#Promote#]:

          Kernel: quit   [#Promote#]

          The system returns you to the EEDB: prompt.

       7. Enter quit and press [#Promote#]:


       RATIONAL     May 1992                                          89\f

       Rational Environment Release Information


          EEDB: quit   [#Promote#]

          The system returns you to the Environment level.

       8. Send to the Rational Response Center all the lines of the
          system error log that have the words "Crash_Analyzer Info" in
          them.


       B.12.  Contacting the Rational Response Center

       Send the information you have gathered above to the Rational
       Response Center in Santa Clara, California.

       *  Via e-mail (TCP/IP Internet):

          support@rational.com

       *  Via fax (addressed to the "Response Center"):

          +1-408-496-3636 or
          +1-408-496-3637 (use this second number only if the first line
          is down, not just busy)

          Standard CCITT Group III telephone facsimile
          9600 bps, automatic fall-back to 7200/4800/2400 bps
          Unattended, 24-hour answering

       *  Via postal or other delivery service:

          RATIONAL
          Attention: Response Center
          3320 Scott Boulevard
          Santa Clara, California 95054-3197
          USA

       *  Via telephone:

          +1-408-496-3610 From anywhere
          1-800-433-5444 From U.S. except California, Alaska, and Hawaii
          1-800-533-5444 From California















       90                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


                                  Appendix C
                      Problem Reports Closed in D_12_6_5

       D_12_6_5 closes many problem reports and customer-service
       requests. The following two subsections list:

       *  Software problem reports closed

       *  Documentation problem reports closed


       C.1.  Software Problem Reports Closed

       Table C-1 lists the problem reports closed by D_12_6_5. It
       includes the PRS number of the problem, a brief description of
       the problem, and the section of this release information in which
       the problem is discussed in more detail (when applicable).



                Table C-1   Software Problems Fixed by D_12_6_5
        ------------------------------------------------------------- 
       |              |                                        |     |
       |  PRS Number  |              PRS Summary               |Secti|
       |              |                                        | on  |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |none          |Csr5215: Internal_Error elaborating     |7.6.2|
       |              |generics                                |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |none          |Csr5260: Directory manager crash        |7.15 |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |none          |Csr5261: Directory manager crash        |7.15 |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |none          |Csr6016: Sequential_Io.Read does not    |7.9  |
       |              |work                                    |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |12729-Star    |Kernel elaborator assumes exceptions fit|7.6.3|
       |              |in 48 bits                              |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |0-0301-9      |Add function to return if user is in a  |6.1.2|
       |              |specified ACL group                     |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |0-0358-2      |Goal parameter for Cmvc.Make_Spec_View  |7.16 |
       |              |is ignored for other directories        |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |10270-Shei-Swb|Text of error message needs improvement |7.6.1|
        ------------------------------------------------------------- 

       RATIONAL     May 1992                                          91\f

       Rational Environment Release Information





          Table C-1   Software Problems Fixed by D_12_6_5 (continued)
        ------------------------------------------------------------- 
       |              |                                        |     |
       |  PRS Number  |              PRS Summary               |Secti|
       |              |                                        | on  |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |1000000-Sier- |Problem with attribute in record clause |7.6.1|
       |Geb           |                                        |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |1000001-Sier- |Access_List commands print incorrect    |7.8  |
       |Geb           |symbols in logs                         |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |1000002-Sier- |Compilation used ::: for messages that  |7.6  |
       |Geb           |should have ---                         |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |1140702-Gato- |Csr5310: Representation clause allowed  |7.6.1|
       |Gbd           |after forcing occurrence                |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |1711335-Gato- |Default expression on                   |7.11 |
       |Gbd           |System_Backup.Backup                    |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |1704151-Shei- |Error message: Reformat failed - please |7.1  |
       |Jst           |abandon image                           |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |1739656-Gato- |Csr6645: R1000 code generator fails with|     |
       |Gbd           |!Lrm.System.Operand_Class_Error         |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |2437110-Sier- |Parser/Pretty_Printer destroys an image |7.1  |
       |Geb           |                                        |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |2604297-Rati- |RXI tokens transfer during failed login |7.14.|
       |Pbk           |                                        |2    |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |2617411-Gato- |Bad online documentation of             |8.3  |
       |Gbd           |Reject_Undefined_Pragmas switch         |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |2679572-Roge- |Ada bodies copied despite ACL           |7.8  |
       |Srp           |restrictions                            |     |
        ------------------------------------------------------------- 



       92                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5




          Table C-1   Software Problems Fixed by D_12_6_5 (continued)
        ------------------------------------------------------------- 
       |              |                                        |     |
       |  PRS Number  |              PRS Summary               |Secti|
       |              |                                        | on  |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |2809652-Clem- |Cmvc.Make_Path is inflexible in its     |7.16 |
       |Jim           |View_To_Import parameter                |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |2949267-Etoi- |Definition on <*Program_Library> locks  |7.6  |
       |Hts           |the program library                     |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |3068569-Cook- |Semantics bug                           |7.6.2|
       |Swb           |                                        |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |3289131-Gato- |Security problem: A way to find out user|7.4  |
       |Bas           |passwords                               |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |3336165-Shei- |Treatment of expression prompts in      |7.7.2|
       |Jst           |semantics could be better               |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |4123589-Blut- |RXI tokens are not consumed             |7.14.|
       |Jgp           |                                        |2    |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |4289272-Voya- |Login displays password-expiration      |7.4  |
       |Cmd           |warning with wrong password             |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |4967545-Voya- |Code generator fails when task entry is |7.6.2|
       |Phil          |promoted to coded                       |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |5172201-Cook- |Parser problem                          |7.1  |
       |Swb           |                                        |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |5360143-Rati- |Job.Kill is ignored by Common.Definition|7.4  |
       |Jls           |                                        |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |5367576-Blut- |Links.Edit and Display should require   |7.8  |
       |Smp           |Owner access                            |     |
        ------------------------------------------------------------- 




       RATIONAL     May 1992                                          93\f

       Rational Environment Release Information




          Table C-1   Software Problems Fixed by D_12_6_5 (continued)
        ------------------------------------------------------------- 
       |              |                                        |     |
       |  PRS Number  |              PRS Summary               |Secti|
       |              |                                        | on  |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |5700190-Etoi- |Compiler bugs: anomalies found when     |7.6.1|
       |Tnu           |using representation clauses            |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |6242437-Blut- |Typo in                                 |7.15 |
       |Vo            |!Machine.Initialization.Rational.       |     |
       |              |Terminals                               |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |6265678-Sier- |Incremental edit fails invalidly        |7.2  |
       |Geb           |                                        |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |6398339-Blut- |RXI tokens are consumed erroneously at  |7.14.|
       |Med           |login                                   |2    |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |6452721-Shei- |Problem with Ada.Make_Inline and        |7.2  |
       |Jst           |Sm_Subunits attributes                  |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |6821610-Stan- |Compilation.Load generates semantically |7.6.3|
       |Deg           |incorrect spec                          |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |7030779-Zebr- |Format causes most of the image to be   |7.1  |
       |Lore          |deleted                                 |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |7039962-Sier- |Error message: Reformat failed - please |7.1  |
       |Geb           |abandon image                           |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |7135597-Gato- |Unsuccessful login message should not   |6.4  |
       |Gbd           |include user name                       |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |7311575-Wash- |Cmvc.Initial is unfriendly              |7.16 |
       |Jim           |                                        |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |7483032-Gato- |Field needs crash-dump tape tools in    |7.13.|
       |Jls           |default Environment                     |1, B |
        ------------------------------------------------------------- 



       94                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5




          Table C-1   Software Problems Fixed by D_12_6_5 (continued)
        ------------------------------------------------------------- 
       |              |                                        |     |
       |  PRS Number  |              PRS Summary               |Secti|
       |              |                                        | on  |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |7733953-Gato- |System-boot prompts and questions need  |7.13.|
       |Vnv           |to be simplified                        |1, B |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |8068463-Mago- |Pretty printer bug                      |7.1  |
       |Sdj           |                                        |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |8277786-Voya- |Csr6102: System hangs; task             |7.6.1|
       |Bas           |In_Wait_Service                         |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0128-6|Code generator fails on unit that should|7.6.1|
       |              |never have been installed               |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0128-9|Private types and generic formals (LRM  |7.6.1|
       |              |7.4.1 (4))                              |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0131-7|Options parameter for                   |7.6.4|
       |              |Program_Library.Verify not documented   |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0131-8|New Archive options not documented in   |7.5  |
       |              |the specification                       |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0133-9|Problem in restoring a system backup    |7.11 |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0134-5|Problem with Ada.Show_Unused and        |7.2  |
       |              |enumeration literals                    |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0135-8|Bad default parameter on                |7.11 |
       |              |System_Backup.Backup                    |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0136-8|Csr3956: Performance issue              |7.7.1|
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0138-2|"<IMAGE>" in a searchlist can crash the |7.4  |
       |              |Environment                             |     |
        ------------------------------------------------------------- 


       RATIONAL     May 1992                                          95\f

       Rational Environment Release Information




          Table C-1   Software Problems Fixed by D_12_6_5 (continued)
        ------------------------------------------------------------- 
       |              |                                        |     |
       |  PRS Number  |              PRS Summary               |Secti|
       |              |                                        | on  |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0142-3|Problem in installing a unit under      |7.6.1|
       |              |Delta2                                  |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0143-2|Suggested enhancements for coded units  |7.7.2|
       |              |with statement prompts                  |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0145-5|R1000 code generator fails with         |7.6.2|
       |              |Constraint_Error (Variant)              |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0148-4|A way to find the sources that made     |6.2.3|
       |              |Load_Proc is needed                     |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0150-4|Bug in Library.Create                   |7.8  |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0151-1|Csr4723: Private parts required to be   |7.6.2|
       |              |open for generics                       |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0152-5|Csr4741: System hangs                   |7.15 |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0152-8|Csr4735: Bad compiler-error message     |7.6.1|
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0153-1|Csr4836: Compilation.Parse fails because|     |
       |              |of excessive nesting                    |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0155-0|Information for IOC NOVRAM is incorrect |7.15 |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0155-1|Pm_Report calls fails to get IOC NOVRAM |7.15 |
       |              |information                             |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0155-9|Load_Proc Compute_Recoding does not     |     |
       |              |behave properly                         |     |
        ------------------------------------------------------------- 




       96                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5




          Table C-1   Software Problems Fixed by D_12_6_5 (continued)
        ------------------------------------------------------------- 
       |              |                                        |     |
       |  PRS Number  |              PRS Summary               |Secti|
       |              |                                        | on  |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0156-3|Csr4845: Problem in installing package  |7.6.1|
       |              |with renames                            |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0156-6|Csr4971: Cmvc.Make_Spec_View has        |7.16 |
       |              |problems                                |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0156-7|Csr4786: All work lost after doing      |7.1  |
       |              |Common.Format                           |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0157-9|Csr5005: Problem with error marks       |7.6.1|
       |              |disappearing                            |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0158-6|Suggested enhancement: Improved         |7.11 |
       |              |operations for verifying system backup  |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0159-0|Csr4740: Runaway jobs and disk space    |7.3.1|
       |              |problems                                |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0159-1|Csr5142: Runaway jobs and disk space    |7.3.1|
       |              |problems                                |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0160-1|Csr4788: 8-mm tape will not unload after|6.2.2|
       |              |aborted backup                          |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0160-3|Csr4168: Attempt to reference offset    |     |
       |              |above TOS                               |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0160-7|Csr4626: Debug_Tools.Get_Exception_Name |7.3  |
       |              |fails if Retain_Delta1_Compatibility is |     |
       |              |False                                   |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0161-1|Dependency Object Editor demotes in     |7.2  |
       |              |incorrect order                         |     |
        ------------------------------------------------------------- 



       RATIONAL     May 1992                                          97\f

       Rational Environment Release Information




          Table C-1   Software Problems Fixed by D_12_6_5 (continued)
        ------------------------------------------------------------- 
       |              |                                        |     |
       |  PRS Number  |              PRS Summary               |Secti|
       |              |                                        | on  |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0163-9|Csr5454: Definition fails on generic    |7.1  |
       |              |instantiations                          |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0164-4|Port 16 dies after five minutes of use  |7.15 |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0165-3|Csr5501: Definition on exception takes  |7.1  |
       |              |you nowhere                             |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0165-6|Csr5588: Analyze_Crashdump runs all     |7.12.|
       |              |night                                   |2    |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0165-8|Csr5559: Xon/Xoff port 16 does not work |7.15 |
       |              |for Series 300s or 400s                 |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0166-0|Editor jobs cannot be killed            |7.4  |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0166-5|Remote passwords should be able to be   |7.4  |
       |              |used from *SYSTEM jobs                  |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0166-6|Csr5666: Unhandled-exception program    |7.6.2|
       |              |error                                   |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0167-7|Csr5538: Assertion_Error from locally   |     |
       |              |renamed private type                    |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0168-1|Csr5723: Elaboration of Unbounded_String|7.6.3|
       |              |bombs in D_12_5_0                       |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0168-2|Csr5773: Print command ignores option   |7.10 |
       |              |for sets of Ada units                   |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0168-8|Csr5710: Problem exists with FTP queues |7.10 |
        ------------------------------------------------------------- 



       98                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5




          Table C-1   Software Problems Fixed by D_12_6_5 (continued)
        ------------------------------------------------------------- 
       |              |                                        |     |
       |  PRS Number  |              PRS Summary               |Secti|
       |              |                                        | on  |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0169-0|Csr5707: Definition problem with        |7.1  |
       |              |exception defined in generic            |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0169-8|Invalid rename statement not detected by|7.6.1|
       |              |compiler                                |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0171-3|Csr5841: CMVC problems with D_12_5_0    |7.16 |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0171-8|Csr5650: Unsatisfiable import           |7.6.3|
       |              |requirements                            |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0172-6|Csr5917: Jobs hang on quit (IN FA       |7.3.1|
       |              |QUEUE); debugger hangs                  |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0173-8|Csr5990: Log_Reader.Load_Logs always    |7.15 |
       |              |adds today's log                        |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0175-9|Code vanishes when [#Format#] is pressed|7.1  |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0180-7|Csr4844: Semantic errors with valid     |7.6.1|
       |              |representation clause                   |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0181-8|Csr6261: Semanticizing problem; image   |7.1  |
       |              |destroyed                               |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9213690-0183-3|Csr6091: System hangs, idle; Job 4 stuck|7.3.1|
       |              |attempting entry                        |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9176782-Gato- |Problem with Check_Universe_Acls and    |7.15 |
       |Gbd           |system access to                        |     |
       |              |!Machine.Inititalization                |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9723630-0011-5|No function exists to check if User_Id  |6.1.2|
       |              |is in a group                           |     |
        ------------------------------------------------------------- 

       RATIONAL     May 1992                                          99\f

       Rational Environment Release Information




          Table C-1   Software Problems Fixed by D_12_6_5 (continued)
        ------------------------------------------------------------- 
       |              |                                        |     |
       |  PRS Number  |              PRS Summary               |Secti|
       |              |                                        | on  |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9723630-0025-8|Login sequence: Welcome output before   |6.4.2|
       |              |username prompt                         |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9723630-0074-7|A way to modify the login banner should |6.4.1|
       |              |be added                                |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9723630-0120-7|!Commands.Dependents.Find consumes      |7.2  |
       |              |actions                                 |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9723630-0122-0|Cannot browse to generic type           |7.1  |
       |              |declarations                            |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9924694-Mago- |Bug in incremental semantics            |7.2  |
       |Sdj           |                                        |     |
        ------------------------------------------------------------- 



       Table C-2 lists the problem reports that have been investigated
       and closed because of one of the following reasons: the problem
       could not be reproduced in D_12_6_5; the problem has been fixed
       in a previous Environment release; there is not enough
       information about the problem to proceed.



                   Table C-2   Not Reproducible in D_12_6_5
        ------------------------------------------------------------- 
       |              |                                              |
       |  PRS Number  |                 PRS Summary                  |
        ------------------------------------------------------------- 
       |              |                                              |
       |6583-Star     |Unhandled exception in R1000 code generator   |
        ------------------------------------------------------------- 
       |              |                                              |
       |6705-Star     |Anomaly in Search_List and name resolution    |
        ------------------------------------------------------------- 
       |              |                                              |
       |12676-Star    |Unhandled exception during code generation of |
       |              |variant records                               |
        ------------------------------------------------------------- 


       100                                         May 1992     RATIONAL\f

                                                        Release D_12_6_5





             Table C-2   Not Reproducible in D_12_6_5 (continued)
        ------------------------------------------------------------- 
       |              |                                              |
       |  PRS Number  |                 PRS Summary                  |
        ------------------------------------------------------------- 
       |              |                                              |
       |0-0004-1      |Interface crash                               |
        ------------------------------------------------------------- 
       |              |                                              |
       |0-0174-0      |Problem with access controls on release tapes |
       |              |of the Environment                            |
        ------------------------------------------------------------- 
       |              |                                              |
       |0-0192-3      |Incremental promote fails for function        |
        ------------------------------------------------------------- 
       |              |                                              |
       |0-0245-0      |Tape automatically unloaded                   |
        ------------------------------------------------------------- 
       |              |                                              |
       |0-0245-3      |Add_To_Acl interface needed                   |
        ------------------------------------------------------------- 
       |              |                                              |
       |0-0245-8      |Problem with verification of backup tapes     |
        ------------------------------------------------------------- 
       |              |                                              |
       |0-0264-4      |Error promoting an anonymous Ada object from  |
       |              |archived state                                |
        ------------------------------------------------------------- 
       |              |                                              |
       |0-0297-1      |Use clause removed                            |
        ------------------------------------------------------------- 
       |              |                                              |
       |0-0298-3      |Several Archive.Copy procedures in one job    |
       |              |often fail                                    |
        ------------------------------------------------------------- 
       |              |                                              |
       |0-0311-2      |Illegal links are not detected                |
        ------------------------------------------------------------- 
       |              |                                              |
       |1013207-Zebr- |Load_Procs do not archive well                |
       |Jim           |                                              |
        ------------------------------------------------------------- 
       |              |                                              |
       |1460343-Sier- |Promoting modified activity results in        |
       |Geb           |Lock_Error                                    |
        ------------------------------------------------------------- 
       |              |                                              |
       |1516292-Wash- |Inability to find cause of Storage_Error      |
       |Jim           |                                              |
        ------------------------------------------------------------- 



       RATIONAL     May 1992                                         101\f

       Rational Environment Release Information




             Table C-2   Not Reproducible in D_12_6_5 (continued)
        ------------------------------------------------------------- 
       |              |                                              |
       |  PRS Number  |                 PRS Summary                  |
        ------------------------------------------------------------- 
       |              |                                              |
       |1773909-Shei- |New Print command dies on Ada unit            |
       |Jst           |                                              |
        ------------------------------------------------------------- 
       |              |                                              |
       |1934610-Wash- |Networking will talk but will not listen      |
       |Jim           |                                              |
        ------------------------------------------------------------- 
       |              |                                              |
       |2300105-Shei- |Problem with Archive.Copy and session switches|
       |Jst           |                                              |
        ------------------------------------------------------------- 
       |              |                                              |
       |2465646-Mago- |Unhandled exception in code generation        |
       |Sdj           |                                              |
        ------------------------------------------------------------- 
       |              |                                              |
       |2474799-Wash- |Exception encountered during                  |
       |Jim           |R1000_Code_Generator.Initialize               |
        ------------------------------------------------------------- 
       |              |                                              |
       |2606070-Rati- |Links.Delete does not accept wildcards        |
       |Jls           |                                              |
        ------------------------------------------------------------- 
       |              |                                              |
       |2785456-Wood- |Unhandled exception from the Core Editor      |
       |Peg           |                                              |
        ------------------------------------------------------------- 
       |              |                                              |
       |2823763-Jazm- |Windows larger than 80 columns wide occur in  |
       |Smc           |RXI                                           |
        ------------------------------------------------------------- 
       |              |                                              |
       |29236-Capi-Ray|Problem with activity when spec/load views are|
       |              |on different lines                            |
        ------------------------------------------------------------- 
       |              |                                              |
       |3036900-Wash- |Inconsistency in Common.Promote and           |
       |Jim           |Ada.Code_Unit                                 |
        ------------------------------------------------------------- 
       |              |                                              |
       |3330141-Clem- |Problem with Archive.Copy and                 |
       |Jmk           |!Machine.Tcp_Ip_Name_Server                   |
        ------------------------------------------------------------- 
       |              |                                              |
       |345551-Zebr-  |Editor.Char.Tab_Backward does not work on     |
       |Jim           |empty space                                   |
        ------------------------------------------------------------- 

       102                                         May 1992     RATIONAL\f

                                                        Release D_12_6_5




             Table C-2   Not Reproducible in D_12_6_5 (continued)
        ------------------------------------------------------------- 
       |              |                                              |
       |  PRS Number  |                 PRS Summary                  |
        ------------------------------------------------------------- 
       |              |                                              |
       |3560244-Pica- |Debugger cannot show locations of breakpoints |
       |Jim           |                                              |
        ------------------------------------------------------------- 
       |              |                                              |
       |3758781-Wood- |Nonexistent_Page_Error after user interrupt   |
       |Jim           |                                              |
        ------------------------------------------------------------- 
       |              |                                              |
       |3780027-Rati- |Window commands do not accept numeric         |
       |Jls           |arguments                                     |
        ------------------------------------------------------------- 
       |              |                                              |
       |4452630-Calv- |Changed option of Archive no longer seems to  |
       |Jim           |work                                          |
        ------------------------------------------------------------- 
       |              |                                              |
       |4489106-Shei- |Problem with Activity Editor selections       |
       |Jst           |                                              |
        ------------------------------------------------------------- 
       |              |                                              |
       |4697876-Gato- |Csr5082: Index error for                      |
       |Gbd           |Name_Gen.Importing.Note_Used_Imports          |
        ------------------------------------------------------------- 
       |              |                                              |
       |4761811-Roge- |RXI seems to hang/break R1000 connection      |
       |Smc           |                                              |
        ------------------------------------------------------------- 
       |              |                                              |
       |4971889-Clem- |Common.Promote only does Format               |
       |Jim           |                                              |
        ------------------------------------------------------------- 
       |              |                                              |
       |5250100-Zebr- |Assertion_Error deletes Load_Proc             |
       |Jim           |                                              |
        ------------------------------------------------------------- 
       |              |                                              |
       |5384534-Smau- |Queue.Display does not end its line in the    |
       |Phil          |message window                                |
        ------------------------------------------------------------- 
       |              |                                              |
       |5390266-Blut- |Problem with Time_Utilities and Log.Put_Line  |
       |Smp           |around midnight                               |
        ------------------------------------------------------------- 
       |              |                                              |
       |6123643-Rang- |Generic instantiation fails (error in checking|
       |Oper          |array bounds)                                 |
        ------------------------------------------------------------- 

       RATIONAL     May 1992                                         103\f

       Rational Environment Release Information




             Table C-2   Not Reproducible in D_12_6_5 (continued)
        ------------------------------------------------------------- 
       |              |                                              |
       |  PRS Number  |                 PRS Summary                  |
        ------------------------------------------------------------- 
       |              |                                              |
       |6194736-Roge- |RWI cursor gets confused by a command window  |
       |Smc           |attached to a message window                  |
        ------------------------------------------------------------- 
       |              |                                              |
       |6517153-Flor- |Problem using Set_Target_Key with '?'         |
       |Jst           |                                              |
        ------------------------------------------------------------- 
       |              |                                              |
       |6801458-Gato- |Editor error after [#Object#] - [#G#]         |
       |Jls           |performed on message window                   |
        ------------------------------------------------------------- 
       |              |                                              |
       |6862896-Blut- |Output to message window is lost for most     |
       |Smp           |commands                                      |
        ------------------------------------------------------------- 
       |              |                                              |
       |7067816-Wash- |Disappearing procedure and Ada.Install_Stub   |
       |Jim           |                                              |
        ------------------------------------------------------------- 
       |              |                                              |
       |7102190-Zebr- |Problem in compilation                        |
       |Jim           |                                              |
        ------------------------------------------------------------- 
       |              |                                              |
       |7245446-Voya- |Editor exception is using screen cursors      |
       |Jim           |                                              |
        ------------------------------------------------------------- 
       |              |                                              |
       |7677278-Cook- |File_Utilities.Find/Text_Coupler (?): Bad     |
       |Jst           |error message                                 |
        ------------------------------------------------------------- 
       |              |                                              |
       |7746569-Pica- |Console_Io does not appear                    |
       |Jim           |                                              |
        ------------------------------------------------------------- 
       |              |                                              |
       |778583-Voya_  |RWI does not always redraw correctly          |
       |Drl           |                                              |
        ------------------------------------------------------------- 
       |              |                                              |
       |7821978-Clem- |Resolving "<TEXT>" fails                      |
       |Marl          |                                              |
        ------------------------------------------------------------- 
       |              |                                              |
       |7872950-Shei- |Ada front-end bug                             |
       |Swb           |                                              |
        ------------------------------------------------------------- 

       104                                         May 1992     RATIONAL\f

                                                        Release D_12_6_5




             Table C-2   Not Reproducible in D_12_6_5 (continued)
        ------------------------------------------------------------- 
       |              |                                              |
       |  PRS Number  |                 PRS Summary                  |
        ------------------------------------------------------------- 
       |              |                                              |
       |8181636-Shei- |Archive option Changed_Objects not working    |
       |Jst           |                                              |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0126-0|Csr2952: System_Report.Generate (Tape_Mounts) |
       |              |crossing 12 P.M.                              |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0128-7|Crashes that look like Operator shutdown of   |
       |              |system occur                                  |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0132-1|Csr3614: Primary backup hangs after recovery  |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0132-2|Problem with remote-password prompt window    |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0138-1|System crashes when rebooting                 |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0138-5|Delta2 Cmvc.Initial complains about ACLs      |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0140-0|Csr3985: RXI does not pick up defaults file   |
       |              |for menu fonts                                |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0140-6|*Kernel Shutdown should be removed from Kernel|
       |              |CI                                            |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0140-8|Csr4067: Duplicate error logs created by      |
       |              |reboot server                                 |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0143-3|Csr4075: System hung                          |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0144-8|Csr4327: Error message no tokens available is |
       |              |incorrect                                     |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0146-2|Cmvc.Show, Check_In, and Check_Out will not   |
       |              |raise exceptions                              |
        ------------------------------------------------------------- 


       RATIONAL     May 1992                                         105\f

       Rational Environment Release Information




             Table C-2   Not Reproducible in D_12_6_5 (continued)
        ------------------------------------------------------------- 
       |              |                                              |
       |  PRS Number  |                 PRS Summary                  |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0146-5|Csr4470: User Rational is using               |
       |              |layered-product tokens                        |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0149-1|Cannot demote or promote unit(s) from         |
       |              |installed state                               |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0150-9|Csr4572: Bug in Transport_Interchange.Convert |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0151-5|Reject_Inevitable_Exceptions rejects correct  |
       |              |code                                          |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0154-1|Machine appears stuck (IN_FA_QUEUE)           |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0154-3|Csr4934: Delayed secondary backup does not    |
       |              |delay                                         |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0155-5|Compiler: Type Identity has an index with     |
       |              |different bounds                              |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0156-4|Csr4655: Problem with PM report               |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0156-5|Unexpected exception                          |
       |              |R1000_Code_Generator.Initialize during boot   |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0157-3|Csr5058: Internal error: Unsatisfiable import |
       |              |requirement                                   |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0158-0|Csr5077: Check_Universe_Acls results in       |
       |              |unhandled exception                           |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0159-2|Problem with derived type of String           |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0159-7|Csr5174: Wrong profile used                   |
        ------------------------------------------------------------- 


       106                                         May 1992     RATIONAL\f

                                                        Release D_12_6_5




             Table C-2   Not Reproducible in D_12_6_5 (continued)
        ------------------------------------------------------------- 
       |              |                                              |
       |  PRS Number  |                 PRS Summary                  |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0161-8|Csr5042: Installing a unit returns Spec of    |
       |              |with ...                                      |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0165-5|Csr5540: Missing Controlled_Operations in     |
       |              |D_12_5_0                                      |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0174-6|Csr2242: Cmvc.Make_Path does not work with    |
       |              |archived units                                |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0176-9|Bug in package Window_Io                      |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0178-2|Archive fails to restore because of bad       |
       |              |Tool_State switches                           |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0178-3|Diff never completes in Cmvc.Check_In         |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0178-4|!Lrm.System.Operand_Class_Error and           |
       |              |Illegal_Reference raised                      |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0178-8|Code-generation error                         |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0178-9|Semantically incorrect Ada unit executable on |
       |              |Rational                                      |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0179-0|Library.Create_World can create an incorrect  |
       |              |world                                         |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0180-1|Error during incremental changes              |
        ------------------------------------------------------------- 
       |              |                                              |
       |9123690-0180-3|Disable_Job does not work from Kernel prompt  |
        ------------------------------------------------------------- 
       |              |                                              |
       |9445015-Shei- |Editing switch files without proper ACLs locks|
       |Dian          |switch file                                   |
        ------------------------------------------------------------- 


       RATIONAL     May 1992                                         107\f

       Rational Environment Release Information




             Table C-2   Not Reproducible in D_12_6_5 (continued)
        ------------------------------------------------------------- 
       |              |                                              |
       |  PRS Number  |                 PRS Summary                  |
        ------------------------------------------------------------- 
       |              |                                              |
       |9723630-0009-2|Ugly message logged on demote                 |
        ------------------------------------------------------------- 
       |              |                                              |
       |9723630-0021-9|Problem with accepting changes between        |
       |              |different subpaths                            |
        ------------------------------------------------------------- 
       |              |                                              |
       |9723630-0023-8|Cmvc.Accept_Changes bug                       |
        ------------------------------------------------------------- 
       |              |                                              |
       |9723630-0090-5|Erasedisk should be modified to allow         |
       |              |different number of passes                    |
        ------------------------------------------------------------- 
       |              |                                              |
       |9723630-0096-2|Crash during D_12_1_1 installation with       |
       |              |message kernel assert failure                 |
        ------------------------------------------------------------- 
       |              |                                              |
       |9723630-0114-1|Archive.Restore giving layout error           |
        ------------------------------------------------------------- 
       |              |                                              |
       |9723630-0123-0|Csr2410: Editor job hogs CPU                  |
        ------------------------------------------------------------- 




       C.2.  Documentation Problem Reports Closed

       Table C-3 lists the problems reports that have been closed by the
       release of new online and printed documentation for the Session
       and Job Management (SJM), Library Management (LM), and System
       Management Utilities (SMU) books of the Rational Environment
       Reference Manual (ERM). The table includes the PRS number of the
       problem, a brief description of the problem, and the document in
       which the problem has been fixed. All problems indicated as fixed
       in a specific document also have been fixed in online help.











       108                                         May 1992     RATIONAL\f

                                                        Release D_12_6_5




             Table C-3   Documentation Problems Fixed by D_12_6_5
        ------------------------------------------------------------- 
       |              |                                        |     |
       |  PRS Number  |              PRS Summary               |Book |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |5653-Star     |Problem with                            |DEB  |
       |              |!Tools.Debug_Tools.Get_Exception_Name   |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |5742-Star     |Debugger documentation for Put is       |DEB  |
       |              |inaccurate                              |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |6559-Star     |Debugger documentation has an error     |DEB  |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |7025-Star     |Newly created session defaults need     |SJM  |
       |              |documentation                           |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |7074-Star     |Package descriptions lack an overview of|SJM, |
       |              |package contents                        |LM,  |
       |              |                                        |SMU  |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9759-Star     |Maximum for Job_Page_Limit is not       |SJM, |
       |              |documented                              |LM   |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |10138-Star    |Default parameter value for Profile.Warn|SJM  |
       |              |is incorrect                            |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |10240-Star    |Description of Library.Space does not   |LM   |
       |              |match the specification                 |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |10522-Star    |Documentation for Overwrite option of   |LM   |
       |              |Archive.Restore is incorrect            |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |10557-Star    |Documentation for Compilation.Load is   |LM   |
       |              |insufficient                            |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |11456-Star    |Typo on page SMU-1                      |SMU  |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |12059-Star    |Documentation for pragma Main and pragma|LM   |
       |              |Loaded_Main is insufficient             |     |
        ------------------------------------------------------------- 


       RATIONAL     May 1992                                         109\f

       Rational Environment Release Information





       Table C-3   Documentation Problems Fixed by D_12_6_5 (continued)
        ------------------------------------------------------------- 
       |              |                                        |     |
       |  PRS Number  |              PRS Summary               |Book |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |0-0244-9      |Documentation for Overwrite option of   |LM   |
       |              |Archive commands is incorrect           |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |0-0282-4      |Misleading documentation on page LM-316 |LM   |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |0-0282-7      |Documentation of the File, Directory,   |SMU  |
       |              |and Ada daemons is incorrect            |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |0-0284-2      |No error message is given when          |LM   |
       |              |Archive.Copy is used on nonexistent     |     |
       |              |objects                                 |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |0-0317-9      |Description of                          |LM   |
       |              |Format.Consistent_Breaking library      |     |
       |              |switch has an error                     |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |0-0334-5      |Example on page SMU-38 is incorrect     |SMU  |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |0-0358-6      |Online help for                         |SMU  |
       |              |!Commands.Terminal.Set_Logoff_On_       |     |
       |              |Disconnect is incorrect                 |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |1495461-Gato- |Online help for Mail session switches is|Onlin|
       |Rjg           |missing                                 |e    |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |2023294-Roge- |Reject_Undefined_Pragmas library switch |Onlin|
       |Jaf           |displays incorrect help                 |e    |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |3201747-Voya- |Documentation of interaction of         |SMU  |
       |Phil          |Enable_Privileges and editors is        |     |
       |              |inadequate                              |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |729632-Gato-  |Documentation is incorrect for Overwrite|LM   |
       |Vnv           |option of Archive                       |     |
        ------------------------------------------------------------- 


       110                                         May 1992     RATIONAL\f

                                                        Release D_12_6_5




       Table C-3   Documentation Problems Fixed by D_12_6_5 (continued)
        ------------------------------------------------------------- 
       |              |                                        |     |
       |  PRS Number  |              PRS Summary               |Book |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |8466957-Rati- |Suggested enhancement to documentation  |LM   |
       |Jls           |for package Archive                     |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |8594091-Rati- |Incorrect explanation for               |SJM  |
       |Pbk           |Session.Prompt_Delimiters session switch|     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |8692100-Gato- |Online help crossed for                 |Onlin|
       |Mpr           |Session.Window_Frames and               |e    |
       |              |Window_Default_Sort_Order session       |     |
       |              |switches                                |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0131-5|Dcoumentation is insufficient for prefix|LM   |
       |              |expressions in Archive                  |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0131-9|Operator.Enable_Privileges does not work|SMU  |
       |              |for members of group Privileged         |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0136-2|Csr3923: Documentation is insufficient  |Secti|
       |              |for enabling a laser printer            |on A |
       |              |                                        |and  |
       |              |                                        |SMU  |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0137-2|Csr3975: Session.Search_Regular_Expr    |SJM  |
       |              |session switch does not work            |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9123690-0166-4|Csr5617: Session switches do not apply  |SJM  |
       |              |when Ftp.Get is run under *SYSTEM       |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9723630-0021-2|Format.Alignment_Threshold switch       |LM   |
       |              |description is insufficient             |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9723630-0036-0|No documentation exists for Host        |SMU  |
       |              |parameter of Queue.Add                  |     |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9723630-0058-1|Documentation is incorrect for          |SJM  |
       |              |Log.Set_Output and Log.Set_Error        |     |
        ------------------------------------------------------------- 

       RATIONAL     May 1992                                         111\f

       Rational Environment Release Information




       Table C-3   Documentation Problems Fixed by D_12_6_5 (continued)
        ------------------------------------------------------------- 
       |              |                                        |     |
       |  PRS Number  |              PRS Summary               |Book |
        ------------------------------------------------------------- 
       |              |                                        |     |
       |9723630-0099-2|Spec and documentation for Tape.Write do|SMU  |
       |              |not match                               |     |
        ------------------------------------------------------------- 













































       112                                         May 1992     RATIONAL\f

                                                        Release D_12_6_5


                                   Contents


       1.  Overview                                                    1
       2.  Supported Configurations and Upgrades                       2
       3.  Compatibility                                               3
       4.  Upgrade Impact                                              5
          4.1.  Impact of Specification Changes                        6
             4.1.1.  Upgrading from D_12_5_0                           6
             4.1.2.  Upgrading from D_12_2_4                           6
             4.1.3.  Upgrading from D_12_1_1                           7
          4.2.  Impact of Implementation Changes                       7
       5.  Known Problems and Limitations                              7
          5.1.  Problem Installing the Cross-Development Facility      8
          5.2.  Errors Reported When Archiving Switch Files to
          Non-D_12_6_5 Machines                                       10
          5.3.  Limitation in Archiving between Machines Running
          Different Releases                                          10
          5.4.  Problem with Record Representation Clauses and
          Long_Integer Type                                           11
          5.5.  Problem Using DFS Tools with Coprocessors             11
          5.6.  Problems with Documentation Tools                     11
          5.7.  Problem When Initializing Session Switch Files        12
       6.  New Environment Interfaces                                 12
          6.1.  New Declarations in Package Access_List_Tools         12
             6.1.1.  Function Grants                                  13
             6.1.2.  Function Is_In_Group                             13
             6.1.3.  Function Is_Valid_Group                          13
             6.1.4.  Procedure Remove                                 13
             6.1.5.  Procedure Set                                    14
             6.1.6.  Procedure Set_Default                            14
          6.2.  New Procedures in System_Maintenance Subsystem        14
             6.2.1.  Procedure Last_Gasp_Destroy                      14
             6.2.2.  Procedure Release_Tape_User                      15
             6.2.3.  Procedure Show_Load_Proc_Unit_Names              15
             6.2.4.  Procedure Show_Tape_Users                        16
          6.3.  New Features in Package Dfs                           16
             6.3.1.  Support Tools                                    17
             6.3.2.  Dfs_Release File                                 17
          6.4.  New Login_Policy World                                18
             6.4.1.  Establishing a Login Policy                      18
             6.4.2.  Specifying the Login Message                     20
          6.5.  New Telnet_Tools Subsystem                            21
          6.6.  Products Now Delivered with the Environment           21
             6.6.1.  Rational X-Interface and Windows-Interface       21
             6.6.2.  Documentation Tools                              22
       7.  Changes from D_12_5_0                                      22
          7.1.  Changes to Package Common                             23
          7.2.  Changes to Editing Ada Units                          23
          7.3.  Changes to Debugging                                  24
             7.3.1.  Quitting While the Debugger is Running           24
          7.4.  Changes to Session and Job Management                 25
          7.5.  Archive Changes                                       25
             7.5.1.  Copying Ada Units with Subobjects                25
             7.5.2.  Archiving Library Switch Files                   26

       RATIONAL     May 1992                                         iii\f

       Rational Environment Release Information


          7.6.  Compilation Changes                                   26
             7.6.1.  Installing Units                                 26
             7.6.2.  Coding Units                                     28
             7.6.3.  Loading and Executing Units                      29
             7.6.4.  Program Libraries                                30
          7.7.  Changes to Library Switches                           30
             7.7.1.  New Switch: Semantics.Limit_Semantic_Messages    30
             7.7.2.  New Switch: Semantics.Reject_Statement_Prompts   31
             7.7.3.  Change to Default Value of
             R1000_Cg.Retain_Delta1_Compatibility Switch              31
          7.8.  Changes to Other Library Management Facilities        32
          7.9.  Changes to Device Input and Output                    33
          7.10.  Changes to Printing                                  33
          7.11.  Changes to System Backups                            33
          7.12.  Changes to the Diagnostic File System (DFS)          34
             7.12.1.  Renamed Procedures                              34
             7.12.2.  Analyze_Crashdump Prompts for Input             34
          7.13.  Changes to Crash Analysis                            34
             7.13.1.  Changes to the Crash Analysis Procedures        34
             7.13.2.  Change to Crashdumps and Tombstones             35
          7.14.  Changes to Token Policies                            35
             7.14.1.  Transferring Tokens between Series 400 and 300  35
             7.14.2.  Token Changes to RXI                            37
          7.15.  Miscellaneous Changes to System Management           37
          7.16.  Changes to CMVC                                      38
          7.17.  Update to !Tools.Math_Support                        39
          7.18.  Miscellaneous Changes                                39
             7.18.1.  Change to Library_Object_Editor                 39
             7.18.2.  Change to Code_Segment_Object_Editor            40
       8.  Documentation                                              40
          8.1.  New Printed Documentation                             40
          8.2.  New Online Documentation                              41
          8.3.  New Help for Switches                                 41
             8.3.1.  Session Switches                                 42
             8.3.2.  Library Switches                                 42
       A  Guide to Machine Initialization                             43
          A.1.  Overview                                              43
             A.1.1.  World !Machine.Initialization.Rational           44
             A.1.2.  Worlds !Machine.Initialization.[Site,Local]      45
          A.2.  Setting Up the Site and Local Worlds                  47
          A.3.  Hints for Implementing System Customizations          48
             A.3.1.  Writing Customized Initialization Procedures     48
             A.3.2.  Using "_Start" Files to Reference Initialization
             Procedures                                               49
             A.3.3.  Controlling the Order of Execution               51
             A.3.4.  Customizing Disk-Collection Thresholds           52
          A.4.  Enabling and Configuring Login Ports                  52
             A.4.1.  Enabling Ports for Login                         53
             A.4.2.  Customizing Port Characteristics                 54
             A.4.3.  A Sample Terminal_Configuration File             56
             A.4.4.  Terminal-Configuration Options                   57
          A.5.  Configuring Printers                                  60
             A.5.1.  Where to Specify Printer Information             61
             A.5.2.  Adding Entries to a Printer_Configuration File   62
             A.5.3.  Specifying a Directly Connected Printer          64

       iv                                          May 1992     RATIONAL\f

                                                        Release D_12_6_5


             A.5.4.  Specifying a Networked Printer                   64
             A.5.5.  Specifying an Environment File                   65
             A.5.6.  Specifying a Workstation Directory               66
             A.5.7.  Associating Default Printers with Individual
             Users69
       B  Diagnostic Crash Procedures                                 71
          B.1.  Introduction                                          71
          B.2.  When Your System Crashes                              71
          B.3.  Using These Diagnostic Crash Procedures               72
          B.4.  Saving Information about the System State             72
          B.5.  Crash due to Power Failure                            74
             B.5.1.  Indication of Power Failure                      74
             B.5.2.  Recovering from Power Failure                    74
          B.6.  Crash due to Overheating                              75
             B.6.1.  Indications of Overheating                       76
             B.6.2.  Recovering from Overheating                      76
          B.7.  Displays "Connect Modem" Message and Hangs            77
             B.7.1.  Indications of "Failure to Connect Modem"        77
          B.8.  Other System Failures                                 77
             B.8.1.  Redisplaying the Crash Reason                    78
          B.9.  Common Crash Reasons and Responses                    80
             B.9.1.  Halt => System Error                             80
             B.9.2.  Halt => I/O Processor Hardware Error             80
             B.9.3.  Halt => I/O Processor Software Error             80
             B.9.4.  Halt => Processor Hardware Error                 80
             B.9.5.  Halt => Processor Multi Bit Memory Error         80
             B.9.6.  Halt => Processor Sysbus Hardware Error          81
             B.9.7.  Halt => Processor Microcode Error                83
             B.9.8.  Halt => Processor Software Error                 83
             B.9.9.  Halt => Shutdown from Environment                83
             B.9.10.  Halt => Processor Crash Error                   83
             B.9.11.  Machine Check (Parity Error)                    86
             B.9.12.  Any Other Reason                                86
          B.10.  If You Suspect Disk Errors                           86
             B.10.1.  Running Diskx                                   86
             B.10.2.  Running Checkdisk                               87
          B.11.  Recovering Crash Information from the Environment    88
          B.12.  Contacting the Rational Response Center              90
       C  Problem Reports Closed in D_12_6_5                          91
          C.1.  Software Problem Reports Closed                       91
          C.2.  Documentation Problem Reports Closed                 108















       RATIONAL     May 1992                                           v\f

       Rational Environment Release Information


























































       vi                                          May 1992     RATIONAL