Resources



Problem Fix Number: 4844

For SYSTEM 2000 Version: 12.1

Problem Status: ZD -- R12.1 FFD3

Description of Problem:

SCF USERS NOT GETTING CLEANED UP WHEN TASKS ASSOCIATED WITH THEM ARE FORCE PURGED.


Download Fix:

Note:   Please send email to s2k@sas.com telling us which problem fixes you have downloaded so we can keep track of the fixes at your site in case questions or problems arise.


Top of Zap Deck:

 *  IBM R12.1   BUG 4844  MVS                                                    
 *                                                                               
 * THIS BUG FIX WILL REPAIR AREAS IN THE CICS INTERFACE ERROR HANDLING           
 * THAT HAVE BEEN BROKEN BY OTHER BUG FIXES.  IN PARTICULAR, SCF USERS           
 * THAT HAVE BEEN PURGED FROM CICS WILL NEVER GET CLEANED UP.                    
 *                                                                               
 * THE DFHPEP PART OF THIS FIX IS TO BE APPLIED TO DFHPEP21 FOR THE 2.1          
 * RELEASE OF CICS.  APPLY THE DFHPEP32 FIX FOR CICS VERSION 3.2 AND             
 * ABOVE.                                                                        
 *                                                                               
 ./ CHANGE NAME=SCFINTF                                                          
 * *13* 20JUN96 GOH B4844 SET TASK NUMBER IN URB FOR SCF USERS   *13*    00020010
          MVC   URBTASK,EIBTASKN        SET TASK NUMBER          *13*    00171010
 ./ CHANGE NAME=SCFTERM                                                          
 * *20* 20JUN96 GOH B4844 FIX HANG PROBLEMS WITH ABENDING SCF USERS      00026880
          MVC   SCFCUID,=CL8' '     CLEAR USER ID FIELD            *20*  00133010
          BE    TERM0100            YES. GO AHEAD ON               *20*  00204000
          ST    R8,SCFCURB          SET URB ADDRESS                *20*  00206010
          TM    URBFLAG1,URBWAIT     WAIT FLAG ON ?                *20*  00217010
          BZ    TERM0209             NO. PROCESS IT                *20*  00217020
          CLI   SCFCFRC,X'FF'        FORCED ?                      *20*  00217030
          BE    TERM0203             YES. CONTINUE                 *20*  00217040
 TERM0202 EQU   *                                                  *20*  00217050
 *                                                                 *20*  00217060
 * AT THIS POINT, WE NEED TO CHECK THE URBECB TO                   *20*  00217070
 * DETERMINE IF IT HAS BEEN POSTED BY SYSTEM 2000 AND IF SO, WE    *20*  00217080
 * WILL TURN OFF THE URBWAIT FLAG AND WRAP UP PROCESSING FOR THIS  *20*  00217090
 * URB.                                                            *20*  00217100
 *                                                                 *20*  00217110
          TM    URBECB,X'40'            HAS URB BEEN POSTED ?      *20*  00217120
          BO    TERM0203                YES. WRAP IT UP            *20*  00217130
 *                                                                 *20*  00217140
 * THE URB HAS NOT BEEN POSTED BY MULTI-USER SO WE WILL TURN ON    *20*  00217150
 * THE ERROR FLAG AND DELAY CLEAN UP TILL ANOTHER TIME.            *20*  00217160
 *                                                                 *20*  00217170
          OI    URBFLAG1,URBERR         TURN ON ERROR FLAG         *20*  00217180
          B     TERM0299                RETURN TO CALLER           *20*  00217190
 TERM0203 EQU   *                                                  *20*  00217200
 *                                                                 *20*  00217210
 * IF THE URB HAS BEEN POSTED, WE WILL NOW TURN OF THE URBWAIT FLAG*20*  00217220
 * AND CONTINUE PROCESSING TO TERMINATE THIS USER.                 *20*  00217230
 *                                                                 *20*  00217240
          NI    URBFLAG1,X'FF'-URBWAIT  TURN OFF WAIT FLAG         *20*  00217250
 TERM0209 EQU   *                                                  *20*  00217260
          LA    R0,#URBOCIO             CANCEL OPERATION           *20*  00222000
          B     TERM0241            CONTINUE                       *20*  00257010
          OI    URBFLAG1,#URBWAIT   TURN ON WAIT FLAG              *20*  00258010
 TERM0241 EQU   *                                                  *20*  00258020
          B     TERM0251            CONTINUE                       *20*  00269010
          NI    URBFLAG1,X'FF'-#URBWAIT   TURN OFF WAIT FLAG       *20*  00270010
 TERM0251 EQU   *                                                  *20*  00270020
          DROP  R14                                                      00312010
 *                                                                 *20*  00312020
 * DETERMINE IF USER HAS STACE TABLE ENTRY AND FREE IT TOO         *20*  00312030
 *                                                                 *20*  00312040
          L     R14,SCFCUSE         ADDRESS S2KCUSE                *20*  00312050
          L     R14,S2KSTAC-DS2KCUSE(R14)    STACE TABLE           *20*  00312060
          USING DSTACE,R14                                               00312070
 TERM0296 EQU   *                                                  *20*  00312080
          CLI   STACENAM,X'FF'      END OF LIST ?                  *20*  00312090
          BE    TERM0299            YES. WRAP IT UP                *20*  00312100
          CLC   STACENAM,SCFCUID    OUR ENTRY                      *20*  00312110
          BE    TERM0297            YES. FIX IT                    *20*  00312120
          LA    R14,STACEL$(,R14)   NO. NEXT ONE                   *20*  00312130
          B     TERM0296            CHECK THEM ALL                 *20*  00312140
 TERM0297 EQU   *                                                  *20*  00312150
          XC    STACENAM,STACENAM   CLEAR IT ALL                   *20*  00312160
          XC    STACEFLG,STACEFLG   FLAG TOO                       *20*  00312170
 TERM0299 EQU   *                                                  *20*  00312180
          ST    R8,SCFCURB              SET URB ADDRESS            *20*  00419010
          MVC   SCFCUID,URBUSER     SET USER ID IN COMM            *20*  00419020
 ./ CHANGE NAME=DFHPEP21                                                         
 * DFHPEP-07 20JUN96  GOH B4844 CHECK FOR SCF AND PLEX ABENDS       *07* 00023990
          ZAP   UNPKWK1,TCAKCTTA    GET TASK ID (PACKED 3)          *07* 00062010
          L     R4,UNPKWK1          TO FOUR BYTES                   *07* 00062020
          DFHPC TYPE=LOAD,PROGRAM=S2KCUSE,COND=YES                  *07* 00062030
          CLI   TCAPCTR,X'00'       OKAY ?                          *07* 00062040
          BNE   POSTAB20            NO. JUST DO EPOSTAB             *07* 00062050
          L     R1,TCAPCLA          ADDRESS LOADED PROGRAM          *07* 00062060
          L     R1,S2KSCFU-DS2KCUSE(R1)  ADDRESS URBS               *07* 00062070
          USING DURB,R1                                                  00062080
 POSTAB02 EQU   *                                                   *07* 00062090
          C     R4,URBTASK          THIS URB ?                      *07* 00062100
          BE    POSTAB04            YES. HANDLE IT                  *07* 00062110
          TM    URBFLAG1,URBLAST    LAST ONE ?                      *07* 00062120
          BO    POSTAB20            YES. JUST DO EPOSTAB            *07* 00062130
          AH    R1,URBLEN           NO. NEXT ONE                    *07* 00062140
          B     POSTAB02            CHECK IT                        *07* 00062150
 POSTAB04 EQU   *                                                   *07* 00062160
          OI    URBFLAG1,URBERR     TURN ON ERROR FLAG              *07* 00062170
          DFHIC TYPE=INITIATE,TRANSID=SCFZ,INTRVAL=0                *07* 00062180
 *07*  DON'T CALL PLXTERM DIRECTLY                                  *07* 00062190
          B     S2KEXIT             RETURN TO CALLER                *07* 00062200
 POSTAB20 EQU   *                                                   *07* 00062210
 * *07* LINE COMMENTED OUT                                          *07* 00063000
          DURBMU RGEQU=NO                                           *07* 00073010
          DS2KCUSE                                                  *07* 00073020
 ./ CHANGE NAME=DFHPEP32                                                         
 * *01* 09APR97 GOH B4844 CHECK USER PRIOR TO ERROR HANDLING  AND   *01* 00040980
 *                        ALLOW FOR SCF USER CLEANUP                *01* 00040990
          L     R5,EIBTASKN         TASK #                          *01* 00050000
      EXEC CICS HANDLE CONDITION ERROR(S2KEXIT)                          00050010
      EXEC CICS LOAD PROGRAM('S2KCUSE') SET(1)                           00050020
          L     R4,S2KSCFU-DS2KCUSE(R1)   ADDR SCF URBS             *01* 00050030
          USING DURB,R4                                             *01* 00050040
 PEPURBL  EQU   *                                                   *01* 00050050
          C     R5,URBTASK          THIS URB ?                      *01* 00050060
          BE    PEPSERR             YES. SET ERROR TASK             *01* 00050070
          TM    URBFLAG1,URBLAST    LAST URB ?                      *01* 00050080
          BO    S2KEXIT             YES. RETURN  TO CALLER          *01* 00050090
          AH    R4,URBLEN           NO. NEXT URB                    *01* 00050100
          B     PEPURBL             CHECK IT                        *01* 00050110
 PEPSERR  EQU   *                                                   *01* 00050120
          OI    URBFLAG1,URBERR     SET URB IN ERROR TASK           *01* 00050130
      EXEC CICS START TRANSID('SCFZ')                                    00050140
 S2KEXIT  EQU   *                                                   *01* 00050150
          DURBMU RGEQU=NO                                           *01* 00064010
          DS2KCUSE                                                  *01* 00064020

End of Zap Deck