. function tls_fallback_scsv($host,$port) { $result = []; $protocols = ssl_conn_protocols($host, $port); if (count(array_filter($protocols)) > 1) { $result['protocol_count'] = count(array_filter($protocols)); $fallback_test = shell_exec("echo | timeout 2 openssl s_client -connect " . escapeshellcmd($host) . ":" . escapeshellcmd($port) . " -fallback_scsv -no_tls1_2 2>&1 >/dev/null"); // echo "
"; // var_dump($fallback_test); // echo ""; if ( stripos($fallback_test, "alert inappropriate fallback") !== false ) { $result['tls_fallback_scsv_support'] = 1; } } else { $result['protocol_count'] = 1; } return $result; } ?>