拦截LibC函数调用,是否可能?

时间:2014-06-24 09:49:42

标签: c linux libc uclibc

我有一个来自供应商的动态库(没有源代码可用)。该库与uCLibC链接。

如果我将我的应用程序链接到这个库,我可以拦截这个库可能对uclibc / libc执行的一些调用(例如malloc,printf,...)吗?例如,我想修改此库正在使用的printf。

感谢。

1 个答案:

答案 0 :(得分:0)

您可以使用LD_PRELOAD加载您在libc之前编写的库。这样你就可以拦截printf,malloc等。

这是一个简单的教程/示例:http://www.catonmat.net/blog/simple-ld-preload-tutorial/