<?php
/**
- * This gathers system specification details for use with bug reporting
+ * This script gathers system specification details for use with bug reporting
* and anyone else who needs it.
*
- * Copyright (c) 1999-2005 The SquirrelMail Project Team
- * Licensed under the GNU GPL. For full terms see the file COPYING.
- *
- * This is a standard SquirrelMail 1.2 API for plugins.
- *
+ * @copyright © 1999-2007 The SquirrelMail Project Team
+ * @license http://opensource.org/licenses/gpl-license.php GNU Public License
* @version $Id$
* @package plugins
* @subpackage bug_report
*/
+/**
+ * do not allow to call this file directly
+ */
+if ((isset($_SERVER['SCRIPT_FILENAME']) && $_SERVER['SCRIPT_FILENAME'] == __FILE__) ||
+ (isset($HTTP_SERVER_SERVER['SCRIPT_FILENAME']) && $HTTP_SERVER_SERVER['SCRIPT_FILENAME'] == __FILE__) ) {
+ header("Location: ../../src/login.php");
+ die();
+}
+
/**
* load required libraries
*/
-include_once(SM_PATH . 'include/validate.php');
-global $body;
+include_once(SM_PATH . 'functions/imap_general.php');
+
/**
if ($key != 0 || $value != '') {
$str .= " * $key = $value";
// add plugin version
- if (function_exists($value . '_version')) {
+ $version_found = FALSE;
+ if (function_exists($value . '_info')) {
+ $info = call_user_func($value . '_info');
+ if (!empty($info['version'])) {
+ $str .= ' ' . $info['version'];
+ $version_found = TRUE;
+ }
+ }
+ if (!$version_found && function_exists($value . '_version')) {
$str.= ' ' . call_user_func($value . '_version');
}
$str.="\n";
&& ! in_array('compatibility',$plugins)) {
$str.= ' * compatibility';
include_once(SM_PATH . 'plugins/compatibility/setup.php');
- if (function_exists('compatibility_version')) {
- $str.= ' ' . call_user_func('compatibility_version');
+ $version_found = FALSE;
+ if (function_exists('compatibility_info')) {
+ $info = compatibility_info();
+ if (!empty($info['version'])) {
+ $str .= ' ' . $info['version'];
+ $version_found = TRUE;
+ }
+ }
+ if (!$version_found && function_exists('compatibility_version')) {
+ $str.= ' ' . compatibility_version();
}
$str.="\n";
}
$body = "\nMy IMAP server information:\n" .
" Server type: $imap_server_type\n";
-$imap_stream = fsockopen ($imapServerAddress, $imapPort, $error_number, $error_string);
-$server_info = fgets ($imap_stream, 1024);
+
+$imapServerAddress = sqimap_get_user_server($imapServerAddress, $username);
+$imap_stream = sqimap_create_stream($imapServerAddress, $imapPort, $use_imap_tls);
if ($imap_stream) {
- // SUPRESS HOST NAME
- $list = explode(' ', $server_info);
- $list[2] = '[HIDDEN]';
- $server_info = implode(' ', $list);
- $body .= " Server info: $server_info";
- fputs ($imap_stream, "a001 CAPABILITY\r\n");
- $read = fgets($imap_stream, 1024);
- $list = explode(' ', $read);
- array_shift($list);
- array_shift($list);
- $read = implode(' ', $list);
- $body .= " Capabilities: $read";
- fputs ($imap_stream, "a002 LOGOUT\r\n");
- fclose($imap_stream);
+ $body.= ' Capabilities: ';
+ if ($imap_capabilities = sqimap_capability($imap_stream)) {
+ foreach ($imap_capabilities as $capability => $value) {
+ $body.= $capability . (is_bool($value) ? ' ' : "=$value ");
+ }
+ }
+ $body.="\n";
+ sqimap_logout($imap_stream);
} else {
$body .= " Unable to connect to IMAP server to get information.\n";
$warning = 1;
}
$body = htmlspecialchars($body_top . $body);
-
-?>
\ No newline at end of file