diff --git a/README.md b/README.md index c1a0d08..c5a9238 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Xvirus SDK C# -Xvirus SDK 4.2.1 C# bindings. +Xvirus SDK 4.2.2 C# bindings. ## Table of Contents @@ -41,9 +41,15 @@ The following Operating Systems are supported: ## Changelog +- Version **4.2.2**: + - Optimized scanning speed of PDF files + - ScanResult now returns the file path + - Added new ScanFolder() and ScanFolderString() functions + - Version **4.2.1**: - Optimized scanning speed of big files - Optimized scanning speed in Linux version + - Version **4.2**: - Reduced glibc minimum version to 2.17 on Linux - Added "Logging()" function to enable/disable logging @@ -85,7 +91,7 @@ You have the following functions available: - **Load** - Loads Xvirus Scan Engine into memory, if set `force`=true it will reload the scan engine, even if it is already loaded. - **Unload** - Unloads Xvirus Scan Engine from memory. - **Scan** - Scans the file located at `filepath`. It will return a [`ScanResult`](#Model). -- **ScanAsString** - Scans the file located at `filepath`. It will return one of the following strings: +- **ScanString** - Scans the file located at `filepath`. It will return one of the following strings: - "**Safe**" - If no malware is detected. - "**Malware**" - If malware is detected but the name isn't known. - **_Malware Name_** - If it is malware from a known family (example: "Trojan.Downloader"). @@ -93,6 +99,8 @@ You have the following functions available: - "**File not found!**" - If no file is found in the submited path. - "**File too big!**" - If the file size is bigger than the set limit. - "**Could not get file hash!**" - There was an error calculating the hash of the file. +- **ScanFolder** - Scans all the files inside the folder at `folderpath`. It will return an IEnumerable of [`ScanResult`](#Model). +- **ScanFolderString** - Scans all the files inside the folder at `folderpath`. It will return the scan result message for each file scanned. - **CheckUpdates** - Checks and updates the databases and AI engine to the most recent versions. If `checkSDKUpdates`=true then it will also check for SDK updates. If `loadDBAfterUpdate`=true then it will reload the Xvirus Scan Engine after the update is done. It can return the following strings: - "**There is a new SDK version available!**" - "**Database was updated!**" @@ -105,7 +113,7 @@ You have the following functions available: ## Model -The `scan` function returns a class `ScanResult` with the following properties: +The `scan` and `scanFolder` functions returns a class `ScanResult` with the following properties: ```c# public class ScanResult @@ -113,6 +121,7 @@ public class ScanResult public bool IsMalware { get; set; } // true if malware public string Name { get; set; } // detection name public double MalwareScore { get; set; } // between 0 and 1, higher score means more likely to be malware, -1 if there was an error + public string Path { get; set; } // file path } ``` diff --git a/bin/BaseLibrary.dll b/bin/BaseLibrary.dll index 4d2a04d..f2998ef 100644 Binary files a/bin/BaseLibrary.dll and b/bin/BaseLibrary.dll differ diff --git a/bin/XvirusSDK.deps.json b/bin/XvirusSDK.deps.json index 3492f17..50461b4 100644 --- a/bin/XvirusSDK.deps.json +++ b/bin/XvirusSDK.deps.json @@ -6,7 +6,7 @@ "compilationOptions": {}, "targets": { ".NETCoreApp,Version=v7.0": { - "XvirusSDK/4.2.1.0": { + "XvirusSDK/4.2.2.0": { "dependencies": { "BaseLibrary": "1.0.0" }, @@ -1050,7 +1050,7 @@ } }, "libraries": { - "XvirusSDK/4.2.1.0": { + "XvirusSDK/4.2.2.0": { "type": "project", "serviceable": false, "sha512": "" diff --git a/bin/XvirusSDK.dll b/bin/XvirusSDK.dll index a8ce74f..2202d95 100644 Binary files a/bin/XvirusSDK.dll and b/bin/XvirusSDK.dll differ