Re: Crypt::SSLeay Usage

[email protected] (David Pottage) Wed, 24 Oct 2012 21:58:29 +0100
Newsgroups perl.libwww
Message-ID <[email protected]>
On 23/10/12 05:02, Goon Chew wrote:
> Hi,
>
> I am not a PERL expert and am looking for some Crypt::SSLeay usage support,
> hopefully someone can help me out.
>
> We have a perl trigger script that has been working fine by Rational Change
> using http. This script may be called either when a Change Request (CR) is
> transitioned or selected attributes are modified. If the CR contains a
> reference to a Saleforce.com case, the script sends a message to update the
> case status. The script reads configuration information from the
> cstrigger.properties file to determine whether the state transition or
> attribute change requires a message to be sent to Saleforce and if so
> it invokes the 'wget' command to send the status update message. wget is an
> open source non-interactive web browser that has been installed on the
> Rational Change server.
>
> We are in the process of converting Rational Change to a brand new server
> using https. During the testing, I received the following error when the
> script is being executed:
>
> LWP will support https URLs if the Crypt::SSLeay module is installed.
> More information at <http://www.linpro.no/lwp/libwww-perl/README.SSL>.
> Monday, October 22, 2012 10:06:33 PM CDT
> ERROR - Failed to show problem: 94. Connection failure: The response as a
> string is: 501 (Not Implemented) Protocol scheme 'https' is not supported
> (Crypt::SSLeay not installed)
> Content-Type: text/plain
> Client-Date: Tue, 23 Oct 2012 03:06:34 GMT
> Client-Warning: Internal response
>
> LWP will support https URLs if the Crypt::SSLeay module is installed.
> More information at <http://www.linpro.no/lwp/libwww-perl/README.SSL>.
>
>
> I googled and found this site:
> http://search.cpan.org/~nanis/Crypt-SSLeay-0.64/SSLeay.pm
>
> I had our Unix team installed Crypt::SSLeay and OpenSSL on the brand new
> server but I still get the same error above. I believe my trigger script
> needs to be updated so it knows where to find the Crypt::SSLeay but I am
> very lost even after reading the site I referenced above.
>
> Please let me know if you need any additional information to help, any
> assistance you can provide is greatly appreciated!!
As it happens, I have written trigger scripts for Rational Change, and 
from the way you have described your problem, I don't think it is 
specific to Crypt::SSLeay, more that when perl runs a trigger script it 
can't find the library.

I think what you need to do, is first contact you unix team and find out 
where they installed the library. They are unlikely to have installed it 
with the system perl libraries, more likely somewhere like 
/usr/local/lib/site_perl, and this might not be in the @INC list of 
paths that perl uses to find libraries. You should also make sure that 
that they installed it for the same perl version and processor 
architecture as the version of perl used by Change. (It is quite likely 
that Change is using a different version of perl than the system 
version, especially if you are on Solaris).

Then you should find out the @INC path as it is in a trigger script. 
This will be hidden somewhere in your Rational Change config files, but 
it is probably easier to get by adding a debug printf to a trigger 
script and have it write to a config file. eg:
     open LOGFILE, '>', /tmp/debug.log
     print LOGFILE $_ foreach @INC;
     close LOGFILE;

Chances are you will find a miss match between the contents of @INC and 
the location of the library. You should be able to fix it by adding "use 
lib <path>" to the top of your script.

If that does not work, then as I recall, it is possible to debug the 
trigger scripts in the environment that Change runs them in. I don't 
remember the details but as I recall you can set a variable in your 
change config, restart the server, and it will retain the file 
containing the environment each time it runs rather than removing them 
when the trigger script completes. Consult your documentation. You 
should then be able to run the trigger script in the perl debugger and 
find out what is going wrong.

If you still can't get Crypt::SSLeay working, then please post again.

-- 
David Pottage