+/** sqimap_create_stream()
+ * @return imap-stream resource identifier
+ * Connects to the IMAP server and returns a resource identifier for use with
+ * the other SquirrelMail IMAP functions. Does NOT login!
+ */
+function sqimap_create_stream($server,$port,$tls=false) {
+ global $username, $use_imap_tls;
+
+ if ($use_imap_tls == true) {
+ if ((check_php_version(4,3)) and (extension_loaded('openssl'))) {
+ /* Use TLS by prefixing "tls://" to the hostname */
+ $server = 'tls://' . $imap_server_address;
+ } else {
+ require_once(SM_PATH . 'functions/display_messages.php');
+ $string = "Unable to connect to IMAP server!<br>TLS is enabled, but this " .
+ "version of PHP does not support TLS sockets, or is missing the openssl " .
+ "extension.<br><br>Please contact your system administrator.";
+ logout_error($string,$color);
+ }
+ }
+
+ $imap_stream = fsockopen($server, $port, $error_number, $error_string, 15);
+
+ /* Do some error correction */
+ if (!$imap_stream) {
+ set_up_language($squirrelmail_language, true);
+ require_once(SM_PATH . 'functions/display_messages.php');
+ $string = sprintf (_("Error connecting to IMAP server: %s.") .
+ "<br>\r\n", $server) .
+ "$error_number : $error_string<br>\r\n";
+ logout_error($string,$color);
+ exit;
+ }
+ $server_info = fgets ($imap_stream, 1024);
+ return $imap_stream;
+}
+