7 Module implementing a QNetworkAccessManager subclass. |
7 Module implementing a QNetworkAccessManager subclass. |
8 """ |
8 """ |
9 |
9 |
10 import os |
10 import os |
11 |
11 |
12 from PyQt4.QtCore import pyqtSignal, QByteArray |
12 from PyQt4.QtCore import pyqtSignal, QByteArray, Qt |
13 from PyQt4.QtGui import QDialog |
13 from PyQt4.QtGui import QDialog |
14 from PyQt4.QtNetwork import QNetworkAccessManager, QNetworkRequest, QNetworkReply |
14 from PyQt4.QtNetwork import QNetworkAccessManager, QNetworkRequest, QNetworkReply |
15 try: |
15 try: |
16 from PyQt4.QtNetwork import QSslCertificate, QSslConfiguration, QSslSocket, \ |
16 from PyQt4.QtNetwork import QSslCertificate, QSslConfiguration, QSslSocket, \ |
17 QSslError, QSsl |
17 QSslError, QSsl |
243 certinfos = [] |
243 certinfos = [] |
244 for cert in caNew: |
244 for cert in caNew: |
245 certinfos.append(self.__certToString(cert)) |
245 certinfos.append(self.__certToString(cert)) |
246 ret = E5MessageBox.yesNo(None, |
246 ret = E5MessageBox.yesNo(None, |
247 self.trUtf8("Certificates"), |
247 self.trUtf8("Certificates"), |
248 self.trUtf8("""<p>Certificates:<br/>{0}<br/>""" |
248 self.trUtf8("""Certificates:\n\n{0}\n\n""" |
249 """Do you want to accept all these certificates?</p>""")\ |
249 """Do you want to accept all these certificates?""")\ |
250 .format("".join(certinfos))) |
250 .format("\n\n".join(certinfos)), |
|
251 textFormat=Qt.PlainText) |
251 if ret: |
252 if ret: |
252 if server not in caMerge: |
253 if server not in caMerge: |
253 caMerge[server] = [] |
254 caMerge[server] = [] |
254 for cert in caNew: |
255 for cert in caNew: |
255 caMerge[server].append(cert) |
256 caMerge[server].append(cert) |
285 Private method to convert a certificate to a formatted string. |
286 Private method to convert a certificate to a formatted string. |
286 |
287 |
287 @param cert certificate to convert (QSslCertificate) |
288 @param cert certificate to convert (QSslCertificate) |
288 @return formatted string (string) |
289 @return formatted string (string) |
289 """ |
290 """ |
290 result = "<p>" |
291 result = "" |
291 |
292 |
292 result += self.trUtf8("Name: {0}")\ |
293 result += self.trUtf8("Name: {0}")\ |
293 .format(Utilities.decodeString( |
294 .format(Utilities.decodeString( |
294 cert.subjectInfo(QSslCertificate.CommonName))) |
295 cert.subjectInfo(QSslCertificate.CommonName))) |
295 |
296 |
296 result += self.trUtf8("<br/>Organization: {0}")\ |
297 result += self.trUtf8("\nOrganization: {0}")\ |
297 .format(Utilities.decodeString( |
298 .format(Utilities.decodeString( |
298 cert.subjectInfo(QSslCertificate.Organization))) |
299 cert.subjectInfo(QSslCertificate.Organization))) |
299 |
300 |
300 result += self.trUtf8("<br/>Issuer: {0}")\ |
301 result += self.trUtf8("\nIssuer: {0}")\ |
301 .format(Utilities.decodeString( |
302 .format(Utilities.decodeString( |
302 cert.issuerInfo(QSslCertificate.CommonName))) |
303 cert.issuerInfo(QSslCertificate.CommonName))) |
303 |
304 |
304 result += self.trUtf8("<br/>Not valid before: {0}<br/>Valid Until: {1}")\ |
305 result += self.trUtf8("\nNot valid before: {0}\nValid Until: {1}")\ |
305 .format(cert.effectiveDate().toString("yyyy-MM-dd"), |
306 .format(cert.effectiveDate().toString("yyyy-MM-dd"), |
306 cert.expiryDate().toString("yyyy-MM-dd")) |
307 cert.expiryDate().toString("yyyy-MM-dd")) |
307 |
|
308 result += "</p>" |
|
309 |
308 |
310 return result |
309 return result |
311 |
310 |
312 def __getSystemCaCertificates(self): |
311 def __getSystemCaCertificates(self): |
313 """ |
312 """ |