我,新来的KEXT编程,所以我的问题是:SIP关在Mac OS,但仍然无法载入我的kext
I,M运行MacOS的10.11.6我已经把SIP断,但是当我尝试加载我 KEXT使用kextload,并使用-v标志我得到我的KEXT加载成功:
*Requesting load of /private/tmp/kern.kext.
/private/tmp/kern.kext loaded successfully (or already loaded).*
,并检查我的kext加载我已经使用kextstat:
152 0 0xffffff7f82db3000 0x2000 0x2000 com.SPX.kext.kern (1) 299868F4-9962-362D-AE3D-09579B6780DB <4>
但是当我从尾我的内核日志:/var/log/system.log 使用命令:tail -f /var/log/system.log
我看到错误:
MacBook-Pro com.apple.kextd[47]: kext signature failure override
allowing invalid signature -67050 0xFFFFFFFFFFFEFA16 for kext
"/private/tmp/kern.kext"
我的kext是一个简单的hello world kext,这是我的代码
#include <mach/mach_types.h>
#include <libkern/libkern.h>
kern_return_t kern_start(kmod_info_t * ki, void *d);
kern_return_t kern_stop(kmod_info_t *ki, void *d);
kern_return_t kern_start(kmod_info_t * ki, void *d)
{
printf("hello world");
return KERN_SUCCESS;
}
kern_return_t kern_stop(kmod_info_t *ki, void *d)
{
printf("bye kext");
return KERN_SUCCESS;
}
在此先感谢您的帮助
编辑:
这么多的试验后的模样KEXT加载成功,但是当涉及到代码符号问题,我通过Xcode的构建去设置在那里我发现代码签名所以在代码签名有代码签名身份,所以我将它设置为不编码标志我使用Xcode构建工具xcodebuild -configuration Debug -target kern
构建它,但直到现在仍然没有任何进展,所以我希望有人帮助至少给出链接或任何东西。
你引述的声音如内核中的消息让无论你加载的签名不正确的。 – zneak
首先感谢您的快速重播先生 – jacky
但实际上system.log应该给出的输出不是我上面提到的错误 – jacky