Fuzz introspector: fuzz_unpickle
For issues and ideas: https://github.com/ossf/fuzz-introspector/issues

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
195 25 jsonpickle.util.translate_module_name call site: {node_id} jsonpickle.unpickler.Unpickler._restore_from_dict
9 12 jsonpickle.unpickler.decode call site: {node_id} jsonpickle.unpickler.Unpickler.restore
3 6 jsonpickle.unpickler.decode call site: {node_id} jsonpickle.util.is_function

Fuzzer calltree

0 ...fuzz_unpickle.TestOneInput [function] [call site] 00000
1 atheris.FuzzedDataProvider [function] [call site] 00001
1 fdp.ConsumeIntInRange [function] [call site] 00002
1 fdp.ConsumeUnicodeNoSurrogates [function] [call site] 00003
1 jsonpickle.unpickler.decode [function] [call site] 00004
2 .isinstance [function] [call site] 00005
2 on_missing.lower [function] [call site] 00006
2 jsonpickle.util.is_function [function] [call site] 00007
2 warnings.warn [function] [call site] 00009
2 jsonpickle.unpickler.Unpickler.__init__ [function] [call site] 00010
3 jsonpickle.unpickler.Unpickler.reset [function] [call site] 00011
2 backend.decode [function] [call site] 00012
2 jsonpickle.unpickler.Unpickler.restore [function] [call site] 00013
3 jsonpickle.unpickler.Unpickler.reset [function] [call site] 00014
3 jsonpickle.unpickler.Unpickler.register_classes [function] [call site] 00015
4 .isinstance [function] [call site] 00016
4 jsonpickle.unpickler.Unpickler.register_classes [function] [call site] 00017
4 .isinstance [function] [call site] 00018
4 classes.values [function] [call site] 00019
4 jsonpickle.unpickler.Unpickler.register_classes [function] [call site] 00020
4 jsonpickle.util.importable_name [function] [call site] 00021
5 jsonpickle.util.translate_module_name [function] [call site] 00023
3 jsonpickle.unpickler.Unpickler._restore [function] [call site] 00027
4 .isinstance [function] [call site] 00028
4 jsonpickle.unpickler.Unpickler._restore_tags [function] [call site] 00029
4 jsonpickle.unpickler.Unpickler._restore_function [function] [call site] 00035
5 jsonpickle.unpickler.loadclass [function] [call site] 00036
6 module_and_name.rsplit [function] [call site] 00037
6 module_and_name.split [function] [call site] 00038
6 jsonpickle.util.untranslate_module_name [function] [call site] 00041
7 jsonpickle.util._0_9_6_compat_untranslate [function] [call site] 00042
6 .__import__ [function] [call site] 00045
4 jsonpickle.unpickler.Unpickler._restore_iterator [function] [call site] 00047
5 jsonpickle.unpickler.Unpickler._restore_list [function] [call site] 00048
6 jsonpickle.unpickler.Unpickler._mkref [function] [call site] 00049
7 jsonpickle.unpickler.Unpickler._refname [function] [call site] 00052
6 jsonpickle.unpickler.Unpickler._restore [function] [call site] 00053
6 parent.extend [function] [call site] 00054
6 .enumerate [function] [call site] 00055
6 .isinstance [function] [call site] 00056
4 jsonpickle.unpickler.Unpickler._restore_base64 [function] [call site] 00058
5 jsonpickle.util.b64decode [function] [call site] 00059
6 base64.b64decode [function] [call site] 00060
4 jsonpickle.unpickler.Unpickler._restore_reduce [function] [call site] 00061
5 jsonpickle.unpickler._Proxy.__init__ [function] [call site] 00062
5 jsonpickle.unpickler.Unpickler._mkref [function] [call site] 00063
5 reduce_val.extend [function] [call site] 00068
5 .isinstance [function] [call site] 00070
5 jsonpickle.unpickler.Unpickler._restore [function] [call site] 00071
5 cls.__new__ [function] [call site] 00072
5 stage1.__setstate__ [function] [call site] 00073
5 stage1.__dict__.items [function] [call site] 00074
5 state.setdefault [function] [call site] 00075
5 state.items [function] [call site] 00076
5 stage1.__dict__.update [function] [call site] 00078
5 slots_state.items [function] [call site] 00079
5 stage1.extend [function] [call site] 00081
5 stage1.append [function] [call site] 00082
5 stage1.__setitem__ [function] [call site] 00083
5 jsonpickle.unpickler._Proxy.reset [function] [call site] 00084
5 jsonpickle.unpickler.Unpickler._swapref [function] [call site] 00085
6 jsonpickle.unpickler.Unpickler._refname [function] [call site] 00088
4 jsonpickle.unpickler.Unpickler._restore_repr [function] [call site] 00089
5 jsonpickle.unpickler.loadrepr [function] [call site] 00090
6 reprstr.split [function] [call site] 00091
6 module.split [function] [call site] 00093
6 .__import__ [function] [call site] 00094
5 jsonpickle.unpickler.Unpickler._mkref [function] [call site] 00096
4 jsonpickle.unpickler.Unpickler._restore_type [function] [call site] 00097
5 jsonpickle.unpickler.loadclass [function] [call site] 00098
4 jsonpickle.unpickler.Unpickler._restore_set [function] [call site] 00099
5 jsonpickle.unpickler.Unpickler._restore [function] [call site] 00100
4 jsonpickle.unpickler.Unpickler._restore_id [function] [call site] 00101
5 jsonpickle.unpickler._IDProxy.__init__ [function] [call site] 00102
4 jsonpickle.unpickler.Unpickler._restore_list [function] [call site] 00103
4 jsonpickle.unpickler.Unpickler._restore_tuple [function] [call site] 00104
5 jsonpickle.unpickler.Unpickler._restore [function] [call site] 00105
4 jsonpickle.unpickler.Unpickler._restore_base85 [function] [call site] 00107
5 jsonpickle.util.b85decode [function] [call site] 00108
6 base64.b85decode [function] [call site] 00109
4 jsonpickle.unpickler.Unpickler._restore_dict [function] [call site] 00110
5 jsonpickle.unpickler.Unpickler._mkref [function] [call site] 00111
5 jsonpickle.util.items [function] [call site] 00112
6 obj.items [function] [call site] 00113
5 jsonpickle.unpickler._is_json_key [function] [call site] 00114
6 .isinstance [function] [call site] 00115
6 key.startswith [function] [call site] 00116
5 .isinstance [function] [call site] 00117
5 k.__str__ [function] [call site] 00118
5 jsonpickle.unpickler.Unpickler._restore [function] [call site] 00119
5 jsonpickle.util.items [function] [call site] 00120
5 jsonpickle.unpickler._is_json_key [function] [call site] 00121
5 jsonpickle.unpickler.Unpickler._restore_pickled_key [function] [call site] 00122
6 jsonpickle.unpickler._is_json_key [function] [call site] 00123
6 jsonpickle.unpickler.decode [function] [call site] 00124
5 jsonpickle.unpickler.Unpickler._restore [function] [call site] 00126
5 .isinstance [function] [call site] 00127
5 jsonpickle.util.items [function] [call site] 00128
5 .isinstance [function] [call site] 00129
5 k.__str__ [function] [call site] 00130
5 jsonpickle.unpickler.Unpickler._restore [function] [call site] 00131
4 jsonpickle.unpickler.Unpickler._restore_object [function] [call site] 00132
5 jsonpickle.unpickler.loadclass [function] [call site] 00133
5 jsonpickle.unpickler._Proxy.__init__ [function] [call site] 00134
5 jsonpickle.unpickler.Unpickler._mkref [function] [call site] 00135
5 jsonpickle.unpickler._Proxy.reset [function] [call site] 00136
5 jsonpickle.unpickler.Unpickler._swapref [function] [call site] 00137
5 jsonpickle.unpickler.Unpickler._mkref [function] [call site] 00138
5 jsonpickle.unpickler.Unpickler._restore_object_instance [function] [call site] 00139
6 jsonpickle.unpickler._Proxy.__init__ [function] [call site] 00140
6 jsonpickle.unpickler.Unpickler._mkref [function] [call site] 00141
6 jsonpickle.unpickler.Unpickler._loadfactory [function] [call site] 00142
7 jsonpickle.unpickler.Unpickler._restore [function] [call site] 00143
6 jsonpickle.unpickler.has_tag [function] [call site] 00144
6 jsonpickle.unpickler.getargs [function] [call site] 00146
7 jsonpickle.unpickler.has_tag [function] [call site] 00147
7 jsonpickle.unpickler.has_tag [function] [call site] 00148
7 jsonpickle.unpickler.has_tag [function] [call site] 00149
7 jsonpickle.unpickler.loadclass [function] [call site] 00150
6 jsonpickle.unpickler.Unpickler._restore [function] [call site] 00154
6 jsonpickle.unpickler.Unpickler._restore [function] [call site] 00155
6 .isinstance [function] [call site] 00156
6 cls.__new__ [function] [call site] 00159
6 cls.__new__ [function] [call site] 00160
6 object.__new__ [function] [call site] 00161
6 jsonpickle.unpickler.make_blank_classic [function] [call site] 00162
6 jsonpickle.unpickler.Unpickler._process_missing [function] [call site] 00163
7 warnings.warn [function] [call site] 00164
7 jsonpickle.util.is_function [function] [call site] 00165
6 jsonpickle.unpickler.Unpickler._mkref [function] [call site] 00166
6 jsonpickle.unpickler._Proxy.reset [function] [call site] 00167
6 jsonpickle.unpickler.Unpickler._swapref [function] [call site] 00168
6 .isinstance [function] [call site] 00169
6 jsonpickle.unpickler.Unpickler._restore_object_instance_variables [function] [call site] 00170
7 jsonpickle.unpickler.Unpickler._restore_from_dict [function] [call site] 00171
8 jsonpickle.unpickler.Unpickler._restore_key_fn [function] [call site] 00172
8 jsonpickle.util.items [function] [call site] 00173
8 .isinstance [function] [call site] 00174
8 k.__str__ [function] [call site] 00175
8 jsonpickle.unpickler.Unpickler._restore_pickled_key [function] [call site] 00176
8 jsonpickle.unpickler.Unpickler._restore [function] [call site] 00177
8 jsonpickle.util.is_noncomplex [function] [call site] 00178
8 jsonpickle.util.is_dictionary_subclass [function] [call site] 00180
8 k.startswith [function] [call site] 00185
8 object.__setattr__ [function] [call site] 00188
8 .issubclass [function] [call site] 00191
8 .isinstance [function] [call site] 00193
7 jsonpickle.unpickler.has_tag [function] [call site] 00194
7 jsonpickle.unpickler.Unpickler._restore [function] [call site] 00196
7 instance.append [function] [call site] 00197
7 jsonpickle.unpickler.Unpickler._restore [function] [call site] 00199
7 instance.add [function] [call site] 00200
7 jsonpickle.unpickler.has_tag [function] [call site] 00201
7 jsonpickle.unpickler.Unpickler._restore_state [function] [call site] 00202
8 jsonpickle.unpickler.Unpickler._restore [function] [call site] 00203
8 .isinstance [function] [call site] 00204
8 .isinstance [function] [call site] 00206
8 .isinstance [function] [call site] 00207
8 instance.__setstate__ [function] [call site] 00209
8 .isinstance [function] [call site] 00210
8 jsonpickle.unpickler.Unpickler._restore_from_dict [function] [call site] 00211
8 jsonpickle.unpickler.Unpickler._restore_from_dict [function] [call site] 00212
8 jsonpickle.unpickler.Unpickler._restore_from_dict [function] [call site] 00213
6 jsonpickle.unpickler._safe_hasattr [function] [call site] 00216
7 object.__getattribute__ [function] [call site] 00217
6 .isinstance [function] [call site] 00218
6 instance.default_factory.get [function] [call site] 00219
3 jsonpickle.unpickler.Unpickler._swap_proxies [function] [call site] 00220