How to link PVLMAUD
search cancel

How to link PVLMAUD

book

Article ID: 54476

calendar_today

Updated On:

Products

Panvalet

Issue/Introduction

Need to install load module auditor of the Panvalet subsystem and cannot seem to get this to work.

Resolution

To gain a basic understanding of GEM, read this chapter and the chapter Exit Facilities in the Panvalet for z/OS Getting Started.
If the basic exit satisfies your needs without any changes, you can activate the exit with the following procedure:

  1. Assemble and LINK PVLMAUD (the basic Load Module Auditor). Link it into a library that the Panvalet exit loader (PVEXTLDR) can access.

  2. Code EXITDEF macros, as described in the chapter Exit Facilities in the Panvalet for z/OS Getting Started:
      PVEXTUSR CSECT                                                             
       EXITDEF  BEGIN                                                             
       NAME=PVLMAUD,TYPE=PVLMAUDX                                                 
       EVENTS=($MEM001,$READ001)                                                  
       END   
  3. Assemble and link the exit definition module you coded in Step 2. The load module name is PVEXTUSR. Link it into the Panvalet load library. This library contains the:

    • AllFusion CA-Panvalet programs (PAN#1, PAN#2, and so on)

    • AllFusion CA-Panvalet exit loader (PVEXTLDR)

    • AllFusion CA-Panvalet exit definitions (PVEXTUSR)

    • Exit (PVLMAUD)
// JOB 
//* 
//* THIS SAMPLE JCL SHOWS HOW TO ASSEMBLE AND LINK EDIT THE PANVALET 
//* LOAD MODULE AUDITOR EXIT.
//*
//WRITE EXEC PGM=PAN#1
//* 
//* STEP ONE WRITES THE SOURCE MEMBER TO A TEMPORARY DATASET FOR INPUT 
//* TO THE ASSEMBLER. 
//* 
//STEPLIB DD DSN=CAI.CAILIB,DISP=SHR 
//PANDD1 DD DSN=CAI.PANLIB,DISP=SHR 
//PANDD2 DD DSN=&&TEMP,DISP=(,PASS),UNIT=SYSDA,SPACE=(TRK,(5,5))
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
++WRITE WORK,PVLMAUD 
/*
//* 
//* STEP TWO ASSEMBLES THE EXIT, PASSING THE OBJECT DECK TO THE 
//* LINKAGE EDITOR. 
//* 
//ASSEMBLE EXEC PGM=ASMA90,PARM='OBJECT,NODECK'
//SYSPRINT DD SYSOUT=* 
//SYSUT1 DD SPACE=(TRK,(50,10)),UNIT=SYSDA,DISP=NEW 
//SYSUT2 DD SPACE=(TRK,(50,10)),UNIT=SYSDA,DISP=NEW 
//SYSUT3 DD SPACE=(TRK,(50,10)),UNIT=SYSDA,DISP=NEW 
//SYSLIB DD DSN=CAI.MACLIB,DISP=SHR 
// DD DSN=SYS1.MACLIB,DISP=SHR 
//SYSLIN DD SPACE=(TRK,(50,10)),UNIT=SYSDA,DISP=(,PASS),DSN=&&OBJ
//SYSPUNCH DD SPACE=(TRK,10),UNIT=SYSDA,DISP=(NEW,PASS) 
//SYSIN DD DSN=&&TEMP,DISP=(OLD,PASS) 
/* 
//*
//* STEP THREE LINKS THE EXIT INTO THE LOAD LIBRARY. 
//*
//LINKEDIT EXEC PGM=IEWL, 
// PARM='RENT,REFR,LIST,XREF,SIZE=(384K,128K),TERM' 
//SYSPRINT DD SYSOUT=* 
//SYSUT1 DD SPACE=(TRK,(50,10)),UNIT=SYSDA,DISP=NEW 
//SYSUT2 DD SPACE=(TRK,(50,10)),UNIT=SYSDA,DISP=NEW 
//SYSUT3 DD SPACE=(TRK,(50,10)),UNIT=SYSDA,DISP=NEW 
//SYSLMOD DD DSN=CAI.CAILIB,DISP=SHR 
//SYSLIB DD DSN=SYS1.LINKLIB,DISP=SHR 
//SYSLIN DD DSN=&&OBJ,DISP=(OLD,PASS) 
// DD DDNAME=SYSIN 
//SYSPUNCH DD SPACE=(TRK,10),UNIT=SYSDA,DISP=(NEW,PASS)
//SYSIN DD * 
NAME PVLMAUD(R) 
//