blob: 7782eec3d1ae8b79fc7669e396e53090d2ed6b69 [file] [log] [blame]
Name: UnRAR source for decompressing .RAR and other files.
Short Name: unrar
URL: https://github.com/aawc/unrar.git
Revision: 0ff832d31470471803b175cfff4e40c1b08ee779
Version: 5.6.1.4
License: Non-standard
License File: src/license.txt
Security Critical: 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.
- Explicit use of parentheses to fix linter errors (001_linter.patch)
- 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.
- Put all symbols into a namespace third_party_unrar to avoid polluting global
namespace (add_namespaces.patch)
- Remove unnecessary semicolons from header files (semicolons.patch)
- Fix a bug with NOVOLUME implementation (https://crbug.com/949787). This
should be temporary, until the fix can be pulled from upstream.
(fix_novolume.patch)