# Win32 openssl help request

**URL:** <https://www.ruby-forum.com/t/win32-openssl-help-request/65157>\
**Category:** Ruby\
**Created:** [February 9, 2006, 10:25pm UTC](https://www.ruby-forum.com/t/win32-openssl-help-request/65157 "2006-02-09T22:25:04Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![DebaunS\_Steve](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/b38774/32.png) [@DebaunS\_Steve](https://www.ruby-forum.com/u/DebaunS_Steve)\
**Post date:** [February 9, 2006, 10:25pm UTC](https://www.ruby-forum.com/t/win32-openssl-help-request/65157/1 "2006-02-09T22:25:04Z")

</div>

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/loginForm)”,  
“[https://www112.livemeeting.com/cc/mycompany/login](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

1. 

* * *

require ‘open-uri’

$urls = [“[https://www112.livemeeting.com/cc/mycompany/loginForm](https://www112.livemeeting.com/cc/mycompany/loginForm)”,  
“[https://www112.livemeeting.com/cc/mycompany/login](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)

1. 

* * *

require ‘net/http’  
require ‘net/https’

$urls = [“[https://www112.livemeeting.com/cc/mycompany/loginForm](https://www112.livemeeting.com/cc/mycompany/loginForm)”,  
“[https://www112.livemeeting.com/cc/mycompany/login](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.

---

<div class="post-metadata">

**Author:** ![DebaunS\_Steve](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/b38774/32.png) [@DebaunS\_Steve](https://www.ruby-forum.com/u/DebaunS_Steve)\
**Post date:** [February 9, 2006, 10:56pm UTC](https://www.ruby-forum.com/t/win32-openssl-help-request/65157/2 "2006-02-09T22:56:52Z")

</div>

Hi,

From: “Debaun, Steve” [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)

> 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
