QSslSocket STARTTSL
Verfasst: 1. September 2011 03:19
Hallo, ich krieg den Fehler "The host name did not match any of the valid hosts for this certificate"
Wieso klappt das nicht? Der Server unterstützt starttsl.
Hier wird das definiert: http://tools.ietf.org/html/rfc2595
Dort steht das der TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA Cipher verfügbar sein muss. Aber unter supportedCiphers () hab ich ihn bei mir nicht gesehen.
Liegt das dran? Warum ist der nicht da, STARTTSL wird sogar in der qt doku bei startClientEncryption erwähnt, dann werden die doch den Cipher eingebaut haben.
Code: Alles auswählen
QSslSocket socket;
socket.connectToHost("pop.web.de", 110);
socket.waitForReadyRead();
qDebug() << socket.readAll(); // Server greeting unwichtig
socket.write("STLS\r\n"); // start tsl befehl
socket.waitForBytesWritten();
socket.waitForReadyRead();
qDebug() << socket.readAll(); // OK TSL sollte nun beginnen
socket.setProtocol(QSsl::TlsV1);
socket.startClientEncryption();
if(!socket.waitForEncrypted(3000)){
qDebug() << socket.errorString();
}
Hier wird das definiert: http://tools.ietf.org/html/rfc2595
Dort steht das der TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA Cipher verfügbar sein muss. Aber unter supportedCiphers () hab ich ihn bei mir nicht gesehen.
Liegt das dran? Warum ist der nicht da, STARTTSL wird sogar in der qt doku bei startClientEncryption erwähnt, dann werden die doch den Cipher eingebaut haben.