Relinking the ACF2 for z/OS provided exits for DB2 - ACF3@ATH and ACF3@SGN to implement secondary authid processing now gets an S0C1 abend after LU00294
Note that ACF3@ATH and ACF3@SGN are linked as DSN3@ATH and DSN3@SGN
The source for these two exits can be found in CAX1MAC0 library supplied with the base ACF2 for z/OS product, not with the ACF2 for DB2 product. Within this source there are a lot of comments. These comments include details for assembling and linking the modules. Please make sure that you have not missed any csects that need to be included.
For ACF3@ATH
*
* ASSEMBLY INSTRUCTIONS
*
* THE CA ACF2 SAMPLE CONNECTION AUTHORIZATION EXIT MUST BE
* ASSEMBLED USING YOUR DB2 MACRO LIBRARY AND THE OBJECT
* PLACED INTO THE CAI.ACF2.ACFOBJ LIBRARY FOR THE LINKAGE
* EDITOR STEP THAT FOLLOWS.
*
* //ASM EXEC PGM=IEV90,REGION=0M,PARM='DECK'
* //SYSUT1 DD UNIT=SYSDA,SPACE=(1700,(600,100))
* //SYSPRINT DD SYSOUT=*
* //SYSLIB DD DSN=CAI.CAX1MAC0,DISP=SHR
* // DD DSN=DSN220.SDSNMACS,DISP=SHR << DB2 MACRO LIB
* // DD DSN=SYS1.MACLIB,DISP=SHR
* // DD DSN=SYS1.MODGEN,DISP=SHR
* //SYSIN DD DIAP=SHR,DSN=CAI.AAX1MAC0(ACF3@ATH)
* //SYSPUNCH DD DISP=SHR,DSN=CAI.ACF2.ACFOBJ(ACF3@ATH)
*
* LINKAGE EDITOR INSTRUCTIONS
*
* THE CA ACF2 SAMPLE CONNECTION AUTHORIZATION EXIT MUST
* BE LINKED INTO THE DB2 DSNEXIT LIBRARY WITH A MODULE
* NAME OF DSN3@ATH. THE FOLLOWING SAMPLE JCL CAN BE USED
* AS A GUIDE TO LINK THE CA ACF2 SAMPLE EXIT.
*
* //LINK EXEC PGM=IEWL,PARM='LET,LIST,XREF,NCAL,RENT,REUS'
* //SYSPRINT DD SYSOUT=*
* //SYSLMOD DD DSN=DSN220.DSNEXIT,DISP=SHR
* //SYSUT1 DD UNIT=SYSDA,SPACE=(TRK,(10,10))
* //ACFOBJ DD DSN=CAI.ACF2.ACFOBJ,DISP=SHR
* //ACFMOD DD DSN=CAI.AAX1MOD0,DISP=SHR
* // DD DSN=CAI.AAX1MOD1,DISP=SHR
* //SYSLIN DD *
* INCLUDE ACFOBJ(ACF3@ATH)
* INCLUDE ACFMOD(ACF$GCVT)
* INCLUDE ACFMOD(ACF$FGCB)
* INCLUDE ACFMOD(ACF00SSL)
* INCLUDE ACFMOD(CMCTABLE)
* INCLUDE ACFMOD(SAFFBSCH)
* INCLUDE ACFMOD(SAFFBSC6) needed after LU00294
* INCLUDE ACFMOD(SAFFFSCN)
* MODE AMODE(31),RMODE(ANY)
* ENTRY DSN3@ATH
* NAME DSN3@ATH(R)
* /*
*
For ACF3@SGN
*
* ASSEMBLY INSTRUCTIONS
*
* THE CA ACF2 SAMPLE SIGNON AUTHORIZATION EXIT MUST BE
* ASSEMBLED USING YOUR DB2 MACRO LIBRARY AND THE OBJECT
* PLACED INTO THE CAI.ACF2.ACFOBJ LIBRARY FOR THE LINKAGE
* EDITOR STEP THAT FOLLOWS.
*
* //ASM EXEC PGM=IEV90,REGION=0M,PARM='DECK'
* //SYSUT1 DD UNIT=SYSDA,SPACE=(1700,(600,100))
* //SYSPRINT DD SYSOUT=*
* //SYSLIB DD DSN=CAI.CAX1MAC0,DISP=SHR
* // DD DSN=DSN220.SDSNMACS,DISP=SHR << DB2 MACRO LIB
* // DD DSN=SYS1.MACLIB,DISP=SHR
* // DD DSN=SYS1.MODGEN,DISP=SHR
* //SYSIN DD DIAP=SHR,DSN=CAI.AAX1MAC0(ACF3@SGN)
* //SYSPUNCH DD DISP=SHR,DSN=CAI.ACF2.ACFOBJ(ACF3@SGN)
*
* LINKAGE EDITOR INSTRUCTIONS
*
* THE CA ACF2 SAMPLE SIGNON AUTHORIZATION EXIT MUST
* BE LINKED INTO THE DB2 DSNEXIT LIBRARY WITH A MODULE
* NAME OF DSN3@SGN. THE FOLLOWING SAMPLE JCL CAN BE USED
* AS A GUIDE TO LINK THE CA ACF2 SAMPLE EXIT.
*
* //LINK EXEC PGM=IEWL,PARM='LET,LIST,XREF,NCAL,RENT,REUS'
* //SYSPRINT DD SYSOUT=*
* //SYSLMOD DD DSN=DSN220.DSNEXIT,DISP=SHR
* //SYSUT1 DD UNIT=SYSDA,SPACE=(TRK,(10,10))
* //ACFOBJ DD DSN=CAI.ACF2.ACFOBJ,DISP=SHR
* //ACFMOD DD DSN=CAI.AAX1MOD0,DISP=SHR
* // DD DSN=CAI.AAX1MOD1,DISP=SHR
* //SYSLIN DD *
* INCLUDE ACFOBJ(ACF3@SGN)
* INCLUDE ACFMOD(ACF$GCVT)
* INCLUDE ACFMOD(ACF00SSL)
* INCLUDE ACFMOD(CMCTABLE)
* INCLUDE ACFMOD(SAFFBSCH)
* INCLUDE ACFMOD(SAFFBSC6) Needed after LU00294
* INCLUDE ACFMOD(SAFFFSCN)
* MODE AMODE(31),RMODE(ANY)
* ENTRY DSN3@SGN
* NAME DSN3@SGN(R)
* /*
Note that ACF3@ATH and ACF3@SGN are linked as DSN3@ATH and DSN3@SGN
also note: If only a relink is being done and the reassembly of ACF3@ATH or ACF3@SGN is not being performed,
The relink statements should be
//SYSLIN DD *
INCLUDE ACFMOD(ACF$GCVT)
INCLUDE ACFMOD(ACF00SSL)
INCLUDE ACFMOD(CMCTABLE)
INCLUDE ACFMOD(SAFFBSCH)
INCLUDE ACFMOD(SAFFBSC6) Needed after LU00294
INCLUDE ACFMOD(SAFFFSCN)
INCLUDE DSNEXIT(DSN3@SGN)
MODE AMODE(31),RMODE(ANY)
ENTRY DSN3@SGN
NAME DSN3@SGN(R)
//SYSLIN DD *
INCLUDE ACFMOD(ACF$GCVT)
INCLUDE ACFMOD(ACF$FGCB)
INCLUDE ACFMOD(ACF00SSL)
INCLUDE ACFMOD(CMCTABLE)
INCLUDE ACFMOD(SAFFBSCH)
INCLUDE ACFMOD(SAFFBSC6) needed after LU00294
INCLUDE ACFMOD(SAFFFSCN)
INCLUDE DSNEXIT(DSN3@ATH)
MODE AMODE(31),RMODE(ANY)
ENTRY DSN3@ATH
NAME DSN3@ATH(R)