class CommitResult

Defined at line 1535 of file fidling/gen/sdk/fidl/fuchsia.net.filter/fuchsia.net.filter/cpp/fidl/fuchsia.net.filter/cpp/natural_types.h

Public Methods

void CommitResult (CommitResult && other)
CommitResult & operator= (CommitResult && other)
bool IsUnknown ()
::fuchsia_net_filter::CommitResult::Tag Which ()
CommitResult WithOk (::fuchsia_net_filter::Empty val)
const ::fidl::internal::UnionMemberView<1, Storage_> ok ()
::fidl::internal::UnionMemberView<1, Storage_> ok ()
CommitResult & ok (::fuchsia_net_filter::Empty value)

The commit was successfully applied.

CommitResult WithRuleWithInvalidMatcher (::fuchsia_net_filter::RuleId val)
const ::fidl::internal::UnionMemberView<2, Storage_> rule_with_invalid_matcher ()
::fidl::internal::UnionMemberView<2, Storage_> rule_with_invalid_matcher ()
CommitResult & rule_with_invalid_matcher (::fuchsia_net_filter::RuleId value)

One of the changes in the commit caused the specified rule's matcher

to be invalid for the context in which the rule will be evaluated.

For example, this could be a matcher on the ingress interface on

a rule that is in a routine installed in the egress hook, or a

matcher on the source address specifying an IPv4 subnet that is

in an IPv6-only namespace.

CommitResult WithRuleWithInvalidAction (::fuchsia_net_filter::RuleId val)
const ::fidl::internal::UnionMemberView<3, Storage_> rule_with_invalid_action ()
::fidl::internal::UnionMemberView<3, Storage_> rule_with_invalid_action ()
CommitResult & rule_with_invalid_action (::fuchsia_net_filter::RuleId value)

One of the changes in the commit caused the specified rule's action

to be invalid for the context in which the rule will be evaluated.

For example, this could be a NAT action in an IP routine.

CommitResult WithCyclicalRoutineGraph (::fuchsia_net_filter::RoutineId val)
const ::fidl::internal::UnionMemberView<4, Storage_> cyclical_routine_graph ()
::fidl::internal::UnionMemberView<4, Storage_> cyclical_routine_graph ()
CommitResult & cyclical_routine_graph (::fuchsia_net_filter::RoutineId value)

The routine graph forms a cycle, including (at least) the specified

routine.

Each uninstalled routine and all of the routines it directly or

transitively jumps to must form a DAG.

CommitResult WithErrorOnChange (::std::vector< ::fuchsia_net_filter::CommitError> val)
const ::fidl::internal::UnionMemberView<5, Storage_> error_on_change ()
::fidl::internal::UnionMemberView<5, Storage_> error_on_change ()
CommitResult & error_on_change (::std::vector< ::fuchsia_net_filter::CommitError> value)

At least one of the changes provided was invalid given the current

state when `Commit` was called. In order to be maximally

informative, a vector of results is returned where each result

corresponds to the change at the same index (across all batches of

pending changes).

CommitResult WithTransparentProxyWithInvalidMatcher (::fuchsia_net_filter::RuleId val)
const ::fidl::internal::UnionMemberView<6, Storage_> transparent_proxy_with_invalid_matcher ()
::fidl::internal::UnionMemberView<6, Storage_> transparent_proxy_with_invalid_matcher ()
CommitResult & transparent_proxy_with_invalid_matcher (::fuchsia_net_filter::RuleId value)

A rule has a TransparentProxy action without a corresponding valid

matcher: the rule must match on transport protocol to ensure that

the packet has either a TCP or UDP header.

CommitResult WithRedirectWithInvalidMatcher (::fuchsia_net_filter::RuleId val)
const ::fidl::internal::UnionMemberView<7, Storage_> redirect_with_invalid_matcher ()
::fidl::internal::UnionMemberView<7, Storage_> redirect_with_invalid_matcher ()
CommitResult & redirect_with_invalid_matcher (::fuchsia_net_filter::RuleId value)

A rule has a Redirect action without a corresponding valid matcher:

if the action specifies a destination port, the rule must match on

transport protocol to ensure that the packet has either a TCP or UDP

header.

CommitResult WithMasqueradeWithInvalidMatcher (::fuchsia_net_filter::RuleId val)
const ::fidl::internal::UnionMemberView<8, Storage_> masquerade_with_invalid_matcher ()
::fidl::internal::UnionMemberView<8, Storage_> masquerade_with_invalid_matcher ()
CommitResult & masquerade_with_invalid_matcher (::fuchsia_net_filter::RuleId value)

A rule has a Masquerade action without a corresponding valid

matcher: if the action specifies a source port, the rule must match

on transport protocol to ensure that the packet has either a TCP or

UDP header.

void CommitResult (::fidl::internal::DefaultConstructPossiblyInvalidObjectTag )

Enumerations

enum Tag
Name Value
kOk 1
kRuleWithInvalidMatcher 2
kRuleWithInvalidAction 3
kCyclicalRoutineGraph 4
kErrorOnChange 5
kTransparentProxyWithInvalidMatcher 6
kRedirectWithInvalidMatcher 7
kMasqueradeWithInvalidMatcher 8
_do_not_handle_this__write_a_default_case_instead ::std::numeric_limits<::fidl_union_tag_t>::max()

TODO: share union tag types between wire

&

natural.

Defined at line 1551 of file fidling/gen/sdk/fidl/fuchsia.net.filter/fuchsia.net.filter/cpp/fidl/fuchsia.net.filter/cpp/natural_types.h

Friends

class NaturalUnionCodingTraits