LINUX.ORG.RU

fork -> LD_PRELOAD -> exec


0

1

Как после форка сделать загрузку разделяемой библиотеки, чтобы после выполнения exec() процесс мог использовать эту библиотеку?

Наподобии того как это делается в shell: LD_PRELOAD=mylib.so ./a.out

Использовать shell в exec не хочется.

child = fork();
if (child == 0) {
   // Здесь нужно подгрузить mylib.so
   // Как?
   execl("./a.out", "arg1", "arg2");
   exit(0);
}

Ответ на: комментарий от arsi

Интересно. А кто вообще занимается подгрузкой этой библиотеки исходя из переменной окружения LD_PRELOAD? Я думал это shell что-то хитрое делает.

Olegymous ★★★
() автор топика
Ответ на: комментарий от Olegymous

> А кто вообще занимается подгрузкой этой библиотеки исходя из переменной окружения LD_PRELOAD?

/lib/ld-x.y.z.so

arsi ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.