[iPadOS 28] EACCES (Permission Denied) on UDP Broadcast despite Multicast Networking Entitlement

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):

  1. 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.
  2. Local Network Privacy is Configured:

    • The Host App's Info.plist contains the NSLocalNetworkUsageDescription key 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.
  3. Code Implementation:

    • The Broadcast is attempted using NWConnection to the host 255.255.255.255 on a specific port.

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?

Answered by Tetsuya_0 in 864191022

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.

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.

[iPadOS 28] EACCES (Permission Denied) on UDP Broadcast despite Multicast Networking Entitlement
 
 
Q