Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package cacti for openSUSE:Factory checked in at 2026-07-09 22:21:25 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/cacti (Old) and /work/SRC/openSUSE:Factory/.cacti.new.1991 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "cacti" Thu Jul 9 22:21:25 2026 rev:59 rq:1364733 version:1.2.31+git5.48d9fdd3 Changes: -------- --- /work/SRC/openSUSE:Factory/cacti/cacti.changes 2026-06-17 16:20:40.436973835 +0200 +++ /work/SRC/openSUSE:Factory/.cacti.new.1991/cacti.changes 2026-07-09 22:22:35.712712969 +0200 @@ -1,0 +2,10 @@ +Thu Jul 9 13:14:00 UTC 2026 - Joel Baltazor <[email protected]> + +- Update to version 1.2.31+git5.48d9fdd3: + * Allow Users to Switch Devices for Data Query Graphs (#7247) + * ci: add ondrej PHP PPA so libapache2-mod-php installs on ubuntu-24.04 (#7219) + * fix: Update the syntax.yml workflow to not check the matrix version when installing libapache-mod-php (#7217) + * fix: Address a few minor realtime memory leaks after audit (#7213) + * fix: keep realtime graphing alive when a poll fails or returns non-JSON (#7212) (#7215) + +------------------------------------------------------------------- Old: ---- cacti-1.2.31+git0.1e8eaca2.obscpio cacti-1.2.31+git0.1e8eaca2.tar.gz New: ---- cacti-1.2.31+git5.48d9fdd3.obscpio cacti-1.2.31+git5.48d9fdd3.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ cacti.spec ++++++ --- /var/tmp/diff_new_pack.MiYojS/_old 2026-07-09 22:22:36.868752268 +0200 +++ /var/tmp/diff_new_pack.MiYojS/_new 2026-07-09 22:22:36.872752404 +0200 @@ -32,7 +32,7 @@ %bcond_with systemd %endif Name: cacti -Version: 1.2.31+git0.1e8eaca2 +Version: 1.2.31+git5.48d9fdd3 %global base_version %(echo %{version} | sed 's/+[^+]*//') %global next_base_version %(echo %{base_version} | awk -F. -v OFS=. '{$NF++; print}') Release: 0 ++++++ _servicedata ++++++ --- /var/tmp/diff_new_pack.MiYojS/_old 2026-07-09 22:22:36.924754172 +0200 +++ /var/tmp/diff_new_pack.MiYojS/_new 2026-07-09 22:22:36.928754308 +0200 @@ -1,6 +1,6 @@ <servicedata> <service name="tar_scm"> <param name="url">https://github.com/Cacti/cacti.git</param> - <param name="changesrevision">1e8eaca26b84b128c39ce8cc8ece42d7ff76aac1</param></service></servicedata> + <param name="changesrevision">48d9fdd3ea7a6b310b0814d23baaf6a09c0798d1</param></service></servicedata> (No newline at EOF) ++++++ cacti-1.2.31+git0.1e8eaca2.obscpio -> cacti-1.2.31+git5.48d9fdd3.obscpio ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cacti-1.2.31+git0.1e8eaca2/.github/workflows/syntax.yml new/cacti-1.2.31+git5.48d9fdd3/.github/workflows/syntax.yml --- old/cacti-1.2.31+git0.1e8eaca2/.github/workflows/syntax.yml 2026-06-15 00:29:38.000000000 +0200 +++ new/cacti-1.2.31+git5.48d9fdd3/.github/workflows/syntax.yml 2026-07-06 14:47:00.000000000 +0200 @@ -40,7 +40,7 @@ strategy: fail-fast: false matrix: - os: [ubuntu-latest] + os: [ubuntu-22.04] php: ${{ fromJSON((github.base_ref == '1.2.x' || github.ref_name == '1.2.x') && '["8.2","8.3","8.4"]' || '["8.2","8.3","8.4"]') }} experimental: [false] @@ -137,15 +137,17 @@ - name: Check PHP syntax run: if find ${{ github.workspace }} -name '*.php' -exec php -l {} 2>&1 \; | grep -iv 'no syntax errors detected'; then exit 1; fi - - name: Run and apt-get update - run: true + - name: Add ondrej PHP PPA and apt-get update + run: | + sudo add-apt-repository -y ppa:ondrej/php + sudo apt-get -y update - name: Install Apache and Tools run: | sudo apt-get install \ -o Acquire::http::Timeout="10" \ -o Acquire::https::Timeout="10" \ - -o Acquire::Retries="30" apache2 snmp snmpd rrdtool libapache2-mod-php${{ matrix.php }} + -o Acquire::Retries="30" apache2 snmp snmpd rrdtool libapache2-mod-php - name: Start SNMPD Agent and Test Agent run: | diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cacti-1.2.31+git0.1e8eaca2/CHANGELOG new/cacti-1.2.31+git5.48d9fdd3/CHANGELOG --- old/cacti-1.2.31+git0.1e8eaca2/CHANGELOG 2026-06-15 00:29:38.000000000 +0200 +++ new/cacti-1.2.31+git5.48d9fdd3/CHANGELOG 2026-07-06 14:47:00.000000000 +0200 @@ -1,5 +1,9 @@ Cacti CHANGELOG +1.2.x +-issue: #7212: Address a few small memory leaks in realtime graphing +-feature#7246: It should be possible to change the Device of a Graph if both Devices include the Data Query + 1.2.31 -security#GHSA-23g4-vf2j-94w4: CVE-2026-39894 RRDtool metric shift via LC_NUMERIC locale comma decimal formatting -security#GHSA-273r-qr93-wgcp: CVE-2026-40082 Session Fixation via missing session_regenerate_id() after login diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cacti-1.2.31+git0.1e8eaca2/graphs.php new/cacti-1.2.31+git5.48d9fdd3/graphs.php --- old/cacti-1.2.31+git0.1e8eaca2/graphs.php 2026-06-15 00:29:38.000000000 +0200 +++ new/cacti-1.2.31+git5.48d9fdd3/graphs.php 2026-07-06 14:47:00.000000000 +0200 @@ -589,15 +589,24 @@ api_tree_item_save(0, get_nfilter_request_var('tree_id'), TREE_ITEM_TYPE_GRAPH, get_nfilter_request_var('tree_item_id'), '', $selected_items[$i], 0, 0, 0, 0, false); } } elseif (get_request_var('drp_action') == '5') { // change host - get_filter_request_var('host_id'); - $failures = false; + $failures = 0; + $success = 0; + $host_id = get_filter_request_var('host_id'); + for ($i=0;($i<cacti_count($selected_items));$i++) { - if (!api_graph_change_device($selected_items[$i], get_request_var('host_id'))) { - $failures = true; - } + $local_graph_id = $selected_items[$i]; + + $title = db_fetch_cell_prepared('SELECT title_cache + FROM graph_templates_graph + WHERE local_graph_id = ?', + array($local_graph_id)); - if ($failures) { - raise_message(33); + if (api_graph_change_device($local_graph_id, $host_id)) { + raise_message('moved_' . $local_graph_id, __('Graph %s Moved to new Device', $title), MESSAGE_LEVEL_INFO); + $success++; + } else { + raise_message('notmoved_' . $local_graph_id, __('Graph %s not Moved. Device missing Data Query', $title), MESSAGE_LEVEL_WARN); + $failures++; } } } elseif (get_request_var('drp_action') == '6') { // reapply suggested naming diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cacti-1.2.31+git0.1e8eaca2/include/realtime.js new/cacti-1.2.31+git5.48d9fdd3/include/realtime.js --- old/cacti-1.2.31+git0.1e8eaca2/include/realtime.js 2026-06-15 00:29:38.000000000 +0200 +++ new/cacti-1.2.31+git5.48d9fdd3/include/realtime.js 2026-07-06 14:47:00.000000000 +0200 @@ -153,6 +153,7 @@ function countRealtimeGraphs() { var graphs = 0; + var key; for (key in realtimeArray) { if (realtimeArray[key] == true) { @@ -165,6 +166,7 @@ function stopRealtime() { var graph; + var key; for (key in realtimeArray) { var graph_id = key; @@ -272,9 +274,15 @@ $.get(urlPath+'graph_realtime.php?action=countdown&top='+parseInt(position.top)+'&left='+parseInt(position.left)+(isThumb ? '&graph_nolegend=true':'&graph_nolegend=false')+'&graph_end=0&graph_start=-'+(parseInt(graph_start) > 0 ? graph_start:'60')+'&local_graph_id='+local_graph_id+'&ds_step='+ds_step+'&count='+count+'&size='+size) .done(function(data) { - var results = $.parseJSON(data); + var results; - if (realtimeArray[results.local_graph_id] == true) { + try { + results = $.parseJSON(data); + } catch (e) { + results = null; + } + + if (results != null && realtimeArray[results.local_graph_id] == true) { var image_format = (results.image_format == 'svg+xml') ? 'svg+xml' : 'png'; $('#graph_'+results.local_graph_id).attr('src', 'data:image/'+image_format+';base64,'+results.data).change(); @@ -288,11 +296,12 @@ destroy(data); destroy(results); destroy(position); - - graphsRendered++; }) .fail(function(data) { getPresentHTTPError(data); + }) + .always(function() { + graphsRendered++; }); }); } @@ -318,6 +327,10 @@ } function destroy(obj) { + if (obj == null) { + return; + } + for (var prop in obj){ var property = obj[prop]; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cacti-1.2.31+git0.1e8eaca2/lib/api_graph.php new/cacti-1.2.31+git5.48d9fdd3/lib/api_graph.php --- old/cacti-1.2.31+git0.1e8eaca2/lib/api_graph.php 2026-06-15 00:29:38.000000000 +0200 +++ new/cacti-1.2.31+git5.48d9fdd3/lib/api_graph.php 2026-07-06 14:47:00.000000000 +0200 @@ -599,12 +599,30 @@ } function api_graph_change_device($local_graph_id, $host_id) { - $dqgraph = db_fetch_cell_prepared('SELECT snmp_query_id + $proceed = false; + + $graph = db_fetch_row_prepared('SELECT * FROM graph_local WHERE id = ?', array($local_graph_id)); - if (empty($dqgraph)) { + if (cacti_sizeof($graph)) { + if ($graph['snmp_query_id'] > 0) { + $exists = db_fetch_cell_prepared('SELECT snmp_query_id + FROM host_snmp_query + WHERE snmp_query_id = ? + AND host_id = ?', + array($graph['snmp_query_id'], $host_id)); + + if ($exists > 0) { + $proceed = true; + } + } else { + $proceed = true; + } + } + + if ($proceed) { db_execute_prepared('UPDATE graph_local SET host_id = ? WHERE id = ?', @@ -616,7 +634,7 @@ $data_ids = db_fetch_assoc_prepared('SELECT DISTINCT dtr.local_data_id FROM graph_templates_item AS gti INNER JOIN data_template_rrd AS dtr - ON gti.task_item_id=dtr.id + ON gti.task_item_id = dtr.id WHERE gti.local_graph_id = ?', array($local_graph_id)); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cacti-1.2.31+git0.1e8eaca2/tests/security/baselines/architectural_hotspots.baseline.tsv new/cacti-1.2.31+git5.48d9fdd3/tests/security/baselines/architectural_hotspots.baseline.tsv --- old/cacti-1.2.31+git0.1e8eaca2/tests/security/baselines/architectural_hotspots.baseline.tsv 2026-06-15 00:29:38.000000000 +0200 +++ new/cacti-1.2.31+git5.48d9fdd3/tests/security/baselines/architectural_hotspots.baseline.tsv 2026-07-06 14:47:00.000000000 +0200 @@ -542,7 +542,7 @@ sort_order_input ./data_queries.php:872 ORDER BY field_name, sequence', array(get_request_var('id'), $data_template['id'])); sort_order_input ./graph_templates.php:504 ORDER BY name', array(get_request_var('id'))); sort_order_input ./graph_templates_inputs.php:197 ORDER BY gti.sequence", array(get_request_var('id'), get_request_var('graph_template_id'))); -sort_order_input ./graphs.php:1363 ORDER BY gti.sequence", array(get_request_var('id'))); +sort_order_input ./graphs.php:1372 ORDER BY gti.sequence", array(get_request_var('id'))); sort_order_input ./host_templates.php:467 ORDER BY graph_templates.name', array(get_request_var('id'))); sort_order_input ./host_templates.php:505 ORDER BY gt.name', array(get_request_var('id'))),'name','id','','','');?> sort_order_input ./host_templates.php:524 ORDER BY snmp_query.name', array(get_request_var('id'))); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cacti-1.2.31+git0.1e8eaca2/tests/security/baselines/sink_inventory.baseline.tsv new/cacti-1.2.31+git5.48d9fdd3/tests/security/baselines/sink_inventory.baseline.tsv --- old/cacti-1.2.31+git0.1e8eaca2/tests/security/baselines/sink_inventory.baseline.tsv 2026-06-15 00:29:38.000000000 +0200 +++ new/cacti-1.2.31+git5.48d9fdd3/tests/security/baselines/sink_inventory.baseline.tsv 2026-07-06 14:47:00.000000000 +0200 @@ -777,17 +777,17 @@ header_redirect ./graph_templates_items.php:91 header('Location: graph_templates.php?header=false&action=template_edit&id=' . get_request_var('graph_template_id')); header_redirect ./graph_view.php:187 header('Location: graph_view.php?action=list&header=false'); header_redirect ./graph_view.php:388 header('Location: permission_denied.php'); -header_redirect ./graphs.php:1303 header('Location: graphs.php?header=false'); -header_redirect ./graphs.php:1478 header('Location: graphs.php'); +header_redirect ./graphs.php:1312 header('Location: graphs.php?header=false'); +header_redirect ./graphs.php:1487 header('Location: graphs.php'); header_redirect ./graphs.php:267 header('Location: graphs.php?action=graph_edit&header=false&id=' . $local_graph_id); header_redirect ./graphs.php:269 header('Location: graphs.php?header=false'); header_redirect ./graphs.php:421 header('Location: graphs.php?action=graph_edit&header=false&host_id=' . get_nfilter_request_var('host_id') . '&new=1'); header_redirect ./graphs.php:423 header('Location: graphs.php?action=graph_edit&header=false&id=' . (empty($local_graph_id) ? get_nfilter_request_var('local_graph_id') : $local_graph_id) . (isset_request_var('host_id') ? '&host_id=' . get_nfilter_request_var('host_id') : '')); header_redirect ./graphs.php:425 header('Location: graphs.php?action=graph_edit&header=false&id=' . $local_graph_id); header_redirect ./graphs.php:427 header('Location: graphs.php?header=false'); -header_redirect ./graphs.php:754 header("Location: aggregate_graphs.php?header=false&action=edit&tab=details&id=$local_graph_id"); -header_redirect ./graphs.php:787 header('Location: graphs.php?header=false&template_id=-1'); -header_redirect ./graphs.php:789 header('Location: graphs.php?header=false'); +header_redirect ./graphs.php:763 header("Location: aggregate_graphs.php?header=false&action=edit&tab=details&id=$local_graph_id"); +header_redirect ./graphs.php:796 header('Location: graphs.php?header=false&template_id=-1'); +header_redirect ./graphs.php:798 header('Location: graphs.php?header=false'); header_redirect ./graphs_items.php:235 header('Location: graphs.php?header=false&action=item_edit&graph_template_item_id=' . (empty($graph_template_item_id) ? get_nfilter_request_var('graph_template_item_id') : $graph_template_item_id) . '&id=' . get_nfilter_request_var('local_graph_id')); header_redirect ./graphs_items.php:238 header('Location: graphs.php?header=false&action=graph_edit&id=' . get_nfilter_request_var('local_graph_id')); header_redirect ./graphs_items.php:42 header('Location: graphs.php?header=false&action=graph_edit&id=' . get_request_var('local_graph_id')); ++++++ cacti-1.2.31+git0.1e8eaca2.tar.gz -> cacti-1.2.31+git5.48d9fdd3.tar.gz ++++++ /work/SRC/openSUSE:Factory/cacti/cacti-1.2.31+git0.1e8eaca2.tar.gz /work/SRC/openSUSE:Factory/.cacti.new.1991/cacti-1.2.31+git5.48d9fdd3.tar.gz differ: char 12, line 1 ++++++ cacti.obsinfo ++++++ --- /var/tmp/diff_new_pack.MiYojS/_old 2026-07-09 22:22:46.549082389 +0200 +++ /var/tmp/diff_new_pack.MiYojS/_new 2026-07-09 22:22:46.597084055 +0200 @@ -1,5 +1,5 @@ name: cacti -version: 1.2.31+git0.1e8eaca2 -mtime: 1781476178 -commit: 1e8eaca26b84b128c39ce8cc8ece42d7ff76aac1 +version: 1.2.31+git5.48d9fdd3 +mtime: 1783342020 +commit: 48d9fdd3ea7a6b310b0814d23baaf6a09c0798d1
