Вопросы по теме 'dlsym'

Взаимодействие функций в Linux без dlsym
В настоящее время я работаю над проектом, в котором мне нужно отслеживать использование нескольких системных вызовов и низкоуровневых функций, таких как mmap , brk , sbrk . До сих пор я делал это, используя интерпозицию функций: я пишу...
4501 просмотров
schedule 29.02.2024

Установка моей библиотеки для LD_PRELOAD приводит к тому, что некоторые процессы вызывают ошибки загрузчика
Я получаю следующую ошибку, когда пытаюсь запустить скрипт, для которого у меня есть доступ только к исполнению: uname: symbol lookup error: /home/dumindara/random/sotest/a.out: undefined symbol: dlsym Это произошло после того, как я установил...
11116 просмотров
schedule 17.07.2023

Что такое утилита Linux для изменения имени символа С++?
У меня есть команда c++filt для демонтажа символа, что это за инструмент, чтобы сделать обратное и исказить имя символа? Это было бы полезно, если бы я захотел вызвать dlsym() для искаженного имени функции C++. Я бы предпочел не жестко...
12974 просмотров

C typedef для прототипа функции dlsym
Я пишу общую библиотеку в LD_PRELOAD и перехватываю некоторые вызовы из существующей библиотеки (в Linux). У меня есть около 50+ различных прототипов функций и объявлений атрибутов, которые нужно написать, и я хочу, чтобы код был как можно короче,...
1138 просмотров
schedule 05.05.2023

Есть ли способ предотвратить dlsym (module, functionName) каждую функцию?
У меня есть разделяемая библиотека (точнее, модуль PKCS#11), и я хочу написать приложение, которое может загружать библиотеку и использовать ее. В настоящее время я использую dlsym следующим образом: My_C_GetSlotList = (CK_C_GetSlotList) dlsym...
139 просмотров
schedule 06.12.2023

Как правильно присвоить указатель, возвращаемый dlsym, в переменную типа указателя на функцию?
Я пытаюсь использовать dlopen() и dlsym() в своем коде и скомпилировать его с помощью gcc . Вот первый файл. /* main.c */ #include <dlfcn.h> int main() { void *handle = dlopen("./foo.so", RTLD_NOW); if (handle) {...
8115 просмотров
schedule 26.08.2022

Как получить адрес функции из текущего исполняемого файла?
Мне нужно узнать адрес функции из текущего исполняемого файла на Solaris 10 с использованием C++ (я использую GNU g++ 4.9.2). Например, у меня есть функция, например: void doSomething(const char *p), которая может быть определена или не определена в...
1606 просмотров

Библиотечное взаимодействие
Я пытался перехватить вызовы malloc и free, следуя нашему учебнику (книга CSAPP). Я следовал их точному коду и почти тому же коду, который я нашел в Интернете, и я продолжаю получать ошибку сегментации. Я слышал, как наш профессор говорил что-то о...
155 просмотров
schedule 02.08.2022