TDPUAX Operation | Teradata Director Program - TDPUAX Operation - Teradata Director Program

Teradata® Director Program Reference - 17.20

Teradata Director Program
Release Number
June 2022
English (United States)
Last Update
Product Category
Teradata Tools and Utilities
TDP builds and passes a parameter list to TDPUAX. The parameter list consists of the following:
  • TDP information
  • Requestor information
  • Parameter data
  • Logon information
When TDPUAX is called during an application logon or connect request, it can be used to:
  • Accept the logon request and return to TDP with a return code of zero. This causes TDP to send the logon string to the database and return to the application with an initial status return code of zero.
  • Reject the logon request by sending a nonzero return code to TDP. TDP immediately returns to the application with a non-zero return code.
  • Modify the logon request in the TDPUAX build area and notify TDP that the logon string has been modified.
  • Set a flag when it returns, indicating that the logon string has been “validated.” This causes TDP to notify the database that the exit has validated the logon.

    In a validated logon, the password field of the logon string is optional, and is ignored if present. The userid must be a valid userid with the proper rights granted. An account string, if it is used, must be valid and will be respected.

When TDP has authenticated the database system userid, the database requires that both the Logical-host on which TDP resides and the userid both have been granted the right to logon “with null password.”This is accomplished for a particular userid by the SQL GRANT LOGON ON <Logical-host id> TO USERID <userid> WITH NULL PASSWORD or for all userids by the SQL GRANT LOGON ON <Logical-host id> AS DEFAULT WITH NULL PASSWORD.

While database system userids must be defined with a password, the password is ignored when TDP has authenticated the userid. Since it is ignored, an expired password will not prevent a logon when TDP has authenticated the userid, though it will prevent a logon when TDP has not authenticated that userid, since the password is used.

This exit does not currently support a terminate call, therefore any cleanup after the application ends or abends must be managed by the application.

For an example of coding TDPUAX, refer to the sample TDPUAX that is shipped with TDP.