Модераторы: feodorv
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Где взять сертификат? cURL + SMTP + SSL 
:(
    Опции темы
neosapient
Дата 16.11.2014, 16:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 672
Регистрация: 16.8.2006

Репутация: нет
Всего: 4



Здравствуйте.

Тестирую http://curl.haxx.se/libcurl/c/smtp-ssl.html

Собрал cURL с поддержкой OpenSSL. Проверил, что всё работает.
Код

 curl_version_info_data *vinfo = curl_version_info( CURLVERSION_NOW );
 if( vinfo->features & CURL_VERSION_SSL )
 {
     printf("LIBCURL: SSL Support Enabled\n");
 } 

Далее, пробую подключиться на почту
Цитата

* Rebuilt URL to: smtps://smtp.mail.ru:465
* Hostname was NOT found in DNS cache
*   Trying 94.100.180.160...
* Connected to smtp.mail.ru (94.100.180.160) port 465(#0)
* SSL certificate problem: unable to get local issuer certificate
* Closing connection 0

Вопрос, где взять сертификат? 
Делать самому? Как?
Или сертификат мне должен выдать хост, к которому подключаюсь?

Затем, куда этот сертификат положить, чтобы его увидела программа? Либо, как указать программе, откуда брать сертификат?
PM MAIL   Вверх
neosapient
Дата 18.11.2014, 02:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 672
Регистрация: 16.8.2006

Репутация: нет
Всего: 4



Снял макроопределения с опций CURLOPT_SSL_VERIFYPEER и CURLOPT_SSL_VERIFYHOST, и письмо доставилось
Код

//#ifdef SKIP_PEER_VERIFICATION
    curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);
//#endif
//#ifdef SKIP_HOSTNAME_VERFICATION
    curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L);
//#endif

Вопрос про то, как получить сертификат и как им пользоваться остается открытым. ?
Появился второй вопрос, почему письмо доставилось без проверок сертификата?
PM MAIL   Вверх
feodorv
Дата 18.11.2014, 14:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2214
Регистрация: 30.7.2011

Репутация: 10
Всего: 45



Ставьте VERBOSE, смотрите на строчку с заголовком CApath:. Ибо Built-in system specific. Выясняйте, получен ли уже сертификат от mail.ru. Сертификат может не проходить проверки, поэтому возникает ошибка SSL certificate problem: unable to get local issuer certificate.

Это сообщение отредактировал(а) feodorv - 18.11.2014, 14:34


--------------------
Напильник, велосипед, грабли и костыли - основные инструменты программиста...
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Сети | Следующая тема »


 




[ Время генерации скрипта: 0.1119 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.