Skip to content

Instantly share code, notes, and snippets.

Created October 6, 2013 17:21
Show Gist options
  • Save anonymous/6856651 to your computer and use it in GitHub Desktop.
Save anonymous/6856651 to your computer and use it in GitHub Desktop.
char * OSReturnAsString(OSReturn osr) {
switch (osr) {
case kOSMetaClassDuplicateClass:
return "A duplicate Libkern C++ classname was encountered during kext loading.";
case kOSMetaClassHasInstances:
return "A kext cannot be unloaded because there are instances derived from Libkern C++ classes that it defines.";
case kOSMetaClassInstNoSuper:
return "Internal error: No superclass can be found when constructing an instance of a Libkern C++ class.";
case kOSMetaClassInternal:
return "Internal OSMetaClass run-time error.";
case kOSMetaClassNoDicts:
return "Internal error: An allocation failure occurred registering Libkern C++ classes during kext loading.";
case kOSMetaClassNoInit:
return "Internal error: The Libkern C++ class registration system was not properly initialized during kext loading.";
case kOSMetaClassNoInsKModSet:
return "Internal error: An error occurred registering a specific Libkern C++ class during kext loading.";
case kOSMetaClassNoKext:
return "Internal error: The kext for a Libkern C++ class can't be found during kext loading.";
case kOSMetaClassNoKModSet:
return "Internal error: An allocation failure occurred registering Libkern C++ classes during kext loading.";
case kOSMetaClassNoSuper:
return "Internal error: No superclass can be found for a specific Libkern C++ class during kext loading.";
case kOSMetaClassNoTempData:
return "Internal error: An allocation failure occurred registering Libkern C++ classes during kext loading.";
case kOSReturnError:
return "Unspecified Libkern error. Not equal to KERN_FAILURE.";
case kOSReturnSuccess:
return "Operation successful. Equal to KERN_SUCCESS.";
default:
return "Undefined Error!";
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment