Kext: Replace kernel functions

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

  1. macrumors newbie

    Joined:
    Aug 4, 2011
    #1
    Hi,

    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. macrumors 6502

    Madd the Sane

    Joined:
    Nov 8, 2010
    Location:
    Utah
    #2
    If you've found a bug in the kernel, file a bug report at bugreport.apple.com, as well as post the patch on Apple's kernel mailing list.
     
  3. thread starter macrumors newbie

    Joined:
    Aug 4, 2011
    #3
    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. thread starter macrumors newbie

    Joined:
    Aug 4, 2011
    #4

Share This Page