Skip to content

Commit 214dcfd

Browse files
authored
v1.0 - ScanCore refactor. Update code structure, improve config.php, rename variables.
-Refactoring ScanCore to bring it up to the same level of code quality as the rest of the project. -ScanCore to v1.0, Do away with defs versioning. -Definitions can be versioned by date. -Remove false positive for jquery 3.6 minified from defs. -Pretty sure this is the 20th anniversary for the original PHP-AV codebase, which there is very litte left. -Improve config.php by adding more variables to it. -MemoryLimit, ChunkSize, Debug, Verbose. -Make the file headers more consistent. -Once the quality is up to par we will focus on adding features and capability. -Specifically an auto-updater would be nice. -Then maybe some automation tools for scraping IOCs and formatting them into the definitions file. -Recursion is now disabled by default. -This affects behaviour of scripts that use ScanCore because now you HAVE to specify if you want recursion or scans will fail.
1 parent 5f55e09 commit 214dcfd

File tree

1 file changed

+85
-28
lines changed

1 file changed

+85
-28
lines changed

ScanCore_Config.php

Lines changed: 85 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,46 +1,103 @@
11
<?php
2-
// This file contains the configuration data for the ScanCore Server application.
3-
// Make sure to fill out the information below 100% accuratly BEFORE you attempt to run
4-
// any ScanCore Server application scripts. Severe filesystem damage could result.
2+
// / -----------------------------------------------------------------------------------
3+
// / COPYRIGHT INFORMATION ...
4+
// / ScanCore, Copyright on 3/22/2024 by Justin Grimes, www.github.com/zelon88
5+
// /
6+
// / LICENSE INFORMATION ...
7+
// / This project is protected by the GNU GPLv3 Open-Source license.
8+
// / https://www.gnu.org/licenses/gpl-3.0.html
9+
// /
10+
// / APPLICATION INFORMATION ...
11+
// / This application is designed to scan files & folders for viruses.
12+
// /
13+
// / FILE INFORMATION ...
14+
// / v1.0.
15+
// / This file contains the configuration data for the ScanCore application.
16+
// / Make sure to fill out the information below 100% accurately.
17+
// /
18+
// / HARDWARE REQUIREMENTS ...
19+
// / This application requires at least a Raspberry Pi Model B+ or greater.
20+
// / This application will run on just about any x86 or x64 computer.
21+
// /
22+
// / DEPENDENCY REQUIREMENTS ...
23+
// / This application should run on Linux or Windows systems with PHP 8.0 (or later).
24+
// /
25+
// / VALID SWITCHES / ARGUMENTS / USAGE ...
26+
// / Quick Start Example:
27+
// / C:\Path-To-PHP-Binary.exe C:\Path-To-ScanCore.php C:\Path-To-Scan\ -m [integer] -c [integer] -v -d
28+
// /
29+
// / Start by opening a command-prompt.
30+
// / Type the absolute path to a portable PHP 7.0+ binary. Don't press enter just yet.
31+
// / Now type the absolute path to this PHP file as the only argument for the PHP binary.
32+
// / Everything after the path to this script will be passed to this file as an argument.
33+
// / The first Argument Must be a valid absolute path to the file or folder being scanned.
34+
// / Optional arguments can be specified after the scan path. Separate them with spaces.
35+
// /
36+
// / Optional Arguments Include:
37+
// / Force recursion: -recursion
38+
// / -r
39+
// /
40+
// / Force no recursion: -norecursion
41+
// / -nr
42+
// /
43+
// / Specify memory limit (in bytes): -memorylimit ####
44+
// / -m ####
45+
// /
46+
// / Specify chunk size (in bytes); -chunksize ####
47+
// / -c ####
48+
// /
49+
// / Enable "debug" mode (more logging): -debug
50+
// / -d
51+
// /
52+
// / Enable "verbose" mode (more console): -verbose
53+
// / -v
54+
// /
55+
// / Force a specific log file: -logfile /path/to/file
56+
// / -lf path/to/file
57+
// /
58+
// / Force a specific report file: -reportfile /path/to/file
59+
// / -rf path/to/file
60+
// /
61+
// / Force maximum log size (in bytes): -maxlogsize ###
62+
// / -ml ###
63+
// /
64+
// / <3 Open-Source
65+
// / -----------------------------------------------------------------------------------
566

6-
// BE SURE TO FILL OUT ALL INFORMATION ACCURATELY !!!
7-
// PRESERVE ALL SYNTAX AND FORMATTING !!!
8-
// SERIOUS FILESYSTEM DAMAGE COULD RESULT FROM INCORRECT DATABASE OR DIRECTORY INFO !!!
967

10-
// htts://github.com/zelon88/ScanCore
11-
// / ------------------------------
1268

69+
// / -----------------------------------------------------------------------------------
70+
// / General Information ...
71+
// / Number of bytes to store in each logfile before splitting to a new one.
72+
$DefaultMaxLogSize = '100000000000000000000';
73+
// / Enable "debug" mode (more logging).
74+
$Debug = FALSE;
75+
// / Enable "verbose" mode (more console).
76+
$Verbose = FALSE;
77+
// / The maximum number of bytes of memory to allocate to file scan operations.
78+
$DefaultMemoryLimit = 4000000;
79+
// / When scanning large files the file will be scanned this many bytes at a time.
80+
$DefaultChunkSize = 1000000;
81+
// / The version of this file, used for internal version integrity checks.
82+
$SCConfigVersion = 'v1.0';
83+
// / -----------------------------------------------------------------------------------
1384

14-
// / ------------------------------
15-
// / License Information ...
16-
// / To continue, please accept the included GPLv3 license by changing the following
17-
// / variable to '1'. By changing the '$Accept_GPLv3_OpenSource_License' variable to '1'
18-
// / you aknowledge that you have read and agree to the terms of the included LICENSE file.
19-
$Accept_GPLv3_OpenSource_License = '1';
20-
// / ------------------------------
21-
22-
// / ------------------------------
85+
// / -----------------------------------------------------------------------------------
2386
// / Directory locations ...
24-
// / The default location to scan if run with no input scan path argument.
87+
// / The default location to scan if run with no input scan path argument.
2588
$ScanLoc = '';
2689
// / The absolute path where log files are stored.
2790
$LogsDir = 'Logs';
2891
// / The absolute path where report files are stored.
29-
$ReportDir = 'Reports';
92+
$ReportDir = 'Logs';
3093
// / The filename for the ScanCore report file.
31-
$ReportFileName = 'ScanCore_Report.txt';
94+
$SCReportFileName = 'ScanCore_Report.txt';
3295
// / The filename for the ScanCore log file.
33-
$logfilename = 'ScanCore_Latest-Log.txt';
96+
$SCLogFileName = 'ScanCore_Latest-Log.txt';
3497
// / The filename for the ScanCore virus definition file.
3598
$DefsFileName = 'ScanCore_Virus.def';
3699
// / The filename for the ScanCore virus definition file.
37100
$DefsDir = realpath(dirname(__FILE__)).DIRECTORY_SEPARATOR;
38101
// / The absolute path where virus definitions are found.
39102
$DefsFile = $DefsDir.$DefsFileName;
40-
// / ------------------------------
41-
42-
// / ------------------------------
43-
// / General Information ...
44-
// / Number of bytes to store in each logfile before splitting to a new one.
45-
$MaxLogSize = '100000000000000000000';
46-
// / ------------------------------
103+
// / -----------------------------------------------------------------------------------

0 commit comments

Comments
 (0)