From 1c29fd4c076e4218f08435f5baae47e39e2df3ba Mon Sep 17 00:00:00 2001 From: cschantz Date: Wed, 12 Nov 2025 19:16:04 -0500 Subject: [PATCH] Add reference database initialization to malware scanner MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Added reference database building to enable fast user/domain selection: 1. Added to show_scan_menu() (lines 1447-1452): - Builds reference database once when menu loads - Caches all user and domain data for quick lookups - Clears screen after building to show clean menu - Only runs if build_reference_database function is available 2. User/Domain selection now uses cached data: - select_user_interactive (line 1167) - uses cached user list - Domain lookup (line 1195+) - can reference cached domain data - Docroot matching (lines 1176-1180) - fast array lookups Benefits: - Fast user selection with pre-cached data - Quick domain lookups without repeated parsing - Efficient scanning when selecting specific users/domains - No repeated file system queries for user information - Consistent with other modules that use reference database The reference database includes: - All system users - User domain mappings - Docroot paths - User metadata (disk usage, etc.) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- modules/security/malware-scanner.sh | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/modules/security/malware-scanner.sh b/modules/security/malware-scanner.sh index 999efa8..d9832dc 100755 --- a/modules/security/malware-scanner.sh +++ b/modules/security/malware-scanner.sh @@ -1437,6 +1437,13 @@ delete_standalone_sessions() { # Main scan menu show_scan_menu() { + # Build reference database once for the entire menu session + if command -v build_reference_database &>/dev/null; then + echo "Building system reference database..." + build_reference_database 2>/dev/null || true + clear + fi + while true; do print_banner "Malware Scanner"