@@ -148,7 +148,12 @@ def unpackb(object packed, object object_hook=None, object list_hook=None,
148
148
149
149
def unpack (object stream , object object_hook = None , object list_hook = None ,
150
150
bint use_list = 1 , encoding = None , unicode_errors = " strict" ,
151
- object_pairs_hook = None , ext_hook = ExtType
151
+ object_pairs_hook = None , ext_hook = ExtType,
152
+ Py_ssize_t max_str_len = 2147483647 , # 2**32-1
153
+ Py_ssize_t max_bin_len = 2147483647 ,
154
+ Py_ssize_t max_array_len = 2147483647 ,
155
+ Py_ssize_t max_map_len = 2147483647 ,
156
+ Py_ssize_t max_ext_len = 2147483647 ):
152
157
):
153
158
"""
154
159
Unpack an object from `stream`.
@@ -159,7 +164,12 @@ def unpack(object stream, object object_hook=None, object list_hook=None,
159
164
"""
160
165
return unpackb(stream.read(), use_list = use_list,
161
166
object_hook = object_hook, object_pairs_hook = object_pairs_hook, list_hook = list_hook,
162
- encoding = encoding, unicode_errors = unicode_errors, ext_hook = ext_hook
167
+ encoding = encoding, unicode_errors = unicode_errors, ext_hook = ext_hook,
168
+ max_str_len = max_str_len,
169
+ max_bin_len = max_bin_len,
170
+ max_array_len = max_array_len,
171
+ max_map_len = max_map_len,
172
+ max_ext_len = max_ext_len,
163
173
)
164
174
165
175
0 commit comments