z/OS Cryptographic Services ICSF Administrator's Guide
Previous topic | Next topic | Contents | Index | Contact z/OS | Library | PDF


CSFWEUTL

z/OS Cryptographic Services ICSF Administrator's Guide
SA22-7521-17

CSFWEUTL invokes CSFEUTIL. CSFWEUTL is a sample program that contains sample JCL to assemble the sample program, sample link edit JCL to put the assembled sample program into an authorized library, and sample JCL that will invoke the sample program.

//<NAME>   JOB  <JOB CARD PARAMETERS>                                           
//*******************************************************************           
//*                                                                 *           
//*    Licensed Materials - Property of IBM                         *           
//*    5694-A01                                                     *           
//*    (C) Copyright IBM Corp. 2004                                 *           
//*                                                                 *           
//*                                                                 *           
//* This file contains a sample program (CSFWEUTL), sample JCL      *           
//* to assemble the sample program, sample link edit JCL to put     *           
//* the assembled sample program into an authorized library, and    *           
//* lastly sample JCL that will invoke the sample program.          *           
//*                                                                 *           
//* CSFWEUTL: Invokes CSFEUTIL                                      *           
//*                                                                 *           
//* DESCRIPTION:                                                    *           
//* CSFEUTIL is an ICSF utility program that can perform certain    *           
//* functions that can be performed by using the administrator's    *           
//* panels.  The requested function is passed in the "PARM=..."     *           
//* parameter.  Refer to the ICSF Administrator's Guide for         *           
//* more information on CSFEUTIL functions.                         *           
//*                                                                 *           
//* However, when running the ICSF CSFEUTIL, sometimes error        *           
//* conditions may occur. The type of error is qualified by the     *           
//* contents of register 15 and register 0 upon program exit.       *           
//* Unfortunately, only register 15 (return code) is externalized   *           
//* when running these utilities from a batch JCL interface.        *           
//*                                                                 *           
//* CSFWEUTL will call CSFEUTIL and pass any specified function in  *           
//* the "PARM=...  " parameter to CSFEUTIL.  On return from         *           
//* CSFEUTIL, a WTO (write to operator) is issued containing        *           
//* the return and reason codes.                                    *           
//*                                                                 *           
//* CAUTION:                                                        *           
//* This file contains four sample sections.  Before using this     *           
//* sample, you have to make the following changes.                 *           
//*                                                                 *           
//* USER ACTIONS REQUIRED:                                          *           
//* 1.Add the job parameters to meet your system requirements.      *           
//*                                                                 *           
//* 2.In the ASSEMBLE JCL, change the SYSLIB DSN to match your      *           
//*   installation specific data set names.                         *           
//*                                                                 *           
//* 3.No changes are needed in the CSFWEUTL assembler code.         *           
//*   This CSFWEUTL assembler code needs to reside in the           *           
//*   SYSLIB DSN indicated in the ASSEMBLER JCL.                    *           
//*                                                                 *           
//* 4.In the LKED JCL, for SYSLMOD DD statement, specify the        *           
//*   installation specific authorized library dataset name that    *           
//*   is to contain the CSFWEUTIL assembled code.                   *           
//*                                                                 *           
//* 5.In the LKED JCL, for SYSLIB DD statement, specify your        *           
//*   installation specific ICSF library dataset name.              *           
//*   Change CSF to the appropriate high-level qualifier if you     *           
//*   choose to not use the default.  If you use an edit or         *           
//*   CHANGE command, be sure to include the period at the end      *           
//*   of the high-level qualifier.                                  *           
//*                                                                 *           
//* 6.In the CSFWEUTL EXEC JCL, for the STEPLIB DSN, specify the    *           
//*   same dataset name as was indicated in the SYSLMOD DSN         *           
//*   statement in the LKED JCL.                                    *           
//*                                                                 *           
//* 7.In the CSFWEUTL EXEC JCL, for the PARM='....'  specify the    *           
//*   requested function for CSFEUTIL.                              *           
//*                                                                 *           
//* 8.Users may want to separate the CSFWEUTL EXEC JCL into a       *           
//*   separate JOB.                                                 *           
//*                                                                 *           
//* NOTES:                                                          *           
//* 1.This job should be rerun with every new release of ICSF.      *           
//*                                                                 *           
//*******************************************************************           
//*        JCL to assemble CSFWEUTL                                 *           
//*******************************************************************           
//* ASSEMBLER                                                                   
//C        EXEC PGM=ASMA90,REGION=4M                                            
//SYSLIB   DD   DSN=SYS1.MACLIB,DISP=SHR                                        
//         DD   DSN=SYS1.MODGEN,DISP=SHR                                        
//SYSUT1   DD   DSN=&&SYSUT1,SPACE=(4096,(120,120),,,ROUND),UNIT=VIO,           
//             DCB=BUFNO=1                                                      
//SYSPRINT DD   SYSOUT=*                                                        
//SYSLIN   DD   DSN=&&LIN,DISP=(NEW,PASS),SPACE=(TRK,(2,2)),UNIT=SYSDA          
//SYSIN    DD   *                                                               
*********************************************************************           
*          CSFWEUTL assembler code                                  *           
*********************************************************************           
                                                                                
         TITLE 'CSFWEUTL   - ICSF CSFEUTIL INVOKER'                             
         PRINT GEN                                                              
***********************************************************************         
*                                                                     *         
* FUNCTION :  ICSF CSFEUTIL CALLER UTILITY                            *         
*                                                                     *         
* DESCRIPTIVE NAME : ICSF CSFEUTIL CALL ROUTINE                       *         
*                                                                     *         
* VERSION : RELEASE  1  LEVEL 000                                     *         
*                                                                     *         
* OBJECTIVE :                                                         *         
*                                                                     *         
* CSFEUTIL UTILITY :                                                  *         
*                                                                     *         
*   THIS PROGRAM ACCEPTS AN INVOCATION PARM THEN CALLS CSFEUTIL       *         
*   PASSING THAT PARM. REGISTER 15 AND 0 ARE FORMATTED ON RETURN      *         
*   IF NOT ZERO.  A WRITE TO OPERATOR IS THEN ISSUED.                 *         
*                                                                     *         
*                                                                     *         
* DEPENDENCIES :                                                      *         
*                                                                     *         
*       1. UNDER OS/390 OPERATING SYSTEM                              *         
*       2. UNDER IBM S/390                                            *         
*       3. LANGUAGE : IBM S/390 ASSEMBLER                             *         
*       4. ICSF UP AND ACTIVE                                         *         
*                                                                     *         
* ENTRY POINT :  CSFWEUTL                                             *         
*                                                                     *         
* INPUT ARGUMENTS : INVOCATION PARM PASSED TO CSFEUTIL                *         
*                                                                     *         
*                                                                     *         
* OUTPUT ARGUMENTS :                                                  *         
*                                                                     *         
*     NONE                                                            *         
*                                                                     *         
* FUNCTION INPUT ARGUMENTS :                                          *         
*                                                                     *         
*     NONE                                                            *         
*                                                                     *         
* FUNCTION OUTPUT (RETURNS) :                                         *         
*                                                                     *         
*     RETCODE      R15SAVE                         (FULLWORD)         *         
*                                                                     *         
* EXIT-NORMAL RETURN CODE : 0                                         *         
*                                                                     *         
* EXIT-ERROR RETURN CODE : VALID RANGE 1 - 255                        *         
*                                                                     *         
* EXTERNAL-REFERENCES : NONE                                          *         
*                                                                     *         
* CHANGE ACTIVITY : NONE                                              *         
*                                                                     *         
***********************************************************************         
R0       EQU   0                                                                
R1       EQU   1                       WORK REGISTER/CALL PARMS                 
R2       EQU   2                       WORK REGISTER                            
R3       EQU   3                       WORK REGISTER                            
R4       EQU   4                       WORK REGISTER                            
R5       EQU   5                       WORK REGISTER                            
R6       EQU   6                       WORK REGISTER                            
R7       EQU   7                       WORK REGISTER                            
R8       EQU   8                       WORK REGISTER                            
R9       EQU   9                       WORK REGISTER                            
R10      EQU   10                      WORK REGISTER                            
R11      EQU   11                      SECOND BASE REGISTER                     
R12      EQU   12                      BASE REGISTER                            
R13      EQU   13                      SAVE AREA CHAIN                          
R14      EQU   14                      RETURN ADDRESS                           
R15      EQU   15                      ENTRY POINT/RETURN CODE                  
         EJECT                                                                  
CSFWEUTL CSECT                                                                  
         USING CSFWEUTL,R12,R11        SET UP BASE REGISTER                     
         LA    R2,4095                       SET INCREMENT 4K                   
         LA    R2,1(R2)                                                         
         STM   R14,R12,12(R13)         SAVE REGISTERS                           
         LR    R12,R15                 SET UP ADDRESSABILITY                    
         LA    R11,0(R2,R12)                 SET SECOND BASE REG                
         LA    R2,SAVEAREA                                                      
         ST    R13,4(R2)                                                        
         LR    R13,R2                                                           
         ST    R1,R1SAVE                                                        
         L     R4,0(R1)                GET INVOCATION PARM ADDRESS              
         LH    R3,0(R4)                LOAD PARM LENGTH                         
         LTR   R3,R3                   ANY PARMS?                               
         BZ    NOPARM                  NO...BRANCH                              
         STH   R3,PARMLEN              SAVE PARM LENGTH                         
         BCTR  R3,0                    DECREMENT FOR EX                         
         LA    R4,2(R4)                POINT PAST LENGTH                        
         EX    R3,PARMSAVE             MOVE PARM TO INVOCATION FIELD            
         B     START                   BRANCH AROUND CONSTANTS                  
         DC    C'** CSFWEUTL **'       MODULE                                   
         DC    C'** &SYSDATE **'       ASM DATE                                 
         DC    C'** &SYSTIME **'       ASM TIME                                 
         DC C'CSFWEUTL : ICSF CSFEUTIL INVOCATION'                              
         DC C'    (C) COPYRIGHT IBM CORP. 2004 '                                
         DC C'LICENSED MATERIAL - PROGRAM PROPERTY OF IBM '                     
         EJECT                                                                  
START    DS    0H                                                               
         OI    LINKPARM,X'80'          SET LAST PARM INDICATOR                  
         LA    R1,LINKPARM             LOAD PARM ADDRESS                        
         L     R15,=V(CSFEUTIL)        LOAD CSFEUTIL                            
         BALR  R14,R15                 INVOKE IT                                
         LTR   R15,R15                 ANY RETURN CODE?                         
         BZ    RETURN                  NO, ALL DONE                             
         ST    R0,R0SAVE               SAVE R0                                  
         ST    R15,R15SAVE             SAVE R15                                 
         L     R3,R15SAVE                                                       
         CVD   R3,DBWD                 DISPLAY R15 IN DECIMAL                   
         UNPK  UNPACK8(8),DBWD+4(4)                                             
         OI    UNPACK8+7,X'F0'                                                  
         MVC   NOTZERO+23(8),UNPACK8                                            
         L     R3,R0SAVE                                                        
         CVD   R3,DBWD                 DISPLAY R0 IN DECIMAL                    
         UNPK  UNPACK8(8),DBWD+4(4)                                             
         OI    UNPACK8+7,X'F0'                                                  
         MVC   NOTZERO+37(8),UNPACK8                                            
NOTZERO  WTO   'CSFWEUTL  R15: XXXXXXXX  R0: XXXXXXXX'                          
         B     RETURN                                                           
NOPARM   DS    0H                                                               
         WTO   'CSFWEUTL : NO PARAMETERS SPECIFIED'                             
         B     RETURN                                                           
RETURN   DS    0H                                                               
         L     R15,R15SAVE             GET CSFEUTIL RC                          
         L     R13,4(R13)                                                       
         ST    R15,16(13)                                                       
         LM    R14,R12,12(R13)                                                  
         BR    R14                                                              
         SPACE 3                                                                
PARMSAVE MVC   SAVEPARM(0),0(R4)                                                
         SPACE 3                                                                
SAVEAREA DS    18F                                                              
R0SAVE   DS    F                                                                
R1SAVE   DS    F                                                                
R15SAVE  DS    F                                                                
DBWD     DS    D                                                                
UNPACK8  DS    D                                                                
         TITLE 'WORK AREAS'                                                     
         SPACE 3                                                                
         LTORG                                                                  
         SPACE 3                                                                
LINKPARM DC    A(PARMLEN)                                                       
         DS    0D                                                               
PARMLEN  DC    H'0'                                                             
SAVEPARM DC    XL256'00'                                                        
         SPACE 3                                                                
         END   CSFWEUTL                                                         
//*******************************************************************           
//*       JCL to link edit CSFWEUTL                                 *           
//*******************************************************************           
/*                                                                              
//LKED     EXEC PGM=HEWL,PARM='MAP,LET,LIST,AC(1)',COND=(8,LT,C)                
//SYSLIN   DD   DSN=&&LIN,DISP=(OLD,PASS)                                       
//         DD   DDNAME=SYSIN                                                    
//SYSLMOD  DD   DSN=USER.STEPLIB,DISP=OLD                                       
//SYSPRINT DD   SYSOUT=*                                                        
//SYSLIB   DD   DSN=CSF.SCSFMOD0,DISP=SHR                                       
//*****************************************************                         
//SYSIN    DD   *                                                               
 NAME CSFWEUTL(R)                                                               
//*******************************************************************           
//*       JCL to invoke CSFWEUTL                                    *           
//*******************************************************************           
/*                                                                              
//CSFWEUTL EXEC PGM=CSFWEUTL,REGION=512K,                                       
//         PARM='CSF.EXAMPLE.CKDS,REFRESH'                                      
//STEPLIB  DD   DSN=USER.STEPLIB,DISP=SHR                                       
//*                                                                             

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014