Russian Qt Forum

Qt => Вопросы новичков => Тема начата: saim от Ноябрь 13, 2015, 00:59



Название: Помогите!! SSL certificate
Отправлено: saim от Ноябрь 13, 2015, 00:59
При отправке не мeйл возникает слледующая ошибка:
"the root certificate of the certificate chain is self-signed and untrusted"
Qt 5.4.2
Установлений OpenSSL-Win32 1.0.2d
Кто стыкался помогите!


Название: Re: Помогите!! SSL certificate
Отправлено: Alex Custov от Ноябрь 13, 2015, 01:26
Отлавливай сигнал sslErrors() и игнорируй эту ошибку в слоте.


Название: Re: Помогите!! SSL certificate
Отправлено: saim от Ноябрь 13, 2015, 17:41
Спасибо за помощь!!
Но почему ошибка такого рода начала появляться, раньше софт работал норм ?


Название: Re: Помогите!! SSL certificate
Отправлено: saim от Ноябрь 16, 2015, 14:15
Еще раз здравствуйте форумчане !!!
Кто может помочь с вопросом проверки существование имейла!!?
Нужно проверять сущейсвует ли введенный пользователем имейл..
Может есть какие то сервисы к тоторым к торорым можно "достучаться" через АРI ?
(не используя SMTP)
Доп. инфа: мейлы могут быть разные (*.gmail, *.yandex, *.rambler и т.д.)

Спасибо ОГРОМНОЕ!!


Название: Re: Помогите!! SSL certificate
Отправлено: saim от Ноябрь 20, 2015, 23:54
Решено!
Код:
//..
    socket = new QSslSocket(this);
    QSslConfiguration ssConf = QSslConfiguration::defaultConfiguration();
    QList<QSslCertificate> ca_list = ssConf.caCertificates();
    QList<QSslCertificate> ca_new = QSslCertificate::fromData("CaCertificates");
    ca_list += ca_new;
    ssConf.setCaCertificates(ca_list);
    ssConf.setProtocol(QSsl::AnyProtocol);
    QSslConfiguration::setDefaultConfiguration(ssConf);

    connect (socket, SIGNAL(sslErrors(const QList<QSslError>&)), this, SLOT(ssErrorHandler(const QList<QSslError>&)));
//..
void BlSmtpSsl::ssErrorHandler(const QList<QSslError> & errList)
{
    qDebug() << "----sslErrorHandler: ";
    foreach (QSslError err, errList)
        qDebug() << "ssl error: " << err << " | " << errList;
    this->socket->ignoreSslErrors(errList);
}