|
ILIAS
trunk Revision v13.0_alpha-62-g3b72d83f2e5
|
Inheritance diagram for ILIAS\Filesystem\Util\Archive\UnzipOptions:
Collaboration diagram for ILIAS\Filesystem\Util\Archive\UnzipOptions:Public Member Functions | |
| getZipOutputPath () | |
| withZipOutputPath (string $zip_output_path) | |
| isOverwrite () | |
| withOverwrite (bool $overwrite) | |
| getMaxCompressionRatio () | |
| withMaxCompressionRatio (int $max_compression_ratio) | |
| getRatioCheckMinUncompressedSize () | |
| withRatioCheckMinUncompressedSize (int $ratio_check_min_uncompressed_size) | |
| getMaxAmountOfEntries () | |
| withMaxAmountOfEntries (int $max_amount_of_entries) | |
| getMaxUncompressedSize () | |
| withMaxUncompressedSize (int $max_uncompressed_size) | |
Public Member Functions inherited from ILIAS\Filesystem\Util\Archive\Options | |
| getIgnoredPathSnippets () | |
| @description like __MACOSX, will filter out all paths which contain one of those snippets More... | |
| withDirectoryHandling (ZipDirectoryHandling $top_dir_handling) | |
| getDirectoryHandling () | |
Data Fields | |
| const | UNLIMITED = 0 |
| @description Disables a numeric limit (ratio, entry-count or size). More... | |
| const | DEFAULT_MAX_COMPRESSION_RATIO = 100 |
| @description Reject archives whose overall uncompressed/compressed ratio exceeds this value. More... | |
| const | DEFAULT_RATIO_CHECK_MIN_UNCOMPRESSED_SIZE = 33554432 |
| @description The ratio check is only applied once the total uncompressed size exceeds this floor, so small but highly compressible archives are never rejected. More... | |
| const | DEFAULT_MAX_AMOUNT_OF_ENTRIES = 100000 |
| @description Reject archives with more than this many entries (entry-count bomb). More... | |
| const | DEFAULT_MAX_UNCOMPRESSED_SIZE = 4294967296 |
| @description Reject archives whose total uncompressed size exceeds this value. More... | |
Protected Attributes | |
| string | $zip_output_path = null |
Protected Attributes inherited from ILIAS\Filesystem\Util\Archive\Options | |
| ZipDirectoryHandling | $top_directory_handling = ZipDirectoryHandling::KEEP_STRUCTURE |
Private Attributes | |
| bool | $flat = false |
| bool | $overwrite = false |
| int | $max_compression_ratio = self::DEFAULT_MAX_COMPRESSION_RATIO |
| int | $ratio_check_min_uncompressed_size = self::DEFAULT_RATIO_CHECK_MIN_UNCOMPRESSED_SIZE |
| int | $max_amount_of_entries = self::DEFAULT_MAX_AMOUNT_OF_ENTRIES |
| int | $max_uncompressed_size = self::DEFAULT_MAX_UNCOMPRESSED_SIZE |
Definition at line 26 of file UnzipOptions.php.
| ILIAS\Filesystem\Util\Archive\UnzipOptions::getMaxAmountOfEntries | ( | ) |
Definition at line 116 of file UnzipOptions.php.
References ILIAS\Filesystem\Util\Archive\UnzipOptions\$max_amount_of_entries.
Referenced by ILIAS\Filesystem\Util\Archive\Archives\mergeUnzipOptions().
Here is the caller graph for this function:| ILIAS\Filesystem\Util\Archive\UnzipOptions::getMaxCompressionRatio | ( | ) |
Definition at line 92 of file UnzipOptions.php.
References ILIAS\Filesystem\Util\Archive\UnzipOptions\$max_compression_ratio.
Referenced by ILIAS\Filesystem\Util\Archive\Archives\mergeUnzipOptions().
Here is the caller graph for this function:| ILIAS\Filesystem\Util\Archive\UnzipOptions::getMaxUncompressedSize | ( | ) |
Definition at line 128 of file UnzipOptions.php.
References ILIAS\Filesystem\Util\Archive\UnzipOptions\$max_uncompressed_size.
Referenced by ILIAS\Filesystem\Util\Archive\Archives\mergeUnzipOptions().
Here is the caller graph for this function:| ILIAS\Filesystem\Util\Archive\UnzipOptions::getRatioCheckMinUncompressedSize | ( | ) |
Definition at line 104 of file UnzipOptions.php.
References ILIAS\Filesystem\Util\Archive\UnzipOptions\$ratio_check_min_uncompressed_size.
Referenced by ILIAS\Filesystem\Util\Archive\Archives\mergeUnzipOptions().
Here is the caller graph for this function:| ILIAS\Filesystem\Util\Archive\UnzipOptions::getZipOutputPath | ( | ) |
Definition at line 68 of file UnzipOptions.php.
References ILIAS\Filesystem\Util\Archive\UnzipOptions\$zip_output_path.
Referenced by ILIAS\Filesystem\Util\Archive\Archives\mergeUnzipOptions().
Here is the caller graph for this function:| ILIAS\Filesystem\Util\Archive\UnzipOptions::isOverwrite | ( | ) |
Definition at line 80 of file UnzipOptions.php.
References ILIAS\Filesystem\Util\Archive\UnzipOptions\$overwrite.
Referenced by ILIAS\Filesystem\Util\Archive\Archives\mergeUnzipOptions().
Here is the caller graph for this function:| ILIAS\Filesystem\Util\Archive\UnzipOptions::withMaxAmountOfEntries | ( | int | $max_amount_of_entries | ) |
Definition at line 121 of file UnzipOptions.php.
References ILIAS\Filesystem\Util\Archive\UnzipOptions\$max_amount_of_entries.
| ILIAS\Filesystem\Util\Archive\UnzipOptions::withMaxCompressionRatio | ( | int | $max_compression_ratio | ) |
Definition at line 97 of file UnzipOptions.php.
References ILIAS\Filesystem\Util\Archive\UnzipOptions\$max_compression_ratio.
| ILIAS\Filesystem\Util\Archive\UnzipOptions::withMaxUncompressedSize | ( | int | $max_uncompressed_size | ) |
Definition at line 133 of file UnzipOptions.php.
References ILIAS\Filesystem\Util\Archive\UnzipOptions\$max_uncompressed_size.
| ILIAS\Filesystem\Util\Archive\UnzipOptions::withOverwrite | ( | bool | $overwrite | ) |
Definition at line 85 of file UnzipOptions.php.
References ILIAS\Filesystem\Util\Archive\UnzipOptions\$overwrite.
| ILIAS\Filesystem\Util\Archive\UnzipOptions::withRatioCheckMinUncompressedSize | ( | int | $ratio_check_min_uncompressed_size | ) |
Definition at line 109 of file UnzipOptions.php.
References ILIAS\Filesystem\Util\Archive\UnzipOptions\$ratio_check_min_uncompressed_size.
| ILIAS\Filesystem\Util\Archive\UnzipOptions::withZipOutputPath | ( | string | $zip_output_path | ) |
Definition at line 73 of file UnzipOptions.php.
References ILIAS\Filesystem\Util\Archive\UnzipOptions\$zip_output_path.
Referenced by ILIAS\Filesystem\Util\Archive\Archives\mergeUnzipOptions().
Here is the caller graph for this function:
|
private |
Definition at line 61 of file UnzipOptions.php.
|
private |
Definition at line 65 of file UnzipOptions.php.
Referenced by ILIAS\Filesystem\Util\Archive\UnzipOptions\getMaxAmountOfEntries(), and ILIAS\Filesystem\Util\Archive\UnzipOptions\withMaxAmountOfEntries().
|
private |
Definition at line 63 of file UnzipOptions.php.
Referenced by ILIAS\Filesystem\Util\Archive\UnzipOptions\getMaxCompressionRatio(), and ILIAS\Filesystem\Util\Archive\UnzipOptions\withMaxCompressionRatio().
|
private |
Definition at line 66 of file UnzipOptions.php.
Referenced by ILIAS\Filesystem\Util\Archive\UnzipOptions\getMaxUncompressedSize(), and ILIAS\Filesystem\Util\Archive\UnzipOptions\withMaxUncompressedSize().
|
private |
Definition at line 62 of file UnzipOptions.php.
Referenced by ILIAS\Filesystem\Util\Archive\UnzipOptions\isOverwrite(), and ILIAS\Filesystem\Util\Archive\UnzipOptions\withOverwrite().
|
private |
Definition at line 64 of file UnzipOptions.php.
Referenced by ILIAS\Filesystem\Util\Archive\UnzipOptions\getRatioCheckMinUncompressedSize(), and ILIAS\Filesystem\Util\Archive\UnzipOptions\withRatioCheckMinUncompressedSize().
|
protected |
Definition at line 60 of file UnzipOptions.php.
Referenced by ILIAS\Filesystem\Util\Archive\UnzipOptions\getZipOutputPath(), and ILIAS\Filesystem\Util\Archive\UnzipOptions\withZipOutputPath().
| const ILIAS\Filesystem\Util\Archive\UnzipOptions::DEFAULT_MAX_AMOUNT_OF_ENTRIES = 100000 |
@description Reject archives with more than this many entries (entry-count bomb).
Definition at line 49 of file UnzipOptions.php.
| const ILIAS\Filesystem\Util\Archive\UnzipOptions::DEFAULT_MAX_COMPRESSION_RATIO = 100 |
@description Reject archives whose overall uncompressed/compressed ratio exceeds this value.
A deflate decompression bomb reaches ~1000:1, while legitimate archives (already compressed media, office documents, ...) stay well below 100:1.
Definition at line 38 of file UnzipOptions.php.
| const ILIAS\Filesystem\Util\Archive\UnzipOptions::DEFAULT_MAX_UNCOMPRESSED_SIZE = 4294967296 |
@description Reject archives whose total uncompressed size exceeds this value.
Without an absolute ceiling the ratio alone allows DEFAULT_MAX_COMPRESSION_RATIO times the upload limit to be written, which grows with post_max_size. 4 GiB is the point where an archive requires Zip64; legitimate ILIAS imports stay well below it. Installations that really do import larger archives can raise or disable the limit per call.
Definition at line 58 of file UnzipOptions.php.
| const ILIAS\Filesystem\Util\Archive\UnzipOptions::DEFAULT_RATIO_CHECK_MIN_UNCOMPRESSED_SIZE = 33554432 |
@description The ratio check is only applied once the total uncompressed size exceeds this floor, so small but highly compressible archives are never rejected.
Definition at line 44 of file UnzipOptions.php.
| const ILIAS\Filesystem\Util\Archive\UnzipOptions::UNLIMITED = 0 |
@description Disables a numeric limit (ratio, entry-count or size).
A value of 0 means "no limit".
Definition at line 31 of file UnzipOptions.php.
Referenced by ILIAS\Filesystem\Util\Archive\Unzip\calculateIsWithinLimits().