SimpleTunnel & lack of NEFilterBrowserFlow

Hi,


After a week of entitlement issue and undocumented requirements discovering, I finally succeeded to run FilterDataProvider & FilterContentProvider. However I only see NEFilterSocketFlow (testing with safari on iPad 10.1.1, xcode 8.1).

URL and endpoints are not present on new flow. As a workaround, I ask for more outbound data and then get the endpoints and parse the http request to get the URL. Using this technique I can make the connection hang on blocked/remediated access but can't get a block page, I suppose that it should be normal as it would mess with the original response.

I also supposed that if I could get a NEFilterBrowserFlow as the code suggest, it would be a lot easier.


I tried setting browser filtering to true and socket filtering to false -> no flow, so I left both flags to true.


Can anyone have an idea why I get wrong type of flows ?

Replies

Double check that you’ve set

filterBrowsers
in your NEFilterProviderConfiguration.

Share and Enjoy

Quinn “The Eskimo!”
Apple Developer Relations, Developer Technical Support, Core OS/Hardware

let myEmail = "eskimo" + "1" + "@apple.com"

In the logs :


starting with configuration: {
    name = <24-char-str>
    identifier = 40403B16-658F-4FD4-B5F1-76D38A9C2067
    applicationName = SimpleTunnel
    application = io.voltdox.SimpleTunnel2
    grade = 1
    contentFilter = {
        enabled = YES
        provider = {
            pluginType = io.voltdox.SimpleTunnel2
            serverAddress = <10-char-str>
            username = <8-char-str>
            organization = <9-char-str>
            filterBrowsers = YES
            filterSockets = YES
        }
    }
}

I don't use any vpn configuration, I'm only looking to filter access to website based on url rules and category database for entreprise control

In the logs :

OK then. Well, beyond that I’ve got nothing. When I brought up my own filter provider test project (from scratch, not based on SimpleTunnel), I got browser flows without any difficulty. I can think of anything (other than the

filterBrowsers
property, which you’ve already ruled out) that would cause you to get socket flows but not browser flows.

Share and Enjoy

Quinn “The Eskimo!”
Apple Developer Relations, Developer Technical Support, Core OS/Hardware

let myEmail = "eskimo" + "1" + "@apple.com"