ACF2 ACFGUCB macro use of the &SYS parameter
search cancel

ACF2 ACFGUCB macro use of the &SYS parameter

book

Article ID: 448031

calendar_today

Updated On:

Products

ACF2

Issue/Introduction

The ACF2 ACFGUCB macro is used by exits to locate the user's ACUCB(ACF2 User Control Block). The macro is typically used for site defined or Third-Party Exits like Connect:Direct's DGACXSIG which frequently use this macro to verify security environments. What should the ACFGUCB macro parameter &SYS be coded? &SYS=AOS1, &SYS=AOS2, or &SYS=BOTH?

Environment

z/OS
ACF2 R16.0
ACF2 R17.0

Resolution

R16.0 PTF LU18185 and R17.0 PTF LU18197 updates the ACFGUCB macro in order to support the 31bit addresses needed to return ACUCB and ACFASVT entry removing the use of the ACFGUCB macro &SYS parameter. With the maintenance, EXITs should no longer code the ACFGUCB macro &SYS parameter

Note: Prior to the maintenance the &SYS parameter was used  to determine for which operating system the inline code will be generated. The           
choices are 'AOS1' (for OS/VS1), or 'AOS2' (for MVS) or 'BOTH' (for both OS/VS1 and MVS). 

Background
MACRO:  ACFGUCB  -  LOCATE ASVT ENTRY AND ADDRSPC ACUCB                                                               
FUNCTION: This macro will locate the user's ACUCB and place its address in the specified register.  
DISTRIBUTION: ACF2 Installation CAX1MAC0 library. 

Usage Notes

  • If any site is using the ACFGUCB macro, they should reassemble their code with the new version of the macro. If the exit code is running AMODE(24), the exit just needs to be reassembled with the new macro. Be aware that ACF2 R17 comes with the ACFASVT addresses in 31bit storage. The returned address to the exit will be in 31bit storage and the exit will probably abend or get incorrect results if trying to access the returned ACFASVT entry. Need to be running in 31bit mode to access the ACFASVT.      
  • If a site is running in AMODE(31), they can specify the new AMODE24=NO parm on the macro with INLINE=YES to keep the code for AMODE 24.           
  • The INLINE operand determines whether the code to locate the ACUCB will be generated inline or whether a service will be called to perform this function. Specify YES or NO.  Defaults to NO.    
  • Specifying AMODE24=NO applies to INLINE=YES and should only be used for modules that only use this while running AMODE 31 or 64