RP/TUX 6.5 - tpchkauth holds on to values returned and does not reevaluate envirnment variabl - CR034135 (Doc ID 766611.1)

Last updated on NOVEMBER 04, 2016

Applies to:

Oracle Tuxedo / Tuxedo / 6.5
Information in this document applies to any platform

Goal

DESCRIPTION:

I have a customer that would like to be able to control which tuxedo application a user accesses by changing the value
of TUXCONFIG,  In his process he is setting the value of TUXCONFIG to a valid value and then he calls tpchkauth() to
get the security level this works fine.  The customer then passes in, through his program, a new value for TUXCONFIG
sets the value in the environment using tpsetenv() and then call tpchkauth() again to get connected to a different
tuxedo application.  The call to tpchauth() returns the auth level returned by the previous call.  I set up the sample
code provided by the customer and ran it through debugger to get a better understanding of what tpchkauth() does.  If
tpchkauth() has an invalid reference to the tuxconfig file it fails, if tpchkauth() has a correct value for tuxconfig
it stores the value in the TUX context and continues on, subsequent calls to tpchkauth() return this value, even after
changing the value of TUXCONFIG environment variable using tpsetenv().  During subsequent calls to tpchkauth() the
value of TUX->_TUX__tmauthlev is evaluated to see if it is != -1, if this is true then tpchkauth() returns the
current value.

Solution

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms