Skip Menu |
 

This queue is for tickets about the Net-SSLeay CPAN distribution.

Report information
The Basics
Id: 79881
Status: resolved
Worked: 30 min
Priority: 0/
Queue: Net-SSLeay

People
Owner: MIKEM [...] cpan.org
Requestors: craigberry [...] mac.com
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



Subject: [PATCH] VMS build help for Net::SSLeay 1.49
Date: Thu, 27 Sep 2012 10:24:33 -0500
To: bug-Net-SSLeay [...] rt.cpan.org
From: "Craig A. Berry" <craigberry [...] mac.com>
Download (untitled) / with headers
text/plain 2.5k
The first of the attached patches modifies the build procedures so that Net::SSLeay 1.49 builds on VMS. Here's what I did to get things working: 1.) Ported Module::Install to VMS (see <https://rt.cpan.org/Ticket/Display.html?id=79858>). Not included in the patch here, but just mentioning it so you'll keep an eye on Module::Install updates. 2.) The custom postamble in Makefile.PL was using hard-coded Unix-format paths and a hard-coded .o extension for the SSLeay object file. Now it uses the appropriate values for whatever platform we're running on. 3.) In inc::Module::Install::PRIVATE::Net::SSLeay.pm::ssleay_get_build_opts, added VMS-specific code to detect either a source build of OpenSSL or the HP-supplied kit installation. 4.) In inc::Module::Install::PRIVATE::Net::SSLeay.pm::check_no_path, there was a call to ExtUtils::Liblist->ext() that failed because the code in ExtUtils::Liblist::Kid::_vms_ext that we get dispatched to references $self, but $self ISA ExtUtils::Liblist rather than ExtUtils::MakeMaker. There is a comment at the top of ExtUtils::Liblist::Kid that says, "This kid package is to be used by MakeMaker. It will not work if $self is not a Makemaker." So to meet that requirement I changed to using ExtUtils::MM, which flattens together MakeMaker and Liblist, rather than Liblist directly. 5.) In inc::Module::Install::PRIVATE::Net::SSLeay.pm::find_openssl_prefix(), I added appropriate guesses to the list for locating installations of OpenSSL on VMS. I also noticed that there appeared to be an expectation that the guesses would be tried in order, but they were stored in a hash, which returns them in random order. So I converted the hash to an array. 6.) inc::Module::Install::PRIVATE::Net::SSLeay.pm::find_openssl_exec(), added appropriate binary locations. 7.) Several of the tests were using fork(), which is not available, so I made them skip when $Config{d_fork} is false. The second patch fixes a few compiler warnings in SSLeay.xs. Most of them are just signed/unsigned pointer mismatches but there is one that actually fixes returning what would be an arbitrary value off the stack from get_my_thread_id if it happened to be called in a non-threaded build. After these two patches (plus the Module::Install fix), Net::SSLeay builds just fine and passes all tests on VMS with perl 5.16.1. I also tested the patches on Mac OS X and everything still looks good there as well. Show quoted text
________________________________________ Craig A. Berry mailto:craigberry@mac.com "... getting out of a sonnet is much more difficult than getting in." Brad Leithauser
Download ssleay_vms.patch
text/x-diff 5.9k

Message body is not shown because sender requested not to inline it.

Message body is not shown because sender requested not to inline it.

Subject: Re: [rt.cpan.org #79881] [PATCH] VMS build help for Net::SSLeay 1.49
Date: Fri, 28 Sep 2012 10:10:49 +1000
To: bug-Net-SSLeay [...] rt.cpan.org
From: Mike McCauley <mikem [...] open.com.au>
Download (untitled) / with headers
text/plain 3.9k
Hi Craig, Thanks for the thorough patches. They applied and tested cleanly on Linux, Solaris and Windows. Your patches are now in svn 353 Would you be able to provide a README.VMS describing how to build successfully on VMS? Cheers. On Thursday, September 27, 2012 11:25:19 AM you wrote: Show quoted text
> Thu Sep 27 11:25:18 2012: Request 79881 was acted upon. > Transaction: Ticket created by craigberry@mac.com > Queue: Net-SSLeay > Subject: [PATCH] VMS build help for Net::SSLeay 1.49 > Broken in: (no value) > Severity: (no value) > Owner: Nobody > Requestors: craigberry@mac.com > Status: new > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=79881 > > > > The first of the attached patches modifies the build procedures so that > Net::SSLeay 1.49 builds on VMS. Here's what I did to get things working: > > 1.) Ported Module::Install to VMS (see > <https://rt.cpan.org/Ticket/Display.html?id=79858>). Not included in the > patch here, but just mentioning it so you'll keep an eye on Module::Install > updates. > > 2.) The custom postamble in Makefile.PL was using hard-coded Unix-format > paths and a hard-coded .o extension for the SSLeay object file. Now it > uses the appropriate values for whatever platform we're running on. > > 3.) In > inc::Module::Install::PRIVATE::Net::SSLeay.pm::ssleay_get_build_opts, added > VMS-specific code to detect either a source build of OpenSSL or the > HP-supplied kit installation. > > 4.) In inc::Module::Install::PRIVATE::Net::SSLeay.pm::check_no_path, there > was a call to ExtUtils::Liblist->ext() that failed because the code in > ExtUtils::Liblist::Kid::_vms_ext that we get dispatched to references > $self, but $self ISA ExtUtils::Liblist rather than ExtUtils::MakeMaker. > There is a comment at the top of ExtUtils::Liblist::Kid that says, "This > kid package is to be used by MakeMaker. It will not work if $self is not a > Makemaker." So to meet that requirement I changed to using ExtUtils::MM, > which flattens together MakeMaker and Liblist, rather than Liblist > directly. > > 5.) In > inc::Module::Install::PRIVATE::Net::SSLeay.pm::find_openssl_prefix(), I > added appropriate guesses to the list for locating installations of OpenSSL > on VMS. I also noticed that there appeared to be an expectation that the > guesses would be tried in order, but they were stored in a hash, which > returns them in random order. So I converted the hash to an array. > > 6.) inc::Module::Install::PRIVATE::Net::SSLeay.pm::find_openssl_exec(), > added appropriate binary locations. > > 7.) Several of the tests were using fork(), which is not available, so I > made them skip when $Config{d_fork} is false. > > The second patch fixes a few compiler warnings in SSLeay.xs. Most of them > are just signed/unsigned pointer mismatches but there is one that actually > fixes returning what would be an arbitrary value off the stack from > get_my_thread_id if it happened to be called in a non-threaded build. > > After these two patches (plus the Module::Install fix), Net::SSLeay builds > just fine and passes all tests on VMS with perl 5.16.1. I also tested the > patches on Mac OS X and everything still looks good there as well. > > ________________________________________ > Craig A. Berry > mailto:craigberry@mac.com > > "... getting out of a sonnet is much more > difficult than getting in." > Brad Leithauser
-- Mike McCauley mikem@open.com.au Open System Consultants Pty. Ltd 9 Bulbul Place Currumbin Waters QLD 4223 Australia http://www.open.com.au Phone +61 7 5598-7474 Fax +61 7 5598-7070 Radiator: the most portable, flexible and configurable RADIUS server anywhere. SQL, proxy, DBM, files, LDAP, NIS+, password, NT, Emerald, Platypus, Freeside, TACACS+, PAM, external, Active Directory, EAP, TLS, TTLS, PEAP, TNC, WiMAX, RSA, Vasco, Yubikey, MOTP, HOTP, TOTP, DIAMETER etc. Full source on Unix, Windows, MacOSX, Solaris, VMS, NetWare etc.
Subject: Re: [rt.cpan.org #79881] [PATCH] VMS build help for Net::SSLeay 1.49
Date: Thu, 27 Sep 2012 22:18:42 -0500
To: bug-Net-SSLeay [...] rt.cpan.org
From: "Craig A. Berry" <craigberry [...] mac.com>
Download (untitled) / with headers
text/plain 873b
On Sep 27, 2012, at 7:11 PM, mikem@open.com.au via RT wrote: Show quoted text
> <URL: https://rt.cpan.org/Ticket/Display.html?id=79881 > > > Hi Craig, > > > Thanks for the thorough patches. They applied and tested cleanly on Linux, > Solaris and Windows. > > Your patches are now in svn 353
Thanks for the quick response. Show quoted text
> Would you be able to provide a README.VMS describing how to build successfully > on VMS?
Hrmmm. It would say $ perl Makefile.PL $ mmk $ mmk test $ mmk install where "mmk" is the native make equivalent. In other words, exactly the same as building any other extension. So I'm not sure what, exactly, I would be documenting there. Did you have something in mind? Show quoted text
________________________________________ Craig A. Berry mailto:craigberry@mac.com "... getting out of a sonnet is much more difficult than getting in." Brad Leithauser
Subject: Re: [rt.cpan.org #79881] [PATCH] VMS build help for Net::SSLeay 1.49
Date: Fri, 28 Sep 2012 16:38:30 +1000
To: bug-Net-SSLeay [...] rt.cpan.org
From: Mike McCauley <mikem [...] open.com.au>
Download (untitled) / with headers
text/plain 1.9k
Hi Craig, On Thursday, September 27, 2012 11:18:58 PM you wrote: Show quoted text
> Queue: Net-SSLeay > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=79881 > > > On Sep 27, 2012, at 7:11 PM, mikem@open.com.au via RT wrote:
> > <URL: https://rt.cpan.org/Ticket/Display.html?id=79881 > > > > > Hi Craig, > > > > > > Thanks for the thorough patches. They applied and tested cleanly on > > Linux, Solaris and Windows. > > > > Your patches are now in svn 353
> > Thanks for the quick response. >
> > Would you be able to provide a README.VMS describing how to build > > successfully on VMS?
> > Hrmmm. It would say > > $ perl Makefile.PL > $ mmk > $ mmk test > $ mmk install > > where "mmk" is the native make equivalent. In other words, exactly the same > as building any other extension. So I'm not sure what, exactly, I would be > documenting there. Did you have something in mind?
Well that is certainly more than I could have written :-) Basically, for someone new to the process, how to unpack, build and install Net::SSLeay on VMS. Any gotchas what version(s) it is known to work on. etc so that those that follow after us will not have to rediscover the process. Cheers. Show quoted text
> > ________________________________________ > Craig A. Berry > mailto:craigberry@mac.com > > "... getting out of a sonnet is much more > difficult than getting in." > Brad Leithauser
-- Mike McCauley mikem@open.com.au Open System Consultants Pty. Ltd 9 Bulbul Place Currumbin Waters QLD 4223 Australia http://www.open.com.au Phone +61 7 5598-7474 Fax +61 7 5598-7070 Radiator: the most portable, flexible and configurable RADIUS server anywhere. SQL, proxy, DBM, files, LDAP, NIS+, password, NT, Emerald, Platypus, Freeside, TACACS+, PAM, external, Active Directory, EAP, TLS, TTLS, PEAP, TNC, WiMAX, RSA, Vasco, Yubikey, MOTP, HOTP, TOTP, DIAMETER etc. Full source on Unix, Windows, MacOSX, Solaris, VMS, NetWare etc.
Subject: Re: [rt.cpan.org #79881] [PATCH] VMS build help for Net::SSLeay 1.49
Date: Sat, 29 Sep 2012 14:35:12 -0500
To: bug-Net-SSLeay [...] rt.cpan.org
From: "Craig A. Berry" <craigberry [...] mac.com>
On Sep 28, 2012, at 1:38 AM, mikem@open.com.au via RT wrote: Show quoted text
> <URL: https://rt.cpan.org/Ticket/Display.html?id=79881 > > > Hi Craig, > > > On Thursday, September 27, 2012 11:18:58 PM you wrote:
>> Queue: Net-SSLeay >> Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=79881 > >> >> On Sep 27, 2012, at 7:11 PM, mikem@open.com.au via RT wrote:
Show quoted text
>>
>>> Would you be able to provide a README.VMS describing how to build >>> successfully on VMS?
>> >> Hrmmm. It would say >> >> $ perl Makefile.PL >> $ mmk >> $ mmk test >> $ mmk install >> >> where "mmk" is the native make equivalent. In other words, exactly the same >> as building any other extension. So I'm not sure what, exactly, I would be >> documenting there. Did you have something in mind?
> > Well that is certainly more than I could have written :-)
OK, you convinced me :-). I've attached a README.VMS. Show quoted text
________________________________________ Craig A. Berry mailto:craigberry@mac.com "... getting out of a sonnet is much more difficult than getting in." Brad Leithauser
Download README.VMS
application/octet-stream 3.5k

Message body not shown because it is not plain text.

Subject: Re: [rt.cpan.org #79881] [PATCH] VMS build help for Net::SSLeay 1.49
Date: Sun, 30 Sep 2012 07:48:51 +1000
To: bug-Net-SSLeay [...] rt.cpan.org
From: Mike McCauley <mikem [...] open.com.au>
Download (untitled) / with headers
text/plain 1.9k
Hi Craig. Thanks. Added to svn 354. Cheers. On Saturday, September 29, 2012 03:35:29 PM you wrote: Show quoted text
> Queue: Net-SSLeay > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=79881 > > > On Sep 28, 2012, at 1:38 AM, mikem@open.com.au via RT wrote:
> > <URL: https://rt.cpan.org/Ticket/Display.html?id=79881 > > > > > Hi Craig, > > > > On Thursday, September 27, 2012 11:18:58 PM you wrote:
> >> Queue: Net-SSLeay > >> > >> Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=79881 > > >> > >> On Sep 27, 2012, at 7:11 PM, mikem@open.com.au via RT wrote:
> >>> Would you be able to provide a README.VMS describing how to build > >>> successfully on VMS?
> >> > >> Hrmmm. It would say > >> > >> $ perl Makefile.PL > >> $ mmk > >> $ mmk test > >> $ mmk install > >> > >> where "mmk" is the native make equivalent. In other words, exactly > >> the same as building any other extension. So I'm not sure what, > >> exactly, I would be documenting there. Did you have something in > >> mind?
> > > > Well that is certainly more than I could have written :-)
> > OK, you convinced me :-). I've attached a README.VMS. > > > ________________________________________ > Craig A. Berry > mailto:craigberry@mac.com > > "... getting out of a sonnet is much more > difficult than getting in." > Brad Leithauser
-- Mike McCauley mikem@open.com.au Open System Consultants Pty. Ltd 9 Bulbul Place Currumbin Waters QLD 4223 Australia http://www.open.com.au Phone +61 7 5598-7474 Fax +61 7 5598-7070 Radiator: the most portable, flexible and configurable RADIUS server anywhere. SQL, proxy, DBM, files, LDAP, NIS+, password, NT, Emerald, Platypus, Freeside, TACACS+, PAM, external, Active Directory, EAP, TLS, TTLS, PEAP, TNC, WiMAX, RSA, Vasco, Yubikey, MOTP, HOTP, TOTP, DIAMETER etc. Full source on Unix, Windows, MacOSX, Solaris, VMS, NetWare etc.
CC: mikem [...] open.com.au
Subject: Re: [rt.cpan.org #79881] [PATCH] VMS build help for Net::SSLeay 1.49
Date: Fri, 02 Nov 2012 10:17:04 -0500
To: bug-Net-SSLeay [...] rt.cpan.org
From: "Craig A. Berry" <craigberry [...] mac.com>
Download (untitled) / with headers
text/plain 743b
On Sep 29, 2012, at 4:49 PM, mikem@open.com.au via RT <bug-Net-SSLeay@rt.cpan.org> wrote: Show quoted text
> <URL: https://rt.cpan.org/Ticket/Display.html?id=79881 > > > Hi Craig. > > Thanks. Added to svn 354.
I just had a peak at svn and it looks like the part of my patch that applies to the private parts of Module::Install went missing. Probably because I had submitted it against inc/ instead of ext/, which is where it resides in svn. I'm resubmitting that portion only here and against ext/ this time. Let me know if there are any questions or problems. Show quoted text
________________________________________ Craig A. Berry mailto:craigberry@mac.com "... getting out of a sonnet is much more difficult than getting in." Brad Leithauser

Message body is not shown because sender requested not to inline it.

CC: bug-Net-SSLeay [...] rt.cpan.org
Subject: Re: [rt.cpan.org #79881] [PATCH] VMS build help for Net::SSLeay 1.49
Date: Sat, 03 Nov 2012 07:46:52 +1000
To: "Craig A. Berry" <craigberry [...] mac.com>
From: Mike McCauley <mikem [...] open.com.au>
Download (untitled) / with headers
text/plain 1.5k
Hi Craig, thanks. Patched in svn 356. I am unable to test this, so perhaps you will check that the latest version is now OK for you? Cheers. On Friday, November 02, 2012 10:17:04 AM Craig A. Berry wrote: Show quoted text
> On Sep 29, 2012, at 4:49 PM, mikem@open.com.au via RT <bug-Net-
SSLeay@rt.cpan.org> wrote: Show quoted text
> > <URL: https://rt.cpan.org/Ticket/Display.html?id=79881 > > > > > Hi Craig. > > > > Thanks. Added to svn 354.
> > I just had a peak at svn and it looks like the part of my patch that applies > to the private parts of Module::Install went missing. Probably because I > had submitted it against inc/ instead of ext/, which is where it resides in > svn. I'm resubmitting that portion only here and against ext/ this time. > Let me know if there are any questions or problems. > > ________________________________________ > Craig A. Berry > mailto:craigberry@mac.com > > "... getting out of a sonnet is much more > difficult than getting in." > Brad Leithauser
-- Mike McCauley mikem@open.com.au Open System Consultants Pty. Ltd 9 Bulbul Place Currumbin Waters QLD 4223 Australia http://www.open.com.au Phone +61 7 5598-7474 Fax +61 7 5598-7070 Radiator: the most portable, flexible and configurable RADIUS server anywhere. SQL, proxy, DBM, files, LDAP, NIS+, password, NT, Emerald, Platypus, Freeside, TACACS+, PAM, external, Active Directory, EAP, TLS, TTLS, PEAP, TNC, WiMAX, RSA, Vasco, Yubikey, MOTP, HOTP, TOTP, DIAMETER etc. Full source on Unix, Windows, MacOSX, Solaris, VMS, NetWare etc.
Subject: Re: [rt.cpan.org #79881] [PATCH] VMS build help for Net::SSLeay 1.49
Date: Fri, 02 Nov 2012 18:30:48 -0500
To: bug-Net-SSLeay [...] rt.cpan.org
From: "Craig A. Berry" <craigberry [...] mac.com>
Download (untitled) / with headers
text/plain 1.8k
On Nov 2, 2012, at 4:47 PM, mikem@open.com.au via RT <bug-Net-SSLeay@rt.cpan.org> wrote: Show quoted text
> <URL: https://rt.cpan.org/Ticket/Display.html?id=79881 > > > Hi Craig, > > thanks. Patched in svn 356. > > I am unable to test this, so perhaps you will check that the latest version is > now OK for you?
Thanks for the amazingly fast reply. You are a delight to work with. Everything builds beautifully on VMS after this and the only tests that are failing are external tests that try to get to perldition.org, which is currently not responding very well: % ping perldition.org PING perldition.org (176.9.51.59): 56 data bytes Request timeout for icmp_seq 0 Request timeout for icmp_seq 1 Request timeout for icmp_seq 2 92 bytes from bhang.perldition.org (176.9.51.34): Destination Host Unreachable Vr HL TOS Len ID Flg off TTL Pro cks Src Dst 4 5 00 5400 fb4b 0 0000 32 01 ca06 172.16.52.2 176.9.51.59 92 bytes from bhang.perldition.org (176.9.51.34): Destination Host Unreachable Vr HL TOS Len ID Flg off TTL Pro cks Src Dst 4 5 00 5400 4b30 0 0000 32 01 7a22 172.16.52.2 176.9.51.59 92 bytes from bhang.perldition.org (176.9.51.34): Destination Host Unreachable Vr HL TOS Len ID Flg off TTL Pro cks Src Dst 4 5 00 5400 6917 0 0000 32 01 5c3b 172.16.52.2 176.9.51.59 So I think that's really not related to anything Net::SSLeay is doing and definitely not related to my changes. FWIW, external/10_destroy.t fails on both VMS and Mac OS X, whereas external/50_external.t fails only on VMS. I can't think of why that would be, but both seem to be related to trying to reach perldition.org. Let me know if there's anything else I should look at. Show quoted text
________________________________________ Craig A. Berry mailto:craigberry@mac.com "... getting out of a sonnet is much more difficult than getting in." Brad Leithauser
Subject: Re: [rt.cpan.org #79881] [PATCH] VMS build help for Net::SSLeay 1.49
Date: Sat, 03 Nov 2012 09:36:07 +1000
To: bug-Net-SSLeay [...] rt.cpan.org
From: Mike McCauley <mikem [...] open.com.au>
Download (untitled) / with headers
text/plain 2.7k
Hi Craig, On Friday, November 02, 2012 07:31:05 PM you wrote: Show quoted text
> Queue: Net-SSLeay > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=79881 > > > On Nov 2, 2012, at 4:47 PM, mikem@open.com.au via RT <bug-Net-
SSLeay@rt.cpan.org> wrote: Show quoted text
> > <URL: https://rt.cpan.org/Ticket/Display.html?id=79881 > > > > > Hi Craig, > > > > thanks. Patched in svn 356. > > > > I am unable to test this, so perhaps you will check that the latest > > version is now OK for you?
> > Thanks for the amazingly fast reply. You are a delight to work with. > Everything builds beautifully on VMS after this and the only tests that are > failing are external tests that try to get to perldition.org, which is > currently not responding very well:
Yes, I think you can disregard that. Thanks for checking. Cheers. Show quoted text
> > % ping perldition.org > PING perldition.org (176.9.51.59): 56 data bytes > Request timeout for icmp_seq 0 > Request timeout for icmp_seq 1 > Request timeout for icmp_seq 2 > 92 bytes from bhang.perldition.org (176.9.51.34): Destination Host > Unreachable Vr HL TOS Len ID Flg off TTL Pro cks Src Dst > 4 5 00 5400 fb4b 0 0000 32 01 ca06 172.16.52.2 176.9.51.59 > > 92 bytes from bhang.perldition.org (176.9.51.34): Destination Host > Unreachable Vr HL TOS Len ID Flg off TTL Pro cks Src Dst > 4 5 00 5400 4b30 0 0000 32 01 7a22 172.16.52.2 176.9.51.59 > > 92 bytes from bhang.perldition.org (176.9.51.34): Destination Host > Unreachable Vr HL TOS Len ID Flg off TTL Pro cks Src Dst > 4 5 00 5400 6917 0 0000 32 01 5c3b 172.16.52.2 176.9.51.59 > > So I think that's really not related to anything Net::SSLeay is doing and > definitely not related to my changes. FWIW, external/10_destroy.t fails on > both VMS and Mac OS X, whereas external/50_external.t fails only on VMS. I > can't think of why that would be, but both seem to be related to trying to > reach perldition.org. Let me know if there's anything else I should look > at. ________________________________________ > Craig A. Berry > mailto:craigberry@mac.com > > "... getting out of a sonnet is much more > difficult than getting in." > Brad Leithauser
-- Mike McCauley mikem@open.com.au Open System Consultants Pty. Ltd 9 Bulbul Place Currumbin Waters QLD 4223 Australia http://www.open.com.au Phone +61 7 5598-7474 Fax +61 7 5598-7070 Radiator: the most portable, flexible and configurable RADIUS server anywhere. SQL, proxy, DBM, files, LDAP, NIS+, password, NT, Emerald, Platypus, Freeside, TACACS+, PAM, external, Active Directory, EAP, TLS, TTLS, PEAP, TNC, WiMAX, RSA, Vasco, Yubikey, MOTP, HOTP, TOTP, DIAMETER etc. Full source on Unix, Windows, MacOSX, Solaris, VMS, NetWare etc.


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

Please report any issues with rt.cpan.org to rt-cpan-admin@bestpractical.com.