Ich habe einen Ruby-Client, der eine Verbindung zu einem Exchange-Server mit IMAP & SSL herstellt. Ich benutze die Ruby Net :: IMAP-Bibliothek (die openssl unter den Deckeln verwendet), um eine Verbindung herzustellen. Es hat seit Monaten gut funktioniert. Der Exchange Server-Administrator installierte neuen cert von GoDaddy und jetzt bekomme ich diesen Fehler:SSL_connect SYSCALL zurückgegeben = 5 errno = 0 Zustand = SSLv2/v3 Server lesen Hallo A
SSL_connect SYSCALL returned=5 errno=0 state=SSLv2/v3 read server hello A
Weiß jemand, was dieser Fehler bedeutet? (Ich versuchte zu googeln)
Ich vermute, dass es ein Problem mit dem neuen cert gibt, das verursacht, aber ich weiß nicht, wie man es behebt.
auch weiß, dass ich Sie Zertifikatsüberprüfung deaktivieren kann, wenn NET mit: HTTP by doing:
http.verify_mode = OpenSSL::SSL::VERIFY_NONE if http.use_ssl?
aber ich kann nicht herausfinden, wie dies mit NET zu tun: IMAP. Ich möchte dies deaktivieren, um zu sehen, ob dies das Problem ist.
Was Code im mit: Im mit diesem (oder sehr nahe an diesen) http://github.com/look/fetcher/blob/master/lib/fetcher/imap.rb
Ich habe versucht, zu ändern zu: @connection = Net :: IMAP.new (@server, @port, @ssl , null, false)
Hier ist die stacktrace
checking emails on: Tue Aug 17 20:48:01 +0000 2010
rake aborted!
SSL_connect SYSCALL returned=5 errno=0 state=SSLv2/v3 read server hello A
/usr/lib/ruby/1.8/net/imap.rb:904:in `connect'
/usr/lib/ruby/1.8/net/imap.rb:904:in `initialize'
/u/apps/aras/releases/20100728212439/vendor/plugins/fetcher/lib/fetcher/imap.rb:34:in `new'
/u/apps/aras/releases/20100728212439/vendor/plugins/fetcher/lib/fetcher/imap.rb:34:in `establish_connection'
/usr/lib/ruby/gems/1.8/gems/system_timer-1.0/lib/system_timer.rb:28:in `timeout_after'
/u/apps/aras/releases/20100728212439/vendor/plugins/fetcher/lib/fetcher/imap.rb:33:in `establish_connection'
/u/apps/aras/releases/20100728212439/vendor/plugins/fetcher/lib/fetcher/base.rb:31:in `fetch'
Haben Sie versucht, den Wert von timeout_call zu erhöhen (wahrscheinlich nicht das Problem)? Außerdem nehme ich an, dass Sie die Verbindung zum IMAP-Server mit einem anderen IMAP-Client getestet haben. – Brian
Es wurde versucht, das Zeitlimit zu erhöhen, es schlägt jedoch sehr schnell fehl. Haven versuchte einen anderen Client, aber das funktionierte, bevor sie die Änderung auf dem Server vornahmen. – Joelio
Ich würde mit einem anderen Client überprüfen und/oder das Zertifikat überprüfen, um sicherzustellen, dass nichts Schreckliches daran liegt (wie der Hostname auf dem Zertifikat nicht mit dem Hostnamen übereinstimmt, mit dem Sie sich verbinden). – Brian