I am seeing this behaviour also with the FilterPacketProvider.
In the simple example at the bottom, we allow every packet flowing.
With this extension enabled and about 15 Mbit/s receiving and 4 Mbit/s sending the connections in the browser timeout.
This is more frequent with video conferencing tools like Meet and Teams, which are UDP based and a lot of traffic is generated
Is there any news regarding the tickets?
We are facing a lot of trouble with clients that have a contentFilter installed like for example some enterprise anti malware and firewalls agent like Cortex, where they keeps disconnecting from the video conference
import NetworkExtension
import os.log
class FilterPacketProvider: NEFilterPacketProvider {
static let log = OSLog(subsystem: "com.example.apple-...", category: "PacketProvider")
private let log: OSLog
override init() {
self.log = Self.log
os_log(.info, log: self.log, "FilterPacketProvider: init")
super.init()
}
override func startFilter(completionHandler: @escaping (Error?) -> Void) {
os_log(.info, log: self.log, "FilterPacketProvider: startFilter")
self.packetHandler = self.handlePacketwithContext;
completionHandler(nil)
}
override func stopFilter(with reason: NEProviderStopReason, completionHandler: @escaping () -> Void) {
os_log(.info, log: self.log, "FilterPacketProvider: stopFilter")
completionHandler()
}
private func handlePacketwithContext(context: NEFilterPacketContext,
interface: nw_interface_t,
direction: NETrafficDirection,
_ packetBytes: UnsafeRawPointer,
packetLength: Int) -> NEFilterPacketProvider.Verdict {
return Verdict.allow;
}
}