We created a custom UCF TSO front-end module to override a default value to be different than the standard UCF TSO Front-end Module RHDCUCFT that is delivered in CAGJLOAD
In our TSO Clist if we execute the standard module from CAGJLOAD it executes without error. E.G. CALL 'yourHLQ.CAGJLOAD(RHDCUCFT)'
We linked the custom module into our CUSTOM.LOADLIB. When the CALL statement in the clist specifies CALL 'yourHLQ.CUSTOM.LOADLIB(UCFTSO) we abend with S806 for module UCFTSOE0
Resolution
When the UCF TSO Front-end module is executed it will load and execute several modules that are delivered in CAJLOAD. When executing the standard module RHDCUCFT from CAGJLOAD there is no problem.
When executing the custom UCF TSO Front-end module from CUSTOM.LOADLIB there is a problem because any modules that must be loaded and executed to perform the UCF TSO front-end processing must either be in the CALL loadlib or must be in TSOLIB.
In this case the custom UCF TSO front-end module was named UCFTSO, and since there is no such module name delivered in CAGJLOAD, the client simply copied his custom UCFTSO module into CAGJLOAD and then executed from there.
I.E. the clist had
CALL 'yourHLQ.CAGJLOAD(UCFTSO)'
Another possible solution would be to add the CAGJLOAD to TSOLIB