From a8c7d2a5fcea1ceb9938cb65c1f91cc5fa480248 Mon Sep 17 00:00:00 2001 From: tbrehm <t.brehm@ispconfig.org> Date: Wed, 04 Jan 2012 09:40:58 -0500 Subject: [PATCH] - Improved http monitor function. --- server/lib/classes/monitor_tools.inc.php | 18 +++++++++++++++--- 1 files changed, 15 insertions(+), 3 deletions(-) diff --git a/server/lib/classes/monitor_tools.inc.php b/server/lib/classes/monitor_tools.inc.php index 0f0a172..c67cfef 100644 --- a/server/lib/classes/monitor_tools.inc.php +++ b/server/lib/classes/monitor_tools.inc.php @@ -151,7 +151,7 @@ //** Email Quota public function monitorEmailQuota() { - global $conf; + global $conf, $app; //* Initialize data array $data = array(); @@ -175,7 +175,13 @@ $quotafile = file($filename); $data[$email]['used'] = trim($quotafile['1']); unset($quotafile); - } + } else { + exec('du -s '.escapeshellcmd('/var/vmail/'.$email_parts[1].'/'.$email_parts[0]),$out); + $parts = explode(' ',$out[0]); + $data[$email]['used'] = intval($parts[0])*1024; + unset($out); + unset($parts); + } } } @@ -1713,7 +1719,13 @@ * So we can do a deepter test and try to get data over this connection. * (if apache hangs, we get a connection but a timeout by trying to GET the data!) */ - fwrite($fp, "GET / HTTP/1.0\r\n\r\n"); + // fwrite($fp, "GET / HTTP/1.0\r\n\r\n"); + $out = "GET / HTTP/1.1\r\n"; + $out .= "Host: localhost\r\n"; + $out .= "User-Agent: Mozilla/5.0 (ISPConfig monitor)\r\n"; + $out .= "Accept: application/xml,application/xhtml+xml,text/html\r\n"; + $out .= "Connection: Close\r\n\r\n"; + fwrite($fp, $out); stream_set_timeout($fp, 5); // Timeout after 5 seconds $res = fread($fp, 10); // try to get 10 bytes (enough to test!) $info = stream_get_meta_data($fp); -- Gitblit v1.9.1