We have an odd problem at work today.

Running the following code on Windows XP gives us a CVV2 error, which  
is what we expect (we didn't give one).  However, running the same  
code on Linux or OS X gets a complaint that we didn't provide the  
key, which is obviously not true (see last line).

Does anyone see anything inherently non-portable in the following code?

   require 'net/http'
   require 'net/https'

   uri  = URI.parse 'https://www.usaepay.com/gate.php'
   p (http = Net::HTTP.new(uri.host, uri.port))
   p http.use_ssl     = true
   p http.verify_mode = OpenSSL::SSL::VERIFY_NONE
   p http.post(uri.path, "UMkey=OUR_KEY_CODE_HERE").body

Thanks in advance for any hints.

James Edward Gray II