win32 openssl help request

D

Debaun, Steve

Hi all --

I just joined the list because I saw a post (from way back in 2002) about
using ruby and OpenSSL on win32. I was wondering if anyone has had any
recent successes, and if so, what shenanigans they involved.

I'm having a heck of a time figuring out what my problem here is; I've tried
three different ways to script access to a web page and they're all failing
when tried over https -- which makes me suspect it's a problem with my
openssl; specifically, with what versions I have installed.

Samples follow:

Win32, Ruby 1.8.4p3, OpenSSL 0.9.7b for windows.
Trying to manipulate a web page. They all fail over SSL. Calls using
similar tools to non-SSL pages do not fail.

Three different approaches:

1.
-----
require 'mechanize'

$urls = [ "https://www112.livemeeting.com/cc/mycompany/loginForm",
"https://www112.livemeeting.com/cc/mycompany/login",
]

agent = WWW::Mechanize.new
agent.user_agent_alias = 'Windows IE 6'

p = agent.get($urls[0])
-----
C:\dev>ruby mechtest.rb
warning: peer certificate won't be verified in this SSL session
c:/ruby/lib/ruby/gems/1.8/gems/mechanize-0.3.1/lib/mechanize/net-overrides/n
et/http.rb:468:in `connect': OpenSSL::SSL::SSLError


2.
-----
require 'open-uri'

$urls = [ "https://www112.livemeeting.com/cc/mycompany/loginForm",
"https://www112.livemeeting.com/cc/mycompany/login",
]

open($urls[0]) { |r|
puts "New Cookie: #{r.set_cookie}"
}
-----
C:\dev>ruby openuritest.rb
c:/ruby/lib/ruby/1.8/open-uri.rb:237:in `open_http': undefined method
`set_default_paths' for #<OpenSSL::X509::Store:0x2c146f0> (NoMethodError)


3.
-----
require 'net/http'
require 'net/https'

$urls = [ "https://www112.livemeeting.com/cc/mycompany/loginForm",
"https://www112.livemeeting.com/cc/mycompany/login",
]

$uris = $urls.inject(Array.new) { |a,x| a << URI.parse(x) }

$uri_form = $uris[0]
http = Net::HTTP.new($uri_form.host, $uri_form.port)
http.use_ssl = true

r,d = http.get($uri_form.path,{})
-----
C:\dev>ruby nethttptest.rb
c:/ruby/lib/ruby/1.8/net/http.rb:565:in `connect': undefined method
`verify_mode' for nil:NilClass (NoMethodError)
This e-mail message may contain privileged and/or confidential information,
and is intended to be received only by persons entitled to receive such
information. If you have received this e-mail in error, please notify the
sender immediately. Please delete it and all attachments from any servers,
hard drives or any other media. Other use of this e-mail by you is strictly
prohibited.
All e-mails and attachments sent and received are subject to monitoring,
reading and archival by Seminis. The recipient of this e-mail is solely
responsible for checking for the presence of "Viruses" or other "Malware".
Seminis accepts no liability for any damage caused by any such code
transmitted by or accompanying this e-mail or any attachment.
 
B

Bill Kelly

Hi,

From: "Debaun said:
I just joined the list because I saw a post (from way back in 2002) about
using ruby and OpenSSL on win32. I was wondering if anyone has had any
recent successes, and if so, what shenanigans they involved.

Sorry I can't offer specific help, but I wanted to confirm that
I've been able to use OpenSSL/Ruby on Win32, both with SSLSocket,
and 'net/https'.

My net/https code looks similar to yours:

http = Net::HTTP.new(@sitename, 443)
http.use_ssl = true
resp, data = http.get(path, nil)

This is on:

WinXP Service Pack 2
ruby 1.8.2 (2004-12-25) [i386-mswin32]

I'm not sure which OpenSSL version... the ssleay32.dll and
libeay32.dll files don't seem to have any version information. :(


Regards,

Bill
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,995
Messages
2,570,236
Members
46,825
Latest member
VernonQuy6

Latest Threads

Top