|
>>Ed, Will the following game plan work for us? I have not reviewed your code, but the description sounds like it will work if your machine is at security level 30 or you patch the program to run in system state. When the APIs are used to register a function they will destroy any internal object it finds for the specified function name. Therefore you do not need to destroy them with DESINX. This fact suggests an alternate solution that should be less work and possibly more accurate. Here are the four steps in that solution: 1. Save security data as it is today. (This will save both the internal objects and the users authority to them.) 2. Run a program to reregister the functions that are missing. 3. Run RSTUSRPRF *ALL to restore the internal objects in QSYS and setup to allow the next step to work. 4. Run RSTAUT to get back the users authorities to those objects. If you have a good backup of the QUSEXRGOBJ object from V4R5 or V4R4, and if everything else in QUSRSYS is correct for a V5R1 system, then there is an even easier solution. 1. Restore your backup version of QUSEXRGOBJ. 2. Call QUSRGFIN twice from the command line. First call it with no parameters and then call it again with parameter '12345678QUSRSYS ' where there are two spaces after QUSRSYS. CALL QUSRGFIN CALL QUSRGFIN PARM('12345678QUSRSYS ') This is one of the install exit program for the QUSRSYS library and these calls will cause it to add the new V5R1 exit points and programs to QUSEXRGOBJ. Ed Fishel, edfishel@US.IBM.COM
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.