Я пытаюсь разработать модуль политики MAC (Mandatory Access Control), где я пытаюсь реализовать API MAC «mac_iokit_check_device». Я могу построить модуль политики MAC kext, который реализует mac_iokit_check_device API, и я могу загрузить kext. Но драйвер kext, который использует этот API-интерфейс с политикой, имеет проблемы. Он компилируется должным образом. Но не удается разрешить символ «_mac_iokit_check_device». Библиотеки зависимостей драйвера kext, который я использовал, приведены ниже.Символ присутствует в mach_kernel, но не в любом kpi
<key>OSBundleLibraries</key>
<dict>
<key>com.apple.iokit.IOUSBFamily</key>
<string>5.5.5</string>
<key>com.apple.kpi.mach</key>
<string>12.3</string>
<key>com.apple.kpi.unsupported</key>
<string>12.3</string>
<key>com.apple.kpi.iokit</key>
<string>12.3</string>
<key>com.apple.kpi.libkern</key>
<string>12.3</string>
<key>com.apple.kpi.bsd</key>
<string>12.3</string>
<key>com.apple.kpi.dsep</key>
<string>12.3</string>
</dict>
Любопытно, что ни один из КПЭ библиотек не кажется, определяет символ _mac_iokit_check_device. Я вывод, запустив команду
find /System/Library/Extensions/System.kext/PlugIns -type f |
grep -v plist | xargs nm | sort | uniq | grep _mac_iokit_check_device
Однако образ ядра, кажется, есть символ, что следует из
nm /mach_kernel|grep mac_iokit_check
Есть ли способ решить эту проблему нерешенной символа в Kext драйвера? Любая помощь/указатель в этом выпуске будет принята с благодарностью.
Спасибо за помощь. Я имел в виду код SEDarwin для модуля политики выборки, и был добавлен другой kext, который назывался API «mac_iokit_check_device». Это заставило меня поверить, что API-интерфейсы API-модулей необходимо вызывать из другого kext. Я пытаюсь реализовать контроль доступа к устройству и подключая устройство, поддерживаемое iokit, я пытаюсь применить политику. Теперь я реализовал iokit_check_open и вызывается всякий раз, когда обнаружено устройство (во время других действий iokit). Я пытаюсь понять, как этот API можно использовать для обеспечения соблюдения политики доступа к устройствам. Еще раз спасибо. – ramkumarhn