使用LD_PRELOAD指定多个文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用LD_PRELOAD指定多个文件相关的知识,希望对你有一定的参考价值。

我知道如何用LD_PRELOAD覆盖一个库,例如,如下所示。

LD_PRELOAD =。/ getpid.so ./testpid

现在我的问题是如何覆盖多个文件。假设我想覆盖getpid和getid,我该如何指定?

答案

根据man page,它是一个空格分隔列表。所以:

LD_PRELOAD="path1 path2"

应该工作。

另一答案

一种选择是将getpidgetid的重写版本放在你给.so的单个LD_PRELOAD中。

以上是关于使用LD_PRELOAD指定多个文件的主要内容,如果未能解决你的问题,请参考以下文章

从LD_PRELOAD探究子进程的环境变量

Swift新async/await并发中利用Task防止指定代码片段执行的数据竞争(Data Race)问题

Swift新async/await并发中利用Task防止指定代码片段执行的数据竞争(Data Race)问题

调试LD_PRELOAD注入的代码

LD_PRELOAD 和线程局部变量

在 Android 中使用具有多个布局的单个片段