>>ну и где здесь протокол SSL?
>Вот, объясни мне глупому тогда, почему его там нет, а tcpdump не
>показывает ничего разумного. И кстати, причем тут imap_open
потому как через него идет авторизация, ниже покажу
>function/imap_general.php:
>
> if (($use_imap_tls == true)
>and (check_php_version(4,3)) and (extension_loaded('openssl'))) {
> /* Use
>TLS by prefixing "tls://" to the hostname */
> $imap_server_address =
>'tls://' . $imap_server_address;
> }
>
> $imap_stream = fsockopen ( $imap_server_address, $imap_port, $error_number, $error_string,
>15);
>
>PS Я вовсе не стараюсь что-либо доказать, и не буду. Тем более,
>что твой авторитет не пререкаем. Я просто хочу разобраться и понять.
>
и я тоже, поэтому и спросил и снова полез в sources после длительного
перерыва чтобы посмотреть может что-то изменилось, авторитет тут
конечно же непричем, да и не может он быть непререкаемым.
есть функция php: imap_open - многие webmail'ы написанные на php используют ее для авторизации если выбирается авторизация на базе imap:
//--lavr вместо username/password можем подставить реальные для проверки
$mbox = imap_open ("{localhost:993/imap/ssl/novalidate-cert}", "username", "password");
if ($mbox == false) {
echo "Auth or mbox-open faild<br />\n";
}
else {
echo "Login Ok.<br />\n";
}
И пока я в sources не залез, не увидел что поддерки SSL нет, TLS - есть,
c imap который через stunnel работает тоже будет работать, потому как
stunnel смотри какой запрос, а отвечает чистый imap, остальное зависит
от реализации imap - например полноценная поддержка SSL есть в вашингтонском imap'е (imap-uw), в большинстве других - довески auth
или предлагается использовать sslwrap или stunnel, правда я давно не
смотрел их внимательно, наверняка многое изменилось.
В итоге работу IMAP через Secure Socket Layer Свирелька не поддерживает
и понятно что ни сборка c-client с SSL, ни сборка PHP с imap и openssl
тут не поможет.
Вот реальный пример из webmail с поддержкой imap-ssl:
<?php
if( $currenttest == "Execute IMAP Connection Test" )
{
$mbox = @TWIGMailOpenMailbox( TWIGMailGetFolderString( $config["imap_ser
ver"], $config["imap_port"], "", "INBOX" ), $username, $password, "" );
if( $mbox )
{
echo "Works";
}
else
{
$mbox = @TWIGMailOpenMailbox( TWIGMailGetFolderString( $config["
imap_server"], $config["imap_port"] . "/notls", "", "INBOX" ), $username, $passw
ord, "" );
if( $mbox )
{
echo "Works with /notls option. I recommend you change<
br> \$config[\"imap_port\"]=$config[imap_port]<br>to<br> \
$config[\"imap_port\"]=$config[imap_port]/notls<br>";
}
else
{
echo "Failed";
}
}
}
else
{
echo "Test not run";
}
?>
один в один как я выше написал только значение imap_port здесь берется
из конфигурации: imap_port=993/imap/ssl/novalidate-cert
ну и как я раньше говорил, это расписано в man'е функции imap_open,
в Свирельке я такого не нашел, хотя если посидеть немножко, то думаю
вставить сие не будет проблемой. Причем, мне кажется что реализовать сие
как два пальца, не знаю почему разработчики столько времени гемороятся,
самому мне пока лень.
Не знаю, понятно я расписал или нет...