Мое приложение C/C++ использует сторонние библиотеки, которые выполняют системные вызовы.
Я хотел бы перехватить определенные системные вызовы, чтобы библиотеки вызывали мою версию. Я не хочу изменять их исходный код.
Я обнаружил kprobes, но мне действительно не хочется писать модуль ядра (если только это не единственное оставшееся решение и это не так сложно ).
Я просмотрел прошлые ответы и обнаружил, что Linux продолжает что-то менять каждый год, поэтому этот пост.
В настоящее время (2024 г.) возможно ли перехватить системный вызов без необходимости перекомпиляции ядра или написания модуля ядра?
EDIT
Невозможно использовать LD_PRELOAD поскольку мое приложение статически связано с библиотеками.
Подробнее здесь: https://stackoverflow.com/questions/786 ... nel-module