ake-koomsin / LogitechWirelessPresenterKext

Logitech Wireless Presenter R400/R800 OS X Kernel Extension
MIT License
8 stars 3 forks source link

Did kext not be loaded #1

Closed bao3 closed 8 years ago

bao3 commented 8 years ago

I bought R800 ( red laser ), but my Product ID 0xad07 /Vendor ID 0x1d57 ( I got these ID from "Hardware" -> "USB" -> " RF 2.4G" ). Then I added these ID to your files and recompile in OS X 10.11 (Xcode SDK).

The new kext was put in /System/Library/Extentions/ and run sudo kextutil /System/Library/Extensions/LogitechWirelessPresenter.kext , finally I got the result below:

Extensions  sudo kextutil /System/Library/Extensions/LogitechWirelessPresenter.kext
Password:
Diagnostics for /System/Library/Extensions/LogitechWirelessPresenter.kext:
Code Signing Failure: not code signed
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext "/System/Library/Extensions/LogitechWirelessPresenter.kext"
kext signature failure override allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext "/System/Library/Extensions/LogitechWirelessPresenter.kext"

and then type kextstat in bash, show that:

 149    0 0xffffff7f82e33000 0x2000     0x2000     th.in.ake.LogitechWirelessPresenter (1) DDA30EFF-CFF9-3ABB-82FE-D74F5CF2F9EE <32 4 3>

Then I reboot OS X , but I re-type kextstat ,the logitech kext was not running .

How could I make my R800 run ? thanks for your GREAT JOB~!

ake-koomsin commented 8 years ago

Hi Tyrael Wang,

The new kext was put in /System/Library/Extentions/ and run sudo kextutil /System/Library/Extensions/LogitechWirelessPresenter.kext , finally I got the result below:

Extensions sudo kextutil /System/Library/Extensions/LogitechWirelessPresenter.kext Password: Diagnostics for /System/Library/Extensions/LogitechWirelessPresenter.kext: Code Signing Failure: not code signed kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext "/System/Library/Extensions/LogitechWirelessPresenter.kext"

kext signature failure override allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext "/System/Library/Extensions/LogitechWirelessPresenter.kext" and then type kextstat in bash, show that:

149 0 0xffffff7f82e33000 0x2000 0x2000 th.in.ake.LogitechWirelessPresenter (1) DDA30EFF-CFF9-3ABB-82FE-D74F5CF2F9EE <32 4 3>

The problem seems to be the code signing issue.

As far as I know, Apple has tried to harden its kernel for a while. Therefore, it probably requires developers to sign a kernel extension with their developer ID now. In the past (prior to OS X 10.11), this kind of thing is not strictly required.

If you have a developer account (preferably the paid one), could you try to sign the extension with your developer account?

Right now, I have no access to OS X 10.11. However, I plan to install OS X 10.11 soon. Can I contact you again after that?

Best Regards Ake Koomsin

bao3 commented 8 years ago

I have no Develop Account .. so, I'll wait your good news .

ake-koomsin commented 8 years ago

I have no Develop Account .. so, I'll wait your good news .

I will let you know as soon as I have access to OS X 10.11.

ake-koomsin commented 8 years ago

Hi Tyrael Wang,

I now have access to OS X 10.11. However, it seems that it is not possible to install unsigned kernel extensions from now on due to System Integrity Protection.

It is possible to disable System Integrity Protection, please read [2]. However, I don't know if you are ok with this method.

Reference [1] https://developer.apple.com/library/mac/documentation/Security/Conceptual/System_Integrity_Protection_Guide/KernelExtensions/KernelExtensions.html [2] https://developer.apple.com/library/mac/documentation/Security/Conceptual/System_Integrity_Protection_Guide/ConfiguringSystemIntegrityProtection/ConfiguringSystemIntegrityProtection.html#//apple_ref/doc/uid/TP40016462-CH5-SW1

bao3 commented 8 years ago

thanks for you feedback , I would try this project again . best regards.