Name: UnRAR source for decompressing .RAR and other files. Short Name: unrar URL: https://github.com/aawc/unrar.git Revision: d84d61312db5dd83ed1da9fe3e45cb233a56630c Version: 6.0.3 License: UnRAR License File: src/license.txt License Android Compatible: No Security Critical: yes Shipped: yes Description: This library is used to decompress and analyze .RAR and other related files that have been downloaded by the user to check their Safe Browsing reputation. It is only for Chromium on desktop. Warning: Please note that changes have been made to this library to terminate the current process in which this library is running, when it encounters some error conditions. This is acceptable for Chromium because the library executes inside a sandbox, but may not apply more broadly. Notable changes from upstream: - Use CHROMIUM_UNRAR macro to guard Chromium-specific changes. - Rewrite WinNT() in isnt.cpp to use the new Windows APIs. - Replace exceptions with terminating the current process. Guarded with the macro UNRAR_NO_EXCEPTIONS. - Pass a file handle to the rar file, instead of trying to open the rar file inside the unrar library code. This is done because the unrar library code operates inside a sandbox, so it doesn't have the permissions to open files. - Remove some static initializers. - Pass a file handle to a temporary file with write permission, so the archive can be extracted inside the sandbox for analysis. - Fix a bug with NOVOLUME implementation (https://crbug.com/949787). This should be temporary, until the fix can be pulled from upstream. - More static initializers removed. - Changes to support building in -std=c++20 mode. - Cherry-picked https://github.com/aawc/unrar/pull/35 All these changes are included in one patch file (chromium_changes.patch)