Added official patches from the cacti site
This commit is contained in:
parent
b98841482b
commit
dd3b5d9b20
15
cacti.spec
15
cacti.spec
@ -1,6 +1,6 @@
|
|||||||
Name: cacti
|
Name: cacti
|
||||||
Version: 0.8.6j
|
Version: 0.8.6j
|
||||||
Release: 8%{?dist}
|
Release: 9%{?dist}
|
||||||
Summary: An rrd based graphing tool
|
Summary: An rrd based graphing tool
|
||||||
|
|
||||||
Group: Applications/System
|
Group: Applications/System
|
||||||
@ -13,6 +13,11 @@ Source3: cacti.README.Fedora
|
|||||||
|
|
||||||
Patch1: cacti-0.8.6h-dbcfg.patch
|
Patch1: cacti-0.8.6h-dbcfg.patch
|
||||||
Patch2: CVE-2007-3112.patch
|
Patch2: CVE-2007-3112.patch
|
||||||
|
Patch3: ping_php_version4_snmpgetnext.patch
|
||||||
|
Patch4: tree_console_missing_hosts.patch
|
||||||
|
Patch5: thumbnail_graphs_not_working.patch
|
||||||
|
Patch6: graph_debug_lockup_fix.patch
|
||||||
|
Patch7: snmpwalk_fix.patch
|
||||||
|
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||||
|
|
||||||
@ -34,6 +39,11 @@ used to creating traffic graphs with MRTG.
|
|||||||
%setup -q
|
%setup -q
|
||||||
%patch1 -p0
|
%patch1 -p0
|
||||||
%patch2 -p3
|
%patch2 -p3
|
||||||
|
%patch3 -p1
|
||||||
|
%patch4 -p1
|
||||||
|
%patch5 -p1
|
||||||
|
%patch6 -p1
|
||||||
|
%patch7 -p1
|
||||||
|
|
||||||
echo "#*/5 * * * * cacti %{_bindir}/php %{_datadir}/%{name}/poller.php > /dev/null 2>&1" >cacti.cron
|
echo "#*/5 * * * * cacti %{_bindir}/php %{_datadir}/%{name}/poller.php > /dev/null 2>&1" >cacti.cron
|
||||||
|
|
||||||
@ -105,6 +115,9 @@ fi
|
|||||||
%attr(0644,root,root) %{_localstatedir}/lib/%{name}/lib
|
%attr(0644,root,root) %{_localstatedir}/lib/%{name}/lib
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri Sep 21 2007 Mike McGrath <mmcgrath@redhat.com> - 0.8.6j-9
|
||||||
|
- Added rest of official patches
|
||||||
|
|
||||||
* Fri Sep 14 2007 Mike McGrath <mmcgrath@redhat.com> - 0.8.6j-8
|
* Fri Sep 14 2007 Mike McGrath <mmcgrath@redhat.com> - 0.8.6j-8
|
||||||
- Fix for CVE-2007-3112 bz#243592
|
- Fix for CVE-2007-3112 bz#243592
|
||||||
|
|
||||||
|
@ -1,137 +0,0 @@
|
|||||||
diff -ruBbd cacti-0.8.6i/cmd.php cacti-0.8.6i-patch/cmd.php
|
|
||||||
--- cacti-0.8.6i/cmd.php 2006-10-09 00:06:00.000000000 -0400
|
|
||||||
+++ cacti-0.8.6i-patch/cmd.php 2007-01-01 12:27:15.328125000 -0500
|
|
||||||
@@ -26,7 +26,7 @@
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* do NOT run this script through a web browser */
|
|
||||||
-if (!isset($_SERVER["argv"][0])) {
|
|
||||||
+if (!isset($_SERVER["argv"][0]) || isset($_SERVER['REQUEST_METHOD']) || isset($_SERVER['REMOTE_ADDR'])) {
|
|
||||||
die("<br><strong>This script is only meant to run at the command line.</strong>");
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -70,6 +71,10 @@
|
|
||||||
$print_data_to_stdout = false;
|
|
||||||
if ($_SERVER["argc"] == "3") {
|
|
||||||
if ($_SERVER["argv"][1] <= $_SERVER["argv"][2]) {
|
|
||||||
+ /* address potential exploits */
|
|
||||||
+ input_validate_input_number($_SERVER["argv"][1]);
|
|
||||||
+ input_validate_input_number($_SERVER["argv"][2]);
|
|
||||||
+
|
|
||||||
$hosts = db_fetch_assoc("select * from host where (disabled = '' and " .
|
|
||||||
"id >= " .
|
|
||||||
$_SERVER["argv"][1] .
|
|
||||||
diff -ruBbd cacti-0.8.6i/copy_cacti_user.php cacti-0.8.6i-patch/copy_cacti_user.php
|
|
||||||
--- cacti-0.8.6i/copy_cacti_user.php 2006-10-09 00:06:00.000000000 -0400
|
|
||||||
+++ cacti-0.8.6i-patch/copy_cacti_user.php 2007-01-01 12:27:15.312500000 -0500
|
|
||||||
@@ -25,9 +25,10 @@
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* do NOT run this script through a web browser */
|
|
||||||
-if (! isset($_SERVER["argv"][0])) {
|
|
||||||
- die("This script is only meant to run at the command line.\n");
|
|
||||||
+if (!isset($_SERVER["argv"][0]) || isset($_SERVER['REQUEST_METHOD']) || isset($_SERVER['REMOTE_ADDR'])) {
|
|
||||||
+ die("<br><strong>This script is only meant to run at the command line.</strong>");
|
|
||||||
}
|
|
||||||
+
|
|
||||||
if (empty($_SERVER["argv"][2])) {
|
|
||||||
die("\nSyntax:\n php copy_cacti_user.php <template user> <new user>\n\n");
|
|
||||||
}
|
|
||||||
diff -ruBbd cacti-0.8.6i/include/html/inc_timespan_settings.php cacti-0.8.6i-patch/include/html/inc_timespan_settings.php
|
|
||||||
--- cacti-0.8.6i/include/html/inc_timespan_settings.php 2006-10-09 00:05:58.000000000 -0400
|
|
||||||
+++ cacti-0.8.6i-patch/include/html/inc_timespan_settings.php 2007-01-02 11:55:45.953125000 -0500
|
|
||||||
@@ -24,6 +24,20 @@
|
|
||||||
+-------------------------------------------------------------------------+
|
|
||||||
*/
|
|
||||||
|
|
||||||
+/* ================= input validation ================= */
|
|
||||||
+input_validate_input_number(get_request_var_request("predefined_timespan"));
|
|
||||||
+/* ==================================================== */
|
|
||||||
+
|
|
||||||
+/* clean up date1 string */
|
|
||||||
+if (isset($_REQUEST["date1"])) {
|
|
||||||
+ $_REQUEST["date1"] = sanitize_search_string(get_request_var("date1"));
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+/* clean up date2 string */
|
|
||||||
+if (isset($_REQUEST["date2"])) {
|
|
||||||
+ $_REQUEST["date2"] = sanitize_search_string(get_request_var("date2"));
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
/* initialize the timespan array */
|
|
||||||
$timespan = array();
|
|
||||||
|
|
||||||
diff -ruBbd cacti-0.8.6i/poller.php cacti-0.8.6i-patch/poller.php
|
|
||||||
--- cacti-0.8.6i/poller.php 2006-10-09 00:06:00.000000000 -0400
|
|
||||||
+++ cacti-0.8.6i-patch/poller.php 2007-01-01 12:27:15.328125000 -0500
|
|
||||||
@@ -26,7 +26,7 @@
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* do NOT run this script through a web browser */
|
|
||||||
-if (!isset($_SERVER["argv"][0])) {
|
|
||||||
+if (!isset($_SERVER["argv"][0]) || isset($_SERVER['REQUEST_METHOD']) || isset($_SERVER['REMOTE_ADDR'])) {
|
|
||||||
die("<br><strong>This script is only meant to run at the command line.</strong>");
|
|
||||||
}
|
|
||||||
|
|
||||||
diff -ruBbd cacti-0.8.6i/poller_commands.php cacti-0.8.6i-patch/poller_commands.php
|
|
||||||
--- cacti-0.8.6i/poller_commands.php 2006-10-09 00:06:00.000000000 -0400
|
|
||||||
+++ cacti-0.8.6i-patch/poller_commands.php 2007-01-01 12:27:15.328125000 -0500
|
|
||||||
@@ -27,7 +27,7 @@
|
|
||||||
define("MAX_RECACHE_RUNTIME", 296);
|
|
||||||
|
|
||||||
/* do NOT run this script through a web browser */
|
|
||||||
-if (!isset($_SERVER["argv"][0])) {
|
|
||||||
+if (!isset($_SERVER["argv"][0]) || isset($_SERVER['REQUEST_METHOD']) || isset($_SERVER['REMOTE_ADDR'])) {
|
|
||||||
die("<br><strong>This script is only meant to run at the command line.</strong>");
|
|
||||||
}
|
|
||||||
|
|
||||||
diff -ruBbd cacti-0.8.6i/poller_export.php cacti-0.8.6i-patch/poller_export.php
|
|
||||||
--- cacti-0.8.6i/poller_export.php 2006-10-09 00:06:00.000000000 -0400
|
|
||||||
+++ cacti-0.8.6i-patch/poller_export.php 2007-01-01 12:27:15.328125000 -0500
|
|
||||||
@@ -25,7 +25,7 @@
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* do NOT run this script through a web browser */
|
|
||||||
-if (!isset($_SERVER["argv"][0])) {
|
|
||||||
+if (!isset($_SERVER["argv"][0]) || isset($_SERVER['REQUEST_METHOD']) || isset($_SERVER['REMOTE_ADDR'])) {
|
|
||||||
die("<br><strong>This script is only meant to run at the command line.</strong>");
|
|
||||||
}
|
|
||||||
|
|
||||||
diff -ruBbd cacti-0.8.6i/poller_reindex_hosts.php cacti-0.8.6i-patch/poller_reindex_hosts.php
|
|
||||||
--- cacti-0.8.6i/poller_reindex_hosts.php 2006-10-09 00:06:00.000000000 -0400
|
|
||||||
+++ cacti-0.8.6i-patch/poller_reindex_hosts.php 2007-01-01 12:27:15.328125000 -0500
|
|
||||||
@@ -25,7 +25,7 @@
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* do NOT run this script through a web browser */
|
|
||||||
-if (!isset($_SERVER["argv"][0])) {
|
|
||||||
+if (!isset($_SERVER["argv"][0]) || isset($_SERVER['REQUEST_METHOD']) || isset($_SERVER['REMOTE_ADDR'])) {
|
|
||||||
die("<br><strong>This script is only meant to run at the command line.</strong>");
|
|
||||||
}
|
|
||||||
|
|
||||||
diff -ruBbd cacti-0.8.6i/rebuild_poller_cache.php cacti-0.8.6i-patch/rebuild_poller_cache.php
|
|
||||||
--- cacti-0.8.6i/rebuild_poller_cache.php 2006-10-09 00:06:00.000000000 -0400
|
|
||||||
+++ cacti-0.8.6i-patch/rebuild_poller_cache.php 2007-01-01 12:27:15.312500000 -0500
|
|
||||||
@@ -25,7 +25,7 @@
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* do NOT run this script through a web browser */
|
|
||||||
-if (!isset($_SERVER["argv"][0])) {
|
|
||||||
+if (!isset($_SERVER["argv"][0]) || isset($_SERVER['REQUEST_METHOD']) || isset($_SERVER['REMOTE_ADDR'])) {
|
|
||||||
die("<br><strong>This script is only meant to run at the command line.</strong>");
|
|
||||||
}
|
|
||||||
|
|
||||||
diff -ruBbd cacti-0.8.6i/script_server.php cacti-0.8.6i-patch/script_server.php
|
|
||||||
--- cacti-0.8.6i/script_server.php 2006-10-09 00:06:00.000000000 -0400
|
|
||||||
+++ cacti-0.8.6i-patch/script_server.php 2007-01-01 12:27:15.312500000 -0500
|
|
||||||
@@ -26,9 +26,8 @@
|
|
||||||
$no_http_headers = true;
|
|
||||||
|
|
||||||
/* do NOT run this script through a web browser */
|
|
||||||
-if (!isset($_SERVER["argv"][0])) {
|
|
||||||
+if (!isset($_SERVER["argv"][0]) || isset($_SERVER['REQUEST_METHOD']) || isset($_SERVER['REMOTE_ADDR'])) {
|
|
||||||
die("<br><strong>This script is only meant to run at the command line.</strong>");
|
|
||||||
- exit(-1);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* define STDOUT/STDIN file descriptors if not running under CLI */
|
|
@ -1,106 +0,0 @@
|
|||||||
diff -ruBbd cacti-0.8.6i/scripts/query_host_cpu.php cacti-0.8.6i-patch/scripts/query_host_cpu.php
|
|
||||||
--- cacti-0.8.6i/scripts/query_host_cpu.php 2006-10-09 00:06:00.000000000 -0400
|
|
||||||
+++ cacti-0.8.6i-patch/scripts/query_host_cpu.php 2007-01-01 12:50:55.781250000 -0500
|
|
||||||
@@ -1,6 +1,12 @@
|
|
||||||
<?php
|
|
||||||
|
|
||||||
+/* do NOT run this script through a web browser */
|
|
||||||
+if (!isset($_SERVER["argv"][0]) || isset($_SERVER['REQUEST_METHOD']) || isset($_SERVER['REMOTE_ADDR'])) {
|
|
||||||
+ die("<br><strong>This script is only meant to run at the command line.</strong>");
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
$no_http_headers = true;
|
|
||||||
+
|
|
||||||
include(dirname(__FILE__) . "/../include/config.php");
|
|
||||||
include(dirname(__FILE__) . "/../lib/snmp.php");
|
|
||||||
|
|
||||||
diff -ruBbd cacti-0.8.6i/scripts/query_host_partitions.php cacti-0.8.6i-patch/scripts/query_host_partitions.php
|
|
||||||
--- cacti-0.8.6i/scripts/query_host_partitions.php 2006-10-09 00:06:00.000000000 -0400
|
|
||||||
+++ cacti-0.8.6i-patch/scripts/query_host_partitions.php 2007-01-01 12:50:55.781250000 -0500
|
|
||||||
@@ -1,6 +1,12 @@
|
|
||||||
<?php
|
|
||||||
|
|
||||||
+/* do NOT run this script through a web browser */
|
|
||||||
+if (!isset($_SERVER["argv"][0]) || isset($_SERVER['REQUEST_METHOD']) || isset($_SERVER['REMOTE_ADDR'])) {
|
|
||||||
+ die("<br><strong>This script is only meant to run at the command line.</strong>");
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
$no_http_headers = true;
|
|
||||||
+
|
|
||||||
include(dirname(__FILE__) . "/../include/config.php");
|
|
||||||
include(dirname(__FILE__) . "/../lib/snmp.php");
|
|
||||||
|
|
||||||
diff -ruBbd cacti-0.8.6i/scripts/sql.php cacti-0.8.6i-patch/scripts/sql.php
|
|
||||||
--- cacti-0.8.6i/scripts/sql.php 2006-10-09 00:06:00.000000000 -0400
|
|
||||||
+++ cacti-0.8.6i-patch/scripts/sql.php 2007-01-01 12:50:55.781250000 -0500
|
|
||||||
@@ -1,6 +1,12 @@
|
|
||||||
<?
|
|
||||||
|
|
||||||
+/* do NOT run this script through a web browser */
|
|
||||||
+if (!isset($_SERVER["argv"][0]) || isset($_SERVER['REQUEST_METHOD']) || isset($_SERVER['REMOTE_ADDR'])) {
|
|
||||||
+ die("<br><strong>This script is only meant to run at the command line.</strong>");
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
$no_http_headers = true;
|
|
||||||
+
|
|
||||||
include(dirname(__FILE__) . "/../include/config.php");
|
|
||||||
|
|
||||||
if ($database_password == "") {
|
|
||||||
diff -ruBbd cacti-0.8.6i/scripts/ss_fping.php cacti-0.8.6i-patch/scripts/ss_fping.php
|
|
||||||
--- cacti-0.8.6i/scripts/ss_fping.php 2006-10-09 00:06:00.000000000 -0400
|
|
||||||
+++ cacti-0.8.6i-patch/scripts/ss_fping.php 2007-01-01 12:50:55.796875000 -0500
|
|
||||||
@@ -1,7 +1,11 @@
|
|
||||||
<?php
|
|
||||||
#!/usr/bin/php -q
|
|
||||||
|
|
||||||
-//STANDARD SCRIPT SERVER HEADER!!!
|
|
||||||
+/* do NOT run this script through a web browser */
|
|
||||||
+if (!isset($_SERVER["argv"][0]) || isset($_SERVER['REQUEST_METHOD']) || isset($_SERVER['REMOTE_ADDR'])) {
|
|
||||||
+ die("<br><strong>This script is only meant to run at the command line.</strong>");
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
$no_http_headers = true;
|
|
||||||
|
|
||||||
/* display No errors */
|
|
||||||
diff -ruBbd cacti-0.8.6i/scripts/ss_host_cpu.php cacti-0.8.6i-patch/scripts/ss_host_cpu.php
|
|
||||||
--- cacti-0.8.6i/scripts/ss_host_cpu.php 2006-10-09 00:06:00.000000000 -0400
|
|
||||||
+++ cacti-0.8.6i-patch/scripts/ss_host_cpu.php 2007-01-01 12:50:55.796875000 -0500
|
|
||||||
@@ -1,4 +1,10 @@
|
|
||||||
<?php
|
|
||||||
+
|
|
||||||
+/* do NOT run this script through a web browser */
|
|
||||||
+if (!isset($_SERVER["argv"][0]) || isset($_SERVER['REQUEST_METHOD']) || isset($_SERVER['REMOTE_ADDR'])) {
|
|
||||||
+ die("<br><strong>This script is only meant to run at the command line.</strong>");
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
$no_http_headers = true;
|
|
||||||
|
|
||||||
/* display No errors */
|
|
||||||
diff -ruBbd cacti-0.8.6i/scripts/ss_host_disk.php cacti-0.8.6i-patch/scripts/ss_host_disk.php
|
|
||||||
--- cacti-0.8.6i/scripts/ss_host_disk.php 2006-10-09 00:06:00.000000000 -0400
|
|
||||||
+++ cacti-0.8.6i-patch/scripts/ss_host_disk.php 2007-01-01 12:50:55.796875000 -0500
|
|
||||||
@@ -1,4 +1,10 @@
|
|
||||||
<?php
|
|
||||||
+
|
|
||||||
+/* do NOT run this script through a web browser */
|
|
||||||
+if (!isset($_SERVER["argv"][0]) || isset($_SERVER['REQUEST_METHOD']) || isset($_SERVER['REMOTE_ADDR'])) {
|
|
||||||
+ die("<br><strong>This script is only meant to run at the command line.</strong>");
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
$no_http_headers = true;
|
|
||||||
|
|
||||||
/* display No errors */
|
|
||||||
diff -ruBbd cacti-0.8.6i/scripts/ss_sql.php cacti-0.8.6i-patch/scripts/ss_sql.php
|
|
||||||
--- cacti-0.8.6i/scripts/ss_sql.php 2006-10-09 00:06:00.000000000 -0400
|
|
||||||
+++ cacti-0.8.6i-patch/scripts/ss_sql.php 2007-01-01 12:50:55.781250000 -0500
|
|
||||||
@@ -1,5 +1,10 @@
|
|
||||||
<?php
|
|
||||||
|
|
||||||
+/* do NOT run this script through a web browser */
|
|
||||||
+if (!isset($_SERVER["argv"][0]) || isset($_SERVER['REQUEST_METHOD']) || isset($_SERVER['REMOTE_ADDR'])) {
|
|
||||||
+ die("<br><strong>This script is only meant to run at the command line.</strong>");
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
$no_http_headers = true;
|
|
||||||
|
|
||||||
/* display ALL errors */
|
|
@ -1,27 +0,0 @@
|
|||||||
--- cacti-0.8.6h/host.php 2006-01-03 21:08:30.000000000 -0600
|
|
||||||
+++ cacti-fixed/host.php 2006-01-06 22:45:51.630701318 -0600
|
|
||||||
@@ -726,18 +726,18 @@
|
|
||||||
unset($_REQUEST["host_status"]);
|
|
||||||
}
|
|
||||||
|
|
||||||
- if (!empty($_SESSION["sess_host_status"])) {
|
|
||||||
- if ($_SESSION["sess_host_status"] != $_REQUEST["host_status"]) {
|
|
||||||
- $_REQUEST["page"] = 1;
|
|
||||||
- }
|
|
||||||
- }
|
|
||||||
-
|
|
||||||
/* remember these search fields in session vars so we don't have to keep passing them around */
|
|
||||||
load_current_session_value("page", "sess_device_current_page", "1");
|
|
||||||
load_current_session_value("filter", "sess_device_filter", "");
|
|
||||||
load_current_session_value("host_template_id", "sess_device_host_template_id", "-1");
|
|
||||||
load_current_session_value("host_status", "sess_host_status", "-1");
|
|
||||||
|
|
||||||
+ if (!empty($_SESSION["sess_host_status"])) {
|
|
||||||
+ if ($_SESSION["sess_host_status"] != $_REQUEST["host_status"]) {
|
|
||||||
+ $_REQUEST["page"] = 1;
|
|
||||||
+ }
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
html_start_box("<strong>Devices</strong>", "98%", $colors["header"], "3", "center", "host.php?action=edit&host_template_id=" . $_REQUEST["host_template_id"] . "&host_status=" . $_REQUEST["host_status"]);
|
|
||||||
|
|
||||||
include("./include/html/inc_device_filter_table.php");
|
|
@ -1,22 +0,0 @@
|
|||||||
--- cacti-0.8.6h/graph.php 2006-01-03 21:08:30.000000000 -0600
|
|
||||||
+++ cacti-fixed/graph.php 2006-01-06 22:40:29.643671752 -0600
|
|
||||||
@@ -130,13 +130,13 @@
|
|
||||||
$timespan = -($rra["timespan"]);
|
|
||||||
|
|
||||||
/* find the step and how often this graph is updated with new data */
|
|
||||||
- $ds_step = db_fetch_cell("select
|
|
||||||
+ $ds_step = db_fetch_cell("SELECT
|
|
||||||
data_template_data.rrd_step
|
|
||||||
- from (data_template_data,data_template_rrd,graph_templates_item)
|
|
||||||
- where graph_templates_item.task_item_id=data_template_rrd.id
|
|
||||||
- and data_template_rrd.local_data_id=data_template_data.local_data_id
|
|
||||||
- and graph_templates_item.local_graph_id=" . $_GET["local_graph_id"] .
|
|
||||||
- "limit 0,1");
|
|
||||||
+ FROM (data_template_data,data_template_rrd,graph_templates_item)
|
|
||||||
+ WHERE graph_templates_item.task_item_id=data_template_rrd.id
|
|
||||||
+ AND data_template_rrd.local_data_id=data_template_data.local_data_id
|
|
||||||
+ AND graph_templates_item.local_graph_id=" . $_GET["local_graph_id"] .
|
|
||||||
+ " LIMIT 0,1");
|
|
||||||
$ds_step = empty($ds_step) ? 300 : $ds_step;
|
|
||||||
$seconds_between_graph_updates = ($ds_step * $rra["steps"]);
|
|
||||||
|
|
18
graph_debug_lockup_fix.patch
Normal file
18
graph_debug_lockup_fix.patch
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
--- cacti-0.8.6j/lib/rrd.php 2007-01-17 19:23:10.000000000 -0500
|
||||||
|
+++ cacti-0.8.6j-patch/lib/rrd.php 2007-03-01 15:32:18.609375000 -0500
|
||||||
|
@@ -83,6 +83,7 @@
|
||||||
|
if ($config["cacti_server_os"] == "unix") {
|
||||||
|
/* an empty $rrd_struc array means no fp is available */
|
||||||
|
if (sizeof($rrd_struc) == 0) {
|
||||||
|
+ session_write_close();
|
||||||
|
$fp = popen(read_config_option("path_rrdtool") . escape_command(" $command_line"), "r");
|
||||||
|
}else{
|
||||||
|
fwrite(rrd_get_fd($rrd_struc, RRDTOOL_PIPE_CHILD_READ), escape_command(" $command_line") . "\r\n");
|
||||||
|
@@ -91,6 +92,7 @@
|
||||||
|
}elseif ($config["cacti_server_os"] == "win32") {
|
||||||
|
/* an empty $rrd_struc array means no fp is available */
|
||||||
|
if (sizeof($rrd_struc) == 0) {
|
||||||
|
+ session_write_close();
|
||||||
|
$fp = popen(read_config_option("path_rrdtool") . escape_command(" $command_line"), "rb");
|
||||||
|
}else{
|
||||||
|
fwrite(rrd_get_fd($rrd_struc, RRDTOOL_PIPE_CHILD_READ), escape_command(" $command_line") . "\r\n");
|
@ -1,14 +0,0 @@
|
|||||||
--- cacti-0.8.6i/lib/import.php 2006-10-09 00:06:00.000000000 -0400
|
|
||||||
+++ cacti-0.8.6i-patch/lib/import.php 2007-01-02 08:17:09.593750000 -0500
|
|
||||||
@@ -687,6 +687,11 @@
|
|
||||||
while (list($field_name, $field_array) = each($fields_data_input_edit)) {
|
|
||||||
/* make sure this field exists in the xml array first */
|
|
||||||
if (isset($xml_array[$field_name])) {
|
|
||||||
+ /* fix issue with data input method importing and white spaces */
|
|
||||||
+ if ($field_name == "input_string") {
|
|
||||||
+ $xml_array[$field_name] = str_replace("><", "> <", $xml_array[$field_name]);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
$save[$field_name] = addslashes(xml_character_decode($xml_array[$field_name]));
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,52 +0,0 @@
|
|||||||
diff -ruBbd cacti-0.8.6h/cacti.sql yak/cacti.sql
|
|
||||||
--- cacti-0.8.6h/cacti.sql 2006-01-03 22:08:36.000000000 -0500
|
|
||||||
+++ yak/cacti.sql 2006-01-07 16:21:36.406250000 -0500
|
|
||||||
@@ -1846,7 +1846,7 @@
|
|
||||||
avg_time decimal(10,5) default '0.00000',
|
|
||||||
total_polls int(12) unsigned default '0',
|
|
||||||
failed_polls int(12) unsigned default '0',
|
|
||||||
- availability decimal(7,5) NOT NULL default '100.00000',
|
|
||||||
+ availability decimal(8,5) NOT NULL default '100.00000',
|
|
||||||
PRIMARY KEY (id)
|
|
||||||
) TYPE=MyISAM;
|
|
||||||
|
|
||||||
diff -ruBbd cacti-0.8.6h/lib/database.php yak/lib/database.php
|
|
||||||
--- cacti-0.8.6h/lib/database.php 2006-01-03 22:08:36.000000000 -0500
|
|
||||||
+++ yak/lib/database.php 2006-01-07 14:43:36.156250000 -0500
|
|
||||||
@@ -214,14 +214,14 @@
|
|
||||||
@arg $table_name - the name of the table to make the replacement in
|
|
||||||
@arg $key_cols - the primary key(s)
|
|
||||||
@returns - the auto incriment id column (if applicable) */
|
|
||||||
-function sql_save($array_items, $table_name, $key_cols = "id") {
|
|
||||||
+function sql_save($array_items, $table_name, $key_cols = "id", $autoinc = TRUE) {
|
|
||||||
global $cnn_id;
|
|
||||||
|
|
||||||
while (list ($key, $value) = each ($array_items)) {
|
|
||||||
$array_items[$key] = "\"" . sql_sanitize($value) . "\"";
|
|
||||||
}
|
|
||||||
|
|
||||||
- if (!$cnn_id->Replace($table_name, $array_items, $key_cols, false)) { return 0; }
|
|
||||||
+ if (!$cnn_id->Replace($table_name, $array_items, $key_cols, FALSE, $autoinc)) { return 0; }
|
|
||||||
|
|
||||||
/* get the last AUTO_ID and return it */
|
|
||||||
if ($cnn_id->Insert_ID() == "0") {
|
|
||||||
diff -ruBbd cacti-0.8.6h/lib/template.php yak/lib/template.php
|
|
||||||
--- cacti-0.8.6h/lib/template.php 2006-01-03 22:08:36.000000000 -0500
|
|
||||||
+++ yak/lib/template.php 2006-01-07 15:08:31.953125000 -0500
|
|
||||||
@@ -643,10 +642,16 @@
|
|
||||||
|
|
||||||
/* if there are no '|' characters, all of the substitutions were successful */
|
|
||||||
if (!strstr($subs_string, "|query")) {
|
|
||||||
+ if (sizeof(db_fetch_row("show columns from data_template_data like '" . $suggested_value["field_name"] . "'"))) {
|
|
||||||
db_execute("update data_template_data set " . $suggested_value["field_name"] . "='" . addslashes($suggested_value["text"]) . "' where local_data_id=" . $cache_array["local_data_id"]{$data_template["id"]});
|
|
||||||
+ }
|
|
||||||
|
|
||||||
/* once we find a working value, stop */
|
|
||||||
$suggested_values_ds{$data_template["id"]}{$suggested_value["field_name"]} = true;
|
|
||||||
+
|
|
||||||
+ if (sizeof(db_fetch_row("show columns from data_template_rrd like '" . $suggested_value["field_name"] . "'"))) {
|
|
||||||
+ db_execute("update data_template_rrd set " . $suggested_value["field_name"] . "='" . $subs_string . "' where local_data_id=" . $cache_array["local_data_id"]{$data_template["id"]});
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,94 +0,0 @@
|
|||||||
--- cacti-0.8.6h/lib/graph_variables.php 2006-01-03 21:08:30.000000000 -0600
|
|
||||||
+++ cacti-fixed/lib/graph_variables.php 2006-01-06 22:40:31.032460462 -0600
|
|
||||||
@@ -302,27 +302,34 @@
|
|
||||||
|
|
||||||
/* format the output according to args passed to the variable */
|
|
||||||
if ($regexp_match_array[4] == "current") {
|
|
||||||
+ if (! empty($nth_cache{$graph_item["local_data_id"]}{$graph_item["data_source_name"]})) {
|
|
||||||
$nth = $nth_cache{$graph_item["local_data_id"]}{$graph_item["data_source_name"]};
|
|
||||||
$nth = ($regexp_match_array[2] == "bits") ? $nth * 8 : $nth;
|
|
||||||
$nth /= pow(10,intval($regexp_match_array[3]));
|
|
||||||
+ }
|
|
||||||
}elseif ($regexp_match_array[4] == "total") {
|
|
||||||
for ($t=0;($t<count($graph_items));$t++) {
|
|
||||||
if ((ereg("(AREA|STACK|LINE[123])", $graph_item_types{$graph_items[$t]["graph_type_id"]})) && (!empty($graph_items[$t]["data_template_rrd_id"]))) {
|
|
||||||
+ if (! empty($nth_cache{$graph_items[$t]["local_data_id"]}{$graph_items[$t]["data_source_name"]})) {
|
|
||||||
$local_nth = $nth_cache{$graph_items[$t]["local_data_id"]}{$graph_items[$t]["data_source_name"]};
|
|
||||||
$local_nth = ($regexp_match_array[2] == "bits") ? $local_nth * 8 : $local_nth;
|
|
||||||
$local_nth /= pow(10,intval($regexp_match_array[3]));
|
|
||||||
|
|
||||||
$nth += $local_nth;
|
|
||||||
+ }
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}elseif ($regexp_match_array[4] == "max") {
|
|
||||||
+ if (! empty($nth_cache{$graph_item["local_data_id"]}["nth_percentile_maximum"])) {
|
|
||||||
$nth = $nth_cache{$graph_item["local_data_id"]}["nth_percentile_maximum"];
|
|
||||||
$nth = ($regexp_match_array[2] == "bits") ? $nth * 8 : $nth;
|
|
||||||
$nth /= pow(10,intval($regexp_match_array[3]));
|
|
||||||
+ }
|
|
||||||
}elseif ($regexp_match_array[4] == "total_peak") {
|
|
||||||
for ($t=0;($t<count($graph_items));$t++) {
|
|
||||||
if ((ereg("(AREA|STACK|LINE[123])", $graph_item_types{$graph_items[$t]["graph_type_id"]})) && (!empty($graph_items[$t]["data_template_rrd_id"]))) {
|
|
||||||
+ if (! empty($nth_cache{$graph_items[$t]["local_data_id"]}["nth_percentile_maximum"])) {
|
|
||||||
$local_nth = $nth_cache{$graph_items[$t]["local_data_id"]}["nth_percentile_maximum"];
|
|
||||||
$local_nth = ($regexp_match_array[2] == "bits") ? $local_nth * 8 : $local_nth;
|
|
||||||
$local_nth /= pow(10,intval($regexp_match_array[3]));
|
|
||||||
@@ -330,9 +337,11 @@
|
|
||||||
$nth += $local_nth;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
+ }
|
|
||||||
}elseif ($regexp_match_array[4] == "all_max_current") {
|
|
||||||
for ($t=0;($t<count($graph_items));$t++) {
|
|
||||||
if ((ereg("(AREA|STACK|LINE[123])", $graph_item_types{$graph_items[$t]["graph_type_id"]})) && (!empty($graph_items[$t]["data_template_rrd_id"]))) {
|
|
||||||
+ if (! empty($ninety_fifth_cache{$graph_items[$t]["local_data_id"]}{$graph_items[$t]["data_source_name"]})) {
|
|
||||||
$local_nth = $ninety_fifth_cache{$graph_items[$t]["local_data_id"]}{$graph_items[$t]["data_source_name"]};
|
|
||||||
$local_nth = ($regexp_match_array[2] == "bits") ? $local_nth * 8 : $local_nth;
|
|
||||||
$local_nth /= pow(10,intval($regexp_match_array[3]));
|
|
||||||
@@ -342,9 +351,11 @@
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
+ }
|
|
||||||
}elseif ($regexp_match_array[4] == "all_max_peak") {
|
|
||||||
for ($t=0;($t<count($graph_items));$t++) {
|
|
||||||
if ((ereg("(AREA|STACK|LINE[123])", $graph_item_types{$graph_items[$t]["graph_type_id"]})) && (!empty($graph_items[$t]["data_template_rrd_id"]))) {
|
|
||||||
+ if (! empty($nth_cache{$graph_items[$t]["local_data_id"]}["nth_percentile_maximum"])) {
|
|
||||||
$local_nth = $nth_cache{$graph_items[$t]["local_data_id"]}["nth_percentile_maximum"];
|
|
||||||
$local_nth = ($regexp_match_array[2] == "bits") ? $local_nth * 8 : $local_nth;
|
|
||||||
$local_nth /= pow(10,intval($regexp_match_array[3]));
|
|
||||||
@@ -354,28 +365,23 @@
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
+ }
|
|
||||||
}elseif ($regexp_match_array[4] == "aggregate") {
|
|
||||||
- if (empty($nth_cache{0}["nth_percentile_aggregate_total"])) {
|
|
||||||
- $nth = 0;
|
|
||||||
- }else{
|
|
||||||
+ if (! empty($nth_cache{0}["nth_percentile_aggregate_total"])) {
|
|
||||||
$local_nth = $nth_cache{0}["nth_percentile_aggregate_total"];
|
|
||||||
$local_nth = ($regexp_match_array[2] == "bits") ? $local_nth * 8 : $local_nth;
|
|
||||||
$local_nth /= pow(10,intval($regexp_match_array[3]));
|
|
||||||
$nth = $local_nth;
|
|
||||||
}
|
|
||||||
}elseif ($regexp_match_array[4] == "aggregate_max") {
|
|
||||||
- if (empty($nth_cache{0}["nth_percentile_aggregate_max"])) {
|
|
||||||
- $nth = 0;
|
|
||||||
- }else{
|
|
||||||
+ if (! empty($nth_cache{0}["nth_percentile_aggregate_max"])) {
|
|
||||||
$local_nth = $nth_cache{0}["nth_percentile_aggregate_max"];
|
|
||||||
$local_nth = ($regexp_match_array[2] == "bits") ? $local_nth * 8 : $local_nth;
|
|
||||||
$local_nth /= pow(10,intval($regexp_match_array[3]));
|
|
||||||
$nth = $local_nth;
|
|
||||||
}
|
|
||||||
}elseif ($regexp_match_array[4] == "aggregate_sum") {
|
|
||||||
- if (empty($nth_cache{0}["nth_percentile_aggregate_sum"])) {
|
|
||||||
- $nth = 0;
|
|
||||||
- }else{
|
|
||||||
+ if (! empty($nth_cache{0}["nth_percentile_aggregate_sum"])) {
|
|
||||||
$local_nth = $nth_cache{0}["nth_percentile_aggregate_sum"];
|
|
||||||
$local_nth = ($regexp_match_array[2] == "bits") ? $local_nth * 8 : $local_nth;
|
|
||||||
$local_nth /= pow(10,intval($regexp_match_array[3]));
|
|
42
ping_php_version4_snmpgetnext.patch
Normal file
42
ping_php_version4_snmpgetnext.patch
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
--- cacti-0.8.6j/lib/ping.php 2007-01-17 19:23:10.000000000 -0500
|
||||||
|
+++ cacti-0.8.6j-patch/lib/ping.php 2007-01-20 19:45:55.015625000 -0500
|
||||||
|
@@ -281,7 +281,13 @@
|
||||||
|
|
||||||
|
/* poll sysUptime for status */
|
||||||
|
$retry_count = 0;
|
||||||
|
+
|
||||||
|
+ /* getnext does not work in php versions less than 5 */
|
||||||
|
+ if (version_compare("5", phpversion(), "<")) {
|
||||||
|
$oid = ".1";
|
||||||
|
+ }else{
$oid = ".1.3.6.1.2.1.1.3.0";
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
while (1) {
|
||||||
|
if ($retry_count >= $this->retries) {
|
||||||
|
$this->snmp_status = "down";
|
||||||
|
@@ -289,6 +295,8 @@
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
+ /* getnext does not work in php versions less than 5 */
|
||||||
|
+ if (version_compare("5", phpversion(), "<")) {
|
||||||
|
$output = cacti_snmp_getnext($this->host["hostname"],
|
||||||
|
$this->host["snmp_community"],
|
||||||
|
$oid,
|
||||||
|
@@ -298,6 +306,16 @@
|
||||||
|
$this->host["snmp_port"],
|
||||||
|
$this->host["snmp_timeout"],
|
||||||
|
SNMP_CMDPHP);
|
||||||
|
+ }else{
$output = cacti_snmp_get($this->host["hostname"],
|
||||||
|
+ $this->host["snmp_community"],
|
||||||
|
+ $oid,
|
||||||
|
+ $this->host["snmp_version"],
|
||||||
|
+ $this->host["snmp_username"],
|
||||||
|
+ $this->host["snmp_password"],
|
||||||
|
+ $this->host["snmp_port"],
|
||||||
|
+ $this->host["snmp_timeout"],
|
||||||
|
+ SNMP_CMDPHP);
|
||||||
|
+ }
|
||||||
|
|
||||||
|
/* determine total time +- ~10% */
|
||||||
|
$this->time = $this->get_time($this->precision);
|
@ -1,46 +0,0 @@
|
|||||||
diff -ruBbd cacti-0.8.6i/lib/poller.php cacti-0.8.6i-patched/lib/poller.php
|
|
||||||
--- cacti-0.8.6i/lib/poller.php 2006-10-08 23:06:01.000000000 -0400
|
|
||||||
+++ cacti-0.8.6i-patched/lib/poller.php 2006-11-21 23:41:02.000000000 -0500
|
|
||||||
@@ -213,7 +213,7 @@
|
|
||||||
/* process_poller_output - grabs data from the 'poller_output' table and feeds the *completed*
|
|
||||||
results to RRDTool for processing
|
|
||||||
@arg $rrdtool_pipe - the array of pipes containing the file descriptor for rrdtool */
|
|
||||||
-function process_poller_output($rrdtool_pipe) {
|
|
||||||
+function process_poller_output($rrdtool_pipe, $remainder = FALSE) {
|
|
||||||
global $config;
|
|
||||||
|
|
||||||
include_once($config["library_path"] . "/rrd.php");
|
|
||||||
@@ -221,6 +221,12 @@
|
|
||||||
/* let's count the number of rrd files we processed */
|
|
||||||
$rrds_processed = 0;
|
|
||||||
|
|
||||||
+ if ($remainder) {
|
|
||||||
+ $limit = "";
|
|
||||||
+ }else{
|
|
||||||
+ $limit = "LIMIT 10000";
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
/* create/update the rrd files */
|
|
||||||
$results = db_fetch_assoc("select
|
|
||||||
poller_output.output,
|
|
||||||
@@ -231,7 +237,7 @@
|
|
||||||
poller_item.rrd_num
|
|
||||||
from (poller_output,poller_item)
|
|
||||||
where (poller_output.local_data_id=poller_item.local_data_id and poller_output.rrd_name=poller_item.rrd_name)
|
|
||||||
- limit 10000");
|
|
||||||
+ $limit");
|
|
||||||
|
|
||||||
if (sizeof($results) > 0) {
|
|
||||||
/* create an array keyed off of each .rrd file */
|
|
||||||
diff -ruBbd cacti-0.8.6i/poller.php cacti-0.8.6i-patched/poller.php
|
|
||||||
--- cacti-0.8.6i/poller.php 2006-10-08 23:06:01.000000000 -0400
|
|
||||||
+++ cacti-0.8.6i-patched/poller.php 2006-11-12 11:49:05.000000000 -0500
|
|
||||||
@@ -166,7 +166,7 @@
|
|
||||||
$polling_items = db_fetch_assoc("select poller_id,end_time from poller_time where poller_id = 0");
|
|
||||||
|
|
||||||
if (sizeof($polling_items) == $process_file_number) {
|
|
||||||
- $rrds_processed = $rrds_processed + process_poller_output($rrdtool_pipe);
|
|
||||||
+ $rrds_processed = $rrds_processed + process_poller_output($rrdtool_pipe, TRUE);
|
|
||||||
|
|
||||||
/* take time and log performance data */
|
|
||||||
list($micro,$seconds) = split(" ", microtime());
|
|
15
snmpwalk_fix.patch
Normal file
15
snmpwalk_fix.patch
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
diff -ruBbd cacti-0.8.6j/lib/snmp.php cacti-0.8.6j-patched/lib/snmp.php
|
||||||
|
--- cacti-0.8.6j/lib/snmp.php 2007-01-17 19:23:10.000000000 -0500
|
||||||
|
+++ cacti-0.8.6j-patched/lib/snmp.php 2007-05-15 21:26:14.000000000 -0400
|
||||||
|
@@ -221,9 +219,9 @@
|
||||||
|
$temp_array = exec_into_array(read_config_option("path_snmpwalk") . " -v$version -t $timeout -r $retries $hostname:$port $snmp_auth $oid");
|
||||||
|
}else {
|
||||||
|
if (file_exists($path_snmpbulkwalk) && ($version > 1)) {
|
||||||
|
- $temp_array = exec_into_array($path_snmpbulkwalk . " -O n $snmp_auth -v $version -t $timeout -r $retries -Cr50 $hostname:$port $oid");
|
||||||
|
+ $temp_array = exec_into_array($path_snmpbulkwalk . " -O Qn $snmp_auth -v $version -t $timeout -r $retries -Cr50 $hostname:$port $oid");
|
||||||
|
}else{
|
||||||
|
- $temp_array = exec_into_array(read_config_option("path_snmpwalk") . " -O n $snmp_auth -v $version -t $timeout -r $retries $hostname:$port $oid");
|
||||||
|
+ $temp_array = exec_into_array(read_config_option("path_snmpwalk") . " -O Qn $snmp_auth -v $version -t $timeout -r $retries $hostname:$port $oid");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
20
thumbnail_graphs_not_working.patch
Normal file
20
thumbnail_graphs_not_working.patch
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
--- cacti-0.8.6j/lib/rrd.php 2007-01-17 19:23:10.000000000 -0500
|
||||||
|
+++ cacti-0.8.6j-patch/lib/rrd.php 2007-02-01 20:29:59.687500000 -0500
|
||||||
|
@@ -1080,9 +1080,15 @@
|
||||||
|
|
||||||
|
if ($graph_item_types{$graph_item["graph_type_id"]} == "COMMENT") {
|
||||||
|
if (read_config_option("rrdtool_version") == "rrd-1.2.x") {
|
||||||
|
- $txt_graph_items .= $graph_item_types{$graph_item["graph_type_id"]} . ":\"" . str_replace(":", "\:", $graph_variables["text_format"][$graph_item_id]) . $hardreturn[$graph_item_id] . "\" ";
|
||||||
|
+ $comment_string = $graph_item_types{$graph_item["graph_type_id"]} . ":\"" . str_replace(":", "\:", $graph_variables["text_format"][$graph_item_id]) . $hardreturn[$graph_item_id] . "\" ";
|
||||||
|
+ if (trim($comment_string) != "COMMENT:\"\"") {
|
||||||
|
+ $txt_graph_items .= $comment_string;
|
||||||
|
+ }
|
||||||
|
}else {
|
||||||
|
- $txt_graph_items .= $graph_item_types{$graph_item["graph_type_id"]} . ":\"" . $graph_variables["text_format"][$graph_item_id] . $hardreturn[$graph_item_id] . "\" ";
|
||||||
|
+ $comment_string = $graph_item_types{$graph_item["graph_type_id"]} . ":\"" . $graph_variables["text_format"][$graph_item_id] . $hardreturn[$graph_item_id] . "\" ";
|
||||||
|
+ if (trim($comment_string) != "COMMENT:\"\"") {
|
||||||
|
+ $txt_graph_items .= $comment_string;
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
}elseif (($graph_item_types{$graph_item["graph_type_id"]} == "GPRINT") && (!isset($graph_data_array["graph_nolegend"]))) {
|
||||||
|
$graph_variables["text_format"][$graph_item_id] = str_replace(":", "\:", $graph_variables["text_format"][$graph_item_id]); /* escape colons */
|
20
tree_console_missing_hosts.patch
Normal file
20
tree_console_missing_hosts.patch
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
--- cacti-0.8.6j/lib/html_tree.php 2007-01-17 19:23:10.000000000 -0500
|
||||||
|
+++ cacti-0.8.6j-patch/lib/html_tree.php 2007-01-27 15:48:50.390625000 -0500
|
||||||
|
@@ -328,7 +328,7 @@
|
||||||
|
while ($i > 1) {
|
||||||
|
$i--;
|
||||||
|
|
||||||
|
- $parent_tier = substr($tier_string, 0, $i * CHARS_PER_TIER);
|
||||||
|
+ $parent_tier = tree_tier_string(substr($tier_string, 0, $i * CHARS_PER_TIER));
|
||||||
|
$parent_variable = "sess_tree_leaf_expand_" . $leaf["graph_tree_id"] . "_" . $parent_tier;
|
||||||
|
|
||||||
|
$effective = @$_SESSION[$parent_variable];
|
||||||
|
@@ -365,8 +365,6 @@
|
||||||
|
@returns - the string representing the leaf position
|
||||||
|
*/
|
||||||
|
function tree_tier_string($order_key, $chars_per_tier = CHARS_PER_TIER) {
|
||||||
|
- $root_test = str_pad('', $chars_per_tier, '0');
|
||||||
|
-
|
||||||
|
$new_string = preg_replace("/0+$/",'',$order_key);
|
||||||
|
|
||||||
|
return $new_string;
|
Loading…
Reference in New Issue
Block a user