-
Notifications
You must be signed in to change notification settings - Fork 333
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
10.11 #42
Comments
Sorry to hear that. Unfortunately, I only have one Mac, and I cannot upgrade my 'production' machine to El Cap ... Yosemite broke my machine badly enough, and I don't want to run the risk of breaking it again with El Cap. So, until El Cap becomes final, I'm afraid I won't be able to provide much support for it. Sorry. |
Thanks !!!! |
EDIT: As someone suggested that the link to the Rel 8. Pre 2 should closer to the top. Hopefully this is close enough for people to find: Original Reply:
|
Nice workaroud @winsock, just tried, and works !!! |
Is this any better in 10.11 b2? |
Nops, still need the kext unload/load workaround... same erros on console... |
Any news? |
Nope... Last time I installed an OS X beta on my laptop, it was version 10.10.0, and I got bitten by it :-) I'll probably hold off until 10.11.1 before I upgrade my production machine. Sorry. |
Another report with different logs: kernel[0]: Couldn't alloc class "AppleUSBComposite" |
The kextunload/kextload workaround doesn't work for me. On the side note I've tried compiling HoRNDIS with later SDK versions. |
@fuantaji They rewrote the I/O code in 10.11 So the SDK is complete just well needs a ton of work to port. Almost all of the functions use deprecated methods/classes. |
Hi, |
Hi ,Winsock/Fuantaji, Did apple not deliver a ( non-working) RNDIS solution in El Capitan. I think that you are better off with a defect about that @ the developer.apple.com in this case. |
I can try to leave a bug report in radar about the oversight of a RNDIS driver. However, who knows when/if apple will actually follow through with that bug report. |
@jwise I'm not too experienced with kernel extension development/debugging. I think I got most of the code ported to 10.11, however I get a KP... Since you know your codebase better than me I thought my port still could be of use to you. https://github.com/winsock/HoRNDIS/tree/elcaptian Regards, Andrew Querol |
I narrowed down my current kp to getting the input and output data pipes. To continue any further I'll have to setup a slave computer running the debug kernel so I can use lldb and step though the code -.- |
Andrew -- thanks for your efforts! I unfortunately don't have a 10.11 machine (I probably won't update for a while, given my experience with 10.10). It surprises me that so much changed incompatibly. I wonder if there's a smaller, compatible, change that can be made? It would suck to have to maintain two versions of the driver (one for <=10.10, and one for 10.11+); I've avoided that so far, having support all the way back to 10.6 through 10.10. Is the crash inside the kernel, or inside the kext? (i.e., is the crash on that line related to a potentially null endpointDescriptor, or does it have to do with the actual copyPipe operation?) |
From what I read of you keep compiling with the older sdk it'll still work on El Captain as long as it also works in Yosemite. My guess is since they changed so much with 10.11 a bug that was probably hidden or a non issue for 10.10 and below now shows up since the implementation of the older api would've changed. The reason I had to port so much was due to only having the 10.11 sdk. However while porting I noticed and fixed quite a few bugs and questionable code that might fix it with the old sdk as well. @jwise what is the exact build environment you use at the moment? What osx sdk/etc. With any luck back porting some of my general fixes and cleanup might do the trick ;) |
For what it's worth my KP on my port attempt was inside the extension itself at the top of the backtrace. Most likely the page fault was caused by the descriptor being incorrect when I ported it to the new style. Causing the function to return an invalid or null pointer since it can't find any matches. Then I access the invalid pointer and attempt to copy who knows what to use as the pipe. |
HoRNDIS: init: HoRNDIS tethering driver for Mac OS X, by Joshua Wise Hmmm building with the 10.6 SDK now. Made some changes to code that I thought looked funny but still no dice. Also the weird part is that after stop is called HoRNDIS actually retains control of the USB pipe! Whatever port I used will be locked up till reboot -.- @jwise Any idea why these things are happening? With the early stop call and holding the pipe? |
@winsock do there possibility to compile horndis over the 10.11.1 because of changes in IOKit framework: I was upgrading the latest xcode from the apple store but it did not give any help for the compile issues. el capitan contains buch of limited rules for root priviliges. am I right that horndis is needed to port from yosemite to el capitan until it works like a charm. |
@winsock 's workaround didn't fix for me, is it still valid? |
On 10/1/15 14:10, Russell wrote:
Using kextunload/kextload worked for me: I just upgraded to OX 10.11 I had to unplug/replug the phone a couple times as well as specify a "No, this is not a disentanglement from, but a progressive /knotting-into/ |
Another thing that 'made this work' that I just did myself, is a wipe of network preferences: $ sudo rm -rf Library/Preferences/SystemConfiguration/NetworkInterfaces.plist $ sudo reboot It appears that it may only have worked for the first attempt after the reboot, to tether. On subsequent attempts it was not 'latching onto' the newly created device, nor creating a new one to work with it. This may be useful information, however. |
i have used command: kextunload -bundle and it seems to work but there is still something weird ongoing. . are current issues direct relations baed on iokit framework changes? el capitan contains bunch of changes related to root privileges. @jwise what is your opinion do horndis needed to port for el capitan to get it work as charm because of changes in root rights. i know that "apple specific" (kernel??) extensions are loaded everytime when os x 10.11 is booted but how about 3rd party extensions? do there some of limited rules for 3rd party extension from el capitan onward? |
@winsock you can set up two-machine debugging fairly easily using VMWare. I've done it before and I'm setting it up now to maybe do a little debugging here. http://ho.ax/posts/2012/02/debugging-the-mac-os-x-kernel-with-vmware-and-gdb/ has a decent though slightly dated walkthrough; http://ddeville.me/2015/08/kernel-debugging-with-lldb-and-vmware-fusion/ is much more up-to-date. (It's a bit tricky to turn off SIP in VMWare, but it's possible by adding bios.bootDelay = "5000" to the .vmx file, then selecting the disk rather than the partition in the boot manager while holding Cmd-R, then opening Terminal and running csrutil.) |
@winsock you're getting a null pointer dereference at https://github.com/winsock/HoRNDIS/blob/elcaptian/HoRNDIS.cpp#L299 , with endpointDescriptor being null... |
It might be worthwhile to look at https://github.com/RehabMan/OS-X-BrcmPatchRAM/blob/master/BrcmPatchRAM/USBHostDeviceShim.cpp for some guidance, or even perhaps use that shim directly (it is license-compatible with HoRNDIS). |
That might be useful. The thing that I find puzzling is that there are sporadic reports of the driver successfully loading, somehow! I wonder if it would be more productive to try to figure out what the conditions are under which the driver does successfully load, and then try to make those happen, rather than going down this dance of rewriting the driver to support an entirely new API? |
@HardSoftMac You have no idea how happy I would be if Apple stole my ideas. |
I’m unsure what you mean. Apple didn’t remove anything. A user above noted On Wed, Sep 7, 2016 at 12:04 AM, HardSoftMac notifications@github.com
|
"Steal" without compensation, No. |
Did anyone algae notice issues with USB devices after the mac comes back On 7 Sep 2016 09:08, "HardSoftMac" notifications@github.com wrote:
|
Thanks. rel8pre2 works fine with zte mf823 on my mb5.1 os x 10.11.6. |
Homebrew users wishing to install rel8pre2 can now do so with: brew cask install szhu/personal/horndis-pre Homebrew cask formula: |
@szhu 's package works fine for me after a manual kextunload kextload cycle after plugging in the phone. |
"
Thanks!" why this link is no longer valid ?? |
Working nice macos el capitan, xiaomi mi max! Thanks for the great work. On Sun, Sep 25, 2016 at 7:57 AM, NAWA notifications@github.com wrote:
|
But where did you guys download it since it's no more available on joshuawise website ? thanks, |
@ROM72 this url is still active http://nyus.joshuawise.com/HoRNDIS-rel8pre2-dbg.pkg |
@ebretteville it has been reported that Sierra does not need jwise's HoRNDIS drivers. Maybe Apple rolled their own, at last? |
Actually, I just discovered that my BlackBerry Z30 on El Capitan (10.11.5+) doesn't require HoRNDIS anymore. In case you're baffled, I erased the Hard Drive partition before I did clean install. Someone should confirm this, please. |
@giuliomoro thx. After checking all my apps compatibility to sierra, i'll move. |
thank you giuliomoro, that's weird, I couldn't go to this link a few days ago... |
Pre 2 not effecting on 10.11.5 |
@likelazyeyes, you mean you were able to tether natively without HoRNDIS on 10.11.5? |
@liuyunglin, thanks alot. tested it even work on macOS 10.12 |
rel8pre2 works with macOS Sierra. At least, initially; didn't try to run it for a long while. It's not true that macOS Sierra supports RNDIS out of the box. I have tried tethering to a pristine installation, and failed. |
Okay, the people have spoken! rel8pre2 shall be called rel8. And wouldn't you know it, Apple are hosing us again: in order to build with an old SDK version, you have to go hack the MacOSX.Platform plist, as per https://forums.developer.apple.com/thread/43381 . Developing for OS X really is an adversarial process. The build seems to work (sample size: n = 1; Mac OS X 10.11.6 + Nexus 5x running Android N). So I'll call what I have built here 'rel8', and that shall be that. Any remaining issues, then, shall go in a new bug! Thanks all. |
OH, AND: If you're interested in taking over maintainership for HoRNDIS, I'm looking for someone to step up! Please have a look at issue #58 for that. |
Just to say that today I could not manage to connect to a BeagleBone Black running Debian on a fresh install of Sierra. I had to install horndis (used rel8pre2) and it worked straight away. |
I have to use kextunload/kextload workaround every time i plug in my phone. So made a quick tool to automate that https://github.com/sarim/HoRNDIS-Reloader |
Have same issue under 10.12.5. After disabling DeleteUnused_400000(unloading unused kexts) in Clover bootloader tethering and DHCP works perfect without any solutions(needed only one kext thats have lager size). |
I can confirm that it works on Sierra 10.12.6 Steps:
|
Hello,
I can also confirm that it works on Sierra 10.12.6. I upgraded from El capitan, formatting my disk and then make a data recovery from a backup.
After data recovery the kext was installed and data connection from my Samsung Galaxy A3 to my MacBook Pro works fine.
Message du 08/10/17 04:47
De : "Matias Ribichich"
A : "jwise/HoRNDIS"
Copie à : "MACJFT" , "Comment"
Objet : Re: [jwise/HoRNDIS] 10.11 (#42)
I can confirm that it works on Sierra 10.12.6
Steps:
terminal with
sudo rm -rf /System/Library/Extensions/HoRNDIS.kext
sudo rm -rf /Library/Extensions/HoRNDIS.kext
install HoRNDIS-rel8pre2.pkg: http://nyus.joshuawise.com/HoRNDIS-rel8pre2-dbg.pkg
reboot OSX
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.
{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/jwise/HoRNDIS","title":"jwise/HoRNDIS","subtitle":"GitHub repository","main_image_url":"https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png","avatar_image_url":"https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png","action":{"name":"Open in GitHub","url":"https://github.com/jwise/HoRNDIS"}},"updates":{"snippets":[{"icon":"PERSON","message":"@mribichich in #42: I can confirm that it works on Sierra 10.12.6\r\n\r\nSteps:\r\n- terminal with\r\n`sudo rm -rf /System/Library/Extensions/HoRNDIS.kext`\r\n`sudo rm -rf /Library/Extensions/HoRNDIS.kext`\r\n- install HoRNDIS-rel8pre2.pkg: http://nyus.joshuawise.com/HoRNDIS-rel8pre2-dbg.pkg\r\n- reboot OSX"}],"action":{"name":"View Issue","url":"#42 (comment)"}}}
|
Not working on OSX El Capitain:
Jun 18 21:35:33 MBPRetiDeuschle kernel[0]: HoRNDIS: init: HoRNDIS tethering driver for Snow Leopard+, by Joshua Wise
Jun 18 21:35:33 MBPRetiDeuschle kernel[0]: 006028.794737 IOUSBHostHIDDevice@: IOUSBHostHIDDevice::start: unable to set device idle milliseconds
Jun 18 21:35:33 MBPRetiDeuschle kernel[0]: 006028.794750 IOUSBHostHIDDevice@: IOUSBHostHIDDevice::start: start has failed
Jun 18 21:35:33 MBPRetiDeuschle kernel[0]: 006028.797808 IOUSBHostHIDDevice@: IOUSBHostHIDDevice::start: unable to set device idle milliseconds
Jun 18 21:35:33 MBPRetiDeuschle kernel[0]: 006028.797820 IOUSBHostHIDDevice@: IOUSBHostHIDDevice::start: start has failed
Jun 18 21:35:33 MBPRetiDeuschle kernel[0]: IOHIDDevice::newUserClient failed to get a workloop
The text was updated successfully, but these errors were encountered: