Questions tagged [macos-system-extension]

System Extension bundles were introduced with macOS 10.15 as eventual replacements for kernel extensions.

System Extension bundles were introduced with macOS 10.15 as eventual replacements for kernel extensions.

66 questions
3
votes
1 answer

How to kill a System Extension or Network Extension?

So I'm building a macOS app with a Network Extension in Swift. After some tests, the extension remains as a process in the system. I can stop and also I can kill the app but I cannot stop, kill or unload the Network Extension. The Network Extension…
Jan
  • 127
  • 2
  • 8
3
votes
1 answer

How to allocate memory in a DriverKit system extension and map it to another process?

I have allocated memory in my application and passed its pointer and size to IOConnectCallStructMethod. Using IOMemoryDescriptor::CreateMapping I have then mapped this memory to the DriverKit system extension process, and it is possible to write to…
tuple_cat
  • 1,165
  • 2
  • 7
  • 22
3
votes
1 answer

How should "NewUserClient" be implemented

I am trying to interact with a dext from an application. I am able to find the service using IOServiceOpen and I get a call to NewUserClient of my dext (I can see the type parameter passed being output in the log). After this I am a bit lost.…
tuple_cat
  • 1,165
  • 2
  • 7
  • 22
3
votes
3 answers

How to run un-signed System Extensions in OSX catalina?

How to run un-signed System Extensions in OSX catalina? I'm trying to load SimpleFirewall which is a system extension given by apple, ment to demonstrate packet filtering capabilities. The project compiles, but I get this error during…
toti
  • 325
  • 4
  • 12
2
votes
0 answers

Unable to Establish Connection to DriverKit System Extension from App

I am currently developing a macOS application that involves communication with a System Extension (DEXT) created using DriverKit. Despite the extension appearing to be correctly installed and activated, I'm encountering an issue establishing…
Henhen1227
  • 392
  • 1
  • 3
  • 12
2
votes
1 answer

Is there a macOS objective c or swift call for me to check if a system extension has been installed?

I have googled and searched here and have come up empty. I have an application that installs a system extension and I'm resorting to writing to a file when the extension is installed to know. Is there an objective C or Swift function that does…
spartygw
  • 3,289
  • 2
  • 27
  • 51
2
votes
1 answer

Would DriverKit work for custom USB device to control mic volume (no stream)?

I would like to ask for guidance on how to ideally communicate with a custom USB HID device on MacOS. Use case Modify a microphone volume via an external USB HID device. Question Can I use DriverKit (HIDDriverKit) for that or I need to use IOKit? I…
Tom Kupka
  • 39
  • 4
2
votes
1 answer

CopyPipe of DriverKit IOUSBHostInterface fails with kIOReturnError (0xe00002bc)

For my own edification, I'm trying to read some audio data from a USB audio interface using a DriverKit System Extension. My IOProviderClass is IOUSBHostInterface. I can successfully Open() the interface, but CopyPipe() returns kIOReturnError…
Rhythmic Fistman
  • 34,352
  • 5
  • 87
  • 159
2
votes
1 answer

What options can be passed to IOService::Terminate in DriverKit

virtual kern_return_t IOService::Terminate(uint64_t options) says you can pass a parameter with options. I wonder what the different options are? The documentation does not say anything.
tuple_cat
  • 1,165
  • 2
  • 7
  • 22
2
votes
1 answer

How should provisioning profile with com.apple.developer.driverkit.userclient-access look?

Our request to get the entitlement com.apple.developer.driverkit.userclient-access to access our Driverkit driver with bundle id com.example.driver for the app with bundle id com.example.app was processed but we are not sure that we got the correct…
tuple_cat
  • 1,165
  • 2
  • 7
  • 22
2
votes
1 answer

System Extension Validation Fails

im trying to submit a Network Extension activation request but i get this error. The operation couldn’t be completed. (OSSystemExtensionErrorDomain error 9.) I looked it up and apparently it means "validationFailed". Is there a way to debug this…
2
votes
1 answer

ioreg list multiple dext

I have written a system extension using DriverKit and USBDriverKit that seems to work well (running with developer mode on, SIP off, ... still waiting for entitlements). When I plug my USB device and in terminal I type ioreg | grep…
ScottBraun
  • 61
  • 6
2
votes
2 answers

How to map memory in DriverKit using IOMemoryDescriptor::CreateMapping?

I am trying to learn more about DriverKit and memory management, and I read this question: How to allocate memory in a DriverKit system extension and map it to another process? And I would like to understand how to use…
2
votes
1 answer

How to programmatically uninstall App that install DriverKit system extension

I have an app that installs a DriverKit system extension when it launches. If I then drag this app to the Bin from /Applications then I am prompted about that the app also manages a system extension and that the system extension also will be…
tuple_cat
  • 1,165
  • 2
  • 7
  • 22
2
votes
0 answers

How to save configuration from a DriverKit driver

I need to save some configuration from a DriverKit driver. I was reading How to save kext configuration between sessions and in this case it seems that the preferred way is to save the config from a user land app. Since DriverKit drivers are in user…
tuple_cat
  • 1,165
  • 2
  • 7
  • 22