|
Mac Dev Center
Mac OS X Reference Library Drivers, Kernel, & Hardware: User-Space Device Access I/O Kit Framework Reference
|
KextManager.h |
| Includes: |
The KextManager API provides a simple interface for applications to load kernel extensions (kexts) via RPC to kextd, and to look up the URLs for kexts by bundle identifier.
Create a URL locating a kext with a given bundle identifier.
Request the kext loading system to load a kext with a given bundle identifier.
Request the kext loading system to load a kext with a given URL.
KextManagerCreateURLForBundleIdentifier |
Create a URL locating a kext with a given bundle identifier.
CFURLRef KextManagerCreateURLForBundleIdentifier( CFAllocatorRef allocator, CFStringRef kextIdentifier);
allocatorThe allocator to use to allocate memory for the new object.
Pass NULL or kCFAllocatorDefault
to use the current default allocator.
kextIdentifierThe bundle identifier to look up.
A CFURLRef locating a kext with the requested bundle identifier.
Returns NULL if the kext cannot be found, or on error.
Kexts are looked up first by whether they are loaded, second by version.
Specifically, if kextIdentifier identifies a kext
that is currently loaded,
the returned URL will locate that kext if it's still present on disk.
If the requested kext is not loaded,
or if its bundle is not at the location it was originally loaded from,
the returned URL will locate the latest version of the desired kext,
if one can be found within the system extensions folder.
If no version of the kext can be found, NULL is returned.
KextManagerLoadKextWithIdentifier |
Request the kext loading system to load a kext with a given bundle identifier.
OSReturn KextManagerLoadKextWithIdentifier( CFStringRef kextIdentifier, CFArrayRef dependencyKextAndFolderURLs);
kextIdentifierThe bundle identifier of the kext to look up and load.
dependencyKextAndFolderURLsAn array of additional URLs, of individual kexts and of folders that may contain kexts.
kOSReturnSuccess if the kext is successfully loaded
(or is already loaded), otherwise returns on error.
kextIdentifier is looked up in the system extensions
folder and among any kexts from dependencyKextAndFolderURLs.
Any non-kext URLs in dependencyKextAndFolderURLs
are scanned at the top level for kexts and plugins of kexts.
Either the calling process must have an effective user id of 0 (superuser),
or the kext being loaded and all its dependencies must reside in
/System and have an OSBundleAllowUserLoad property of true.
KextManagerLoadKextWithURL |
Request the kext loading system to load a kext with a given URL.
OSReturn KextManagerLoadKextWithURL( CFURLRef kextURL, CFArrayRef dependencyKextAndFolderURLs);
kextURLThe URL of the kext to load.
dependencyKextAndFolderURLsAn array of additional URLs, of individual kexts and of folders that may contain kexts.
kOSReturnSuccess if the kext is successfully loaded
(or is already loaded), otherwise returns on error.
Any non-kext URLs in dependencyKextAndFolderURLs
are scanned at the top level for kexts and plugins of kexts.
Either the calling process must have an effective user id of 0 (superuser),
or the kext being loaded and all its dependencies must reside in
/System and have an OSBundleAllowUserLoad property of true.
Last Updated: 2009-10-15