Re: Crypt::SSLeay as ActiveState PPM
Joshua, I have been trying to get an https connection via LWP for a while and had been struggling with compiling the SSLeay and the Crypt perl modules. I have the activestate perl for win32. So what does it mean to have the activestate PPM where I don't have to compile. Can I just download the modules for win32 NT and install? Thanks for any help Doug -- Doug Courtney [EMAIL PROTECTED] (732)576-5572 __ OpenSSL Project http://www.openssl.org User Support Mailing List[EMAIL PROTECTED] Automated List Manager [EMAIL PROTECTED]
Re: perl ssl http daemon?
Gerhard, What platform were you able to get this running on? Does this allow you to send a post request via https from perl to a web server running SSL. I have been looking for the pieces to accomplish this and have had a lot of trouble getting things working under Win/NT thanks Doug Perl 5005_03, LibWWW 5.44, OpenSSL 0.91c, NetSSL 1.03, a patch for = SSLeay.xs=20 I can receive https requests via the libwww. What I need additionally is a SSL HTTP Daemon. The README of IO::Socket::SSL 0.72 suggests to use HTTP::Daemon=20 with changes (use Socket::SSL instead of Socket::INET). I am not sure if the problem lies in NetSSL or IO::Socket::SSL Socket:SSL uses NetSSL. NetSSL moans about "Random number generator not seeded." This should not be a problem says the documentation of NetSSL. Does anyone have a working (perl based) SSL-HTTPD running? Cheers, Gerhard __ OpenSSL Project http://www.openssl.org User Support Mailing List[EMAIL PROTECTED] Automated List Manager [EMAIL PROTECTED]
Re: Compiling OpenSSL on Win32 (again)
Ed, I hear your pain, I have felt it myself, I was hoping you had a better solution, but it appears not. I have including a number of messages that folks were SO kind on this list to help me with a while ago to get things to compile. I am attaching them. Please read through all the information, its not in an exact order, before you start to make changes. Some of the stuff might not apply to you or your version. I hope this helps. I am about to try to use this myself to get LWP working with https. Doug From dougc Wed Mar 31 09:30:32 1999 Subject: Re: NT perl SSL To: [EMAIL PROTECTED] Date: Wed, 31 Mar 1999 09:30:32 -0500 (EST) In-Reply-To: [EMAIL PROTECTED] from "Andy Shaw" at Mar 31, 99 11:27:36 am X-Mailer: ELM [version 2.4 PL24] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 6816 Status: RO Andy, I just went throught the considerable pain in almost exactly what you have done so far. I was extremly lucky to get the help of the folks on this and some other news groups. I am including 4 messages that detail many steps that need to be taken to fix files in the build process. Read all the messages first then see what your files look like, then take the steps slowly. Thats what I did and was finally able to compile yesterday. I did need to get a new Makefile.PL for the net::ssleay that had the correct set of libraries. I would be happy to send you that if you need it. Hope this helps. Here goes From: "Francois Orsini" [EMAIL PROTECTED] To: dougc@lynxhub Subject: Re: Win 32 DLL library NET_SSLEAY Date: Sat, 20 Mar 1999 14:28:53 -0800 Doug, To get you moving, Here is what you need to do to fix your compilation problem. I used Net_SSLeay 1.0.3, SSLeay 0.9.0b and MSVC++ 6.0 1) The \use\local\ssl\include\bn.h file contains a bn_blinding_st structure definition with a "mod" member. Rename it to "modnum". 2) In the \usr\local\ssl\include\ssl.h file, a function declaration used a argument name of "list", which appears to be an MSVC reserved word, as this generates a compiler error (under VC6 at least). Rename the argument to "listref". NOTE: (2 instances of this type of error, in ssl.h) 3) ssleay.xs - Conversion errors with regards to the SSL_CTX_set_verify function. Attempting to convert a (SV *) to a (void *) - This is easy to fix: SSL_CTX_set_verify(ctx,mode,(int(*)(void))ssleay_ctx_verify_callback_g lue); 4) If you get some undefined for RAND_seed(), RAND_xxx(), etc...: Add: #include rand.h in ssleay.xs before "buffer.h" Date: Sat, 20 Mar 1999 17:37:44 -0500 From: Jack Velte [EMAIL PROTECTED] Subject: Compiling Crypt::SSLeay on Windows with VC++ To: dougc@lynxhub Manually add the 3 ssl libraries to Crypt::SSLeay Makefile. I couldn't get makefile.pl to write the libraries correctly to the created Makefile. I added them to the EXTRALIBS and LDLOADLIBS lines. You probably want to use the path to the output of Your compilation in step 0. :-) "C:/Perl/local/openssl-SNAP-19990314-0330/out32dll/libeay32.lib" "C:/Perl/local/openssl-SNAP-19990314-0330/out32dll/RSAglue.lib" "C:/Perl/local/openssl-SNAP-19990314-0330/out32dll/ssleay32.lib" -- 3 -- Fix reserved words in openssl ssl.h and bn.h function prototype headers. My system needs the same fix for older versions of ssleay. (Back to SSLeay-0.9.0b at least.) Since you already compiled openssl, and we are only changing function prototypes, this should have no effect on Crypt::SSLeay. I don't know why the C compiler complains about these reserved words when compiling SSLeay/OpenSSL suite compiles, but it does. -- ssl.h: ('list') void SSL_set_client_CA_list(SSL *s, STACK *list); - void SSL_set_client_CA_list(SSL *s, STACK *list_x); ('list') void SSL_CTX_set_client_CA_list(SSL_CTX *ctx, STACK *list); - void SSL_CTX_set_client_CA_list(SSL_CTX *ctx, STACK *list_x); ('mod') bn.h: BIGNUM *mod; /* just a reference */ - BIGNUM *mod_x; /* just a reference */ ('mod') BN_BLINDING *BN_BLINDING_new(BIGNUM *A,BIGNUM *Ai,BIGNUM *mod); - BN_BLINDING *BN_BLINDING_new(BIGNUM *A,BIGNUM *Ai,BIGNUM *mod_x); ('na') void bn_mul_normal(BN_ULONG *r,BN_ULONG *a,int na,BN_ULONG *b,int nb); - void bn_mul_normal(BN_ULONG *r,BN_ULONG *a,int na_x,BN_ULONG *b,int nb); -- 4 -- copy the openssl libraries to somewhere on your path. (or your perl5lib path -- i have my lib directory on both for now.) -- "nmake" should now compile Crypt::SSLeay "nmake install" installs the library. now if you use new HTTP::Request('GET', "https://www.f
Re: using the Net_SSLeay.pm1.03
Francois, Thanks for your testing information. If you could send me the test.pl I would appreciate it. I will also look at the crypt module. I think I have that on my NT already. I hope it won't be as difficult to compile :) Doug -- Doug Courtney [EMAIL PROTECTED] (732)576-5572 __ OpenSSL Project http://www.openssl.org User Support Mailing List[EMAIL PROTECTED] Automated List Manager [EMAIL PROTECTED]
Re: Compiling for Perl on NT.
Andy, In the list of modifications I sent you previously is a list of changes that need to be made because certain variables being used are apparently reserved words. I ran into the same problems. If you make the changes to those reserved words to name them something else, it should clear things up. Let me know if you need the list of changes Doug -- Doug Courtney [EMAIL PROTECTED] (732)576-5572 __ OpenSSL Project http://www.openssl.org User Support Mailing List[EMAIL PROTECTED] Automated List Manager [EMAIL PROTECTED]
using the Net_SSLeay.pm1.03
Now that I have Net_SSLeay1.03 finally compiled and ran the install I tried to do a nmake test without much luck. Is there a way to test my install. I am on NT without my own certificate. Also, can I use the LWP now with https://some_site like I was using http:// some site when I am sending a POST to a site Thanks for any help Doug -- Doug Courtney [EMAIL PROTECTED] (732)576-5572 __ OpenSSL Project http://www.openssl.org User Support Mailing List[EMAIL PROTECTED] Automated List Manager [EMAIL PROTECTED]
Re: NT perl SSL
Andy, I just went throught the considerable pain in almost exactly what you have done so far. I was extremly lucky to get the help of the folks on this and some other news groups. I am including 4 messages that detail many steps that need to be taken to fix files in the build process. Read all the messages first then see what your files look like, then take the steps slowly. Thats what I did and was finally able to compile yesterday. I did need to get a new Makefile.PL for the net::ssleay that had the correct set of libraries. I would be happy to send you that if you need it. Hope this helps. Here goes From: "Francois Orsini" [EMAIL PROTECTED] To: dougc@lynxhub Subject: Re: Win 32 DLL library NET_SSLEAY Date: Sat, 20 Mar 1999 14:28:53 -0800 Doug, To get you moving, Here is what you need to do to fix your compilation problem. I used Net_SSLeay 1.0.3, SSLeay 0.9.0b and MSVC++ 6.0 1) The \use\local\ssl\include\bn.h file contains a bn_blinding_st structure definition with a "mod" member. Rename it to "modnum". 2) In the \usr\local\ssl\include\ssl.h file, a function declaration used a argument name of "list", which appears to be an MSVC reserved word, as this generates a compiler error (under VC6 at least). Rename the argument to "listref". NOTE: (2 instances of this type of error, in ssl.h) 3) ssleay.xs - Conversion errors with regards to the SSL_CTX_set_verify function. Attempting to convert a (SV *) to a (void *) - This is easy to fix: SSL_CTX_set_verify(ctx,mode,(int(*)(void))ssleay_ctx_verify_callback_g lue); 4) If you get some undefined for RAND_seed(), RAND_xxx(), etc...: Add: #include rand.h in ssleay.xs before "buffer.h" Date: Sat, 20 Mar 1999 17:37:44 -0500 From: Jack Velte [EMAIL PROTECTED] Subject: Compiling Crypt::SSLeay on Windows with VC++ To: dougc@lynxhub Manually add the 3 ssl libraries to Crypt::SSLeay Makefile. I couldn't get makefile.pl to write the libraries correctly to the created Makefile. I added them to the EXTRALIBS and LDLOADLIBS lines. You probably want to use the path to the output of Your compilation in step 0. :-) "C:/Perl/local/openssl-SNAP-19990314-0330/out32dll/libeay32.lib" "C:/Perl/local/openssl-SNAP-19990314-0330/out32dll/RSAglue.lib" "C:/Perl/local/openssl-SNAP-19990314-0330/out32dll/ssleay32.lib" -- 3 -- Fix reserved words in openssl ssl.h and bn.h function prototype headers. My system needs the same fix for older versions of ssleay. (Back to SSLeay-0.9.0b at least.) Since you already compiled openssl, and we are only changing function prototypes, this should have no effect on Crypt::SSLeay. I don't know why the C compiler complains about these reserved words when compiling SSLeay/OpenSSL suite compiles, but it does. -- ssl.h: ('list') void SSL_set_client_CA_list(SSL *s, STACK *list); - void SSL_set_client_CA_list(SSL *s, STACK *list_x); ('list') void SSL_CTX_set_client_CA_list(SSL_CTX *ctx, STACK *list); - void SSL_CTX_set_client_CA_list(SSL_CTX *ctx, STACK *list_x); ('mod') bn.h: BIGNUM *mod; /* just a reference */ - BIGNUM *mod_x; /* just a reference */ ('mod') BN_BLINDING *BN_BLINDING_new(BIGNUM *A,BIGNUM *Ai,BIGNUM *mod); - BN_BLINDING *BN_BLINDING_new(BIGNUM *A,BIGNUM *Ai,BIGNUM *mod_x); ('na') void bn_mul_normal(BN_ULONG *r,BN_ULONG *a,int na,BN_ULONG *b,int nb); - void bn_mul_normal(BN_ULONG *r,BN_ULONG *a,int na_x,BN_ULONG *b,int nb); -- 4 -- copy the openssl libraries to somewhere on your path. (or your perl5lib path -- i have my lib directory on both for now.) -- "nmake" should now compile Crypt::SSLeay "nmake install" installs the library. now if you use new HTTP::Request('GET', "https://www.foo.com/"); the LWP library will automatically use the SSL libraries. a simple test downloading a secure page worked for me. -jack From: "Francois Orsini" [EMAIL PROTECTED] To: dougc@lynxhub Subject: Re: Win 32 DLL library NET_SSLEAY Date: Sat, 20 Mar 1999 15:21:44 -0800 I know what it is... all the functions must be declared ANSI (PROTO)... so make sure the args type is declared within the function () such as: static int not_here(char *s) { } You need to do this for all of them... I must have done it but do not remember... if it is too much hassle for you : i'll send you my ssleay.xs Hope this helps, --francois -Original Message- From: [EMAIL PROTECTED] [EMAIL PROTECTED] To: Francois Orsini [EMAIL PROTECTED] Date: Saturday, March 20, 1999 3:11 PM Subject: Re: Win 32 DLL library NET_SSLEAY Francois, I made good pro
Re: Win 32 DLL library NET_SSLEAY Perl module generation (bn.h) compilation errors
Hello, I saw this on the mailing list and I am running into the same problem. Did you ever get a solution to the problem. I am not currently on the list, so could you mail me any info you care to share. Thanks Doug Hi, I'm doing it at the moment and I'm also getting these quite unexpected errors (for ssl.h and bn.h) . I wonder if this is caused by #include ordering in the SSLeay.xs? Would there be any Win32 MS VC 5.0 or 6.0 expert as to know if there would be any special compile flags to set in order to get rid of these errors.. c:\SSLeayBin\include\bn.h(245) : error C2143: syntax error : missing ';' before '-' c:\SSLeayBin\include\bn.h(245) : error C2059: syntax error : '-' c:\SSLeayBin\include\bn.h(245) : error C2238: unexpected token(s) precedi= ng ';' c:\SSLeayBin\include\bn.h(376) : error C2143: syntax error : missing ',' before '-' c:\SSLeayBin\include\bn.h(376) : error C2059: syntax error : '-' c:\SSLeayBin\include\ssl.h(892) : error C2143: syntax error : missing ',' before '-' c:\SSLeayBin\include\ssl.h(892) : error C2059: syntax error : '-' c:\SSLeayBin\include\ssl.h(893) : error C2143: syntax error : missing ',' before '-' c:\SSLeayBin\include\ssl.h(893) : error C2059: syntax error : '-' The syntax errors in the bn.h aren't C syntax error to me at all, therefo= re it must be caused as a side-effect of something else... I'm enclosing the errors in case it rings anybody a bell...Thanks for any thoughts on this. Once w= e can make it work, anybody can benefit from using it..The Net_SSLeay perl modu= le seems to be a great package. --francois -Original Message- From: Hugues Obolonsky [EMAIL PROTECTED] To: [EMAIL PROTECTED] [EMAIL PROTECTED] Date: Monday, February 08, 1999 6:22 AM Subject: Re: Win 32 DLL library [Re: (no subject)] That's ok for me, but what can i do to use the perl SSleay module. Every time i try to compile, i 've got many errors in the bn.h ? Anyone have compiled the perl module on NT ? Ulrich Kroener a =E9crit : Ng, (?) You need Perl for Win32 (from ActiveWare) VC 5 or later (from you know whom) Last time I checked (with openssl-0.9.1c), it worked like this: where_your_MSVC_bin_directory_is\vcvars.bat cd where_your_openssl_root_is perl util\mk1mf.pl VC-WIN32 dll no-asm ms\ntdll.mak perl util\mkdef.pl 32 libeay ms\libeay32.def perl util\mkdef.pl 32 ssleay ms\ssleay32.def nmake -f ms\ntdll.mak After this, you will (so I hope) find two DLLs in the out32dll directo= ry, together with their respective import libraries. This is very similar to the ms\do_ms.bat script proposed, but with no-asm enabled, so that you won't need the MS assembler (named ml.exe). Cheers! Ulrich Kr=F6ner P.S.: Also see my attached mak file for making a debug version ( use "nmake -f ms\ntdll-debug-noasm.mak" ) Disclaimer: I speak for myself, not for my employer. ---Ng Wei Yang [EMAIL PROTECTED] wrote: Hi, for the kind people out there, please help me to get the openssl source code compiled n made into a dll library. I'm quite dumb in th= is thing n i face a lot of problem when try to follow the instructions provided in the install.w32. my email is [EMAIL PROTECTED] _ DO YOU YAHOO!? Get your free @yahoo.com address at http://mail.yahoo.com = --- - Name: ntdll-debug-noasm.zip ntdll-debug-noasm.zip Type: Zip Compressed Data (application/x-zip-compressed) Encoding: base64 Description: ntdll-debug-noasm.zip __ OpenSSL Project http://www.openssl.org User Support Mailing List[EMAIL PROTECTED] Automated List Manager [EMAIL PROTECTED] -- Doug Courtney [EMAIL PROTECTED] (732)576-5572 __ OpenSSL Project http://www.openssl.org User Support Mailing List[EMAIL PROTECTED] Automated List Manager [EMAIL PROTECTED]