Changeset 3487458
- Timestamp:
- 03/20/2026 08:32:21 PM (9 days ago)
- Location:
- freelancebo-sentra-control
- Files:
-
- 4 edited
- 20 copied
-
tags/2.2.1 (copied) (copied from freelancebo-sentra-control/trunk)
-
tags/2.2.1/admin (copied) (copied from freelancebo-sentra-control/trunk/admin)
-
tags/2.2.1/admin/views/blocklist.php (copied) (copied from freelancebo-sentra-control/trunk/admin/views/blocklist.php)
-
tags/2.2.1/admin/views/dashboard.php (copied) (copied from freelancebo-sentra-control/trunk/admin/views/dashboard.php)
-
tags/2.2.1/admin/views/events.php (copied) (copied from freelancebo-sentra-control/trunk/admin/views/events.php)
-
tags/2.2.1/admin/views/firewall.php (copied) (copied from freelancebo-sentra-control/trunk/admin/views/firewall.php)
-
tags/2.2.1/admin/views/scans.php (copied) (copied from freelancebo-sentra-control/trunk/admin/views/scans.php)
-
tags/2.2.1/admin/views/settings.php (copied) (copied from freelancebo-sentra-control/trunk/admin/views/settings.php)
-
tags/2.2.1/admin/views/status.php (copied) (copied from freelancebo-sentra-control/trunk/admin/views/status.php)
-
tags/2.2.1/freelancebo-sentra-control.php (copied) (copied from freelancebo-sentra-control/trunk/freelancebo-sentra-control.php) (2 diffs)
-
tags/2.2.1/includes (copied) (copied from freelancebo-sentra-control/trunk/includes)
-
tags/2.2.1/includes/class-sentra-api-client.php (copied) (copied from freelancebo-sentra-control/trunk/includes/class-sentra-api-client.php)
-
tags/2.2.1/includes/class-sentra-event-queue.php (modified) (3 diffs)
-
tags/2.2.1/includes/class-sentra-heartbeat.php (copied) (copied from freelancebo-sentra-control/trunk/includes/class-sentra-heartbeat.php)
-
tags/2.2.1/includes/modules/class-sentra-firewall.php (copied) (copied from freelancebo-sentra-control/trunk/includes/modules/class-sentra-firewall.php)
-
tags/2.2.1/includes/modules/class-sentra-malware-scanner.php (copied) (copied from freelancebo-sentra-control/trunk/includes/modules/class-sentra-malware-scanner.php) (1 diff)
-
tags/2.2.1/languages (copied) (copied from freelancebo-sentra-control/trunk/languages)
-
tags/2.2.1/languages/freelancebo-sentra-control-it_IT.mo (copied) (copied from freelancebo-sentra-control/trunk/languages/freelancebo-sentra-control-it_IT.mo)
-
tags/2.2.1/languages/freelancebo-sentra-control-it_IT.po (copied) (copied from freelancebo-sentra-control/trunk/languages/freelancebo-sentra-control-it_IT.po)
-
tags/2.2.1/languages/freelancebo-sentra-control.pot (copied) (copied from freelancebo-sentra-control/trunk/languages/freelancebo-sentra-control.pot)
-
tags/2.2.1/readme.txt (copied) (copied from freelancebo-sentra-control/trunk/readme.txt) (3 diffs)
-
trunk/freelancebo-sentra-control.php (modified) (2 diffs)
-
trunk/includes/class-sentra-event-queue.php (modified) (3 diffs)
-
trunk/readme.txt (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
freelancebo-sentra-control/tags/2.2.1/freelancebo-sentra-control.php
r3485789 r3487458 4 4 * Plugin URI: https://freelancebo.it 5 5 * Description: WordPress security agent - connects to FreelanceBo Sentra Control central console for WAF, malware scanning, brute force protection, and file integrity monitoring. 6 * Version: 2. 1.96 * Version: 2.2.1 7 7 * Author: Freelancebo 8 8 * License: GPL-2.0-or-later … … 12 12 if (!defined('ABSPATH')) exit; 13 13 14 define("SENTRA_VERSION", "2. 1.9");14 define("SENTRA_VERSION", "2.2.1"); 15 15 define('SENTRA_PLUGIN_DIR', plugin_dir_path(__FILE__)); 16 16 define('SENTRA_PLUGIN_URL', plugin_dir_url(__FILE__)); -
freelancebo-sentra-control/tags/2.2.1/includes/class-sentra-event-queue.php
r3485648 r3487458 6 6 private $queue = []; 7 7 private $option_key = 'sentra_event_queue'; 8 private $loaded = false; 8 9 9 10 public function __construct(Sentra_API_Client $api) { … … 57 58 } 58 59 59 $this->save_queue(); 60 // Save directly without reloading from DB 61 $this->do_save(); 60 62 } 61 63 62 64 public function save_queue() { 63 65 $this->load_queue(); 66 $this->do_save(); 67 } 68 69 /** 70 * Persist current in-memory queue to the database. 71 */ 72 private function do_save() { 64 73 if (!empty($this->queue)) { 65 74 update_option($this->option_key, $this->queue, false); … … 70 79 71 80 private function load_queue() { 72 if (empty($this->queue)) { 73 $this->queue = get_option($this->option_key, []); 74 if (!is_array($this->queue)) { 75 $this->queue = []; 81 if (!$this->loaded) { 82 $this->loaded = true; 83 $stored = get_option($this->option_key, []); 84 if (!is_array($stored)) { 85 $stored = []; 76 86 } 87 // Merge any stored events with in-memory events (e.g. pushed before load) 88 $this->queue = array_merge($stored, $this->queue); 77 89 } 78 90 } -
freelancebo-sentra-control/tags/2.2.1/includes/modules/class-sentra-malware-scanner.php
r3485775 r3487458 156 156 // Check signature patterns 157 157 foreach ($this->signatures as $pattern => $info) { 158 if (@preg_match('/' . $pattern . '/i s', $content)) {158 if (@preg_match('/' . $pattern . '/im', $content)) { 159 159 $findings[] = [ 160 160 'file' => $rel_path, -
freelancebo-sentra-control/tags/2.2.1/readme.txt
r3485789 r3487458 5 5 Tested up to: 6.9 6 6 Requires PHP: 7.4 7 Stable tag: 2. 1.97 Stable tag: 2.2.1 8 8 License: GPLv2 or later 9 9 License URI: https://www.gnu.org/licenses/gpl-2.0.html … … 75 75 == Changelog == 76 76 77 = 2.2.1 = 78 * Fixed critical bug: event queue flush never cleared events from database (save_queue reloaded stale data from WP option cache) 79 * Fixed missing WP-cron schedule: sentra_flush_events could become unscheduled, stopping all event delivery 80 * Improved load_queue with loaded flag to prevent redundant database reads 81 77 82 = 2.1.9 = 78 83 * Fixed WAF blocking legitimate REST API calls from admin users (AIOSEO, Gutenberg, etc.) … … 160 165 == Upgrade Notice == 161 166 167 = 2.2.1 = 168 Critical fix: event queue was not properly flushing to server. All users should update immediately. 169 162 170 = 2.1.4 = 163 171 * Renamed plugin slug, folder and main file to freelancebo-sentra-control per WordPress.org guidelines -
freelancebo-sentra-control/trunk/freelancebo-sentra-control.php
r3486680 r3487458 4 4 * Plugin URI: https://freelancebo.it 5 5 * Description: WordPress security agent - connects to FreelanceBo Sentra Control central console for WAF, malware scanning, brute force protection, and file integrity monitoring. 6 * Version: 2.2. 06 * Version: 2.2.1 7 7 * Author: Freelancebo 8 8 * License: GPL-2.0-or-later … … 12 12 if (!defined('ABSPATH')) exit; 13 13 14 define("SENTRA_VERSION", "2.2. 0");14 define("SENTRA_VERSION", "2.2.1"); 15 15 define('SENTRA_PLUGIN_DIR', plugin_dir_path(__FILE__)); 16 16 define('SENTRA_PLUGIN_URL', plugin_dir_url(__FILE__)); -
freelancebo-sentra-control/trunk/includes/class-sentra-event-queue.php
r3485648 r3487458 6 6 private $queue = []; 7 7 private $option_key = 'sentra_event_queue'; 8 private $loaded = false; 8 9 9 10 public function __construct(Sentra_API_Client $api) { … … 57 58 } 58 59 59 $this->save_queue(); 60 // Save directly without reloading from DB 61 $this->do_save(); 60 62 } 61 63 62 64 public function save_queue() { 63 65 $this->load_queue(); 66 $this->do_save(); 67 } 68 69 /** 70 * Persist current in-memory queue to the database. 71 */ 72 private function do_save() { 64 73 if (!empty($this->queue)) { 65 74 update_option($this->option_key, $this->queue, false); … … 70 79 71 80 private function load_queue() { 72 if (empty($this->queue)) { 73 $this->queue = get_option($this->option_key, []); 74 if (!is_array($this->queue)) { 75 $this->queue = []; 81 if (!$this->loaded) { 82 $this->loaded = true; 83 $stored = get_option($this->option_key, []); 84 if (!is_array($stored)) { 85 $stored = []; 76 86 } 87 // Merge any stored events with in-memory events (e.g. pushed before load) 88 $this->queue = array_merge($stored, $this->queue); 77 89 } 78 90 } -
freelancebo-sentra-control/trunk/readme.txt
r3486680 r3487458 5 5 Tested up to: 6.9 6 6 Requires PHP: 7.4 7 Stable tag: 2.2. 07 Stable tag: 2.2.1 8 8 License: GPLv2 or later 9 9 License URI: https://www.gnu.org/licenses/gpl-2.0.html … … 75 75 == Changelog == 76 76 77 = 2.2.1 = 78 * Fixed critical bug: event queue flush never cleared events from database (save_queue reloaded stale data from WP option cache) 79 * Fixed missing WP-cron schedule: sentra_flush_events could become unscheduled, stopping all event delivery 80 * Improved load_queue with loaded flag to prevent redundant database reads 81 77 82 = 2.1.9 = 78 83 * Fixed WAF blocking legitimate REST API calls from admin users (AIOSEO, Gutenberg, etc.) … … 160 165 == Upgrade Notice == 161 166 167 = 2.2.1 = 168 Critical fix: event queue was not properly flushing to server. All users should update immediately. 169 162 170 = 2.1.4 = 163 171 * Renamed plugin slug, folder and main file to freelancebo-sentra-control per WordPress.org guidelines
Note: See TracChangeset
for help on using the changeset viewer.