All Projects → slavaim → dl_kextsymboltool

slavaim / dl_kextsymboltool

Licence: other
A tool for Mac OS X proxy kext generation to export kernel symbols

Programming Languages

c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to dl kextsymboltool

MacOSX-VFS-redirector
Mac OS X file system filter to redirect file operations
Stars: ✭ 38 (+58.33%)
Mutual labels:  kext
Hackintosh-ASUS-A455LF-Notebook
EFI Folder for ASUS A455LF-WX039D Notebook Series with Clover/OpenCore Legacy or UEFI
Stars: ✭ 27 (+12.5%)
Mutual labels:  kext
OS-X-Yosemite-on-Unsupported-Macs
Install OS X Yosemite on Unsupported Macs
Stars: ✭ 23 (-4.17%)
Mutual labels:  kext
Intelbluetoothfirmware
Intel Bluetooth Drivers for macOS
Stars: ✭ 1,816 (+7466.67%)
Mutual labels:  kext
Itlwm
Intel Wi-Fi Drivers for macOS
Stars: ✭ 5,126 (+21258.33%)
Mutual labels:  kext
Hackintosh Installer University
Open source tutorial & information collector for hackintosh installation.
Stars: ✭ 3,815 (+15795.83%)
Mutual labels:  kext
Santa
A binary authorization system for macOS
Stars: ✭ 3,586 (+14841.67%)
Mutual labels:  kext
X99-Deluxe-II
Files for Asus X99 Deluxe II hackintosh.
Stars: ✭ 17 (-29.17%)
Mutual labels:  kext
AzulPatcher4600
Lilu plugin which applies common patches for the mobile HD4600 iGPU
Stars: ✭ 17 (-29.17%)
Mutual labels:  kext
Karabiner-VirtualHIDDevice
Karabiner-VirtualHIDDevice is a virtual HID device driver for macOS.
Stars: ✭ 49 (+104.17%)
Mutual labels:  kext
Dell5577-hackintosh
Dell5577/Hac/High Sierra/Mojave/Catalina/BigSur
Stars: ✭ 31 (+29.17%)
Mutual labels:  kext
example.kext
Makefile for building macOS kernel extensions
Stars: ✭ 66 (+175%)
Mutual labels:  kext
XNU
Research into porting the XNU kernel to ARM devices.
Stars: ✭ 76 (+216.67%)
Mutual labels:  kext
hackintosh-list
Hackintosh EFI and Kext, Clover theme, macOS installer image, mac Free App ...
Stars: ✭ 84 (+250%)
Mutual labels:  kext
mac-notes
macOS notes
Stars: ✭ 92 (+283.33%)
Mutual labels:  kext
MacOSX-FileSystem-Filter
A file system filter for Mac OS X
Stars: ✭ 72 (+200%)
Mutual labels:  kext
ios-unstripped-kexts
Unstripped iOS kernel extensions and more. More coming soon.
Stars: ✭ 43 (+79.17%)
Mutual labels:  kext
Hackintosh-ThinkPad-E14
Files required for prepping a Hackintosh on ThinkPad E14.
Stars: ✭ 27 (+12.5%)
Mutual labels:  kext

dl_kextsymboltool

A tool for proxy kernel extensions generation.

The tool is used to generate a proxy kext for Mac OS X to export kernel symbols/functions which are not available via Apple provided proxy drivers com.apple.kpi.bsd , com.apple.kpi.dsep , com.apple.kpi.iokit , com.apple.kpi.libkern , com.apple.kpi.mach , com.apple.kpi.private , com.apple.kpi.unsupported .

For example to get access to mac_proc_set_enforce , proc_iterate , proc_lock , proc_unlock run the following script. The generated binary file should be places in kext bundle's Contents/MacOS folder, you also need Contents/Info.plist as for any regular kernel extension( for example look at Info.plist in any of the Apple's proxy kernel extensions ). This kext bundle should be declared as a dependency in OSBundleLibraries for a kernel extension using the exported functions, if you use kextload/kextutil use -d flag to declare dependency on load.

 #!/bin/bash
 NAME=/work/MyProxyKernelExtension  
 # old MacOS X placed the kernel in the root directory
 # nm -gj /mach_kernel > allsymbols  
 # on the lates macOS the kernel can be found at /System/Library/Kernels
 nm -gj /System/Library/Kernels/kernel > allsymbols 
 echo "_mac_proc_set_enforce" > ${NAME}.exports  
 echo "_proc_iterate" >> ${NAME}.exports  
 echo "_proc_lock" >> ${NAME}.exports  
 echo "_proc_unlock" >> ${NAME}.exports  
 # include any more symbols needed    
 
 dl_kextsymboltool -arch i386 -import allsymbols  -export ${NAME}.exports -output ${NAME}_32  
 dl_kextsymboltool -arch x86_64 -import allsymbols -export ${NAME}.exports -output ${NAME}_64 
 
 # make a universal kext 
 lipo -create ${NAME}_32 ${NAME}_64 -output ${NAME} 
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].