Starting from macOS 15 (macOS Sequoia), a new pop-up is triggered: “Local Network Privacy.” We have some questions regarding this new pop-up on MacOS:
Running the following simple code:
cups_dest_t *dests;
int num_dests = cupsGetDests(&dests);
triggers the “Local Network Privacy” pop-up.
Question: Is this intended behavior? Even if the user presses the “Deny” button, printers can still be iterated, and it is possible to set options for the printer. Is this intended behavior? If so, which actions related to the CUPS library will be denied when the user presses the “Deny” button?
Question: Should this pop-up appear for daemons/launchd processes? We found similar questions on some forums, but the answers are unclear. It seems that the pop-up should not appear for launch daemons. We tested the mentioned code with CUPS, and the pop-up was triggered.
Is this a bug? If so, will it be resolved before the new macOS version is released?
Question: There is somewhere documented all the scenarios in which this pop-up may appear is challenging?
Regarding automatically allowing or disallowing the pop-up: We found the following response:
“There is no way to automatically allow or disallow the local network privacy prompt. If it shows up in your app, you will need to analyze your code to better understand how the prompt is being triggered. If the prompt is triggered by a library you do not control, you will need to either remove the library or inquire further with the library vendor.”
Question: How can we ensure that a launchd daemon will work as expected if the user presses the “Deny” button?
Is there any way to detect if the user pressed “Deny”?
OK. Based on my conversations with the local network privacy team, it should not apply to code running as root. Indeed, we had a bug in earlier betas where we failed to implement this pass through correctly.
So, if you’re still seeing local network privacy problems from your daemon on the latest macOS 15 beta (well, release candidate), I recommend that you file a bug about that.
Please post your bug number, just for the record.
Share and Enjoy
—
Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"