Summary(pl.UTF-8): Cacti - frontend w PHP do rrdtoola
Name: cacti
Version: 0.8.7i
-Release: 1
+Release: 2
License: GPL v2
Group: Applications/WWW
Source0: http://www.cacti.net/downloads/%{name}-%{version}-PIA-%{pia_ver}.tar.gz
Source4: %{name}-lighttpd.conf
Source5: %{name}-rrdpath.sql
Source7: %{name}.logrotate
+Patch0: mysql-socket.patch
Patch1: %{name}-config.patch
Patch2: %{name}-adodb.patch
Patch3: %{name}-ioerror.patch
# official patches
%patch10 -p1
+%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
--- /dev/null
+--- cacti-0.8.7i-PIA-3.1/lib/database.php~ 2011-12-12 03:56:06.000000000 +0200
++++ cacti-0.8.7i-PIA-3.1/lib/database.php 2012-01-24 11:18:39.563094454 +0200
+@@ -34,6 +34,11 @@
+ function db_connect_real($host, $user, $pass, $db_name, $db_type, $port = "3306", $db_ssl = false, $retries = 20) {
+ global $cnn_id;
+
++ // convert hostname:port to hostname and port
++ if (strchr($host, ':')) {
++ list($host, $port) = explode(':', $host, 2);
++ }
++
+ $i = 0;
+ $dsn = "$db_type://" . rawurlencode($user) . ":" . rawurlencode($pass) . "@" . rawurlencode($host) . "/" . rawurlencode($db_name) . "?persist";
+
+@@ -43,7 +48,10 @@
+ $dsn .= "&clientflags=" . MYSQLI_CLIENT_SSL;
+ }
+
+- if ($port != "3306") {
++ // socket supported for mysqli only, not mysql
++ if ($port && !is_numeric($port) && $db_type == "mysqli") {
++ $dsn .= "&socket=" . $port;
++ } elseif ($port != "3306") {
+ $dsn .= "&port=" . $port;
+ }
+