What is the issue?
On May 17, 2020, TAA Tools found an issue with the DLTUSRPRF3 tool.
Delete User Profile 3 is a system maintenance tool that will delete a user profile, delete spooled files owned by the user, list the job descriptions and scheduled job entries where the user is named, and transfer objects owned by the user to another named user on the system. When the tool is used to transfer owned objects, it’s been discovered those objects may be incorrectly deleted. The issue only arises when the OWNOBJ parameter is set to a user profile. For example:
DLTUSRPRF3 USRPRF(USER1) ACTION(*DELETE) OWNOBJ(USER2)
How long has the issue been present?
The defect has been present since 2013 with no reported issues until May 17, 2020. The DLTUSRPRF3 command was first shipped in our May 15, 2008 refresh. The defect was introduced in February 2013. No other TAA Tools are affected.
To fix the issue
Use this method on a system that has a full license and an RPG/400 compiler.
To fix DLTUSRPRF3, download and apply this patch file. This fix can be applied to IBM i releases 6.1 to 7.4.
The patch is in a stream file named PF528.SAVF. This should be uploaded to your home directory in binary form and the following commands issued.
DLTLIB TAATFRZ RSTTAASTMF DIR(*HOMDIR) SAVLIB(TAATFRZ)
Create the patched DLTUSRPRF3 tool by issuing the following command as a user with both *ALLOBJ and *SECADM special authorities:
CRTTAATOOL TOOL(DLTUSRPRF3) SRCLIB(TAATFRZ) RMVOBS(*NO)
Move the fix to other systems
You will not be able to execute the CRTTAATOOL command on a system that has a temporary license or that does not have an RPG/400 compiler. In that case, create the tool as above on one system and then, save and restore the TAASEHK* objects and the DLTUSRPRF3 command to the other system.
How can I tell if the patch has been applied?
The patched DLTUSRPRF3 will have a ‘TAA–0001’ in its heading when prompted. This will revert back to TAA in the next tools refresh.