(PHP 5 >= 5.1.0, PHP 7)
stream_socket_enable_crypto — Bağlı bir soket üzerinde şifrelemeyi açıp kapatır
$akım
, bool $etkin
[, int $şifre_türü
[, resource $oturum_akımı
]] ) : mixedAkım üzerinde şifreleme yapılıp yapılmayacağını belirler.
Şifreleme ile ilgili ayarlar bir kere etkin olunca,
etkin
değiştirgesine TRUE
veya FALSE
belirterek
devingen olarak şifrelemenin yapılıp yapılmayacağını belirleyebilirsiniz.
akım
Akım özkaynağı.
etkin
TRUE
belirtilirse akım üzerinde şifreleme yapılır, FALSE
belirtilirse yapılmaz.
şifre_türü
Akım üzerinde etkin kılınacak şifreleme yöntemini belirler. Geçerli yöntemler:
STREAM_CRYPTO_METHOD_SSLv2_CLIENT
STREAM_CRYPTO_METHOD_SSLv3_CLIENT
STREAM_CRYPTO_METHOD_SSLv23_CLIENT
STREAM_CRYPTO_METHOD_TLS_CLIENT
STREAM_CRYPTO_METHOD_SSLv2_SERVER
STREAM_CRYPTO_METHOD_SSLv3_SERVER
STREAM_CRYPTO_METHOD_SSLv23_SERVER
STREAM_CRYPTO_METHOD_TLS_SERVER
oturum_akımı
oturum_akımı
akımındaki ayarlarla akımı tohumlar.
Başarı durumunda TRUE
, uzlaşılamazsa FALSE
, yeterli veri yoksa ve
tekrar denemeniz gerekiyorsa 0 döner (sadece
engellenmeyen soketlerde).
Örnek 1 - stream_socket_enable_crypto() örneği
<?php
$fp = stream_socket_client("tcp://myproto.example.com:31337", $errno, $errstr, 30);
if (!$fp) {
die("Bağlantı kurulamadı: $errstr ($errno)");
}
/* Oturum açma aşaması için şifrelemeyi etkin kılalım */
stream_socket_enable_crypto($fp, true, STREAM_CRYPTO_METHOD_SSLv23_CLIENT);
fwrite($fp, "USER god\r\n");
fwrite($fp, "PASS secret\r\n");
/* Artık şifrelemeye ihtiyaç kalmadı */
stream_socket_enable_crypto($fp, false);
while ($motd = fgets($fp)) {
echo $motd;
}
fclose($fp);
?>
Yukarıdaki örnek şuna benzer bir çıktı üretir: