我有一个 CMake 包含文件,它覆盖了内置的add_executable function,我想找出一种透明的方法,这样如果另一个文件包含这个文件,但随后也覆盖add_executable ,它的行为就好像他们正在与真正的add_executable交互。 这是演示此问题的最小 CMakeList ...
我有一个 CMake 包含文件,它覆盖了内置的add_executable function,我想找出一种透明的方法,这样如果另一个文件包含这个文件,但随后也覆盖add_executable ,它的行为就好像他们正在与真正的add_executable交互。 这是演示此问题的最小 CMakeList ...
我有一个链接到共享库libfoo的程序。 我想在我的程序中覆盖来自 libfoo 的函数之一,以便从libfoo中对该libfoo的内部调用解析为我程序中的定义。 (对于上下文,我的意图是模拟库 function 进行测试。) 这个问题与这个问题有点相关: 共享库中的符号查找。 这是该问题的示例: ...
我已经在下面测试了这样一个简单的程序 我的主程序是这样的: 程序的结果为“覆盖”。 为了弄清楚为什么会发生这种情况,我使用了gdb。 调用链如下所示: _dl_runtime_resolve -> _dl_fixup ->_dl_lookup_symbol_x ...
我有点x, y和t ,其中t=1,...,Length[x] 。 我希望使用interpolation创建两个参数方程,但不希望使用Mathematica中的方法。 有什么建议吗? ...
我编写了一个共享对象,它修改了FreeType的FT_Load_Glyph和FT_Render_Glyph函数的参数,目前通过插入它与LD_PRELOAD和dlsym 。 这很好,但我很想知道是否有办法进行这些更改: 所有在给定主机上使用FreeType的程序(运行例如Debia ...
我使用osxinj项目挂钩系统调用open,read,write,lstat等。 将此注入到Apple提供的TextEdit应用程序中,一切正常。 当我使用textedit打开新文件时,调用了opencallback并在system.log文件中记录了消息。 注入Excel并尝试使用 ...
我想以这样的方式编写一个共享库,以便可以将它的内存使用与它所链接的应用程序隔离开来。 也就是说,如果共享库,我们称之为libmemory.so ,调用malloc ,我想将该内存保存在一个单独的堆中,该堆用于服务于应用程序中对malloc调用。 这个问题不是关于编写内存分配器,而是关于将库和 ...
我有 x = linspace(-5,5,256) y = 1./(1+x.^2) plot(x,y,'...') %plot of (x,y) 我想用10阶的多项式来估计它,以使该多项式在11个点处与图相交。 因此,我这样做: x2 = linspace(-5,5,11) ...
我想拦截connect()系统调用并使用自己的自定义实现。 定制实现将执行某些操作,例如为简单起见打印日志,然后进一步调用系统实现。 我看了Audrey的博客 ,其中介绍了修补PLT的方法。 但是不幸的是,当尝试更改重定位表中的地址时,此代码崩溃。 闲逛了一会儿后,我遇到了这个已 ...
我试图拦截我的Android应用程序在非root设备上进行的所有系统调用。 因此,每次我的应用程序写入/读取文件时,我都会拦截系统调用并加密/解密流以用于安全目的。 加密部分没问题,但我如何拦截系统调用? 由于应用程序的某些部分是由第三方提供商开发的模块,我无法更改源代码,因此没有 ...
尤其是在Mac OS X上,是否可以通过DYLD_INSERT_LIBRARIES使程序忽略SIGTERM,从而对任何或大多数程序都起作用? 我尝试编译并插入以下内容: 然而, 能够杀死-15'而没有问题。 ...
我完全按照本网站上的指示进行操作 http://www.newosxbook.com/src.jl?tree=listings&file=4-5-interpose.c 这是该页面上的代码 最新版本的OSX或此处编写的代码是否有所不同? 它似乎没有拦截任何东西。 ...
我想挂钩函数AudioUnitInitialize ,通过在应用程序启动时注入捆绑来获取应用程序的音频单元。 我找到了一个示例( http://pastie.org/1882125 ),但是它使用功能MSHookFunction替换了功能名称。 问题是我想替换Mac OS X而不是iOS上 ...
我目前正在与Linux上的两个第三方共享库(A.so和B.so)链接。 问题是这两个so都与另一个库静态链接,因此A.so和B.so中约有400个函数具有相同的名称。 当我使用-lA -lB或-lB -lA进行编译和链接时,由于插入了函数而导致问题而导致代码无法运行,因此根据顺序分别从A或B ...
早上好, 是否可以使用dyld插入功能插入这种C函数? 该函数的调用方式: ...
我需要插入(调用我的函数而不是原始函数)一些OS X系统调用来克服一个闭源软件中的缺陷。 最好,得到的解决方案可以在10.5(Leopard)和更新的情况下工作,但如果论证足够强大,我可能需要10.6(Snow Leopard)。 最好,得到的解决方案是可执行的,但我可能会选择一个脚 ...
我正在使用Detours挂钩malloc / free任何目标.exe,而无需访问其源代码。 我成功地挂接了从.exe动态链接的malloc / free。 我想知道是否可以使用Detours钩住静态链接的malloc / free。 我知道这可能会更困难,因为malloc / ...
我需要处理发送到笔记本电脑视频显示器的图像,并且需要使用C ++或Shell程序将键盘输入发送到Linux系统。 我的目标是处理FPS游戏中的图像,然后根据这些图像在该游戏中进行操作(因此需要键盘输入)。 我没有尝试使用某种API来理解(如果可能的话)如何与游戏X或Y进行接口,而是想到了 ...
使用Python的open()函数插入在前几次调用后似乎不起作用。 我怀疑Python正在进行某种初始化,或者某些东西暂时绕过我的功能。 这里的open电话显然很有吸引力: 在Python初始化过程中它会发生一次: 在这里根本没有发生,并且没有错误表明文件句柄已删除写权限 ...
通过我的书“ 专家C编程” ,我看到了关于功能插入的章节,以及如果无意中发生了如何导致一些严重的难以发现的错误。 书中给出的例子如下: my_source.c 的libc 根据这本书, main()发生的事情是mktemp() (标准C库函数)被my_source.c ...