**********************************************************************
* *
* 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