]> git.pld-linux.org Git - packages/cacti.git/commitdiff
- drop obsolete files auto/ti/cacti-0.8.8a-2
authorElan Ruusamäe <glen@delfi.ee>
Tue, 30 Oct 2012 17:40:31 +0000 (19:40 +0200)
committerElan Ruusamäe <glen@delfi.ee>
Tue, 30 Oct 2012 17:40:31 +0000 (19:40 +0200)
16 files changed:
cacti-0.8.7g-sqli-xss.patch [deleted file]
cacti-page_length_graph_view.patch [deleted file]
cli_add_graph.patch [deleted file]
cross_site_fix.patch [deleted file]
data_source_deactivate.patch [deleted file]
fix_icmp_on_windows_iis_servers.patch [deleted file]
graph_list_view.patch [deleted file]
html_output.patch [deleted file]
ldap_group_authenication.patch [deleted file]
ping.patch [deleted file]
poller_interval.patch [deleted file]
script_server_command_line_parse.patch [deleted file]
snmp_invalid_response.patch [deleted file]
sql_injection_template_export.patch [deleted file]
template_duplication.patch [deleted file]
unified_issues.patch [deleted file]

diff --git a/cacti-0.8.7g-sqli-xss.patch b/cacti-0.8.7g-sqli-xss.patch
deleted file mode 100644 (file)
index de8c6a6..0000000
+++ /dev/null
@@ -1,115 +0,0 @@
-diff -ur cacti-0.8.7g.orig/data_input.php cacti-0.8.7g/data_input.php
---- cacti-0.8.7g.orig/data_input.php   2010-07-10 00:33:46.000000000 +0200
-+++ cacti-0.8.7g/data_input.php        2011-04-14 21:10:24.658500117 +0200
-@@ -386,7 +386,7 @@
-       html_end_box();
-       if (!empty($_GET["id"])) {
--              html_start_box("<strong>Input Fields</strong>", "100%", $colors["header"], "3", "center", "data_input.php?action=field_edit&type=in&data_input_id=" . $_GET["id"]);
-+              html_start_box("<strong>Input Fields</strong>", "100%", $colors["header"], "3", "center", "data_input.php?action=field_edit&type=in&data_input_id=" . htmlspecialchars(get_request_var("id")));
-               print "<tr bgcolor='#" . $colors["header_panel"] . "'>";
-                       DrawMatrixHeaderItem("Name",$colors["header_text"],1);
-                       DrawMatrixHeaderItem("Field Order",$colors["header_text"],1);
-diff -ur cacti-0.8.7g.orig/graphs.php cacti-0.8.7g/graphs.php
---- cacti-0.8.7g.orig/graphs.php       2010-07-10 00:33:46.000000000 +0200
-+++ cacti-0.8.7g/graphs.php    2011-04-14 21:13:55.043000147 +0200
-@@ -1118,7 +1118,7 @@
-       </script>
-       <?php
--      html_start_box("<strong>Graph Management</strong>", "100%", $colors["header"], "3", "center", "graphs.php?action=graph_edit&host_id=" . get_request_var_request("host_id"));
-+      html_start_box("<strong>Graph Management</strong>", "100%", $colors["header"], "3", "center", "graphs.php?action=graph_edit&host_id=" . htmlspecialchars(get_request_var_request("host_id")));
-       ?>
-       <tr bgcolor="#<?php print $colors["panel"];?>">
-diff -ur cacti-0.8.7g.orig/graph_templates.php cacti-0.8.7g/graph_templates.php
---- cacti-0.8.7g.orig/graph_templates.php      2010-07-10 00:33:46.000000000 +0200
-+++ cacti-0.8.7g/graph_templates.php   2011-04-14 21:12:45.854000138 +0200
-@@ -302,12 +302,12 @@
-               $header_label = "[edit: " . db_fetch_cell("select name from graph_templates where id=" . $_GET["id"]) . "]";
-       }
--
--      html_start_box("<strong>Graph Template Items</strong> " . htmlspecialchars($header_label), "100%", $colors["header"], "3", "center", "graph_templates_items.php?action=item_edit&graph_template_id=" . $_GET["id"]);
-+      
-+      html_start_box("<strong>Graph Template Items</strong> " . htmlspecialchars($header_label), "100%", $colors["header"], "3", "center", "graph_templates_items.php?action=item_edit&graph_template_id=" . htmlspecialchars(get_request_var("id")));
-       draw_graph_items_list($template_item_list, "graph_templates_items.php", "graph_template_id=" . $_GET["id"], false);
-       html_end_box();
--      html_start_box("<strong>Graph Item Inputs</strong>", "100%", $colors["header"], "3", "center", "graph_templates_inputs.php?action=input_edit&graph_template_id=" . $_GET["id"]);
-+      html_start_box("<strong>Graph Item Inputs</strong>", "100%", $colors["header"], "3", "center", "graph_templates_inputs.php?action=input_edit&graph_template_id=" . htmlspecialchars(get_request_var("id")));
-       print "<tr bgcolor='#" . $colors["header_panel"] . "'>";
-               DrawMatrixHeaderItem("Name",$colors["header_text"],2);
-diff -ur cacti-0.8.7g.orig/host.php cacti-0.8.7g/host.php
---- cacti-0.8.7g.orig/host.php 2010-07-10 00:33:46.000000000 +0200
-+++ cacti-0.8.7g/host.php      2011-04-14 21:07:38.703500166 +0200
-@@ -333,7 +333,7 @@
-       /* add a list of tree names to the actions dropdown */
-       add_tree_names_to_actions_array();
--      html_start_box("<strong>" . $device_actions{$_POST["drp_action"]} . "</strong>", "60%", $colors["header_panel"], "3", "center", "");
-+      html_start_box("<strong>" . $device_actions[get_request_var_post("drp_action")] . "</strong>", "60%", $colors["header_panel"], "3", "center", "");
-       print "<form action='host.php' autocomplete='off' method='post'>\n";
-@@ -1189,7 +1189,7 @@
-       </script>
-       <?php
--      html_start_box("<strong>Devices</strong>", "100%", $colors["header"], "3", "center", "host.php?action=edit&host_template_id=" . get_request_var_request("host_template_id") . "&host_status=" . get_request_var_request("host_status"));
-+      html_start_box("<strong>Devices</strong>", "100%", $colors["header"], "3", "center", "host.php?action=edit&host_template_id=" . htmlspecialchars(get_request_var_request("host_template_id")) . "&host_status=" . htmlspecialchars(get_request_var_request("host_status")));
-       ?>
-       <tr bgcolor="#<?php print $colors["panel"];?>">
-diff -ur cacti-0.8.7g.orig/templates_export.php cacti-0.8.7g/templates_export.php
---- cacti-0.8.7g.orig/templates_export.php     2010-07-10 00:33:46.000000000 +0200
-+++ cacti-0.8.7g/templates_export.php  2011-04-14 21:15:29.790000150 +0200
-@@ -93,7 +93,7 @@
-                               <select name="cbo_graph_id" onChange="window.location=document.form_graph_id.cbo_graph_id.options[document.form_graph_id.cbo_graph_id.selectedIndex].value">
-                                       <?php
-                                       while (list($key, $array) = each($export_types)) {
--                                              print "<option value='templates_export.php?export_type=$key'"; if ($_REQUEST["export_type"] == $key) { print " selected"; } print ">" . $array["name"] . "</option>\n";
-+                                              print "<option value='templates_export.php?export_type=" . htmlspecialchars($key) . "'"; if ($_REQUEST["export_type"] == $key) { print " selected"; } print ">" . $array["name"] . "</option>\n";
-                                       }
-                                       ?>
-                               </select>
-diff -ur cacti-0.8.7g.orig/tree.php cacti-0.8.7g/tree.php
---- cacti-0.8.7g.orig/tree.php 2010-07-10 00:33:46.000000000 +0200
-+++ cacti-0.8.7g/tree.php      2011-04-14 21:18:53.174500150 +0200
-@@ -141,7 +141,7 @@
-       /* ==================================================== */
-       if (!empty($_GET["id"])) {
--              $tree_item = db_fetch_row("select * from graph_tree_items where id=" . $_GET["id"]);
-+              $tree_item = db_fetch_row("select * from graph_tree_items where id=" . get_request_var("id"));
-               if ($tree_item["local_graph_id"] > 0) { $db_type = TREE_ITEM_TYPE_GRAPH; }
-               if ($tree_item["title"] != "") { $db_type = TREE_ITEM_TYPE_HEADER; }
-@@ -156,7 +156,7 @@
-               $current_type = TREE_ITEM_TYPE_HEADER;
-       }
--      $tree_sort_type = db_fetch_cell("select sort_type from graph_tree where id='" . $_GET["tree_id"] . "'");
-+      $tree_sort_type = db_fetch_cell("select sort_type from graph_tree where id='" . get_request_var("tree_id") . "'");
-       print "<form method='post' action='tree.php' name='form_tree'>\n";
-@@ -429,13 +429,13 @@
-       html_end_box();
-       if (!empty($_GET["id"])) {
--              html_start_box("<strong>Tree Items</strong>", "100%", $colors["header"], "3", "center", "tree.php?action=item_edit&tree_id=" . $tree["id"] . "&parent_id=0");
-+              html_start_box("<strong>Tree Items</strong>", "100%", $colors["header"], "3", "center", "tree.php?action=item_edit&tree_id=" . htmlspecialchars($tree["id"]) . "&parent_id=0");
-               ?>
-               <td>
--              <input type='button' onClick='return document.location="tree.php?action=edit&id=<?php print $_GET["id"];?>&subaction=expand_all"' value='Expand All' title='Expand All Trees'>
--              <input type='button' onClick='return document.location="tree.php?action=edit&id=<?php print $_GET["id"];?>&subaction=collapse_all"' value='Collapse All' title='Collapse All Trees'></a>
--              </td>
-+              <input type='button' onClick='return document.location="tree.php?action=edit&id=<?php print htmlspecialchars(get_request_var("id"));?>&subaction=expand_all"' value='Expand All' title='Expand All Trees'>
-+              <input type='button' onClick='return document.location="tree.php?action=edit&id=<?php print htmlspecialchars(get_request_var("id"));?>&subaction=collapse_all"' value='Collapse All' title='Collapse All Trees'></a>            
-+              </td>   
-               <?php
-               print "<tr bgcolor='#" . $colors["header_panel"] . "'>";
diff --git a/cacti-page_length_graph_view.patch b/cacti-page_length_graph_view.patch
deleted file mode 100644 (file)
index 9e6a39c..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -urN cacti-0.8.7d.orig/lib/html.php cacti-0.8.7d/lib/html.php
---- cacti-0.8.7d.orig/lib/html.php     2009-03-09 20:24:47.000000000 +0100
-+++ cacti-0.8.7d/lib/html.php  2009-03-09 20:34:09.000000000 +0100
-@@ -143,7 +143,7 @@
-                                       <table align='center' cellpadding='0'>
-                                               <tr>
-                                                       <td align='center'>
--                                                              <a href='<?php print $config['url_path']; ?>graph.php?action=view&local_graph_id=<?php print $graph["local_graph_id"];?>&rra_id=all'><img class='graphimage' id='graph_<?php print $graph["local_graph_id"] ?>' src='<?php print $config['url_path']; ?>graph_image.php?local_graph_id=<?php print $graph["local_graph_id"];?>&rra_id=0<?php print (($extra_url_args == "") ? "" : "&$extra_url_args");?>' border='0' alt='<?php print $graph["title_cache"];?>'></a>
-+                                                              <div style="min-height: <?php echo (1.6 * read_config_option("export_default_height")) . "px"?>;"><a href='<?php print $config['url_path'];?>graph.php?action=view&local_graph_id=<?php print $graph["local_graph_id"];?>&rra_id=all'><img class='graphimage' id='graph_<?php print $graph["local_graph_id"] ?>' src='<?php print $config['url_path']; ?>graph_image.php?local_graph_id=<?php print $graph["local_graph_id"];?>&rra_id=0<?php print (($extra_url_args == "") ? "" : "&$extra_url_args");?>' border='0' alt='<?php print $graph["title_cache"];?>'></a></div>
-                                                               <?php print (read_graph_config_option("show_graph_title") == "on" ? "<p style='font-size: 10;' align='center'><strong>" . $graph["title_cache"] . "</strong></p>" : "");?>
-                                                       </td>
-                                                       <td valign='top' style='align: left; padding: 3px;' class='noprint'>
diff --git a/cli_add_graph.patch b/cli_add_graph.patch
deleted file mode 100644 (file)
index b82d21a..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
---- ../tags/0.8.7e/cli/add_graphs.php  2009-06-28 12:34:31.000000000 -0400
-+++ 0.8.7/cli/add_graphs.php   2009-08-18 20:04:44.000000000 -0400
-@@ -570,7 +570,7 @@
-       echo "                    3|Fields = Verify all Fields\n";
-       echo "List Options:\n";
-       echo "    --list-hosts\n";
--      echo "    --list-graph-templates [--host_template=[ID]]\n";
-+      echo "    --list-graph-templates [--host-template-id=[ID]]\n";
-       echo "    --list-input-fields --graph-template-id=[ID]\n";
-       echo "    --list-snmp-queries\n";
-       echo "    --list-query-types  --snmp-query-id [ID]\n";
diff --git a/cross_site_fix.patch b/cross_site_fix.patch
deleted file mode 100644 (file)
index ddc9e2e..0000000
+++ /dev/null
@@ -1,175 +0,0 @@
---- cacti-0.8.7e/graph.php     2009-06-28 12:07:11.000000000 -0400
-+++ cacti-0.8.7e-patched/graph.php     2009-11-21 23:10:16.000000000 -0500
-@@ -35,6 +35,8 @@
- /* ================= input validation ================= */
- input_validate_input_regex(get_request_var_request("rra_id"), "^([0-9]+|all)$");
- input_validate_input_number(get_request_var("local_graph_id"));
-+input_validate_input_number(get_request_var("graph_end"));
-+input_validate_input_number(get_request_var("graph_start"));
- input_validate_input_regex(get_request_var_request("view_type"), "^([a-zA-Z0-9]+)$");
- /* ==================================================== */
---- cacti-0.8.7e/include/top_graph_header.php  2009-06-28 12:07:11.000000000 -0400
-+++ cacti-0.8.7e-patched/include/top_graph_header.php  2009-11-21 23:15:27.000000000 -0500
-@@ -58,7 +58,7 @@
-               if ($_SESSION["custom"]) {
-                       print "<meta http-equiv=refresh content='99999'>\r\n";
-               }else{
--                      print "<meta http-equiv=refresh content='" . read_graph_config_option("page_refresh") . "'>\r\n";
-+                      print "<meta http-equiv=refresh content='" . htmlspecialchars(read_graph_config_option("page_refresh"),ENT_QUOTES) . "'>\r\n";
-               }
-       }
-       ?>
-@@ -113,7 +113,7 @@
-       </tr>
-       <tr class="noprint">
-               <td bgcolor="#efefef" colspan="1" height="8" style="background-image: url(images/shadow_gray.gif); background-repeat: repeat-x; border-right: #aaaaaa 1px solid;">
--                      <img src="images/transparent_line.gif" width="<?php print read_graph_config_option("default_dual_pane_width");?>" height="2" border="0"><br>
-+                      <img src="images/transparent_line.gif" width="<?php print htmlspecialchars(read_graph_config_option("default_dual_pane_width"));?>" height="2" border="0"><br>
-               </td>
-               <td bgcolor="#ffffff" colspan="1" height="8" style="background-image: url(images/shadow.gif); background-repeat: repeat-x;">
-@@ -144,7 +144,7 @@
-       <tr>
-               <?php if ((read_graph_config_option("default_tree_view_mode") == "2") && (($_REQUEST["action"] == "tree") || ((isset($_REQUEST["view_type"]) ? $_REQUEST["view_type"] : "") == "tree"))) { ?>
--              <td valign="top" style="padding: 5px; border-right: #aaaaaa 1px solid;" bgcolor='#efefef' width='<?php print read_graph_config_option("default_dual_pane_width");?>' class='noprint'>
-+              <td valign="top" style="padding: 5px; border-right: #aaaaaa 1px solid;" bgcolor='#efefef' width='<?php print htmlspecialchars(read_graph_config_option("default_dual_pane_width"));?>' class='noprint'>
-                       <table border=0 cellpadding=0 cellspacing=0><tr><td><font size=-2><a style="font-size:7pt;text-decoration:none;color:silver" href="http://www.treemenu.net/" target=_blank></a></font></td></tr></table>
-                       <?php grow_dhtml_trees(); ?>
-                       <script type="text/javascript">initializeDocument();</script>
---- cacti-0.8.7e/lib/html_form.php     2009-06-28 12:07:11.000000000 -0400
-+++ cacti-0.8.7e-patched/lib/html_form.php     2009-11-21 23:15:40.000000000 -0500
-@@ -235,13 +235,21 @@
-               if (sizeof($items) > 0) {
-               foreach ($items as $item) {
--                      print $item["name"] . "<br>";
-+                      print htmlspecialchars($item["name"],ENT_QUOTES) . "<br>";
-               }
-               }
-               break;
-+      case 'font':
-+              form_font_box($field_name, $field_array["value"],
-+                      ((isset($field_array["default"])) ? $field_array["default"] : ""),
-+                      $field_array["max_length"],
-+                      ((isset($field_array["size"])) ? $field_array["size"] : "40"), "text",
-+                      ((isset($field_array["form_id"])) ? $field_array["form_id"] : ""));
-+
-+              break;
-       default:
--              print "<em>" . $field_array["value"] . "</em>";
-+              print "<em>" . htmlspecialchars($field_array["value"],ENT_QUOTES) . "</em>";
-               form_hidden_box($field_name, $field_array["value"], "");
-@@ -384,7 +392,7 @@
-               $form_previous_value = $form_default_value;
-       }
--      print "<input type='hidden' id='$form_name' name='$form_name' value='$form_previous_value'>\n";
-+      print "<input type='hidden' id='$form_name' name='$form_name' value='" . htmlspecialchars($form_previous_value, ENT_QUOTES) . "'>\n";
- }
- /* form_dropdown - draws a standard html dropdown box
-@@ -568,7 +576,7 @@
-                       }
-               }
--              print ">". $array_display[$id];
-+              print ">". htmlspecialchars($array_display[$id],ENT_QUOTES);
-               print "</option>\n";
-       }
-@@ -627,6 +635,65 @@
-       print "</select>\n";
- }
-+/* form_font_box - draws a standard html textbox and provides status of a fonts existence
-+   @arg $form_name - the name of this form element
-+   @arg $form_previous_value - the current value of this form element
-+   @arg $form_default_value - the value of this form element to use if there is
-+     no current value available
-+   @arg $form_max_length - the maximum number of characters that can be entered
-+     into this textbox
-+   @arg $form_size - the size (width) of the textbox
-+   @arg $type - the type of textbox, either 'text' or 'password'
-+   @arg $current_id - used to determine if a current value for this form element
-+     exists or not. a $current_id of '0' indicates that no current value exists,
-+     a non-zero value indicates that a current value does exist */
-+function form_font_box($form_name, $form_previous_value, $form_default_value, $form_max_length, $form_size = 30, $type = "text", $current_id = 0) {
-+      if (($form_previous_value == "") && (empty($current_id))) {
-+              $form_previous_value = $form_default_value;
-+      }
-+
-+      print "<input type='$type'";
-+
-+      if (isset($_SESSION["sess_error_fields"])) {
-+              if (!empty($_SESSION["sess_error_fields"][$form_name])) {
-+                      print "class='txtErrorTextBox'";
-+                      unset($_SESSION["sess_error_fields"][$form_name]);
-+              }
-+      }
-+
-+      if (isset($_SESSION["sess_field_values"])) {
-+              if (!empty($_SESSION["sess_field_values"][$form_name])) {
-+                      $form_previous_value = $_SESSION["sess_field_values"][$form_name];
-+              }
-+      }
-+
-+      if (strlen($form_previous_value) == 0) { # no data: defaults are used; everythings fine
-+                      $extra_data = "";
-+      } else {
-+              if (read_config_option("rrdtool_version") == "rrd-1.3.x") {     # rrdtool 1.3 uses fontconfig
-+                      $font = '"' . $form_previous_value . '"';
-+                      $out_array = array();
-+                      exec('fc-list ' . $font, $out_array);
-+                      if (sizeof($out_array) == 0) {
-+                              $extra_data = "<span style='color:red'><br>[" . "ERROR: FONT NOT FOUND" . "]</span>";
-+                      } else {
-+                              $extra_data = "<span style='color:green'><br>[" . "OK: FONT FOUND" . "]</span>";
-+                      }
-+              } elseif (read_config_option("rrdtool_version") == "rrd-1.0.x" ||
-+                                read_config_option("rrdtool_version") == "rrd-1.2.x") { # rrdtool 1.0 and 1.2 use font files
-+                      if (is_file($form_previous_value)) {
-+                              $extra_data = "<span style='color:green'><br>[" . "OK: FILE FOUND" . "]</span>";
-+                      }else if (is_dir($form_previous_value)) {
-+                              $extra_data = "<span style='color:red'><br>[" . "ERROR: IS DIR" . "]</span>";
-+                      }else{
-+                              $extra_data = "<span style='color:red'><br>[" . "ERROR: FILE NOT FOUND" . "]</span>";
-+                      }
-+              } # will be used for future versions of rrdtool
-+      }
-+
-+      print " id='$form_name' name='$form_name' size='$form_size'" . (!empty($form_max_length) ? " maxlength='$form_max_length'" : "") . " value='" . htmlspecialchars($form_previous_value, ENT_QUOTES) . "'>" . $extra_data;
-+}
-+
- /* form_confirm - draws a table presenting the user with some choice and allowing
-      them to either proceed (delete) or cancel
-    @arg $body_text - the text to prompt the user with on this form
---- cacti-0.8.7e/lib/timespan_settings.php     2009-06-28 12:07:11.000000000 -0400
-+++ cacti-0.8.7e-patched/lib/timespan_settings.php     2009-11-21 23:15:49.000000000 -0500
-@@ -125,9 +125,9 @@
-       if (isset($_POST["date1"])) {
-               /* the dates have changed, therefore, I am now custom */
-               if (($_SESSION["sess_current_date1"] != $_POST["date1"]) || ($_SESSION["sess_current_date2"] != $_POST["date2"])) {
--                      $timespan["current_value_date1"] = $_POST["date1"];
-+                      $timespan["current_value_date1"] = sanitize_search_string($_POST["date1"]);
-                       $timespan["begin_now"] =strtotime($timespan["current_value_date1"]);
--                      $timespan["current_value_date2"] = $_POST["date2"];
-+                      $timespan["current_value_date2"] = sanitize_search_string($_POST["date2"]);
-                       $timespan["end_now"]=strtotime($timespan["current_value_date2"]);
-                       $_SESSION["sess_current_timespan"] = GT_CUSTOM;
-                       $_SESSION["custom"] = 1;
-@@ -135,8 +135,8 @@
-               }else {
-                       /* the default button wasn't pushed */
-                       if (!isset($_POST["button_clear_x"])) {
--                              $timespan["current_value_date1"] = $_POST["date1"];
--                              $timespan["current_value_date2"] = $_POST["date2"];
-+                              $timespan["current_value_date1"] = sanitize_search_string($_POST["date1"]);
-+                              $timespan["current_value_date2"] = sanitize_search_string($_POST["date2"]);
-                               $timespan["begin_now"] = $_SESSION["sess_current_timespan_begin_now"];
-                               $timespan["end_now"] = $_SESSION["sess_current_timespan_end_now"];
diff --git a/data_source_deactivate.patch b/data_source_deactivate.patch
deleted file mode 100644 (file)
index 1a3f727..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
---- cacti-0.8.7g/lib/api_data_source.php       2010-07-09 18:33:46.000000000 -0400
-+++ cacti-0.8.7g-patched/lib/api_data_source.php       2010-07-27 21:30:31.000000000 -0400
-@@ -131,12 +131,12 @@
-                       $i++;
--                      if ($i % 1000) {
-+                      if (!($i % 1000)) {
-                               db_execute("DELETE FROM poller_item WHERE local_data_id IN ($ids_to_disable)");
-                               db_execute("UPDATE data_template_data SET active='' WHERE local_data_id IN ($ids_to_disable)");
-                               $i = 0;
--                              $ids_to_delete = "";
-+                              $ids_to_disable = "";
-                       }
-               }
diff --git a/fix_icmp_on_windows_iis_servers.patch b/fix_icmp_on_windows_iis_servers.patch
deleted file mode 100644 (file)
index 472101c..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
---- cacti-0.8.7e/lib/ping.php  2009-06-28 12:07:11.000000000 -0400
-+++ cacti-0.8.7e-patched/lib/ping.php  2009-09-01 16:22:22.000000000 -0400
-@@ -156,10 +156,9 @@
-                                               }
-                                               socket_set_block($this->socket);
-+                                              /* use traditional ping if we can't create a raw socket */
-                                               if (!(@socket_connect($this->socket, $host_ip, NULL))) {
--                                                      $this->ping_response = "Cannot connect to host";
--                                                      $this->ping_status   = "down";
--                                                      return false;
-+                                                      break;
-                                               }
-                                               /* set socket receive timeout as appropriate */
-@@ -234,8 +233,9 @@
-                                               break;
-                                       }
-                               }
--                      }else{
--                              /* we have to use the real ping */
-+                      }
-+
-+                      /* we have to use the real ping, in cases where windows failed or while using UNIX/Linux */
-                               $pattern  = bin2hex("cacti-monitoring-system"); // the actual test data
-                               /* host timeout given in ms, recalculate to sec, but make it an integer */
-@@ -253,10 +253,13 @@
-                                       $result = shell_exec("ping -w " . ceil($this->timeout/1000) . " -c " . $this->retries . " " . $this->host["hostname"]);
-                               }else if (substr_count(strtolower(PHP_OS), "aix")) {
-                                       $result = shell_exec("ping -i " . ceil($this->timeout/1000) . " -c " . $this->retries . " " . $this->host["hostname"]);
-+                      }else if (substr_count(strtolower(PHP_OS), "winnt")) {
-+                              $result = shell_exec("ping -w " . $this->timeout . " -n " . $this->retries . " " . $this->host["hostname"]);
-                               }else{
-                                       $result = shell_exec("ping -W " . ceil($this->timeout/1000) . " -c " . $this->retries . " -p " . $pattern . " " . $this->host["hostname"]);
-                               }
-+                      if (strtolower(PHP_OS) != "winnt") {
-                               $position = strpos($result, "min/avg/max");
-                               if ($position > 0) {
-@@ -274,6 +277,24 @@
-                                       return false;
-                               }
-+                      }else{
-+                              $position = strpos($result, "Minimum");
-+
-+                              if ($position > 0) {
-+                                      $output  = trim(substr($result, $position));
-+                                      $pieces  = explode(",", $output);
-+                                      $results = explode("=", $pieces[2]);
-+
-+                                      $this->ping_status = trim(str_replace("ms", "", $results[1]));
-+                                      $this->ping_response = "ICMP Ping Success (" . $this->ping_status . " ms)";
-+
-+                                      return true;
-+                              }else{
-+                                      $this->status = "down";
-+                                      $this->ping_response = "ICMP ping Timed out";
-+
-+                                      return false;
-+                              }
-                       }
-               }else{
-                       $this->ping_status   = "down";
-@@ -642,7 +663,7 @@
-               /* snmp test */
-               if (($avail_method == AVAIL_SNMP_OR_PING) && ($ping_result == true)) {
-                       $snmp_result = true;
--                      $snmp_status = 0.000;
-+                      $this->snmp_status = 0.000;
-               }else if (($avail_method == AVAIL_SNMP_AND_PING) && ($ping_result == false)) {
-                       $snmp_result = false;
-               }else if (($avail_method == AVAIL_SNMP) || ($avail_method == AVAIL_SNMP_AND_PING)) {
-@@ -650,7 +671,7 @@
-                               /* snmp version 1/2 without community string assume SNMP test to be successful
-                                  due to backward compatibility issues */
-                               $snmp_result = true;
--                              $snmp_status = 0.000;
-+                              $this->snmp_status = 0.000;
-                       }else{
-                               $snmp_result = $this->ping_snmp();
-                       }
diff --git a/graph_list_view.patch b/graph_list_view.patch
deleted file mode 100644 (file)
index 47a5b72..0000000
+++ /dev/null
@@ -1,110 +0,0 @@
---- cacti-0.8.7g/graph_view.php        2010-07-09 18:33:46.000000000 -0400
-+++ cacti-0.8.7g-patched/graph_view.php        2010-07-27 21:30:31.000000000 -0400
-@@ -204,7 +204,7 @@
-               $sql_where = "";
-               $sql_join = "";
-       }
--      /* the user select a bunch of graphs of the 'list' view and wants them dsplayed here */
-+      /* the user select a bunch of graphs of the 'list' view and wants them displayed here */
-       if (isset($_REQUEST["style"])) {
-               if (get_request_var_request("style") == "selective") {
-@@ -296,8 +296,9 @@
-                                                               $sql_where = get_graph_permissions_sql($current_user["policy_graphs"], $current_user["policy_hosts"], $current_user["policy_graph_templates"]);
-                                                               $hosts = db_fetch_assoc("SELECT DISTINCT host.id, host.description as name
--                                                                      FROM (graph_templates_graph,graph_local)
--                                                                      LEFT JOIN host ON (host.id=graph_local.host_id)
-+                                                                      FROM host
-+                                                                      LEFT JOIN graph_local ON ( host.id = graph_local.host_id )
-+                                                                      LEFT JOIN graph_templates_graph ON ( graph_templates_graph.local_graph_id = graph_local.id )
-                                                                       LEFT JOIN graph_templates ON (graph_templates.id=graph_local.graph_template_id)
-                                                                       LEFT JOIN user_auth_perms ON ((graph_templates_graph.local_graph_id=user_auth_perms.item_id and user_auth_perms.type=1 and user_auth_perms.user_id=" . $_SESSION["sess_user_id"] . ") OR (host.id=user_auth_perms.item_id and user_auth_perms.type=3 and user_auth_perms.user_id=" . $_SESSION["sess_user_id"] . ") OR (graph_templates.id=user_auth_perms.item_id and user_auth_perms.type=4 and user_auth_perms.user_id=" . $_SESSION["sess_user_id"] . "))
-                                                                       WHERE graph_templates_graph.local_graph_id=graph_local.id
-@@ -327,8 +328,9 @@
-                                                       <?php
-                                                       if (read_config_option("auth_method") != 0) {
-                                                               $graph_templates = db_fetch_assoc("SELECT DISTINCT graph_templates.*
--                                                                      FROM (graph_templates_graph,graph_local)
--                                                                      LEFT JOIN host ON (host.id=graph_local.host_id)
-+                                                                      FROM host
-+                                                                      LEFT JOIN graph_local ON ( host.id = graph_local.host_id )
-+                                                                      LEFT JOIN graph_templates_graph ON ( graph_templates_graph.local_graph_id = graph_local.id )
-                                                                       LEFT JOIN graph_templates ON (graph_templates.id=graph_local.graph_template_id)
-                                                                       LEFT JOIN user_auth_perms ON ((graph_templates_graph.local_graph_id=user_auth_perms.item_id and user_auth_perms.type=1 and user_auth_perms.user_id=" . $_SESSION["sess_user_id"] . ") OR (host.id=user_auth_perms.item_id and user_auth_perms.type=3 and user_auth_perms.user_id=" . $_SESSION["sess_user_id"] . ") OR (graph_templates.id=user_auth_perms.item_id and user_auth_perms.type=4 and user_auth_perms.user_id=" . $_SESSION["sess_user_id"] . "))
-                                                                       WHERE graph_templates_graph.local_graph_id=graph_local.id
-@@ -514,10 +516,10 @@
-       }else{
-               /* if any of the settings changed, reset the page number */
-               $changed = false;
--              $changed += check_changed("host_id", "sess_graphs_view_list_host");
--              $changed += check_changed("rows", "sess_graphs_view_list_rows");
--              $changed += check_changed("graph_template_id", "sess_graphs_view_list_graph_template");
--              $changed += check_changed("filter", "sess_graphs_view_list_filter");
-+              $changed += check_changed("host_id", "sess_graph_view_list_host");
-+              $changed += check_changed("rows", "sess_graph_view_list_rows");
-+              $changed += check_changed("graph_template_id", "sess_graph_view_list_graph_template");
-+              $changed += check_changed("filter", "sess_graph_view_list_filter");
-               if ($changed) $_REQUEST["page"] = 1;
-       }
-@@ -563,7 +565,7 @@
-       ?>
-       <tr bgcolor="#<?php print $colors["panel"];?>">
-               <td>
--              <form style="margin:0px;padding:0px;" name="form_graph_list" method="POST" onSubmit='form_graph(document.chk,document.form_graph_list)' action="graph_view.php">
-+              <form style="margin:0px;padding:0px;" name="form_graph_list" method="POST" onSubmit='form_graph(document.chk,document.form_graph_list)'>
-                       <table width="100%" cellpadding="0" cellspacing="0">
-                               <tr>
-                                       <td nowrap style='white-space: nowrap;' width="40">
-@@ -578,8 +580,9 @@
-                                                               $sql_where = get_graph_permissions_sql($current_user["policy_graphs"], $current_user["policy_hosts"], $current_user["policy_graph_templates"]);
-                                                               $hosts = db_fetch_assoc("SELECT DISTINCT host.id, host.description as name
--                                                                      FROM (graph_templates_graph,graph_local)
--                                                                      LEFT JOIN host ON (host.id=graph_local.host_id)
-+                                                                      FROM host
-+                                                                      LEFT JOIN graph_local ON ( host.id = graph_local.host_id )
-+                                                                      LEFT JOIN graph_templates_graph ON ( graph_templates_graph.local_graph_id = graph_local.id )
-                                                                       LEFT JOIN graph_templates ON (graph_templates.id=graph_local.graph_template_id)
-                                                                       LEFT JOIN user_auth_perms ON ((graph_templates_graph.local_graph_id=user_auth_perms.item_id and user_auth_perms.type=1 and user_auth_perms.user_id=" . $_SESSION["sess_user_id"] . ") OR (host.id=user_auth_perms.item_id and user_auth_perms.type=3 and user_auth_perms.user_id=" . $_SESSION["sess_user_id"] . ") OR (graph_templates.id=user_auth_perms.item_id and user_auth_perms.type=4 and user_auth_perms.user_id=" . $_SESSION["sess_user_id"] . "))
-                                                                       WHERE graph_templates_graph.local_graph_id=graph_local.id
-@@ -608,8 +611,9 @@
-                                                       <?php
-                                                       if (read_config_option("auth_method") != 0) {
-                                                               $graph_templates = db_fetch_assoc("SELECT DISTINCT graph_templates.*
--                                                                      FROM (graph_templates_graph,graph_local)
--                                                                      LEFT JOIN host ON (host.id=graph_local.host_id)
-+                                                                      FROM host
-+                                                                      LEFT JOIN graph_local ON ( host.id = graph_local.host_id )
-+                                                                      LEFT JOIN graph_templates_graph ON ( graph_templates_graph.local_graph_id = graph_local.id )
-                                                                       LEFT JOIN graph_templates ON (graph_templates.id=graph_local.graph_template_id)
-                                                                       LEFT JOIN user_auth_perms ON ((graph_templates_graph.local_graph_id=user_auth_perms.item_id and user_auth_perms.type=1 and user_auth_perms.user_id=" . $_SESSION["sess_user_id"] . ") OR (host.id=user_auth_perms.item_id and user_auth_perms.type=3 and user_auth_perms.user_id=" . $_SESSION["sess_user_id"] . ") OR (graph_templates.id=user_auth_perms.item_id and user_auth_perms.type=4 and user_auth_perms.user_id=" . $_SESSION["sess_user_id"] . "))
-                                                                       WHERE graph_templates_graph.local_graph_id=graph_local.id
-@@ -736,13 +740,13 @@
-       html_start_box("", "100%", $colors["header"], "1", "center", "");
-       print $nav;
--      html_header_checkbox(array("Graph Title", "Graph Size"));
-+      html_header_checkbox(array("Graph Title", "Graph Size"), false);
-       $i = 0;
-       if (sizeof($graphs)) {
-               foreach ($graphs as $graph) {
-                       form_alternate_row_color($colors["alternate"], $colors["light"], $i, 'line' . $graph["local_graph_id"]); $i++;
--                      form_selectable_cell("<strong><a href='" . htmlspecialchars("graph.php?local_graph_id=" . $graph["local_graph_id"] . "&rra_id=all") . "'>" . htmlspecialchars($graph["title_cache"]) . "</a><strong>", $graph["local_graph_id"]);
-+                      form_selectable_cell("<strong><a href='" . htmlspecialchars("graph.php?local_graph_id=" . $graph["local_graph_id"] . "&rra_id=all") . "'>" . htmlspecialchars($graph["title_cache"]) . "</a></strong>", $graph["local_graph_id"]);
-                       form_selectable_cell($graph["height"] . "x" . $graph["width"], $graph["local_graph_id"]);
-                       form_checkbox_cell($graph["title_cache"], $graph["local_graph_id"]);
-                       form_end_row();
-@@ -795,8 +799,8 @@
-               strDel = strDel.substring(0,strDel.length - 1);
-               strURL = '&graph_add=' + strAdd + '&graph_remove=' + strDel;
-               return strNavURL + strURL;
--              alert(strAdd);
--              alert(strDel);
-+              //alert(strAdd);
-+              //alert(strDel);
-       }
-       function url_go(strURL) {
-               document.location = strURL;
diff --git a/html_output.patch b/html_output.patch
deleted file mode 100644 (file)
index 22f0985..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
---- cacti-0.8.7g/lib/html_form.php     2010-07-09 18:33:46.000000000 -0400
-+++ cacti-0.8.7g-patched/lib/html_form.php     2010-07-27 21:30:31.000000000 -0400
-@@ -65,7 +65,7 @@
-                                       form_alternate_row_color($colors["form_alternate1"], $colors["form_alternate2"], $i, 'row_' . $field_name);
-                               }
--                              print "<td width='" . ((isset($config_array["left_column_width"])) ? $config_array["left_column_width"] : "50%") . "'>\n<font class='textEditTitle'>" . htmlspecialchars($field_array["friendly_name"]) . "</font><br>\n";
-+                              print "<td width='" . ((isset($config_array["left_column_width"])) ? $config_array["left_column_width"] : "50%") . "'>\n<font class='textEditTitle'>" . $field_array["friendly_name"] . "</font><br>\n";
-                               if (isset($field_array["sub_checkbox"])) {
-                                       form_checkbox($field_array["sub_checkbox"]["name"], $field_array["sub_checkbox"]["value"],
---- cacti-0.8.7g/lib/data_query.php    2010-07-09 18:33:46.000000000 -0400
-+++ cacti-0.8.7g-patched/lib/data_query.php    2010-07-27 21:30:31.000000000 -0400
-@@ -620,6 +620,7 @@
-       }
-       /* update the cache */
-+      /* TODO: if both $sort field and $title_format are empty, this yields funny results */
-       db_execute("update host_snmp_query set sort_field = '$sort_field', title_format = '$title_format' where host_id = '$host_id' and snmp_query_id = '$data_query_id'");
- }
---- cacti-0.8.7g/data_sources.php      2010-07-09 18:33:46.000000000 -0400
-+++ cacti-0.8.7g-patched/data_sources.php      2010-07-27 21:30:31.000000000 -0400
-@@ -899,7 +899,7 @@
-                               <td bgcolor='#" . $colors["header"] . "' class='textHeaderDark'>
-                                       <strong>Data Source Item</strong> $header_label
-                               </td>
--                              <td class='textHeaderDark' align='right' bgcolor='" . $colors["header"] . "'>
-+                              <td class='textHeaderDark' align='right' bgcolor='#" . $colors["header"] . "'>
-                                       " . ((!empty($_GET["id"]) && (empty($data_template["id"]))) ? "<strong><a class='linkOverDark' href='" . htmlspecialchars("data_sources.php?action=rrd_add&id=" . $_GET["id"]) . "'>New</a>&nbsp;</strong>" : "") . "
-                               </td>
-                       </tr>\n";
-@@ -1310,16 +1310,17 @@
-       $i = 0;
-       if (sizeof($data_sources) > 0) {
-               foreach ($data_sources as $data_source) {
--                      $data_template_name = ((empty($data_source["data_template_name"])) ? "<em>None</em>" : $data_source["data_template_name"]);
--                      $data_input_name    = ((empty($data_source["data_input_name"])) ? "<em>External</em>" : $data_source["data_input_name"]);
-+                      /* we're escaping strings here, so no need to escape them on form_selectable_cell */
-+                      $data_template_name = ((empty($data_source["data_template_name"])) ? "<em>None</em>" : htmlspecialchars($data_source["data_template_name"]));
-+                      $data_input_name    = ((empty($data_source["data_input_name"])) ? "<em>External</em>" : htmlspecialchars($data_source["data_input_name"]));
-                       $poller_interval    = ((isset($poller_intervals[$data_source["local_data_id"]])) ? $poller_intervals[$data_source["local_data_id"]] : 0);
-                       form_alternate_row_color($colors["alternate"], $colors["light"], $i, 'line' . $data_source["local_data_id"]); $i++;
-                       form_selectable_cell("<a class='linkEditMain' href='" . htmlspecialchars("data_sources.php?action=ds_edit&id=" . $data_source["local_data_id"]) . "' title='" . $data_source["name_cache"] . "'>" . ((get_request_var_request("filter") != "") ? eregi_replace("(" . preg_quote(get_request_var_request("filter")) . ")", "<span style='background-color: #F8D93D;'>\\1</span>", title_trim(htmlspecialchars($data_source["name_cache"]), read_config_option("max_title_data_source"))) : title_trim(htmlspecialchars($data_source["name_cache"]), read_config_option("max_title_data_source"))) . "</a>", $data_source["local_data_id"]);
-                       form_selectable_cell($data_source['local_data_id'], $data_source['local_data_id']);
--                      form_selectable_cell(((get_request_var_request("filter") != "") ? eregi_replace("(" . preg_quote(get_request_var_request("filter")) . ")", "<span style='background-color: #F8D93D;'>\\1</span>", htmlspecialchars($data_input_name)) : htmlspecialchars($data_input_name)), $data_source["local_data_id"]);
-+                      form_selectable_cell(((get_request_var_request("filter") != "") ? eregi_replace("(" . preg_quote(get_request_var_request("filter")) . ")", "<span style='background-color: #F8D93D;'>\\1</span>", $data_input_name) : $data_input_name), $data_source["local_data_id"]);
-                       form_selectable_cell(get_poller_interval($poller_interval), $data_source["local_data_id"]);
-                       form_selectable_cell(($data_source['active'] == "on" ? "Yes" : "No"), $data_source["local_data_id"]);
--                      form_selectable_cell(((get_request_var_request("filter") != "") ? eregi_replace("(" . preg_quote(get_request_var_request("filter")) . ")", "<span style='background-color: #F8D93D;'>\\1</span>", htmlspecialchars($data_source['data_template_name'])) : htmlspecialchars($data_source['data_template_name'])), $data_source["local_data_id"]);
-+                      form_selectable_cell(((get_request_var_request("filter") != "") ? eregi_replace("(" . preg_quote(get_request_var_request("filter")) . ")", "<span style='background-color: #F8D93D;'>\\1</span>", $data_template_name) : $data_template_name), $data_source["local_data_id"]);
-                       form_checkbox_cell($data_source["name_cache"], $data_source["local_data_id"]);
-                       form_end_row();
-               }
---- cacti-0.8.7g/graphs.php    2010-07-09 18:33:46.000000000 -0400
-+++ cacti-0.8.7g-patched/graphs.php    2010-07-27 21:30:31.000000000 -0400
-@@ -1317,11 +1317,12 @@
-       $i = 0;
-       if (sizeof($graph_list) > 0) {
-               foreach ($graph_list as $graph) {
--                      $template_name = ((empty($graph["name"])) ? "<em>None</em>" : $graph["name"]);
-+                      /* we're escaping strings here, so no need to escape them on form_selectable_cell */
-+                      $template_name = ((empty($graph["name"])) ? "<em>None</em>" : htmlspecialchars($graph["name"]));
-                       form_alternate_row_color($colors["alternate"], $colors["light"], $i, 'line' . $graph["local_graph_id"]); $i++;
-                       form_selectable_cell("<a class='linkEditMain' href='" . htmlspecialchars("graphs.php?action=graph_edit&id=" . $graph["local_graph_id"]) . "' title='" . htmlspecialchars($graph["title_cache"]) . "'>" . ((get_request_var_request("filter") != "") ? eregi_replace("(" . preg_quote(get_request_var_request("filter")) . ")", "<span style='background-color: #F8D93D;'>\\1</span>", title_trim(htmlspecialchars($graph["title_cache"]), read_config_option("max_title_graph"))) : title_trim(htmlspecialchars($graph["title_cache"]), read_config_option("max_title_graph"))) . "</a>", $graph["local_graph_id"]);
-                       form_selectable_cell($graph["local_graph_id"], $graph["local_graph_id"]);
--                      form_selectable_cell(((get_request_var_request("filter") != "") ? eregi_replace("(" . preg_quote(get_request_var_request("filter")) . ")", "<span style='background-color: #F8D93D;'>\\1</span>", htmlspecialchars($template_name)) : htmlspecialchars($template_name)), $graph["local_graph_id"]);
-+                      form_selectable_cell(((get_request_var_request("filter") != "") ? eregi_replace("(" . preg_quote(get_request_var_request("filter")) . ")", "<span style='background-color: #F8D93D;'>\\1</span>", $template_name) : $template_name), $graph["local_graph_id"]);
-                       form_selectable_cell($graph["height"] . "x" . $graph["width"], $graph["local_graph_id"]);
-                       form_checkbox_cell($graph["title_cache"], $graph["local_graph_id"]);
-                       form_end_row();
diff --git a/ldap_group_authenication.patch b/ldap_group_authenication.patch
deleted file mode 100644 (file)
index 00894c0..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
---- cacti-0.8.7g/lib/ldap.php  2010-07-09 18:33:46.000000000 -0400
-+++ cacti-0.8.7g-patched/lib/ldap.php  2010-07-27 21:30:31.000000000 -0400
-@@ -250,7 +250,7 @@
-                       if ($ldap_response) {
-                               if ($this->group_require == 1) {
-                                       /* Process group membership if required */
--                                      if ($ldap_group_member_type == 1) {
-+                                      if ($this->group_member_type == 1) {
-                                               $ldap_group_response = @ldap_compare($ldap_conn, $this->group_dn, $this->group_attrib, $this->dn);
-                                       } else {
-                                               $ldap_group_response = @ldap_compare($ldap_conn, $this->group_dn, $this->group_attrib, $this->username);
diff --git a/ping.patch b/ping.patch
deleted file mode 100644 (file)
index a48050b..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-diff -ruBbd cacti-0.8.7g/lib/ping.php cacti-0.8.7g-patched/lib/ping.php
---- cacti-0.8.7g/lib/ping.php  2010-07-09 18:33:46.000000000 -0400
-+++ cacti-0.8.7g-patched/lib/ping.php  2010-08-31 20:31:22.000000000 -0400
-@@ -577,12 +577,16 @@
-                               switch(socket_select($r = array($this->socket), $w = array($this->socket), $f = array($this->socket), $to_sec, $to_usec)){
-                               case 2:
-                                       /* connection refused */
--                                      $this->ping_response = "TCP ping connection refused";
--                                      $this->ping_status   = "down";
-+                                      $this->time = $this->get_time($this->precision);
-+
-+                                      if (($this->time*1000) <= $this->timeout) {
-+                                              $this->ping_response = "TCP Ping connection refused (" . $this->time*1000 . " ms)";
-+                                              $this->ping_status   = $this->time*1000;
-+                                      }
-                                       $this->close_socket();
--                                      return false;
-+                                      return true; /* "connection refused" says: host is alive (else ping would time out) */
-                               case 1:
-                                       /* connected, so calculate the total time and return */
-                                       $this->time = $this->get_time($this->precision);
diff --git a/poller_interval.patch b/poller_interval.patch
deleted file mode 100644 (file)
index dac3956..0000000
+++ /dev/null
@@ -1,168 +0,0 @@
-diff -ruBbd cacti-0.8.7g/lib/database.php cacti-0.8.7g-patched/lib/database.php
---- cacti-0.8.7g/lib/database.php      2010-07-09 18:33:46.000000000 -0400
-+++ cacti-0.8.7g-patched/lib/database.php      2010-08-31 20:31:22.000000000 -0400
-@@ -38,14 +38,14 @@
-       $cnn = NewADOConnection($db_type);
-       $class = get_class($cnn);
-       
--      if (!is_a($cnn_id, $class)) {
--              $cnn_id = $cnn;
--      }
--
-       $hostport = $host . ":" . $port;
-       while ($i <= $retries) {
-               if ($cnn->PConnect($hostport,$user,$pass,$db_name)) {
-+                      if (!is_a($cnn_id, $class)) {
-+                              $cnn_id = $cnn;
-+                      }
-+
-                       return($cnn);
-               }
-@@ -92,7 +92,7 @@
-       while (1) {
-               $query = $db_conn->Execute($sql);
--              if (($query) || ($db_conn->ErrorNo() == 1032)) {
-+              if (($db_conn->ErrorNo() == 0) || ($db_conn->ErrorNo() == 1032)) {
-                       return(1);
-               }else if (($db_conn->ErrorNo() == 1049) || ($db_conn->ErrorNo() == 1051)) {
-                       printf("FATAL: Database or Table does not exist");
-@@ -143,7 +143,7 @@
-       $query = $db_conn->Execute($sql);
--      if (($query) || ($db_conn->ErrorNo() == 1032)) {
-+      if (($db_conn->ErrorNo() == 0) || ($db_conn->ErrorNo() == 1032)) {
-               if (!$query->EOF) {
-                       if ($col_name != '') {
-                               $column = $query->fields[$col_name];
-@@ -184,7 +184,7 @@
-       $db_conn->SetFetchMode(ADODB_FETCH_ASSOC);
-       $query = $db_conn->Execute($sql);
--      if (($query) || ($db_conn->ErrorNo() == 1032)) {
-+      if (($db_conn->ErrorNo() == 0) || ($db_conn->ErrorNo() == 1032)) {
-               if (!$query->EOF) {
-                       $fields = $query->fields;
-@@ -222,7 +222,7 @@
-       $db_conn->SetFetchMode(ADODB_FETCH_ASSOC);
-       $query = $db_conn->Execute($sql);
--      if (($query) || ($db_conn->ErrorNo() == 1032)) {
-+      if (($db_conn->ErrorNo() == 0) || ($db_conn->ErrorNo() == 1032)) {
-               while ((!$query->EOF) && ($query)) {
-                       $data{sizeof($data)} = $query->fields;
-                       $query->MoveNext();
-diff -ruBbd cacti-0.8.7g/poller.php cacti-0.8.7g-patched/poller.php
---- cacti-0.8.7g/poller.php    2010-07-09 18:33:46.000000000 -0400
-+++ cacti-0.8.7g-patched/poller.php    2010-08-31 20:31:22.000000000 -0400
-@@ -109,7 +109,7 @@
- }
- /* record the start time */
--list($micro,$seconds) = split(" ", microtime());
-+list($micro,$seconds) = explode(" ", microtime());
- $poller_start         = $seconds + $micro;
- $overhead_time = 0;
-@@ -140,7 +140,7 @@
-                                                       WHERE rrd_next_step<=0
-                                                       GROUP BY host_id
-                                                       ORDER BY host_id"), "host_id", "data_sources");
--      $poller_runs       = $cron_interval / $poller_interval;
-+      $poller_runs       = intval($cron_interval / $poller_interval);
-       define("MAX_POLLER_RUNTIME", $poller_runs * $poller_interval - 2);
- }else{
-@@ -211,10 +211,11 @@
- $poller_runs_completed = 0;
- $poller_items_total    = 0;
-+$polling_hosts         = array_merge(array(0 => array("id" => "0")), db_fetch_assoc("SELECT id FROM host WHERE disabled='' ORDER BY id"));
- while ($poller_runs_completed < $poller_runs) {
-       /* record the start time for this loop */
--      list($micro,$seconds) = split(" ", microtime());
-+      list($micro,$seconds) = explode(" ", microtime());
-       $loop_start = $seconds + $micro;
-       /* calculate overhead time */
-@@ -222,8 +223,6 @@
-               $overhead_time = $loop_start - $poller_start;
-       }
--      $polling_hosts = array_merge(array(0 => array("id" => "0")), db_fetch_assoc("SELECT id FROM host WHERE disabled = '' ORDER BY id"));
--
-       /* initialize counters for script file handling */
-       $host_count = 1;
-@@ -375,7 +374,7 @@
-                               break;
-                       }else {
--                              if (read_config_option("log_verbosity") >= POLLER_VERBOSITY_MEDIUM) {
-+                              if (read_config_option("log_verbosity") >= POLLER_VERBOSITY_MEDIUM || $debug) {
-                                       print "Waiting on " . ($started_processes - $finished_processes) . " of " . $started_processes . " pollers.\n";
-                               }
-@@ -390,7 +389,7 @@
-                                       break;
-                               }else{
--                                      sleep(1);
-+                                      usleep(500);
-                               }
-                       }
-               }
-@@ -427,28 +426,27 @@
-       $poller_runs_completed++;
-       /* record the start time for this loop */
--      list($micro,$seconds) = split(" ", microtime());
-+      list($micro,$seconds) = explode(" ", microtime());
-       $loop_end = $seconds + $micro;
-+      $loop_time = $loop_end - $loop_start;
--      if (($loop_end - $loop_start) < $poller_interval) {
-+      if ($loop_time < $poller_interval) {
-               if ($poller_runs_completed == 1) {
--                      $sleep_time = ($poller_interval - ($loop_end - $loop_start) - $overhead_time);
--              }else{
--                      $sleep_time = ($poller_interval -  ($loop_end - $loop_start));
-+                      $sleep_time = $poller_interval - $loop_time - $overhead_time;
-+              } else {
-+                      $sleep_time = $poller_interval - $loop_time;
-               }
-               /* log some nice debug information */
--              if (read_config_option('log_verbosity') >= POLLER_VERBOSITY_DEBUG) {
--                      echo "Loop  Time is: " . ($loop_end - $loop_start) . "\n";
--                      echo "Sleep Time is: " . $sleep_time . "\n";
--                      echo "Total Time is: " . ($loop_end - $poller_start) . "\n";
-+              if (read_config_option('log_verbosity') >= POLLER_VERBOSITY_DEBUG || $debug) {
-+                      echo "Loop  Time is: " . round($loop_time, 2) . "\n";
-+                      echo "Sleep Time is: " . round($sleep_time, 2) . "\n";
-+                      echo "Total Time is: " . round($loop_end - $poller_start, 2) . "\n";
-               }
-               /* sleep the appripriate amount of time */
-               if ($poller_runs_completed < $poller_runs) {
--                      db_close();
-                       usleep($sleep_time * 1000000);
--                      db_connect_real($database_hostname, $database_username, $database_password, $database_default, $database_type, $database_port);
-               }
-       }else if (read_config_option('log_verbosity') >= POLLER_VERBOSITY_MEDIUM || $debug) {
-               cacti_log("WARNING: Cacti Polling Cycle Exceeded Poller Interval by " . $loop_end-$loop_start-$poller_interval . " seconds", TRUE, "POLLER");
-@@ -459,7 +457,7 @@
-       $hosts_per_process, $num_polling_items, $rrds_processed) {
-       /* take time and log performance data */
--      list($micro,$seconds) = split(" ", microtime());
-+      list($micro,$seconds) = explode(" ", microtime());
-       $loop_end = $seconds + $micro;
-       $cacti_stats = sprintf(
-
diff --git a/script_server_command_line_parse.patch b/script_server_command_line_parse.patch
deleted file mode 100644 (file)
index 8cddf18..0000000
+++ /dev/null
@@ -1,136 +0,0 @@
---- cacti-0.8.7g/script_server.php     2010-07-09 18:33:46.000000000 -0400
-+++ cacti-0.8.7g-patched/script_server.php     2010-07-27 21:30:31.000000000 -0400
-@@ -72,7 +72,7 @@
- }
- /* record the script start time */
--list($micro,$seconds) = split(" ", microtime());
-+list($micro,$seconds) = explode(" ", microtime());
- $start = $seconds + $micro;
- /* some debugging */
-@@ -171,7 +171,11 @@
-                               if (isset($command_array[2])) {
-                                       $parameters = trim($command_array[2]);
--                                      $parameter_array = explode(" ", trim($command_array[2]));
-+                                      $parameter_array = array();
-+                                      if (!parseArgs($parameters, $parameter_array)) {
-+                                              cacti_log("WARNING: Script Server count not parse '$parameters' for $function", false, "PHPSVR");
-+                                              return "U";
-+                                      }
-                               }else{
-                                       $parameters = "";
-                                       $parameters_array = array();
-@@ -236,3 +240,111 @@
-               exit (-1);
-       }
- }
-+
-+function parseArgs($string, &$str_list, $debug = false) {
-+      $delimiters = array("'",'"');
-+      $delimited  = false;
-+      $str_list   = array();
-+
-+      if ($debug) echo "String: '" . $string . "'\n";
-+
-+      foreach($delimiters as $delimiter) {
-+              if (strpos($string, $delimiter) !== false) {
-+                      $delimited = true;
-+                      break;
-+              }
-+      }
-+
-+      /* process the simple case */
-+      if (!$delimited) {
-+              $str_list = explode(" ", $string);
-+
-+              if ($debug) echo "Output: '" . implode(",", $str_list) . "'\n";
-+
-+              return true;
-+      }
-+
-+      /* Break str down into an array of characters and process */
-+      $char_array = str_split($string);
-+      $escaping = false;
-+      $indelim  = false;
-+      $parse_ok = true;
-+      $curstr   = '';
-+      foreach($char_array as $char) {
-+              switch ($char) {
-+              case '\'':
-+              case '"':
-+                      if (!$indelim) {
-+                              if (!$escaping) {
-+                                      $indelim = true;
-+                              }else{
-+                                      $curstr .= $char;
-+                                      $escaping = false;
-+                              }
-+                      }elseif (!$escaping) {
-+                              $str_list[] = $curstr;
-+                              $curstr     = '';
-+                              $indelim    = false;
-+                      }elseif ($escaping) {
-+                              $curstr  .= $char;
-+                              $escaping = false;
-+                      }
-+
-+                      break;
-+              case '\\':
-+                      if ($escaping) {
-+                              $curstr  .= $char;
-+                              $escaping = false;
-+                      }else{
-+                              $escaping = true;
-+                      }
-+
-+                      break;
-+              case ' ':
-+                      if ($escaping) {
-+                              $parse_ok = false;
-+                              $msg = 'Parse error attempting to parse string';
-+                      }elseif ($indelim) {
-+                              $curstr .= $char;
-+                      }elseif (strlen($curstr)) {
-+                              $str_list[] = $curstr;
-+                              $curstr = '';
-+                      }
-+
-+                      break;
-+              case '`':
-+                      $parse_ok = false;
-+                      $msg   = 'Backtic (`) characters not allowed';
-+
-+                      break;
-+              default:
-+                      if ($escaping) {
-+                              $parse_ok = false;
-+                              $msg   = 'Parse error attempting to parse string';
-+                      }else{
-+                              $curstr .= $char;
-+                      }
-+                      break;
-+              }
-+
-+              if (!$parse_ok) {
-+                      break;
-+              }
-+      }
-+
-+      /* Add the last str to the string array */
-+      if ($indelim || $escaping) {
-+              $parse_ok = false;
-+              $msg = 'Parse error attempting to parse string';
-+      }
-+
-+      if (!$parse_ok) {
-+              echo "ERROR: " . $msg . " '" . $string . "'\n";
-+      }else{
-+              $str_list[] = $curstr;
-+      }
-+
-+      if ($debug) echo "Output: '" . implode(",", $str_list) . "'\n";
-+
-+      return $parse_ok;
-+}
diff --git a/snmp_invalid_response.patch b/snmp_invalid_response.patch
deleted file mode 100644 (file)
index 5b2dd20..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
---- ../tags/0.8.7e/include/global_arrays.php   2009-06-28 12:34:31.000000000 -0400
-+++ 0.8.7/include/global_arrays.php    2009-08-18 20:04:44.000000000 -0400
-@@ -174,6 +174,10 @@
-       "DES" => "DES (default)",
-       "AES128" => "AES");
-+$banned_snmp_strings = array(
-+      "End of MIB",
-+      "No Such");
-+
- $logfile_options = array(1 =>
-       "Logfile Only",
-       "Logfile and Syslog/Eventlog",
---- ../tags/0.8.7e/lib/snmp.php        2009-06-28 12:34:30.000000000 -0400
-+++ 0.8.7/lib/snmp.php 2009-08-18 20:04:44.000000000 -0400
-@@ -27,9 +27,6 @@
- define("SNMP_METHOD_PHP", 1);
- define("SNMP_METHOD_BINARY", 2);
--/* declare once, use many times */
--$banned_snmp_strings = array("End of MIB", "No Such");
--
- /* we must use an apostrophe to escape community names under Unix in case the user uses
- characters that the shell might interpret. the ucd-snmp binaries on Windows flip out when
- you do this, but are perfectly happy with a quotation mark. */
diff --git a/sql_injection_template_export.patch b/sql_injection_template_export.patch
deleted file mode 100644 (file)
index 397990c..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
---- cacti-0.8.7e/templates_export.php  2009-06-28 12:07:11.000000000 -0400
-+++ cacti-fixed/templates_export.php   2010-04-17 14:08:42.000000000 -0400
-@@ -49,6 +49,10 @@
- function form_save() {
-       global $export_types;
-+    /* ================= input validation ================= */
-+    input_validate_input_number(get_request_var_post("export_item_id"));
-+    /* ==================================================== */
-+
-       if (isset($_POST["save_component_export"])) {
-               $xml_data = get_item_xml($_POST["export_type"], $_POST["export_item_id"], (((isset($_POST["include_deps"]) ? $_POST["include_deps"] : "") == "") ? false : true));
diff --git a/template_duplication.patch b/template_duplication.patch
deleted file mode 100644 (file)
index 5c23972..0000000
+++ /dev/null
@@ -1,232 +0,0 @@
-diff -ruBbd 0.8.7e/cli/repair_templates.php 0.8.7/cli/repair_templates.php
---- 0.8.7e/cli/repair_templates.php    2009-08-18 22:03:22.000000000 -0400
-+++ 0.8.7/cli/repair_templates.php     2009-08-20 07:43:54.000000000 -0400
-@@ -0,0 +1,136 @@
-+<?php
-+/*
-+ +-------------------------------------------------------------------------+
-+ | Copyright (C) 2004-2009 The Cacti Group                                 |
-+ |                                                                         |
-+ | This program is free software; you can redistribute it and/or           |
-+ | modify it under the terms of the GNU General Public License             |
-+ | as published by the Free Software Foundation; either version 2          |
-+ | of the License, or (at your option) any later version.                  |
-+ |                                                                         |
-+ | This program is distributed in the hope that it will be useful,         |
-+ | but WITHOUT ANY WARRANTY; without even the implied warranty of          |
-+ | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the           |
-+ | GNU General Public License for more details.                            |
-+ +-------------------------------------------------------------------------+
-+ | Cacti: The Complete RRDTool-based Graphing Solution                     |
-+ +-------------------------------------------------------------------------+
-+ | This code is designed, written, and maintained by the Cacti Group. See  |
-+ | about.php and/or the AUTHORS file for specific developer information.   |
-+ +-------------------------------------------------------------------------+
-+ | http://www.cacti.net/                                                   |
-+ +-------------------------------------------------------------------------+
-+*/
-+
-+/* 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/global.php");
-+include_once("../lib/utility.php");
-+include_once("../lib/template.php");
-+
-+/* process calling arguments */
-+$parms = $_SERVER["argv"];
-+array_shift($parms);
-+
-+$execute = FALSE;
-+
-+foreach($parms as $parameter) {
-+      @list($arg, $value) = @explode("=", $parameter);
-+
-+      switch ($arg) {
-+      case "--execute":
-+              $execute = TRUE;
-+              break;
-+      case "-h":
-+      case "-v":
-+      case "-V":
-+      case "--version":
-+      case "--help":
-+              display_help();
-+              exit;
-+      default:
-+              print "ERROR: Invalid Parameter " . $parameter . "\n\n";
-+              display_help();
-+              exit;
-+      }
-+}
-+
-+if ($execute) {
-+      echo "NOTE: Repairing All Duplicated Templates\n";
-+} else {
-+      echo "NOTE: Performing Check of Templates\n";
-+}
-+
-+/* repair data templates first */
-+if ($execute) {
-+      echo "NOTE: Repairing Data Templates\n";
-+} else {
-+      echo "NOTE: Performing Check of Data Templates\n";
-+}
-+
-+$damaged_template_ids = db_fetch_assoc("SELECT DISTINCT data_template_id FROM data_template_rrd WHERE hash='' AND local_data_id=0");
-+if (sizeof($damaged_template_ids)) {
-+      foreach($damaged_template_ids as $id) {
-+              $template_name = db_fetch_cell("SELECT name FROM data_template WHERE id=" . $id["data_template_id"]);
-+              echo "NOTE: Data Template '$template_name' is Damaged and can be repaired\n";
-+      }
-+
-+      $damaged_templates = db_fetch_assoc("SELECT * FROM data_template_rrd WHERE hash='' AND local_data_id=0");
-+      if (sizeof($damaged_templates)) {
-+              echo "NOTE: -- Damaged Data Templates Objects Found is '" . sizeof($damaged_templates) . "'\n";
-+              if ($execute) {
-+                      foreach($damaged_templates as $template) {
-+                              $hash = get_hash_data_template($template["local_data_template_rrd_id"], "data_template_item");
-+                              db_execute("UPDATE data_template_rrd SET hash='$hash' WHERE id=" . $template["id"]);
-+                      }
-+              }
-+      }
-+} else {
-+      echo "NOTE: No Damaged Data Templates Found\n";
-+}
-+
-+/* reset the array */
-+$damaged_templates = array();
-+
-+/* repair graph templates */
-+if ($execute) {
-+      echo "NOTE: Repairing Graph Templates\n";
-+} else {
-+      echo "NOTE: Performing Check of Graph Templates\n";
-+}
-+
-+$damaged_template_ids = db_fetch_assoc("SELECT DISTINCT graph_template_id FROM graph_template_input WHERE hash=''");
-+if (sizeof($damaged_template_ids)) {
-+      foreach($damaged_template_ids as $id) {
-+              $template_name = db_fetch_cell("SELECT name FROM graph_templates WHERE id=" . $id["graph_template_id"]);
-+              echo "NOTE: Graph Template '$template_name' is Damaged and can be repaired\n";
-+      }
-+
-+      $damaged_templates = db_fetch_assoc("SELECT * FROM graph_template_input WHERE hash=''");
-+      if (sizeof($damaged_templates)) {
-+              echo "NOTE: -- Damaged Graph Templates Objects Found is '" . sizeof($damaged_templates) . "'\n";
-+              if ($execute) {
-+                      foreach($damaged_templates as $template) {
-+                              $hash = get_hash_graph_template(0, "graph_template_input");
-+                              db_execute("UPDATE graph_template_input SET hash='$hash' WHERE id=" . $template["id"]);
-+                      }
-+              }
-+      }
-+} else {
-+      echo "NOTE: No Damaged Graph Templates Found\n";
-+}
-+
-+
-+/* display_help - displays the usage of the function */
-+function display_help () {
-+      print "Cacti Database Template Repair Tool v1.0, Copyright 2004-2009 - The Cacti Group\n\n";
-+      print "usage: repair_templates.php --execute [--help]\n\n";
-+      print "--execute        - Perform the repair\n";
-+      print "--help           - display this help message\n";
-+}
-+?>
-diff -ruBbd 0.8.7e/docs/README 0.8.7/docs/README
---- 0.8.7e/docs/README 2009-08-18 21:57:30.000000000 -0400
-+++ 0.8.7/docs/README  2009-08-18 21:58:09.000000000 -0400
-@@ -90,6 +90,9 @@
-                             table
-   poller_reindex_hosts.php - Cause data query reindex on hosts
-   rebuild_poller_cache.php - Rebuilds the poller cache
-+  repair_templates.php     - Certain templates, when created using the "duplicate"
-+      function in Cacti, do not import/export well.  This utility repairs 
-+      those templates.
---- 0.8.7e/lib/export.php      2009-08-18 21:56:47.000000000 -0400
-+++ 0.8.7/lib/export.php       2009-08-18 21:57:50.000000000 -0400
-@@ -811,7 +811,9 @@
- }
- function xml_character_encode($text) {
--
-+      if (function_exists("htmlspecialchars")) {
-+              return htmlspecialchars($text, ENT_QUOTES, "UTF-8");
-+      } else {
-       $text = str_replace("&", "&amp;", $text);
-       $text = str_replace(">", "&gt;", $text);
-       $text = str_replace("<", "&lt;", $text);
-@@ -819,6 +821,7 @@
-       $text = str_replace("\'", "&apos;", $text);
-       return $text;
-+      }
- }
- ?>
---- 0.8.7e/lib/import.php      2009-08-18 21:56:59.000000000 -0400
-+++ 0.8.7/lib/import.php       2009-08-18 21:57:55.000000000 -0400
-@@ -36,10 +36,6 @@
-               return $info_array;
-       }
--      if (isset($xml_array["name"])) {
--              $xml_array["name"] = htmlspecialchars($xml_array["name"]);
--      }
--
-       while (list($hash, $hash_array) = each($xml_array)) {
-               /* parse information from the hash */
-               $parsed_hash = parse_xml_hash($hash);
-@@ -115,7 +111,7 @@
-       $_graph_template_id = db_fetch_cell("select id from graph_templates where hash='$hash'");
-       $save["id"] = (empty($_graph_template_id) ? "0" : $_graph_template_id);
-       $save["hash"] = $hash;
--      $save["name"] = htmlspecialchars($xml_array["name"]);
-+      $save["name"] = $xml_array["name"];
-       $graph_template_id = sql_save($save, "graph_templates");
-       $hash_cache["graph_template"][$hash] = $graph_template_id;
-@@ -914,9 +910,13 @@
- }
- function xml_character_decode($text) {
-+      if (function_exists("html_entity_decode")) {
-+              return html_entity_decode($text, ENT_QUOTES, "UTF-8");
-+      } else {
-       $trans_tbl = get_html_translation_table(HTML_ENTITIES);
-       $trans_tbl = array_flip($trans_tbl);
-       return strtr($text, $trans_tbl);
-+      }
- }
- ?>
---- 0.8.7e/lib/utility.php     2009-08-18 21:57:08.000000000 -0400
-+++ 0.8.7/lib/utility.php      2009-08-18 21:58:00.000000000 -0400
-@@ -346,6 +346,7 @@
-                       $save["name"] = $graph_template_input["name"];
-                       $save["description"] = $graph_template_input["description"];
-                       $save["column_name"] = $graph_template_input["column_name"];
-+                      $save["hash"]              = get_hash_graph_template(0, "graph_template_input");
-                       $graph_template_input_id = sql_save($save, "graph_template_input");
-@@ -436,6 +437,11 @@
-               $save["local_data_id"] = (isset($local_data_id) ? $local_data_id : 0);
-               $save["local_data_template_rrd_id"] = (isset($data_template_rrd["local_data_template_rrd_id"]) ? $data_template_rrd["local_data_template_rrd_id"] : 0);
-               $save["data_template_id"] = (!empty($_local_data_id) ? $data_template_rrd["data_template_id"] : $data_template_id);
-+              if ($save["local_data_id"] == 0) {
-+                      $save["hash"]                   = get_hash_data_template($data_template_rrd["local_data_template_rrd_id"], "data_template_item");
-+              } else {
-+                      $save["hash"] = '';
-+              }
-               while (list($field, $array) = each($struct_data_source_item)) {
-                       $save{$field} = $data_template_rrd{$field};
diff --git a/unified_issues.patch b/unified_issues.patch
deleted file mode 100644 (file)
index d24cdaa..0000000
+++ /dev/null
@@ -1,348 +0,0 @@
-diff -ruBbd cacti-spine-0.8.7g.old/ChangeLog cacti-spine-0.8.7g/ChangeLog
---- cacti-spine-0.8.7g.old/ChangeLog   2010-07-09 19:25:56.000000000 -0400
-+++ cacti-spine-0.8.7g/ChangeLog       2010-08-31 20:21:22.000000000 -0400
-@@ -1,5 +1,13 @@
- The Cacti Group | spine
-+Patched 0.8.7g
-+-bug#0001669: Problems with getting data from script using SPINE on Windows Server 2003 x32 
-+-bug#0001829: Wrong string numerical value got from Spine SNMP poller 
-+-bug: Net-snmp API issues cause spine crashes with some SNMP agents
-+-bug: Host list not properly initialized
-+-bug: Mutex locking issues cause deadlocks in Windows
-+-bug: Escape windows type back slashes in scripts
-+
- 0.8.7g
- -feature: Multi threaded host polling
-diff -ruBbd cacti-spine-0.8.7g.old/poller.c cacti-spine-0.8.7g/poller.c
---- cacti-spine-0.8.7g.old/poller.c    2010-07-09 17:39:53.000000000 -0400
-+++ cacti-spine-0.8.7g/poller.c        2010-08-31 20:18:58.000000000 -0400
-@@ -57,21 +57,26 @@
-       host_data_ids    = poller_details.host_data_ids;
-       snprintf(host_time, SMALL_BUFSIZE, "%s", poller_details.host_time);
--      thread_mutex_unlock(LOCK_THREAD);
--
-       free(arg);
-+      thread_ready = TRUE;
-+
-       SPINE_LOG_DEBUG(("DEBUG: In Poller, About to Start Polling of Host"));
-       poll_host(host_id, host_thread, last_host_thread, host_data_ids, host_time);
--      thread_mutex_lock(LOCK_THREAD);
--
-+      while (TRUE) {
-+              if (thread_mutex_trylock(LOCK_THREAD) == 0) {
-       active_threads--;
-+                      thread_mutex_unlock(LOCK_THREAD);
--      SPINE_LOG_DEBUG(("DEBUG: The Value of Active Threads is %i" ,active_threads));
-+                      break;
-+              }
--      thread_mutex_unlock(LOCK_THREAD);
-+              usleep(100);
-+      }
-+
-+      SPINE_LOG_DEBUG(("DEBUG: The Value of Active Threads is %i" ,active_threads));
-       /* end the thread */
-       pthread_exit(0);
-@@ -965,7 +970,7 @@
-                               poll_result = exec_poll(host, poller_items[i].arg1);
-                               /* process the result */
--                              if ((is_numeric(poll_result)) || (is_multipart_output(poll_result))) {
-+                              if ((is_numeric(poll_result)) || (is_multipart_output(trim(poll_result)))) {
-                                       snprintf(poller_items[i].result, RESULTS_BUFFER, "%s", poll_result);
-                               }else if (is_hexadecimal(snmp_oids[j].result, TRUE)) {
-                                       snprintf(poller_items[i].result, RESULTS_BUFFER, "%lld", hex2dec(poll_result));
-@@ -998,7 +1003,7 @@
-                               poll_result = php_cmd(poller_items[i].arg1, php_process);
-                               /* process the output */
--                              if ((is_numeric(poll_result)) || (is_multipart_output(poll_result))) {
-+                              if ((is_numeric(poll_result)) || (is_multipart_output(trim(poll_result)))) {
-                                       snprintf(poller_items[i].result, RESULTS_BUFFER, "%s", poll_result);
-                               }else if (is_hexadecimal(snmp_oids[j].result, TRUE)) {
-                                       snprintf(poller_items[i].result, RESULTS_BUFFER, "%lld", hex2dec(poll_result));
-@@ -1247,7 +1252,7 @@
-               if (is_numeric(result)) {
-                       return TRUE;
-               }else{
--                      if (is_multipart_output(result)) {
-+                      if (is_multipart_output(trim(result))) {
-                               return TRUE;
-                       }else{
-                               return FALSE;
-@@ -1290,7 +1295,7 @@
-       /* compensate for back slashes in arguments */
-       #if defined(__CYGWIN__)
--      proc_command = add_slashes(command, 2);
-+      proc_command = add_slashes(command);
-       #else
-       proc_command = command;
-       #endif
-@@ -1340,7 +1345,7 @@
-               FD_SET(cmd_fd, &fds);
-               /* wait x seonds for pipe response */
--              switch (select(cmd_fd+1, &fds, NULL, NULL, &timeout)) {
-+              switch (select(FD_SETSIZE, &fds, NULL, NULL, &timeout)) {
-               case -1:
-                       switch (errno) {
-                       case EBADF:
-@@ -1381,11 +1386,13 @@
-                               break;
-                       }
-               case 0:
-+                      #ifdef USING_TPOPEN
-                       SPINE_LOG(("Host[%i] ERROR: The POPEN timed out", current_host->id));
--                      #ifdef USING_TPOPEN
-                       close_fd = FALSE;
-                       #else
-+                      SPINE_LOG(("Host[%i] ERROR: The NIFTY POPEN timed out", current_host->id));
-+
-                       pid = nft_pchild(cmd_fd);
-                       kill(pid, SIGKILL);
-                       #endif
-diff -ruBbd cacti-spine-0.8.7g.old/snmp.c cacti-spine-0.8.7g/snmp.c
---- cacti-spine-0.8.7g.old/snmp.c      2010-07-09 17:39:53.000000000 -0400
-+++ cacti-spine-0.8.7g/snmp.c  2010-08-31 20:18:58.000000000 -0400
-@@ -499,13 +499,9 @@
-       size_t out_len = 0;
-       if ((buf = (u_char *) calloc(buf_len, 1)) != 0) {
--              if (sprint_realloc_value(&buf, &buf_len, &out_len, 1,
--                              objid, objidlen, variable)) {
-+              sprint_realloc_by_type(&buf, &buf_len, &out_len, 1, variable, NULL, NULL, NULL);
-                       snprintf(obuf, buf_len, "%s", buf);
-               }else{
--                      snprintf(obuf, buf_len, "%s [TRUNCATED]", buf);
--              }
--      }else{
-               SET_UNDEFINED(obuf);
-       }
-@@ -528,6 +524,7 @@
-       int i;
-       int array_count;
-       int index_count;
-+      char   temp_result[RESULTS_BUFFER];
-       struct nameStruct {
-           oid             name[MAX_OID_LEN];
-@@ -570,11 +567,13 @@
-                               for(i = 0; i < num_oids && vars; i++) {
-                                       if (!IS_UNDEFINED(snmp_oids[i].result)) {
-                                               #ifdef USE_NET_SNMP
--                                              snmp_snprint_value(snmp_oids[i].result, RESULTS_BUFFER, vars->name, vars->name_length, vars);
-+                                              snmp_snprint_value(temp_result, RESULTS_BUFFER, vars->name, vars->name_length, vars);
-                                               #else
--                                              sprint_value(snmp_oids[i].result, vars->name, vars->name_length, vars);
-+                                              sprint_value(temp_result, vars->name, vars->name_length, vars);
-                                               #endif
-                                               
-+                                              snprintf(snmp_oids[i].result, RESULTS_BUFFER, "%s", trim(temp_result));
-+                                              
-                                               vars = vars->next_variable;
-                                       }
-                               }
-diff -ruBbd cacti-spine-0.8.7g.old/spine.c cacti-spine-0.8.7g/spine.c
---- cacti-spine-0.8.7g.old/spine.c     2010-07-09 17:39:53.000000000 -0400
-+++ cacti-spine-0.8.7g/spine.c 2010-08-31 20:18:58.000000000 -0400
-@@ -94,6 +94,7 @@
- int num_hosts = 0;
- int active_threads = 0;
- int active_scripts = 0;
-+int thread_ready   = FALSE;
- config_t set;
- php_t *php_processes = 0;
-@@ -134,7 +135,7 @@
-       int poller_counter = 0;
-       int last_active_threads = 0;
-       int valid_conf_file = FALSE;
--      long int EXTERNAL_THREAD_SLEEP = 5000;
-+      long int EXTERNAL_THREAD_SLEEP = 50;
-       long int internal_thread_sleep;
-       char querybuf[BIG_BUFSIZE], *qp = querybuf;
-       char *host_time = NULL;
-@@ -196,6 +197,7 @@
-       /* we attempt to support scripts better in cygwin */
-       #if defined(__CYGWIN__)
-+      setenv("CYGWIN", "nodosfilewarning", 1);
-       if (file_exists("./sh.exe")) {
-               set.cygwinshloc = 0;
-               printf("NOTE: The Shell Command Exists in the current directory\n");
-@@ -281,7 +283,7 @@
-               else if (STRMATCH(arg, "-H") ||
-                                STRIMATCH(arg, "--hostlist")) {
--                      snprintf(set.host_id_list, BIG_BUFSIZE, getarg(opt, &argv));
-+                      snprintf(set.host_id_list, BIG_BUFSIZE, "%s", getarg(opt, &argv));
-               }
-               else if (STRMATCH(arg, "-h") ||
-@@ -584,6 +586,11 @@
-                               poller_details->host_data_ids    = itemsPT;
-                               poller_details->host_time        = host_time;
-+                              /* this variable tells us that the child had loaded the poller
-+                               * poller_details structure and we can move on to the next thread
-+                               */
-+                              thread_ready = FALSE;
-+
-                               /* create child process */
-                               thread_status = pthread_create(&threads[device_counter], &attr, child, poller_details);
-@@ -596,6 +603,11 @@
-                                               }
-                                               active_threads++;
-+                                              /* wait for the child to read and process the structure */
-+                                              while (!thread_ready) { 
-+                                                      usleep(internal_thread_sleep);
-+                                              }
-+
-                                               SPINE_LOG_DEBUG(("DEBUG: The Value of Active Threads is %i", active_threads));
-                                               break;
-@@ -603,7 +615,7 @@
-                                               SPINE_LOG(("ERROR: The System Lacked the Resources to Create a Thread"));
-                                               break;
-                                       case EFAULT:
--                                              SPINE_LOG(("ERROR: The Thread or Attribute Was Invalid"));
-+                                              SPINE_LOG(("ERROR: The Thread or Attribute were Invalid"));
-                                               break;
-                                       case EINVAL:
-                                               SPINE_LOG(("ERROR: The Thread Attribute is Not Initialized"));
-@@ -613,6 +625,8 @@
-                                               break;
-                               }
-+                              thread_mutex_unlock(LOCK_THREAD);
-+
-                               /* get current time and exit program if time limit exceeded */
-                               if (poller_counter >= 20) {
-                                       current_time = get_time_as_double();
-diff -ruBbd cacti-spine-0.8.7g.old/spine.h cacti-spine-0.8.7g/spine.h
---- cacti-spine-0.8.7g.old/spine.h     2010-07-09 17:39:53.000000000 -0400
-+++ cacti-spine-0.8.7g/spine.h 2010-08-31 20:18:58.000000000 -0400
-@@ -504,5 +504,6 @@
- extern char   start_datetime[20];
- extern char   config_paths[CONFIG_PATHS][BUFSIZE];
- extern int    active_threads;
-+extern int    thread_ready;
- #endif /* not _SPINE_H_ */
-diff -ruBbd cacti-spine-0.8.7g.old/util.c cacti-spine-0.8.7g/util.c
---- cacti-spine-0.8.7g.old/util.c      2010-07-09 17:39:53.000000000 -0400
-+++ cacti-spine-0.8.7g/util.c  2010-08-31 20:18:58.000000000 -0400
-@@ -755,7 +755,7 @@
-       /* empty string is not all digits */
-       if ( *string == '\0' ) return FALSE;
--      while ( isdigit(*string) )
-+      while ( isdigit((int)*string) )
-               string++;
-       return *string == '\0';
-@@ -773,7 +773,7 @@
-  */
- int is_ipaddress(const char *string) {
-       while (*string) {
--              if ((isdigit(*string)) ||
-+              if ((isdigit((int)*string)) ||
-                       (*string == '.') ||
-                       (*string == ':')) {
-                       string++;
-@@ -887,7 +887,7 @@
-       i = strlen(string);
-       while (i >= 0) {
--              if (isdigit(string[i])) {
-+              if (isdigit((int)string[i])) {
-                       break;
-               }else{
-                       string[i] = '\0';
-@@ -898,17 +898,15 @@
-       return string;
- }
--/*! \fn char *add_slashes(char *string, int arguments_2_strip)
-- *  \brief change all backslashes to forward slashes for the first n arguements.
-+/*! \fn char *add_slashes(char *string)
-+ *  \brief add escaping to back slashes on for Windows type commands.
-  *  \param string the string to replace slashes
-- *  \param arguments_2_strip the number of space delimited arguments to reverse
-  *
-  *  \return a pointer to the modified string. Variable must be freed by parent.
-  *
-  */
--char *add_slashes(char *string, int arguments_2_strip) {
-+char *add_slashes(char *string) {
-       int length;
--      int space_count;
-       int position;
-       int new_position;
-       char *return_str;
-@@ -919,9 +917,8 @@
-       return_str[0] = '\0';
-       length = strlen(string);
--      space_count = 0;
-       position = 0;
--      new_position = position;
-+      new_position = 0;
-       /* simply return on blank string */
-       if (!length) {
-@@ -931,17 +928,9 @@
-       while (position < length) {
-               /* backslash detected, change to forward slash */
-               if (string[position] == '\\') {
--                      /* only add slashes for first x arguments */
--                      if (space_count < arguments_2_strip) {
--                              return_str[new_position] = '/';
--                      }else{
--                              return_str[new_position] = string[position];
--                      }
--              /* end of argument detected */
--              }else if (string[position] == ' ') {
--                      return_str[new_position] = ' ';
--                      space_count++;
--              /* normal character detected */
-+                      return_str[new_position] = '\\';
-+                      new_position++;
-+                      return_str[new_position] = '\\';
-               }else{
-                       return_str[new_position] = string[position];
-               }
-@@ -1248,7 +1237,7 @@
-       seteuid(0);
-       if (geteuid() != 0) {
--              SPINE_LOG_DEBUG(("WARNING: Spine NOT running asroot.  This is require if using ICMP.  Please run \"chmod +s;chown root:root spine\" to resolve."));
-+              SPINE_LOG_DEBUG(("WARNING: Spine NOT running asroot.  This is required if using ICMP.  Please run \"chmod +s;chown root:root spine\" to resolve."));
-               set.icmp_avail = FALSE;
-       }else{
-               SPINE_LOG_DEBUG(("DEBUG: Spine is running asroot."));
-diff -ruBbd cacti-spine-0.8.7g.old/util.h cacti-spine-0.8.7g/util.h
---- cacti-spine-0.8.7g.old/util.h      2010-07-09 17:39:53.000000000 -0400
-+++ cacti-spine-0.8.7g/util.h  2010-08-31 20:18:58.000000000 -0400
-@@ -54,7 +54,7 @@
- extern int is_hexadecimal(const char * str, const short ignore_space);
- /* string and file functions */
--extern char *add_slashes(char *string, int arguments_2_strip);
-+extern char *add_slashes(char *string);
- extern int file_exists(const char *filename);
- extern char *strip_alpha(char *string);
- extern char *strncopy(char *dst, const char *src, size_t n);
This page took 0.268578 seconds and 4 git commands to generate.