diff options
| author | Julian Andres Klode <jak@debian.org> | 2015-06-11 16:15:34 +0200 |
|---|---|---|
| committer | Julian Andres Klode <jak@debian.org> | 2015-06-11 16:15:34 +0200 |
| commit | 3ae6e69473c785b6c56cfb27c31a7c9375416f06 (patch) | |
| tree | ca40a4883e0a6ee3add162078781c4b714d6208f /python/arfile.cc | |
| parent | a6e3d4d872b852de308f19a15215180cb4116765 (diff) | |
| download | python-apt-3ae6e69473c785b6c56cfb27c31a7c9375416f06.tar.gz | |
python/tarfile.cc: LFS: Handle too large file
Handle both file sizes larger than SIZE_MAX and allocation
failures when reading the data of a tarmember.
If using the go() function with a callback, pass None as the data
parameter for files that are too large. For extractdata, raise
a MemoryError if the file too extract is too large.
Also check for an existing error first in extractdata, before
raising a new one.
Test the whole thing on 32-bit platforms with a sample deb that
contains a zeroed file that is 5GB large (compressed using xz
at level 1 to a few kb).
Diffstat (limited to 'python/arfile.cc')
0 files changed, 0 insertions, 0 deletions
