> On Jul 28, 2015, at 8:59 PM, Adam Williamson <awilliam@xxxxxxxxxx> wrote:
>
> Hi, Condor folks.
>
> The Globus project recently shipped a 7.9 release of globus-gsi
> -credential (which is not listed on
> http://toolkit.globus.org/toolkit/advisories.html ) that changes the
> interface of the globus_gsi_cred_write_proxy() function - it changes
> the type of the proxy_filename parameter from 'char' to 'const char'.
>
> As condor's src/condor_utils/globus_utils.cpp defines a pointer to it -
> globus_gsi_cred_write_proxy_ptr - it fails to compile against 7.9:
>
> /builddir/build/BUILD/htcondor-8_3_6/src/condor_utils/globus_utils.cpp: In function 'int activate_globus_gsi()':
> /builddir/build/BUILD/htcondor-8_3_6/src/condor_utils/globus_utils.cpp:357:34: error: invalid conversion from 'globus_result_t (*)(globus_gsi_cred_handle_t, const char*) {aka unsigned int (*)(globus_l_gsi_cred_handle_s*, const char*)}' to 'globus_result_t (*)(globus_gsi_cred_handle_t, char*) {aka unsigned int (*)(globus_l_gsi_cred_handle_s*, char*)}' [-fpermissive]
> globus_gsi_cred_write_proxy_ptr = globus_gsi_cred_write_proxy;
>
> Presumably it'd be trivial to fix the compilation against 7.9 by just
> changing the globus_gsi_cred_write_proxy_ptr definition
> unconditionally, but I'm not sure if you'd want to do something
> different to allow compilation against both 7.9 and <= 7.8.
>
> Here's the globus commit:
>
> https://github.com/globus/globus-toolkit/commit/2db4aeb2db424458803b62e
> f85095662ed2cc377
>
Thanks for the excellent bug report!
I opened a ticket (https://htcondor-wiki.cs.wisc.edu/index.cgi/tktview?tn=5180) and posted a simple patch for review. Should be able to merge it for the next dev release. Until then, if you want to apply a patch to the 8.3.6 RPM directly, it is here:
https://github.com/htcondor/htcondor/commit/d10e85eada71599caebb56fde50dd42bbbf6b65d
I simply did a reinterpret_cast on the function pointer to get it to the correct type (const char * and char * should be the same in the ABI).
> BTW, not to sound too harsh, but
> https://htcondor-wiki.cs.wisc.edu/index.cgi/wiki?p=MakingContributions
> comes across as being not too far from a big sign saying "GO AWAY". To
> make any contribution, it tells me, I have to:
>
> 1. Download something, print it, sign it, scan it(?! what decade is
> this?), send it to one email address
> 2. Sign up for a ticketing system and create a ticket in it
> 3. Send a mail to a *different* email address pointing to the ticket
> (and probably subscribe to the mailing list, or I'll miss some
> followups)
>
> This seems bad enough as written (why can't the ticket system forward
> mails to the mailing list itself, if that's what you want?)...but the
> ticketing system requires a login but appears to have no registration
> page, and the archives of the mailing list appear to be behind a
> university's login page, again with no apparent registration system.
>
> This doesn't seem like the best way to encourage contributions to your
> project :)
Indeed - all good suggestions! Iâm external to the original setup of things, but my understanding is that the closed ticket system was done to fight spam (sigh) and the CLA is what happens when university lawyers touch things.
Iâll leave it to others to think about your suggestions and chime in.
Brian
|