/
githubmirror
/
nbs
Обзор
Документация
Войти
/
githubmirror
/
nbs
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
contrib/tools/python3/Modules/_xxtestfuzz/_xxtestfuzz.c
48 строк
1 KB
Anton Myagkov
Update ydb version to 24.4 (#4579)
07 фев 2026, 11:59
Не верифицирован
07 фев 2026, 11:59
2c21cae
Код
Авторство
О чём код?
#define PY_SSIZE_T_CLEAN #include <Python.h> #include <stdlib.h> #include <inttypes.h> int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size); static PyObject* _fuzz_run(PyObject* self, PyObject* args) { const char* buf; Py_ssize_t size; if (!PyArg_ParseTuple(args, "s#", &buf, &size)) { return NULL; } int rv = LLVMFuzzerTestOneInput((const uint8_t*)buf, size); if (PyErr_Occurred()) { return NULL; } if (rv != 0) { // Nonzero return codes are reserved for future use. PyErr_Format( PyExc_RuntimeError, "Nonzero return code from fuzzer: %d", rv); return NULL; } Py_RETURN_NONE; } static PyMethodDef module_methods[] = { {"run", (PyCFunction)_fuzz_run, METH_VARARGS, ""}, {NULL}, }; static struct PyModuleDef _fuzzmodule = { PyModuleDef_HEAD_INIT, "_fuzz", NULL, 0, module_methods, NULL, NULL, NULL, NULL }; PyMODINIT_FUNC PyInit__xxtestfuzz(void) { return PyModule_Create(&_fuzzmodule); }