Hi,
I'm desperately looking for examples or at least some tips how to
programmatically use different proxies with the GRAM, GridFTP, and RLS
C API. The default initialization of the GSI security context seems to
pick up the x509up_<uid> proxy in /tmp. In my case, I have multiple
proxies in /tmp:
/tmp/x509up_vo1
/tmp/x509up_vo2
/tmp/x509up_vo3
...
I would like to be able to load a specific proxy into my context
depending on, for example the host I want to submit a job to. Or
another scenario where I don't know which proxy works for my target
host, would be to cycle through all proxies until the GRAM/GridFTP/RLS
command returns (hopefully) with a GLOBUS_SUCCESS.
I understand that for example the GRAM Client library provides the
function: int globus_gram_client_attr_set_credential
(globus_gram_client_attr_t attr, gss_cred_id_t credential) to achieve
something like this, right? But I don't understand how to get the
proxy information into the gss_cred_id_t type. The documentation is
really lacking some examples here...
Any help will be highly appreciated!
Thanks,
Ole