<!--
{
  "availability" : [
    "macOS: 10.15.4 -"
  ],
  "documentType" : "symbol",
  "framework" : "NetworkExtension",
  "identifier" : "/documentation/NetworkExtension/NEFilterDataProvider/update(_:using:for:)",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Method",
  "symbol" : {
    "kind" : "Instance Method",
    "modules" : [
      "Network Extension"
    ],
    "preciseIdentifier" : "c:objc(cs)NEFilterDataProvider(im)updateFlow:usingVerdict:forDirection:"
  },
  "title" : "update(_:using:for:)"
}
-->

# update(_:using:for:)

Updates the verdict for a flow outside the context of any filter data provider callback.

```
func update(_ flow: NEFilterSocketFlow, using verdict: NEFilterDataVerdict, for direction: NETrafficDirection)
```

## Parameters

`flow`

The NEFilterSocketFlow to update the verdict for.

`verdict`

An [`NEFilterDataVerdict`](/documentation/NetworkExtension/NEFilterDataVerdict) instance.
This must be an [`allow()`](/documentation/NetworkExtension/NEFilterDataVerdict/allow()) or
[`drop()`](/documentation/NetworkExtension/NEFilterDataVerdict/drop()) verdict, or a data verdict created with the
Swift initializer or  ObjectiveC type method,
[`init(passBytes:peekBytes:)`](/documentation/NetworkExtension/NEFilterDataVerdict/init(passBytes:peekBytes:)).

`direction`

The direction to which the verdict applies.
Pass [`NETrafficDirection.any`](/documentation/NetworkExtension/NETrafficDirection/any) to update the verdict for both the inbound and outbound directions.
This parameter has no effect if the verdict is [`drop()`](/documentation/NetworkExtension/NEFilterDataVerdict/drop()).

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)