Kext: Replace kernel functions

Discussion in 'Mac Programming' started by Codeaholic, Feb 19, 2013.

  1. Codeaholic macrumors newbie

    Aug 4, 2011

    I've 'fixed' a bug in a XNU function. Now I'm looking for a way to apply this fix with a kernel module/kext. I can't be bothered to compile after every Apple update a new kernel with my fix. So I want to write a kext which replaces the old function with my function. I've done this for many times on Solaris and Linux but I'm a newbie in the XNU world.

    I guess all what I need is a way (example code that works would be helpful!) to access the kernel symbol address table. With the address of the old function I should be able to patch a Jump into the function that points to my new function. Very evil, I know.

    Does somebody did something like this? Please let me know, if you have any idea.
  2. Madd the Sane macrumors 6502a

    Madd the Sane

    Nov 8, 2010
    If you've found a bug in the kernel, file a bug report at, as well as post the patch on Apple's kernel mailing list.
  3. Codeaholic thread starter macrumors newbie

    Aug 4, 2011
    Yes, but first I want to check my fix with a kext. I guess it would be a nice exercise as well.

    Does somebody has an idea?
  4. Codeaholic thread starter macrumors newbie

    Aug 4, 2011

Share This Page