Post

Replies

Boosts

Views

Activity

Reply to Incoming UDP Traffic in macOS 15.3 and later?
I removed the filter. Outbound UDP flows are all seen. The inbound UDP flow in the test scenario is never seen. Some other inbound UDP flows are seen. Here's the modified source I used for the FilterDataProvider: // MARK: Properties // The TCP port which the filter is interested in. // MARK: NEFilterDataProvider override func startFilter(completionHandler: @escaping (Error?) -> Void) { completionHandler(nil) } override func stopFilter(with reason: NEProviderStopReason, completionHandler: @escaping () -> Void) { completionHandler() } override func handleNewFlow(_ flow: NEFilterFlow) -> NEFilterNewFlowVerdict { guard let socketFlow = flow as? NEFilterSocketFlow, let remoteEndpoint = socketFlow.remoteEndpoint as? NWHostEndpoint else { os_log("Early return") return .allow() } os_log("Got a new flow (socket protocol: %d direction: %d) with remote endpoint %{public}@", socketFlow.socketProtocol, socketFlow.direction.rawValue, remoteEndpoint) os_log("Got a new flow with remote port %{public}@", remoteEndpoint.port) return .allow() } }
Apr ’25
Reply to What's the idea behind the changes in the Objective-C flavor of the Foundation documentation?
IMHO, it matters considering that: this is the Objective-C flavor of the documentation. the prototype of the method returns a BOOL. the title of the chapter is "Return value". The type is a BOOL. for more than 30 years, it has been YES or NO (e.g. https://www.nextop.de/NeXTstep_3.3_Developer_Documentation/Foundation/Classes/NSDictionaryClassCluster.htmld/index.html). It's a documentation so I don't see how the fact that TRUE, true, YES or 1 are all the same matters.
Apr ’25
Reply to Launch Constraint, SIP and legacy launchd plist
Feedback ticket for the documentation: FB17345983                  But as a third-party developer I’m not sure that’s a significant restriction. If you’re building your own daemon or agent, you can bake spawn constraint into its code signature. This would protect the daemon or agent from being launched by an unexpected executable. BUT this would not prevent the launchd plist from starting an executable at the path pointed by the plist but which is not the expected executable.
Topic: Privacy & Security SubTopic: General Tags:
Apr ’25