cispa_all_3060.pdf (296.57 kB)

Debugging Inputs

Download (296.57 kB)
conference contribution
posted on 2023-11-29, 18:12 authored by Lukas Kirschner, Ezekiel Soremekun, Andreas ZellerAndreas Zeller
When a program fails to process an input, it need not be the program code that is at fault. It can also be that the input data is faulty, for instance as result of data corruption. To get the data processed, one then has to debug the input data—that is, (1) identify which parts of the input data prevent processing, and (2) recover as much of the (valuable) input data as possible. In this paper, we present a general-purpose algorithm called ddmax that addresses these problems automatically. Through experiments, ddmax maximizes the subset of the input that can still be processed by the program, thus recovering and repairing as much data as possible; the difference between the original failing input and the “maximized” passing input includes all input fragments that could not be processed. To the best of our knowledge, ddmax is the first approach that fixes faults in the input data without requiring program analysis. In our evaluation, ddmax repaired about 69% of input files and recovered about 78% of data within one minute per input.


Preferred Citation

Lukas Kirschner, Ezekiel Soremekun and Andreas Zeller. Debugging Inputs. In: International Conference on Software Engineering (ICSE). 2020.

Primary Research Area

  • Secure Connected and Mobile Systems

Name of Conference

International Conference on Software Engineering (ICSE)

Legacy Posted Date


Open Access Type

  • Unknown


@inproceedings{cispa_all_3060, title = "Debugging Inputs", author = "Kirschner, Lukas and Soremekun, Ezekiel and Zeller, Andreas", booktitle="{International Conference on Software Engineering (ICSE)}", year="2020", }

Usage metrics


    No categories selected


    Ref. manager