From: "Iñaki Baz Castillo" Date: 2009-07-22T01:04:33+09:00 Subject: HTTPClient::SSLConfig uses "puts" ¿?¿? Hi, I'm using HTTPClient which uses OpenSSL. I've realized that HTTPClient includes a class SSLConfig which prints to the standard and error output when verifying a SSL certificate, i.e: # Default callback for verification: only dumps error. def default_verify_callback(is_ok, ctx) if $DEBUG puts "#{ is_ok ? 'ok' : 'ng' }: #{ctx.current_cert.subject}" end if !is_ok depth = ctx.error_depth code = ctx.error msg = ctx.error_string STDERR.puts "at depth #{depth} - #{code}: #{msg}" end is_ok end I set "http_client.ssl_config.verify_mode = 0" to avoid exceptions when the SSL cert is not valid (expires, autosigned...) but, anyway, the error is printed to the error output: STDERR.puts "at depth #{depth} - #{code}: #{msg}" This is really annoying. Why does a library writes to standar/error output by itself? It shouldn't occur! Is there any ellegant way to avoid it without the need of rewritting the methods? Thanks. -- Iñaki Baz Castillo