我,新來的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