@@ -11,9 +11,9 @@ def initialize(id: int, options: Optional[bytes]) -> Compression:
11
11
modules = {
12
12
c_squashfs .ZLIB_COMPRESSION : (NativeZlib ,),
13
13
c_squashfs .LZMA_COMPRESSION : (NativeLZMA ,),
14
- c_squashfs .LZO_COMPRESSION : (NativeLZO , PythonLZO ),
14
+ c_squashfs .LZO_COMPRESSION : (AvailableLZO , ),
15
15
c_squashfs .XZ_COMPRESSION : (NativeXZ ,),
16
- c_squashfs .LZ4_COMPRESSION : (NativeLZ4 , PythonLZ4 ),
16
+ c_squashfs .LZ4_COMPRESSION : (AvailableLZ4 , ),
17
17
c_squashfs .ZSTD_COMPRESSION : (NativeZSTD ,),
18
18
}
19
19
@@ -60,14 +60,7 @@ def decompress(self, data: bytes, expected: int) -> bytes:
60
60
return self ._module .decompress (data )
61
61
62
62
63
- class NativeLZO (Compression ):
64
- module = "lzo"
65
-
66
- def decompress (self , data : bytes , expected : int ) -> bytes :
67
- return self ._module .decompress (data , False , expected )
68
-
69
-
70
- class PythonLZO (Compression ):
63
+ class AvailableLZO (Compression ):
71
64
module = "dissect.util.compression.lzo"
72
65
73
66
def decompress (self , data : bytes , expected : int ) -> bytes :
@@ -81,18 +74,11 @@ def decompress(self, data: bytes, expected: int) -> bytes:
81
74
return self ._module .decompress (data )
82
75
83
76
84
- class NativeLZ4 (Compression ):
85
- module = "lz4.block"
86
-
87
- def decompress (self , data : bytes , expected : int ) -> bytes :
88
- return self ._module .decompress (data , expected )
89
-
90
-
91
- class PythonLZ4 (Compression ):
77
+ class AvailableLZ4 (Compression ):
92
78
module = "dissect.util.compression.lz4"
93
79
94
80
def decompress (self , data : bytes , expected : int ) -> bytes :
95
- return self ._module .decompress (data )
81
+ return self ._module .decompress (data , uncompressed_size = expected )
96
82
97
83
98
84
class NativeZSTD (Compression ):
0 commit comments