My application (using a nested framework for networking) was working correctly on iPadOS 18, but failed to perform a UDP broadcast operation after upgrading the device to iPadOS 28. The low-level console logs consistently show a "Permission denied" error.
Symptoms & Error Message:
When attempting to send a UDP broadcast packet using NWConnection (or a similar low-level socket call within the framework), the connection fails immediately with the following error logged in the console:
nw_socket_service_writes_block_invoke [C2:1] sendmsg(fd 6, 124 bytes) [13: Permission denied]
(Error code 13 corresponds to EACCES).
Verification Steps (What I have checked):
- 
Multicast Networking Entitlement is Approved and Applied: - The necessary entitlement (com.apple.developer.networking.multicast) was granted by Apple.
- The Provisioning Profile used for signing the Host App Target has been regenerated and explicitly includes "Multicast Networking" capability (see attached screenshot).
- I confirmed that Entitlements cannot be added directly to the Framework Target, only the Host App Target, which is the expected behavior.
 
- The necessary entitlement (
- 
Local Network Privacy is Configured: - The Host App's Info.plist contains the NSLocalNetworkUsageDescriptionkey with a clear usage string.
- Crucially, the Local Network Access alert does not reliably appear when the Broadcast function is first called (despite a full reinstall after OS upgrade). Even when Local Network Access is manually enabled in Settings, the Broadcast still fails with EACCES.
 
- The Host App's Info.plist contains the 
- 
Code Implementation: - The Broadcast is attempted using NWConnectionto the host255.255.255.255on a specific port.
 
- The Broadcast is attempted using 
Request:
Since all required entitlements and profiles are correct, and the failure is a low-level EACCES on a newly updated OS version, I suspect this may be a regression bug in the iPadOS 28 security sandbox when validating the Multicast Networking Entitlement against a low-level socket call (like sendmsg).
Has anyone else encountered this specific Permission denied error on iPadOS 28 with a valid Multicast Entitlement, and is there a known workaround aside from switching to mDNS/Bonjour?
My intent was iPadOS 26, not 28. I have posted another thread here: https://developer.apple.com/forums/thread/805719
To the administrators, please kindly delete or close this thread for me. I apologize for the confusion.