Создал SSL-сервер SslServer:: public QTcpServer
void SslServer::incomingConnection(int handle)
{
socket = new QSslSocket(this);
if (socket->setSocketDescriptor(handle))
{
qDebug()<<"yes\t"<<socket;
connect(socket, SIGNAL(encrypted()), this, SLOT(on_encrypted()));
connect(socket, SIGNAL(readyRead()), this, SLOT(on_dataRead()));
connect(socket, SIGNAL(sslErrors(QList<QSslError>)), this, SLOT(on_sslErrors(QList<QSslError>)));
connect(socket,SIGNAL(disconnected()),this,SLOT(slotTCPServerDisconnected()));
connect(socket,SIGNAL(readyRead()),this,SLOT(slotTCPServerReadyRead()));
socket->setPrivateKey("/opt/terminus/share/cert/server.key", QSsl::Rsa);
socket->setLocalCertificate("/opt/terminus/share/cert/server.crt");
socket->startServerEncryption();
emit message("New connection...\r\n");
foreach(QSslError err, socket->sslErrors())
{
emit message(QString(err.errorString()).append("\r\n"));
}
}
else delete socket;
}
при попытке подключиться
socket = new QSslSocket();
connect(socket, SIGNAL(connected()), SLOT(waitForGreeting()));
connect(socket, SIGNAL(readyRead()), SLOT(readResponse()));
connect(socket, SIGNAL(connectionClosed()), SLOT(quit()));
connect(socket, SIGNAL(delayedCloseFinished()),SLOT(quit()));
socket->setPrivateKey("/opt/terminus/share/cert/server.key", QSsl::Rsa);
socket->setLocalCertificate("/opt/terminus/share/cert/server.crt");
socket->connectToHost("127.0.0.1", 3428);
if (!socket->waitForEncrypted()) {
qDebug() << socket->errorString();
}
else
{
socket->write("GET / HTTP/1.0\r\n\r\n");
while (socket->waitForReadyRead())
qDebug() << socket->readAll().data();
}
выдается
"Unknown error"
На сервере никаких ошибок не выводится. Что я делаю неправильно?