Краткое содержание предыдущих серий:
Fuzzing -- метод тестирования когда в программу на вход подаются случайные данные.
Structure Aware Fuzzing -- данные остаются все так же случайные, но все-таки синтаксически или структурно верные. Нужно чтобы проникнуть глубже синтаксического анализатора.
LibBlobStamper -- библиотека которую я пишу, которая позволяет на основании псевдо случайных данных выдаваемых фаззером, воспроизводимо генерировать синтаксически корректные данные. https://github.com/postgrespro/libblobstamper
Вот сегодня у меня новое достижение. Я таки сумел сгенерировать данные под парсер синтаксических деревьев:
( ((((231 + 108) ^ ((39 - 156) ^ (((116 * 109) - (100 ^ (47 + 78)))... )
Там все пока что еще максимально сыро, много что прибито гвоздями и даже в основной код не затащено t/320-galley-recursion-experiments.cpp. Но работает, блин!
Fuzzing -- метод тестирования когда в программу на вход подаются случайные данные.
Structure Aware Fuzzing -- данные остаются все так же случайные, но все-таки синтаксически или структурно верные. Нужно чтобы проникнуть глубже синтаксического анализатора.
LibBlobStamper -- библиотека которую я пишу, которая позволяет на основании псевдо случайных данных выдаваемых фаззером, воспроизводимо генерировать синтаксически корректные данные. https://github.com/postgrespro/libblobstamper
Вот сегодня у меня новое достижение. Я таки сумел сгенерировать данные под парсер синтаксических деревьев:
( ((((231 + 108) ^ ((39 - 156) ^ (((116 * 109) - (100 ^ (47 + 78)))... )
Там все пока что еще максимально сыро, много что прибито гвоздями и даже в основной код не затащено t/320-galley-recursion-experiments.cpp. Но работает, блин!