Google SMTP: OpenSSL::SSL::SSLError

Desde el 19 de Julio google hizo algunas modificaciones en como manejan las entradas SSL (Pero aun no logro entender que fue lo que realmente cambiaron) lo que produce que Enviar correos desde apps Rails con Google ahora nos lance un error.

Como restrear un error en Rails

Primero me tiraba la famosa pagina de error de Rails y inmediatamente me dirigí al log de production, que se encuentra en log/production.log y te vas al final y podrás ver claramente el error, que en este caso me arrojaba:

OpenSSL::SSL::SSLError (SSL_read:: wrong version number):

En este caso la solución era simple, porque los correos se seguían enviando y solo que cortaba el correcto flujo de la acción. Para solucionarlo bastaba con agarrar la excepción (try catch para los que vienen de JAVA)

1. Abre el archivo lib/smtp_tls.rb
2. Agrega inmediatamente después de rescue EOFError en el método quit: rescue OpenSSL::SSL::SSLError

Con lo que logras el control de la excepción, sin claro, descubrir cual es la madre del cordero pero al menos tu aplicación sigue funcionando.

Si alguien sabe porque nos lanza esta excepción que nos cuente.

Guardado en: rubyonrails |

4 Comments

  • Monday, 23 July 2007, 4:58

    A mi también me apareció este error y como los correos se siguen enviando correctamente, opté por la misma solución que propones tu, capturar la excepción.

    A ver si alguien averigua que es lo que pasa realmente.

    Un saludo,
    Sergio

  • Wednesday, 29 August 2007, 5:53
    By Iesus

    Pues te va a hacer gracia, bueno, más gracia me hace a mi. Y es que aunque me sale el error, no me manda el email :S.

  • Wednesday, 29 August 2007, 7:47
    By Iesus

    Voy a intentar solucionar el error y que asi mande mails o cambiare de servidor :S

  • Wednesday, 29 August 2007, 7:55

    Es raro, gastu e ismael lo hicieron correr. No se si gracias a esta pagina pero les funciono. Si quieres me ubicas a mi correo norellana at gmail dot com y te ayudo personalmente.

    Saludos.

Leave a comment

norellan