Ссылка OSKextLib.h
Объявляет функции, основные возвращаемые значения и другие константы, связанные с расширениями ядра (kexts).
Включенные заголовки
<sys/cdefs.h><stdint.h><mach/kmod.h><mach/vm_types.h><libkern/OSTypes.h><libkern/OSReturn.h>
Поддержка слабых ссылок на символы в kexts.
-
Проверки, был ли разрешен слабо ссылаемый символ.
Объявление
Objective C
#define OSKextSymbolIsResolved(weak_sym) \ (&(weak_sym) != gOSKextUnresolved)Параметры
weak_symСлабый символ, который будет протестирован на разрешение.
Возвращаемое значение
TRUEесли weak_sym разрешен, илиFALSEесли не разрешен weak_sym.Обсуждение
Если слабые символы разрешены, это - макрос удобства для тестирования.
Пример для слабого символа называют
foo:if (OSKextSymbolIsResolved(foo)) {foo();} else {printf("foo() is not resolved\n");}
Оператор импорта
Objective C
#include <OSKextLib.h>;Доступность
Доступный в OS X v10.6 и позже.
Функции для подачи с запросами к kextd в пространстве пользователя.
-
Отменяет незаконченное пространство пользователя kext запрос, не вызывая обратный вызов.
Объявление
Objective C
OSReturn OSKextCancelRequest ( OSKextRequestTag requestTag, void **contextOut );Параметры
requestTagТег, идентифицирующий незаконченный запрос.
contextOutЕсли не -
NULL, заполненный указателем контекста, первоначально переданным с запросом.Возвращаемое значение
kOSReturnSuccessесли успешно отменяется запрос.kOSKextReturnNotFoundеслиrequestTagне идентифицирует незаконченного запроса.Прочее.OSKextReturn...ошибки возможны.Обсуждение
Эта функция отменяет незаконченный запрос, если она существует, так, чтобы не был вызван его обратный вызов. Это возвращается в
contextOutуказатель контекста раньше создавал запрос так, чтобы могли быть очищены любые ресурсы, выделенные для запроса.Kexts не должны отменять выдающиеся запросы в своих функциях остановки модуля; когда kext разгружен, все незаконченные обратные вызовы запроса вызываются с результатом
kOSKextReturnTimeoutпрежде чем функция остановки вызвана.Оператор импорта
Objective C
#include <OSKextLib.h>;Доступность
Доступный в OS X v10.6 и позже.
-
Запрашивает данные от нелокализованного файла ресурсов в пакете kext на диске.
Объявление
Objective C
OSReturn OSKextRequestResource ( const char *kextIdentifier, const char *resourceName, OSKextRequestResourceCallback callback, void *context, OSKextRequestTag *requestTagOut );Параметры
kextIdentifierCFBundleIdentifier kext, из которого можно считать файл.
resourceNameИмя файла ресурсов для чтения.
callbackУказатель на функцию обратного вызова; адрес должен быть в загруженном в настоящее время kext.
contextУказатель на произвольные данные во время выполнения, которые будут переданы обратному вызову, когда это будет вызвано. Может быть
NULL.requestTagOutЕсли не -
NULL, заполненный на успехе тегом, идентифицирующим незаконченный запрос (или при отказе сkOSKextRequestTagInvalid; может использоваться сOSKextCancelRequest.Возвращаемое значение
kOSReturnSuccessесли запрос успешно ставится в очередь.kOSKextReturnInvalidArgumentеслиkextIdentifierилиresourceNameили еслиcallbackне адрес в загруженной kext исполнимой программе.kOSKextReturnStoppingесли разгрузить попытка предпринимается на kext, содержащемcallback.Прочее.OSKextReturn...ошибки возможны.Обсуждение
Этот функциональные очереди асинхронный запрос к пространству пользователя kext демон
kextd(8); запросы на ресурсы рано в системном запуске не будут обработаны, пока не запустит тот демон. Запросы, сделанные kext, в то время как это kext загружается (в частности в модуле kext запускают подпрограмму), не будут обработаны до окончания возвратов подпрограммы запуска и kext полностью загружается. Kexts, запрашивающий ресурсы, несомненно, должен будет выполнить надлежащую блокировку в функции обратного вызова.Ресурсы Kext сохранены в дисковом пакете kext под подкаталогом Ресурсов. См. Руководство по программированию Пакета для обзора структуры пакета. Контекст локализации kext демона (а именно, тот из суперпользователя) будет использоваться в получении ресурсов; ресурсы kext, предназначенные для использования в ядре, не должны обычно локализоваться.
callbackкак гарантируют, будет вызван кроме тех случаев, когда:OSKextCancelRequest используется для отмены запроса. В этом случае kext добирается
contextуказатель и может очистить его.Запрос выполнен во время модуля kext, запускают подпрограмму, и подпрограмма запуска возвращает ошибку. В этом случае обратные вызовы не могут быть безопасно вызваны, таким образом, kext должен очистить все контексты запроса при возврате ошибки из подпрограммы запуска.
Kexts с незаконченными запросами не подвергаются для авторазгружений, но запросы подвергаются тайм-ауту после нескольких минут. Если то количество времени передает без ответа от пространства пользователя,
callbackвызывается с результатом.kOSKextReturnTimeout.Явно разгруженные Kexts имеют все незаконченные обратные вызовы запроса, вызванные с результатом
kOSKextReturnStopping. Даже если его подпрограмма остановки предотвратит разгрузку, kext должен обработать эти обратные вызовы. Если kext действительно предотвращает разгрузку, он может переиздать запросы ресурса за пределами функции остановки.Оператор импорта
Objective C
#include <OSKextLib.h>;Доступность
Доступный в OS X v10.6 и позже.
Функции для загрузки и отслеживания kexts в ядре.
-
Запросите, чтобы был загружен kext.
Объявление
Objective C
OSReturn OSKextLoadKextWithIdentifier ( const char *kextIdentifier );Параметры
kextIdentifierИдентификатор пакета kext, который будет загружен.
Возвращаемое значение
kOSReturnSuccessесли kext был загружен (или был уже загружен).kOSKextReturnDeferredесли kext не был найден, и запрос был поставлен в очередь кkextd(8). Другие возвращаемые значения указывают отказ загрузить kext.Обсуждение
Если kext уже находится в ядре, но не загружен, это сразу загружается. Если это не найдено, асинхронный запрос загрузки выполнен, чтобы
kextd(8)иkOSKextReturnDeferredвозвращается. Нет никакого общего механизма уведомления или обратного вызова для запросов загрузки.Оператор импорта
Objective C
#include <OSKextLib.h>;Доступность
Доступный в OS X v10.6 и позже.
-
Выпустите загруженный kext на основе его тега загрузки.
Объявление
Objective C
OSReturn OSKextReleaseKextWithLoadTag ( OSKextLoadTag loadTag );Параметры
loadTagТег загрузки kext, который будет выпущен. Посмотрите
OSKextGetCurrentLoadTag.Возвращаемое значение
kOSReturnSuccessесли был выпущен kext.kOSKextReturnNotFoundесли не был найден kext.kOSKextReturnInvalidArgumentеслиloadTagkOSKextInvalidLoadTag.Обсуждение
kext должен был быть сохранен ранее через
OSKextRetainKextWithLoadTag.Эта функция планирует авторазгрузить сканирование для всего kexts. То, когда то сканирование происходит, если kext имеет, авторазгружаются, включило, это будет разгружено, если не будет никаких выдающихся ссылок на него и нет никаких экземпляров его классов C++ Libkern (если таковые имеются).
Kexts, определяющие подклассы
IOServiceимейте авторазгружаются, включил автоматически. Другой kexts может использовать подсчет ссылок для управления автоматический, разгружаются, не имея необходимость определять и создавать объекты C++ Libkern. Например, файловая система kext может быть сохранена каждый раз, когда новое монтирование создано и выпущено, когда удалено монтирование. Когда последнее монтирование будет удалено, kext будет разгружен после краткой задержки.В то время как авторазгрузить сканирование имеет место после задержки, по крайней мере, минуты авторазгружается kext, управляющий его собственными подсчетами ссылок для, должен быть подготовлен иметь его функцию остановки модуля, вызванную даже, в то время как все еще работает функция, вызывающая эту функцию.
kext может получить свой собственный тег загрузки с помощью
OSKextGetCurrentLoadTag.Kexts не должен сохранять и выпускать другой kexts; ссылки связи составлены внутренне.
Оператор импорта
Objective C
#include <OSKextLib.h>;Доступность
Доступный в OS X v10.6 и позже.
-
Сохраните загруженный kext на основе его тега загрузки и включите, авторазгружают для этого kext.
Объявление
Objective C
OSReturn OSKextRetainKextWithLoadTag ( OSKextLoadTag loadTag );Параметры
loadTagТег загрузки kext, который будет сохранен. Посмотрите
OSKextGetCurrentLoadTag.Возвращаемое значение
kOSReturnSuccessесли был сохранен kext.kOSKextReturnNotFoundесли не был найден kext.kOSKextReturnInvalidArgumentеслиloadTagkOSKextInvalidLoadTag.Обсуждение
Сохранение kext препятствует тому, чтобы он был разгружен, или явно или автоматически, и включает, авторазгружаются для kext. То, когда авторазгружаются, включено, затем вскоре после того, как последняя ссылка kext отбрасывается, она будет разгружена, если не будет никаких выдающихся ссылок на нее и нет никаких экземпляров его подклассов C++ Libkern (если таковые имеются).
Kexts, определяющие подклассы
IOServiceимейте авторазгружаются, включил автоматически. Другой kexts может использовать подсчет ссылок для управления автоматический, разгружаются, не имея необходимость определять и создавать объекты C++ Libkern. Например, файловая система kext может сохранить себя каждый раз, когда новое монтирование создается, и выпустите себя, когда удалено монтирование. Когда последнее монтирование будет удалено, kext будет разгружен после краткой задержки.kext может получить свой собственный тег загрузки с помощью
OSKextGetCurrentLoadTag.Kexts не должен сохранять и выпускать другой kexts; ссылки связи составлены внутренне.
Оператор импорта
Objective C
#include <OSKextLib.h>;Доступность
Доступный в OS X v10.6 и позже.
Типы, константы и макросы, предоставляющие kext информацию о себе.
-
Возвращает CFBundleIdentifier для вызова kext как струна до.
Объявление
Objective C
const char * OSKextGetCurrentIdentifier ( void );Возвращаемое значение
CFBundleIdentifier для вызова kext как струна до.
Оператор импорта
Objective C
#include <OSKextLib.h>;Доступность
Доступный в OS X v10.6 и позже.
-
Возвращает тег загрузки во время выполнения для вызова kext как
OSKextLoadTag.Объявление
Objective C
OSKextLoadTag OSKextGetCurrentLoadTag ( void );Возвращаемое значение
Загрузка во время выполнения тегирует для вызова kext как
OSKextLoadTag.Обсуждение
Тег загрузки идентифицирует этот загруженный экземпляр kext к ядру и к функциям ядра, воздействующим на kexts.
Оператор импорта
Objective C
#include <OSKextLib.h>;Доступность
Доступный в OS X v10.6 и позже.
-
Возвращает CFBundleVersion для вызова kext как струна до.
Объявление
Objective C
const char * OSKextGetCurrentVersionString ( void );Возвращаемое значение
CFBundleVersion для вызова kext как струна до.
Оператор импорта
Objective C
#include <OSKextLib.h>;Доступность
Доступный в OS X v10.6 и позже.
Функции для подачи с запросами к kextd в пространстве пользователя.
-
Вызванный для обеспечения результатов для kext запроса ресурса.
Объявление
Objective C
typedef void ( *OSKextRequestResourceCallback)( OSKextRequestTag requestTag, OSReturn result, const void *resourceData, uint32_t resourceDataLength, void *context);Параметры
requestTagТег запроса, которому принадлежит обратный вызов.
resultРезультат запроса:
kOSReturnSuccessесли был обработан запрос;kOSKextReturnTimeoutесли запрос испытал таймаут;kOSKextReturnStoppingесли разгружается kext, содержащий адрес обратного вызова для kext; или другие значения на ошибке.resourceDataУказатель на требуемые данные ресурсов. Принадлежавший системе; kext должен сделать копию, если он должен сохранить данные мимо обратного вызова.
resourceDataLengthДлина
resourceData.contextУказатель контекста первоначально передал
OSKextRequestResource.Оператор импорта
Objective C
#include <OSKextLib.h>;Доступность
Доступный в OS X v10.6 и позже.
Посмотрите раздел Overview выше для документации уровня заголовка.
-
Уникальный идентификатор присвоился к загруженному instanace kext.
Объявление
Objective C
typedef uint32_t OSKextLoadTag;Обсуждение
Если kext разгружен и позже перезагружен, новый экземпляр имеет различный тег загрузки.
kext может вложить свой собственный тег загрузки
kmod_info_tструктура, переданная в ее модуль, запускает подпрограмму, какidполе (бросок к этому типу). Можно использовать тег загрузки с функциямиOSKextRetainKextWithLoadTagиOSKextReleaseKextWithLoadTag.Оператор импорта
Objective C
#include <OSKextLib.h>;Доступность
Доступный в OS X v10.6 и позже.
-
Идентифицирует запрос kext, выполненный для пространства пользователя.
Объявление
Objective C
typedef uint32_t OSKextRequestTag;Оператор импорта
Objective C
#include <OSKextLib.h>;Доступность
Доступный в OS X v10.6 и позже.
Посмотрите раздел Overview выше для документации уровня заголовка.
-
Объявление
Objective C
#define kIOKitPersonalitiesKey "IOKitPersonalities" #define kOSBundleAllowUserLoadKey "OSBundleAllowUserLoad" #define kOSBundleCompatibleVersionKey "OSBundleCompatibleVersion" #define kOSBundleEnableKextLoggingKey "OSBundleEnableKextLogging" #define kOSBundleIsInterfaceKey "OSBundleIsInterface" #define kOSBundleLibrariesKey "OSBundleLibraries" #define kOSBundleRequiredConsole "Console" #define kOSBundleRequiredKey "OSBundleRequired" #define kOSBundleRequiredLocalRoot "Local-Root" #define kOSBundleRequiredNetworkRoot "Network-Root" #define kOSBundleRequiredRoot "Root" #define kOSBundleRequiredSafeBoot "Safe Boot" #define kOSBundleSharedExecutableIdentifierKey "OSBundleSharedExecutableIdentifier" #define kOSKernelResourceKey "OSKernelResource" #define kOSKextInvalidLoadTag ((OSKextLoadTag)(-1)) #define kOSKextKernelIdentifier "__kernel__" #define kOSKextRequestTagInvalid ((OSKextRequestTag)-1) #define kOSKextReturnArchNotFound libkern_kext_err(0xf) #define kOSKextReturnAuthentication libkern_kext_err(0xd) #define kOSKextReturnBadData libkern_kext_err(0x7) #define kOSKextReturnBootLevel libkern_kext_err(0x12) #define kOSKextReturnCache libkern_kext_err(0x10) #define kOSKextReturnDeferred libkern_kext_err(0x11) #define kOSKextReturnDependencies libkern_kext_err(0xe) #define kOSKextReturnDependencyLoadError libkern_kext_err(0x15) #define kOSKextReturnDisabled libkern_kext_err(0xa) #define kOSKextReturnInternalError libkern_kext_err(0x1) #define kOSKextReturnInUse libkern_kext_err(0x18) #define kOSKextReturnInvalidArgument libkern_kext_err(0x5) #define kOSKextReturnLinkError libkern_kext_err(0x16) #define kOSKextReturnLoadedVersionDiffers libkern_kext_err(0x14) #define kOSKextReturnNoMemory libkern_kext_err(0x2) #define kOSKextReturnNoResources libkern_kext_err(0x3) #define kOSKextReturnNotAKext libkern_kext_err(0xb) #define kOSKextReturnNotFound libkern_kext_err(0x6) #define kOSKextReturnNotLoadable libkern_kext_err(0x13) #define kOSKextReturnNotPrivileged libkern_kext_err(0x4) #define kOSKextReturnSerialization libkern_kext_err(0x8) #define kOSKextReturnStartStopError libkern_kext_err(0x17) #define kOSKextReturnStopping libkern_kext_err(0x1a) #define kOSKextReturnTimeout libkern_kext_err(0x19) #define kOSKextReturnUnsupported libkern_kext_err(0x9) #define kOSKextReturnValidation libkern_kext_err(0xc)Константы
-
kIOKitPersonalitiesKeykIOKitPersonalitiesKeyСловарь словарей используется в соответствии для драйверов Набора I/O.
Доступный в OS X v10.6 и позже.
-
kOSBundleAllowUserLoadKeykOSBundleAllowUserLoadKeyБулево значение, указывающее, ли
kextcache(8)удостоит чести запрос некорневого процесса загружать kext.Посмотрите
KextManagerLoadKextWithURLиKextManagerLoadKextWithIdentifier.Доступный в OS X v10.6 и позже.
-
kOSBundleCompatibleVersionKeykOSBundleCompatibleVersionKeyСтрока, дающая назад-совместимую-версию библиотеки kext в расширенном Mac OS 'vers' формат (####.##.##s {1-255}, где' этап сборки 'd', 'b', 'f' или 'ФК').
Доступный в OS X v10.6 и позже.
-
kOSBundleEnableKextLoggingKeykOSBundleEnableKextLoggingKeyНабор к истине для имения ядра kext журналирование спецификации применился к kext. Посмотрите
OSKextLogSpec.Доступный в OS X v10.6 и позже.
-
kOSBundleIsInterfaceKeykOSBundleIsInterfaceKeyБулево значение, указывающее, содержит ли kext исполнимая программа только ссылки символа.
Доступный в OS X v10.6 и позже.
-
kOSBundleLibrariesKeykOSBundleLibrariesKeyПеречисление словаря соединяет зависимости для этого kext. Ключи являются идентификаторами пакета, значения являются строками версии.
Доступный в OS X v10.6 и позже.
-
kOSBundleRequiredConsolekOSBundleRequiredConsoleЭто
OSBundleRequiredзначение указывает, что kext может быть необходим для консольного доступа (в частности в однопользовательском запуске, когдаkextd(8). не работает), и должен быть загружен во время раннего запуска.Доступный в OS X v10.6 и позже.
-
kOSBundleRequiredKeykOSBundleRequiredKeyСтрока, указывающая, в которых видах запуска этот kext, возможно, должен загрузиться во время раннего запуска (прежде чем
kextcache(8)).Значение является одним из:
Используйте это свойство рассудительно. Каждый kext, объявляющий значение кроме времени запуска увеличений «OSBundleRequiredSafeBoot» как футболист, должен считать его в память или запуститься, kext кэши должны включать его.
Доступный в OS X v10.6 и позже.
-
kOSBundleRequiredLocalRootkOSBundleRequiredLocalRootЭто
OSBundleRequiredзначение указывает, что kext может быть необходим для монтирования корневой файловой системы при запуске с локального диска.Доступный в OS X v10.6 и позже.
-
kOSBundleRequiredNetworkRootkOSBundleRequiredNetworkRootЭто
OSBundleRequiredзначение указывает, что kext может быть необходим для монтирования корневой файловой системы при запуске по сетевому соединению.Доступный в OS X v10.6 и позже.
-
kOSBundleRequiredRootkOSBundleRequiredRootЭто
OSBundleRequiredзначение указывает, что kext может быть необходим для монтирования корневой файловой системы ли, запустившись с локальной переменной или сетевого тома.Доступный в OS X v10.6 и позже.
-
kOSBundleRequiredSafeBootkOSBundleRequiredSafeBootЭто
OSBundleRequiredзначение указывает, что kext может быть загружен во время безопасного запуска. Это значение обычно не заставляет kext быть считанным футболистом или включенным в запуск kext кэши.Доступный в OS X v10.6 и позже.
-
kOSBundleSharedExecutableIdentifierKeykOSBundleSharedExecutableIdentifierKeyОсуждаемый (используемый на некоторых выпусках Mac OS X до 10,6 Snow Leopard). Значение является идентификатором пакета pseudokext, содержащего исполнимую программу, совместно использованную этим kext.
Доступный в OS X v10.6 и позже.
-
kOSKernelResourceKeykOSKernelResourceKeyБулево значение, указывающее, представляет ли kext встроенный компонент ядра.
Доступный в OS X v10.6 и позже.
-
kOSKextInvalidLoadTagkOSKextInvalidLoadTagЗначение тега загрузки, которое никогда не будет использоваться для загруженного kext; указывает kext, не найденный.
Доступный в OS X v10.6 и позже.
-
kOSKextKernelIdentifierkOSKextKernelIdentifierЭто - пользователь CFBundleIdentifier для самого ядра.
Доступный в OS X v10.6 и позже.
-
kOSKextRequestTagInvalidkOSKextRequestTagInvalidЗначение тега запроса, которое никогда не будет использоваться для запроса kext; указывает отказ создавать/ставить запрос в очередь.
Доступный в OS X v10.6 и позже.
-
kOSKextReturnArchNotFoundkOSKextReturnArchNotFoundKext не содержит код для требуемой архитектуры.
Доступный в OS X v10.6 и позже.
-
kOSKextReturnAuthenticationkOSKextReturnAuthenticationОтказы Authetication встретились; проверьте диагностику на подробные данные.
Доступный в OS X v10.6 и позже.
-
kOSKextReturnBadDatakOSKextReturnBadDataНекорректные данные (не используемый для XML).
Доступный в OS X v10.6 и позже.
-
kOSKextReturnBootLevelkOSKextReturnBootLevelKext, не загружаемый или работа, не позволенная на текущем уровне начальной загрузки.
Доступный в OS X v10.6 и позже.
-
kOSKextReturnCachekOSKextReturnCacheОшибка произошла, обработав систему kext кэш.
Доступный в OS X v10.6 и позже.
-
kOSKextReturnDeferredkOSKextReturnDeferredРабота была отправлена асинхронно на пространство пользователя (только ядро).
Доступный в OS X v10.6 и позже.
-
kOSKextReturnDependencieskOSKextReturnDependenciesОтказы разрешения зависимости встретились; проверьте диагностику на подробные данные.
Доступный в OS X v10.6 и позже.
-
kOSKextReturnDependencyLoadErrorkOSKextReturnDependencyLoadErrorОшибка загрузки произошла на зависимости kext быть загруженным.
Доступный в OS X v10.6 и позже.
-
kOSKextReturnDisabledkOSKextReturnDisabledРабота в настоящее время отключается.
Доступный в OS X v10.6 и позже.
-
kOSKextReturnInternalErrorkOSKextReturnInternalErrorВнутренняя ошибка в kext библиотеке. Контраст с
OSReturnError.Доступный в OS X v10.6 и позже.
-
kOSKextReturnInUsekOSKextReturnInUsekext используется в настоящее время или имеет выдающиеся ссылки и не может быть разгружен.
Доступный в OS X v10.6 и позже.
-
kOSKextReturnInvalidArgumentkOSKextReturnInvalidArgumentНедействительный аргумент.
Доступный в OS X v10.6 и позже.
-
kOSKextReturnLinkErrorkOSKextReturnLinkErrorОтказ канала произошел с этим kext или зависимостью.
Доступный в OS X v10.6 и позже.
-
kOSKextReturnLoadedVersionDifferskOSKextReturnLoadedVersionDiffersРазличная версия (или исполнимый UUID или исполнимая программа контрольной суммой) требуемого kext уже загружается.
Доступный в OS X v10.6 и позже.
-
kOSKextReturnNoMemorykOSKextReturnNoMemoryВыделение памяти перестало работать.
Доступный в OS X v10.6 и позже.
-
kOSKextReturnNoResourceskOSKextReturnNoResourcesНекоторый ресурс кроме памяти (такой как доступные теги загрузки) исчерпывается.
Доступный в OS X v10.6 и позже.
-
kOSKextReturnNotAKextkOSKextReturnNotAKextПакет не является расширением ядра.
Доступный в OS X v10.6 и позже.
-
kOSKextReturnNotFoundkOSKextReturnNotFoundПоисковый элемент, не найденный.
Доступный в OS X v10.6 и позже.
-
kOSKextReturnNotLoadablekOSKextReturnNotLoadableKext не может быть загружен; проверьте диагностику на подробные данные.
Доступный в OS X v10.6 и позже.
-
kOSKextReturnNotPrivilegedkOSKextReturnNotPrivilegedВызывающая сторона испытывает недостаток в полномочиях выполнить требуемую работу.
Доступный в OS X v10.6 и позже.
-
kOSKextReturnSerializationkOSKextReturnSerializationОшибочное преобразование или (ООН), сериализирующая URL, строку или XML.
Доступный в OS X v10.6 и позже.
-
kOSKextReturnStartStopErrorkOSKextReturnStartStopErrorkext запускаются или останавливаются, подпрограмма возвратила ошибку.
Доступный в OS X v10.6 и позже.
-
kOSKextReturnStoppingkOSKextReturnStoppingkext находится в процессе остановки; запросы не могут быть выполнены.
Доступный в OS X v10.6 и позже.
-
kOSKextReturnTimeoutkOSKextReturnTimeoutЗапрос kext испытал таймаут.
Доступный в OS X v10.6 и позже.
-
kOSKextReturnUnsupportedkOSKextReturnUnsupportedРабота или еще больше не поддерживается.
Доступный в OS X v10.6 и позже.
-
kOSKextReturnValidationkOSKextReturnValidationОтказы проверки встретились; проверьте диагностику на подробные данные.
Доступный в OS X v10.6 и позже.
-
-
Объявление
Objective C
extern const void * gOSKextUnresolved;Константы
-
gOSKextUnresolvedgOSKextUnresolvedЗначение, с которым связываются неразрешенные, слабо ссылаемые символы kext.
kext должен протестировать слабый символ перед использованием его. Слабый символ только безопасно использовать, если это не равно
gOSKextUnresolved.Пример для слабого символа называют
foo:if (&foo != gOSKextUnresolved) {foo();} else {printf("foo() is not supported\n");}
Доступный в OS X v10.6 и позже.
-
