Print

Print


I wouldn't call it caching. Many of these environment variables are per instance variables. That is, they are used to initialize the client shared libraries with default values. For the client itself, you can override the default by placing the wanted value on the URL when creating a new file object. This would be of the form 'XrCl.<name>=<value> where <name> is the mixed case variable name shown in https://xrootd.slac.stanford.edu/doc/man/xrdcp.1.html#ENVIRONMENT in parenthesis with a '-DI' or '-DS' prefix; the name follows this prefix. The <value> is the appropriate value. Be aware that this will not always be successful since the client reuses connections whenever possible. You can inhibit the reuse by adding a unique username in front of the host name in the URL (i.e. xroot://<user>@<host>/).

Now that will work for the variables listed in the documentation I pointed to above, as these are client variables. For plugins, each plugin has its own scheme on how to handle envars. For gsi. determining where the proxy certificate resides is done only once. For ztn (bearer token) this is looked up each time an authentication occurs.

For managing the authentication scheme (this is a client function) the specific protocols to use comes from the URL via xrd.wantprot=<protlist> or, when not present, XrdSecPROTOCOL is reread for each authentication. Once again, authentication occurs on a per connection basis so once established it stays that way.

Hope that helps you to do what you need to do.

-- 
Reply to this email directly or view it on GitHub:
https://github.com/xrootd/xrootd/issues/1838#issuecomment-1331525227
You are receiving this because you are subscribed to this thread.

Message ID: <[log in to unmask]>

########################################################################
Use REPLY-ALL to reply to list

To unsubscribe from the XROOTD-DEV list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-DEV&A=1