force use of TLSv1 on lowsslcheck as the web server's support of SSLv3 is broken

This commit is contained in:
Romain Bignon 2014-08-20 11:11:50 +02:00
commit 4cbb7591fa

View file

@ -18,6 +18,8 @@
# along with weboob. If not, see <http://www.gnu.org/licenses/>.
import ssl
import hashlib
from urlparse import urlsplit
from weboob.tools.browser import BaseBrowser, BrowserIncorrectPassword
@ -43,6 +45,11 @@ class CaisseEpargne(BaseBrowser):
self.nuser = nuser
BaseBrowser.__init__(self, *args, **kwargs)
def _certhash(self, domain, port=443):
# XXX overload the BaseBrowser method to force use of TLSv1.
certs = ssl.get_server_certificate((domain, port), ssl_version=ssl.PROTOCOL_TLSv1)
return hashlib.sha256(certs).hexdigest()
def is_logged(self):
return self.page is not None and not self.is_on_page((LoginPage,ErrorPage))