KB Article #176149

Launching end of transfer scripts under ROOT with CFTSU/CFTSUD option

Question


--Is it possible to execute end of transfer scripts under the root user after enabling CFTSU or CFTSUD option?
This question relates to the following excerpt from the CFT user's guide (Platform-specific guides > UNIX operations > Running Transfer CFT for the first time > Using system users):


Execute post-transfer procedures for system users

This feature allows system users to execute end-of-transfer procedures themselves. On the sender side, the system user who initiates the SEND is used to execute the end-of-transfer procedure by default. On receiver side, the USERID is specified in the corresponding CFTRECV object.

To enable this feature
1. Set uconf:cft.server.exec_as_user to Yes. This gives the user referred to by the USERID the rights to execute end-of-transfer procedures.
2. Define the CFTRECV USERID option.


Answer


In case the USERID is set to "root" in the CFTRECV definition, CFTSU/CFTSUD will not execute the end of transfer script.
The CFT log will show the script as executed because it was correctly handled by CFTSU but CFTSU will not actually execute the script if USERID=root.

--USERID=root is not a supported scenario in CFT, it will prevent the script execution.