z/OS TSO/E Programming Services
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Assembler Program Using IKJEFTSR to Invoke a REXX Exec

z/OS TSO/E Programming Services
SA32-0973-00

Figure 1. Assembler Language Program Demonstrating the Use of IKJEFTSR to Invoke a REXX Exec
**********************************************************************
*                                                                    *
*  THIS ASSEMBLER PROGRAM INVOKES THE TSO SERVICE FACILITY TO PASS   *
*  CONTROL TO A REXX EXEC CALLED MYEXEC.  IN THIS EXAMPLE, MYEXEC    *
*  IS A FULLSCREEN APPLICATION THAT ISSUES ISPF COMMANDS.  THIS      *
*  SAMPLE PROGRAM THEREFORE REQUESTS THAT THE TSO SERVICE FACILITY   *
*  INVOKE THE EXEC FROM AN UNAUTHORIZED ENVIRONMENT.                 *
*                                                                    *
**********************************************************************
TSF      CSECT
         STM   R14,R12,12(R13)
         BALR  R12,0
         USING *,R12
         ST    R13,SAVEAREA+4
         LA    R11,SAVEAREA
         ST    R11,8(,R13)
         LA    R13,SAVEAREA
*
*
MAIN     DS    0H
*        .
*        .
*        .
         L     R15,CVTPTR              ESTABLISH
         L     R15,CVTTVT(,R15)        ADDRESSABILITY TO THE
         L     R15,TSVTASF-TSVT(,R15)  TSO SERVICE FACILITY
*
*        INVOKE THE TSO SERVICE FACILITY -- EXECUTE "MYEXEC" EXEC
*
         CALL  (15),(FLAGS,CMDBUF,BUFLEN,RETCODE,RSNCODE,ABNDCODE),VL
         LTR   R15,R15            CHECK TSR RETURN CODE
         BNZ   ERRORRTN           BAD RETURN CODE FROM TSR
         CLC   RETCODE,ZERO       CHECK FOR EXEC ERROR
         BH    ERRORCMD           BAD RETURN CODE FROM EXEC
         B     ENDUP              NO ERROR --- EXIT
ERRORRTN DS   0H
**********************************************************************
*        ANALYZE TSO SERVICE FACILITY ERROR                          *
*        .                                                           *
*        .                                                           *
*        .                                                           *
*                                                                    *
**********************************************************************
         B    ENDUP
ERRORCMD DS   0H
**********************************************************************
*        ANALYZE EXEC ERROR                                          *
*        .                                                           *
*        .                                                           *
*        .                                                           *
**********************************************************************
ENDUP    DS   0H
         L    R13,4(,R13)
         LM   R14,R12,12(R13)
         SLR  R15,R15
         BR   R14
**********************************************************************
*                                                                    *
*        DATA AREAS                                                  *
*                                                                    *
**********************************************************************
ZERO     DC    F'0'        ZERO CONSTANT
FLAGS    DS    0F          MAPS FIRST PARM TO IKJEFTSR
RESFLAGS DC    X'00'       FIRST BYTE IS RESERVED
OPTFLAGS DC    X'01'       TELL TSR TO ESTABLISH AN UNAUTHORIZED
*                          ENVIRONMENT
ABFLAGS  DC    X'01'       DUMP IF ABEND OCCURS
FNCFLAGS DC    X'01'       TELL TSR TO EXECUTE THE EXEC
         *
CMDBUF   DC    C'MYEXEC'   NAME OF EXEC TO BE EXECUTED
         *
BUFLEN   DC    F'6'        LENGTH OF COMMAND BUFFER
RETCODE  DS    F           RETURN CODE FROM EXEC
RSNCODE  DS    F           REASON CODE
ABNDCODE DS    F           ABEND CODE
SAVEAREA DS    18F         SAVE AREA
         .
         .
         .
CVTPTR   EQU   16
CVTTVT   EQU   X'9C'
R15      EQU   15
R14      EQU   14
R13      EQU   13
R12      EQU   12
R11      EQU   11
R9       EQU   9
R8       EQU   8
         IKJTSVT
         END

 

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014