## Installation instructions for fix UK69574 for IBM Rational Developer for System z v76 (FMID HHOP760)

The fix is shipped as file IBM.HHOP760.UK69574

The following fixes are prerequisites for this fix:

- UK63066
- UK57122
- UK54177

These prerequisites can be downloaded from the Developer for System z Recommended Fixes page, if not included as file IBM.HHOP760.<prereq>.

### Overview of the installation steps

Steps required to install the fix:

1. Allocate host data sets for the fix.
2. Upload the fix from your workstation to z/OS.
3. SMP/E hold information for the fix.
4. Perform SMP/E RECEIVE and APPLY for the fix.

### Allocate host data sets for the fix

A sequential data set must be allocated on the z/OS system to receive the fix that you will upload from your workstation. You can do this by submitting the job below. Add a job card and modify the parameters to meet your site's requirements before submitting.

    //ALLOC    EXEC PGM=IEFBR14
    //*
    //UK69574    DD DSN=hlq.IBM.HHOP760.UK69574,
    //            DISP=(NEW,CATLG,DELETE),
    //            DSORG=PS,
    //            RECFM=FB,
    //            LRECL=80,
    //            UNIT=SYSALLDA,
    //*            VOL=SER=volser,
    //*            BLKSIZE=6160,
    //            SPACE=(TRK,(109,20))
    //*

### Upload the fix from your workstation to z/OS

Upload the file in binary format from your workstation to the z/OS data set. On a Windows system, you can use FTP from a command prompt to upload the file. In the sample dialog shown below, commands or other information entered by the user are in bold, and the following values are assumed:

User enters: | Values
--- | ---
`mvsaddr` | TC P/IP address of the z/OS system
`tsouid` | Your TSO user ID
`tsopw` | Your TSO password
`d:` | Your drive containing the fix files
`hlq` | High-level qualifier that you used for the data set that you allocated in the job above

    C:\>ftp mvsaddr
    Connected to mvsaddr.
    220-FTPD1 IBM FTP CS %version% at mvsaddr, %time% on %date%.
    220 Connection will close if idle for more than 60 minutes.

    User (mvsaddr:(none)): tsouid
    331 Send password please.

    Password: tsopw
    230 tsouid is logged on.  Working directory is "tsouid.".

    ftp> cd ..
    250 "" is the working directory name prefix.

    ftp> cd hlq
    250 "hlq." is the working directory name prefix.

    ftp> binary
    200 Representation type is Image

    ftp> put d:\IBM.HHOP760.UK69574
    200 Port request OK.
    125 Storing data set hlq.IBM.HHOP760.UK69574
    250 Transfer completed successfully
    6045280 bytes sent in 0.28 seconds

    ftp> quit
    221 Quit command received. Goodbye.

### SMP/E hold information for the fix

    ++HOLD(UK69574) SYS FMID(HHOP760) REASON(ACTION) DATE(11189)
    COMMENT
    (****************************************************************
    * Affected function: RSED audit processing                     *
    *                    RSED configuration                        *
    *                    RSED console messages                     *
    ****************************************************************
    * Description: new options added                               *
    ****************************************************************
    * Timing: post-APPLY                                           *
    ****************************************************************
    * Part: /etc/rdz/rsed.envvars                                  *
    *       [/usr/lpp/rdz/samples/rsed.envvars]                    *
    ****************************************************************
    This service allows for a user exit (shell script, REXX or
    program) to be invoked when an audit log is closed.
    The exit receives 1 argument, the full pathname of the log file.

    Messages created by the user exit are sent to the console as
    FEK910I AUDIT EXIT:

    A sample user exit is provided as
    /usr/lpp/rdz/samples/process_audit.rex

    This service updates the sample rsed.envvars by adding the
    following optional directives:
    #_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Daudit.action="
    #_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Daudit.action.id="

    Add these directives to your active rsed.envvars (by default
    located in /etc/rdz) if you want to use them.

    #_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Daudit.action="

    Name of a user exit which will be invoked when an audit log
    file is closed. There is no default value, but a sample exit
    is provided in /usr/lpp/rdz/samples/process_audit.rex.
    Uncomment and specify the full pathname of the user exit
    program to enable post-processing of audit logs.

    Note:
    Messages created by the user exit are sent to the console as
    FEK910I AUDIT EXIT:

    #_RSE_JAVAOPTS="$_RSE_JAVAOPTS -Daudit.action.id="

    User ID to be used for running the exit specified in the
    audit.action variable. The default is the user ID assigned
    to RSE daemon. Uncomment and specify a user ID to use the
    specified ID for executing the audit post-processing exit.
    ****************************************************************
    * Affected function: RSED configuration                        *
    ****************************************************************
    * Description: DISABLE_TEXT_SEARCH option added                *
    ****************************************************************
    * Timing: post-APPLY                                           *
    ****************************************************************
    * Part: /etc/rdz/rsed.envvars                                  *
    *       [/usr/lpp/rdz/samples/rsed.envvars]                    *
    ****************************************************************
    This service updates the sample rsed.envvars by adding the
    following optional directive:

    #_RSE_JAVAOPTS="$_RSE_JAVAOPTS -DDISABLE_TEXT_SEARCH=true"

    Disable the ability to do text searches in libraries. Remote
    index search is still possible. The default value is FALSE.
    Uncomment and specify TRUE to disable library text searches.

    Add this directive to your active rsed.envvars (by default
    located in /etc/rdz) if you want to use it.
    ****************************************************************
    * Affected function: configuration problem analysis            *
    ****************************************************************
    * Description: updated debug information gathering tool        *
    ****************************************************************
    * Timing: pre-APPLY                                            *
    ****************************************************************
    * Part: FEK.SFEKSAMP(FEKLOGS)                                  *
    ****************************************************************
    This maintenance updates the debug information gathering tool,
    FEKLOGS.
    If you have customized this file, it is advised to back it
    up before proceeding with SMP/E Apply.

    ****************************************************************
    * Affected function: configuration problem analysis            *
    ****************************************************************
    * Description: updated debug information gathering tool        *
    ****************************************************************
    * Timing: post-APPLY                                           *
    ****************************************************************
    * Part: FEK.SFEKSAMP(FEKLOGS)                                  *
    *       [FEK.#CUST.JCL(FEKLOGS)]                               *
    ****************************************************************
    This maintenance updates the debug information gathering tool,
    FEKLOGS.
    Redo your customizations, if any, after applying this
    maintenance.

    ****************************************************************
    * Affected function: RSED operator commands                    *
    ****************************************************************
    * Description: new operator commands                           *
    *              new console messages                            *
    ****************************************************************
    * Timing: post-APPLY                                           *
    ****************************************************************
    * Part: none                                                   *
    ****************************************************************
    This service introduces 2 new operator commands for the RSED
    started task, and introduces 2 new console messages.

    MODIFY RSED,APPL=IVP DAEMON,userid

    Log user ID 'userid' on to RSE daemon to do a connection test.
    The function is similar to what the fekfivpd IVP (Installation
    Verification Program) does.
    Results are shown with console messages FEK900I ande FEK901I.

    MODIFY RSED,APPL=IVP PASSTICKET,userid

    Generate a passticket and use it twice to authenticate user ID
    'userid'. This verifies PassTicket creation and the required
    NO-REPLAY-PROTECTION security flag.
    Results are shown with console messages FEK900I ande FEK901I.

    Sample results:
    F RSED,APPL=IVP DAEMON,IBMUSER
    +FEK900I DAEMON IVP: SSL is disabled
    +FEK900I DAEMON IVP: connected
    +FEK900I DAEMON IVP: 1274
    +FEK900I DAEMON IVP: 580850
    +FEK900I DAEMON IVP: Success
    +FEK901I DAEMON IVP  Exit code = 0

    F RSED,APPL=IVP PASSTICKET,IBMUSER
    +FEK900I PASSTICKET IVP: the default applid=FEKAPPL
    +FEK900I PASSTICKET IVP: Success, PassTicket IVP finished normal
    +FEK901I PASSTICKET IVP  Exit code = 0

    ****************************************************************
    * Affected function: LOCKD operator commands                   *
    ****************************************************************
    * Description: new operator commands                           *
    ****************************************************************
    * Timing: post-APPLY                                           *
    ****************************************************************
    * Part: none                                                   *
    ****************************************************************
    This service introduces a new operator command for the LOCKD
    started task.

    MODIFY LOCKD,APPL=DISPLAY TABLE

    Dsiplay the mapping table LOCKD uses to determine which
    Developer for System z user holds a certain data set lock
    (GRS reports only the ASID/TCB pair).
    Results are shown with console message BPXM023I.

    Sample results:
    -F LOCKD,APPL=DISPLAY TABLE
    BPXM023I (STCLOCK)
    PID------- ASID TCB----- USERID--
    350 001A 00123ABC IBMUSER

    ****************************************************************
    * Affected function: automatic process cleanup                 *
    ****************************************************************
    * Description: change action for process.cleanup.interval=0    *
    ****************************************************************
    * Timing: post-APPLY                                           *
    ****************************************************************
    * Part: /etc/rdz/rsed.envvars                                  *
    *       [/usr/lpp/rdz/samples/rsed.envvars]                    *
    ****************************************************************
    This service changes the implementation when
    process.cleanup.interval equals 0.
    Current implementation:
    Disable the automatic cleanup of processes that are hung/dead.

    New implementation:
    Cleanup the process as soon as the daemon realizes that the
    process is dead or hung. This can happen during a new client
    logon or the DISPLAY PROCESS operator command.

    Note that the implementation for non-zero values remains the
    same. For example, when "process.cleanup.interval=60" is
    specified, a monitor thread will run every 60 seconds and
    consume CPU, even if there is no dead process.
    When "process.cleanup.interval=0" is specified, the monitor
    thread is not needed and thus there is no CPU consumption if
    there is no hung/dead process.).

### Perform SMP/E RECEIVE and APPLY for the fix

SMP/E RECEIVE and APPLY the fix.