/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace NetworkFirewall { namespace Model { /** *

The basic rule criteria for Network Firewall to use to inspect packet headers * in stateful traffic flow inspection. Traffic flows that match the criteria are a * match for the corresponding StatefulRule.

See Also:

AWS * API Reference

*/ class Header { public: AWS_NETWORKFIREWALL_API Header(); AWS_NETWORKFIREWALL_API Header(Aws::Utils::Json::JsonView jsonValue); AWS_NETWORKFIREWALL_API Header& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_NETWORKFIREWALL_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The protocol to inspect for. To specify all, you can use IP, * because all traffic on Amazon Web Services and on the internet is IP.

*/ inline const StatefulRuleProtocol& GetProtocol() const{ return m_protocol; } /** *

The protocol to inspect for. To specify all, you can use IP, * because all traffic on Amazon Web Services and on the internet is IP.

*/ inline bool ProtocolHasBeenSet() const { return m_protocolHasBeenSet; } /** *

The protocol to inspect for. To specify all, you can use IP, * because all traffic on Amazon Web Services and on the internet is IP.

*/ inline void SetProtocol(const StatefulRuleProtocol& value) { m_protocolHasBeenSet = true; m_protocol = value; } /** *

The protocol to inspect for. To specify all, you can use IP, * because all traffic on Amazon Web Services and on the internet is IP.

*/ inline void SetProtocol(StatefulRuleProtocol&& value) { m_protocolHasBeenSet = true; m_protocol = std::move(value); } /** *

The protocol to inspect for. To specify all, you can use IP, * because all traffic on Amazon Web Services and on the internet is IP.

*/ inline Header& WithProtocol(const StatefulRuleProtocol& value) { SetProtocol(value); return *this;} /** *

The protocol to inspect for. To specify all, you can use IP, * because all traffic on Amazon Web Services and on the internet is IP.

*/ inline Header& WithProtocol(StatefulRuleProtocol&& value) { SetProtocol(std::move(value)); return *this;} /** *

The source IP address or address range to inspect for, in CIDR notation. To * match with any address, specify ANY.

Specify an IP address * or a block of IP addresses in Classless Inter-Domain Routing (CIDR) notation. * Network Firewall supports all address ranges for IPv4 and IPv6.

*

Examples:

  • To configure Network Firewall to inspect for the * IP address 192.0.2.44, specify 192.0.2.44/32.

  • To * configure Network Firewall to inspect for IP addresses from 192.0.2.0 to * 192.0.2.255, specify 192.0.2.0/24.

  • To configure * Network Firewall to inspect for the IP address * 1111:0000:0000:0000:0000:0000:0000:0111, specify * 1111:0000:0000:0000:0000:0000:0000:0111/128.

  • To * configure Network Firewall to inspect for IP addresses from * 1111:0000:0000:0000:0000:0000:0000:0000 to * 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify * 1111:0000:0000:0000:0000:0000:0000:0000/64.

For * more information about CIDR notation, see the Wikipedia entry Classless * Inter-Domain Routing.

*/ inline const Aws::String& GetSource() const{ return m_source; } /** *

The source IP address or address range to inspect for, in CIDR notation. To * match with any address, specify ANY.

Specify an IP address * or a block of IP addresses in Classless Inter-Domain Routing (CIDR) notation. * Network Firewall supports all address ranges for IPv4 and IPv6.

*

Examples:

  • To configure Network Firewall to inspect for the * IP address 192.0.2.44, specify 192.0.2.44/32.

  • To * configure Network Firewall to inspect for IP addresses from 192.0.2.0 to * 192.0.2.255, specify 192.0.2.0/24.

  • To configure * Network Firewall to inspect for the IP address * 1111:0000:0000:0000:0000:0000:0000:0111, specify * 1111:0000:0000:0000:0000:0000:0000:0111/128.

  • To * configure Network Firewall to inspect for IP addresses from * 1111:0000:0000:0000:0000:0000:0000:0000 to * 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify * 1111:0000:0000:0000:0000:0000:0000:0000/64.

For * more information about CIDR notation, see the Wikipedia entry Classless * Inter-Domain Routing.

*/ inline bool SourceHasBeenSet() const { return m_sourceHasBeenSet; } /** *

The source IP address or address range to inspect for, in CIDR notation. To * match with any address, specify ANY.

Specify an IP address * or a block of IP addresses in Classless Inter-Domain Routing (CIDR) notation. * Network Firewall supports all address ranges for IPv4 and IPv6.

*

Examples:

  • To configure Network Firewall to inspect for the * IP address 192.0.2.44, specify 192.0.2.44/32.

  • To * configure Network Firewall to inspect for IP addresses from 192.0.2.0 to * 192.0.2.255, specify 192.0.2.0/24.

  • To configure * Network Firewall to inspect for the IP address * 1111:0000:0000:0000:0000:0000:0000:0111, specify * 1111:0000:0000:0000:0000:0000:0000:0111/128.

  • To * configure Network Firewall to inspect for IP addresses from * 1111:0000:0000:0000:0000:0000:0000:0000 to * 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify * 1111:0000:0000:0000:0000:0000:0000:0000/64.

For * more information about CIDR notation, see the Wikipedia entry Classless * Inter-Domain Routing.

*/ inline void SetSource(const Aws::String& value) { m_sourceHasBeenSet = true; m_source = value; } /** *

The source IP address or address range to inspect for, in CIDR notation. To * match with any address, specify ANY.

Specify an IP address * or a block of IP addresses in Classless Inter-Domain Routing (CIDR) notation. * Network Firewall supports all address ranges for IPv4 and IPv6.

*

Examples:

  • To configure Network Firewall to inspect for the * IP address 192.0.2.44, specify 192.0.2.44/32.

  • To * configure Network Firewall to inspect for IP addresses from 192.0.2.0 to * 192.0.2.255, specify 192.0.2.0/24.

  • To configure * Network Firewall to inspect for the IP address * 1111:0000:0000:0000:0000:0000:0000:0111, specify * 1111:0000:0000:0000:0000:0000:0000:0111/128.

  • To * configure Network Firewall to inspect for IP addresses from * 1111:0000:0000:0000:0000:0000:0000:0000 to * 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify * 1111:0000:0000:0000:0000:0000:0000:0000/64.

For * more information about CIDR notation, see the Wikipedia entry Classless * Inter-Domain Routing.

*/ inline void SetSource(Aws::String&& value) { m_sourceHasBeenSet = true; m_source = std::move(value); } /** *

The source IP address or address range to inspect for, in CIDR notation. To * match with any address, specify ANY.

Specify an IP address * or a block of IP addresses in Classless Inter-Domain Routing (CIDR) notation. * Network Firewall supports all address ranges for IPv4 and IPv6.

*

Examples:

  • To configure Network Firewall to inspect for the * IP address 192.0.2.44, specify 192.0.2.44/32.

  • To * configure Network Firewall to inspect for IP addresses from 192.0.2.0 to * 192.0.2.255, specify 192.0.2.0/24.

  • To configure * Network Firewall to inspect for the IP address * 1111:0000:0000:0000:0000:0000:0000:0111, specify * 1111:0000:0000:0000:0000:0000:0000:0111/128.

  • To * configure Network Firewall to inspect for IP addresses from * 1111:0000:0000:0000:0000:0000:0000:0000 to * 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify * 1111:0000:0000:0000:0000:0000:0000:0000/64.

For * more information about CIDR notation, see the Wikipedia entry Classless * Inter-Domain Routing.

*/ inline void SetSource(const char* value) { m_sourceHasBeenSet = true; m_source.assign(value); } /** *

The source IP address or address range to inspect for, in CIDR notation. To * match with any address, specify ANY.

Specify an IP address * or a block of IP addresses in Classless Inter-Domain Routing (CIDR) notation. * Network Firewall supports all address ranges for IPv4 and IPv6.

*

Examples:

  • To configure Network Firewall to inspect for the * IP address 192.0.2.44, specify 192.0.2.44/32.

  • To * configure Network Firewall to inspect for IP addresses from 192.0.2.0 to * 192.0.2.255, specify 192.0.2.0/24.

  • To configure * Network Firewall to inspect for the IP address * 1111:0000:0000:0000:0000:0000:0000:0111, specify * 1111:0000:0000:0000:0000:0000:0000:0111/128.

  • To * configure Network Firewall to inspect for IP addresses from * 1111:0000:0000:0000:0000:0000:0000:0000 to * 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify * 1111:0000:0000:0000:0000:0000:0000:0000/64.

For * more information about CIDR notation, see the Wikipedia entry Classless * Inter-Domain Routing.

*/ inline Header& WithSource(const Aws::String& value) { SetSource(value); return *this;} /** *

The source IP address or address range to inspect for, in CIDR notation. To * match with any address, specify ANY.

Specify an IP address * or a block of IP addresses in Classless Inter-Domain Routing (CIDR) notation. * Network Firewall supports all address ranges for IPv4 and IPv6.

*

Examples:

  • To configure Network Firewall to inspect for the * IP address 192.0.2.44, specify 192.0.2.44/32.

  • To * configure Network Firewall to inspect for IP addresses from 192.0.2.0 to * 192.0.2.255, specify 192.0.2.0/24.

  • To configure * Network Firewall to inspect for the IP address * 1111:0000:0000:0000:0000:0000:0000:0111, specify * 1111:0000:0000:0000:0000:0000:0000:0111/128.

  • To * configure Network Firewall to inspect for IP addresses from * 1111:0000:0000:0000:0000:0000:0000:0000 to * 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify * 1111:0000:0000:0000:0000:0000:0000:0000/64.

For * more information about CIDR notation, see the Wikipedia entry Classless * Inter-Domain Routing.

*/ inline Header& WithSource(Aws::String&& value) { SetSource(std::move(value)); return *this;} /** *

The source IP address or address range to inspect for, in CIDR notation. To * match with any address, specify ANY.

Specify an IP address * or a block of IP addresses in Classless Inter-Domain Routing (CIDR) notation. * Network Firewall supports all address ranges for IPv4 and IPv6.

*

Examples:

  • To configure Network Firewall to inspect for the * IP address 192.0.2.44, specify 192.0.2.44/32.

  • To * configure Network Firewall to inspect for IP addresses from 192.0.2.0 to * 192.0.2.255, specify 192.0.2.0/24.

  • To configure * Network Firewall to inspect for the IP address * 1111:0000:0000:0000:0000:0000:0000:0111, specify * 1111:0000:0000:0000:0000:0000:0000:0111/128.

  • To * configure Network Firewall to inspect for IP addresses from * 1111:0000:0000:0000:0000:0000:0000:0000 to * 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify * 1111:0000:0000:0000:0000:0000:0000:0000/64.

For * more information about CIDR notation, see the Wikipedia entry Classless * Inter-Domain Routing.

*/ inline Header& WithSource(const char* value) { SetSource(value); return *this;} /** *

The source port to inspect for. You can specify an individual port, for * example 1994 and you can specify a port range, for example * 1990:1994. To match with any port, specify ANY.

*/ inline const Aws::String& GetSourcePort() const{ return m_sourcePort; } /** *

The source port to inspect for. You can specify an individual port, for * example 1994 and you can specify a port range, for example * 1990:1994. To match with any port, specify ANY.

*/ inline bool SourcePortHasBeenSet() const { return m_sourcePortHasBeenSet; } /** *

The source port to inspect for. You can specify an individual port, for * example 1994 and you can specify a port range, for example * 1990:1994. To match with any port, specify ANY.

*/ inline void SetSourcePort(const Aws::String& value) { m_sourcePortHasBeenSet = true; m_sourcePort = value; } /** *

The source port to inspect for. You can specify an individual port, for * example 1994 and you can specify a port range, for example * 1990:1994. To match with any port, specify ANY.

*/ inline void SetSourcePort(Aws::String&& value) { m_sourcePortHasBeenSet = true; m_sourcePort = std::move(value); } /** *

The source port to inspect for. You can specify an individual port, for * example 1994 and you can specify a port range, for example * 1990:1994. To match with any port, specify ANY.

*/ inline void SetSourcePort(const char* value) { m_sourcePortHasBeenSet = true; m_sourcePort.assign(value); } /** *

The source port to inspect for. You can specify an individual port, for * example 1994 and you can specify a port range, for example * 1990:1994. To match with any port, specify ANY.

*/ inline Header& WithSourcePort(const Aws::String& value) { SetSourcePort(value); return *this;} /** *

The source port to inspect for. You can specify an individual port, for * example 1994 and you can specify a port range, for example * 1990:1994. To match with any port, specify ANY.

*/ inline Header& WithSourcePort(Aws::String&& value) { SetSourcePort(std::move(value)); return *this;} /** *

The source port to inspect for. You can specify an individual port, for * example 1994 and you can specify a port range, for example * 1990:1994. To match with any port, specify ANY.

*/ inline Header& WithSourcePort(const char* value) { SetSourcePort(value); return *this;} /** *

The direction of traffic flow to inspect. If set to ANY, the * inspection matches bidirectional traffic, both from the source to the * destination and from the destination to the source. If set to * FORWARD, the inspection only matches traffic going from the source * to the destination.

*/ inline const StatefulRuleDirection& GetDirection() const{ return m_direction; } /** *

The direction of traffic flow to inspect. If set to ANY, the * inspection matches bidirectional traffic, both from the source to the * destination and from the destination to the source. If set to * FORWARD, the inspection only matches traffic going from the source * to the destination.

*/ inline bool DirectionHasBeenSet() const { return m_directionHasBeenSet; } /** *

The direction of traffic flow to inspect. If set to ANY, the * inspection matches bidirectional traffic, both from the source to the * destination and from the destination to the source. If set to * FORWARD, the inspection only matches traffic going from the source * to the destination.

*/ inline void SetDirection(const StatefulRuleDirection& value) { m_directionHasBeenSet = true; m_direction = value; } /** *

The direction of traffic flow to inspect. If set to ANY, the * inspection matches bidirectional traffic, both from the source to the * destination and from the destination to the source. If set to * FORWARD, the inspection only matches traffic going from the source * to the destination.

*/ inline void SetDirection(StatefulRuleDirection&& value) { m_directionHasBeenSet = true; m_direction = std::move(value); } /** *

The direction of traffic flow to inspect. If set to ANY, the * inspection matches bidirectional traffic, both from the source to the * destination and from the destination to the source. If set to * FORWARD, the inspection only matches traffic going from the source * to the destination.

*/ inline Header& WithDirection(const StatefulRuleDirection& value) { SetDirection(value); return *this;} /** *

The direction of traffic flow to inspect. If set to ANY, the * inspection matches bidirectional traffic, both from the source to the * destination and from the destination to the source. If set to * FORWARD, the inspection only matches traffic going from the source * to the destination.

*/ inline Header& WithDirection(StatefulRuleDirection&& value) { SetDirection(std::move(value)); return *this;} /** *

The destination IP address or address range to inspect for, in CIDR notation. * To match with any address, specify ANY.

Specify an IP * address or a block of IP addresses in Classless Inter-Domain Routing (CIDR) * notation. Network Firewall supports all address ranges for IPv4 and IPv6.

*

Examples:

  • To configure Network Firewall to inspect for the * IP address 192.0.2.44, specify 192.0.2.44/32.

  • To * configure Network Firewall to inspect for IP addresses from 192.0.2.0 to * 192.0.2.255, specify 192.0.2.0/24.

  • To configure * Network Firewall to inspect for the IP address * 1111:0000:0000:0000:0000:0000:0000:0111, specify * 1111:0000:0000:0000:0000:0000:0000:0111/128.

  • To * configure Network Firewall to inspect for IP addresses from * 1111:0000:0000:0000:0000:0000:0000:0000 to * 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify * 1111:0000:0000:0000:0000:0000:0000:0000/64.

For * more information about CIDR notation, see the Wikipedia entry Classless * Inter-Domain Routing.

*/ inline const Aws::String& GetDestination() const{ return m_destination; } /** *

The destination IP address or address range to inspect for, in CIDR notation. * To match with any address, specify ANY.

Specify an IP * address or a block of IP addresses in Classless Inter-Domain Routing (CIDR) * notation. Network Firewall supports all address ranges for IPv4 and IPv6.

*

Examples:

  • To configure Network Firewall to inspect for the * IP address 192.0.2.44, specify 192.0.2.44/32.

  • To * configure Network Firewall to inspect for IP addresses from 192.0.2.0 to * 192.0.2.255, specify 192.0.2.0/24.

  • To configure * Network Firewall to inspect for the IP address * 1111:0000:0000:0000:0000:0000:0000:0111, specify * 1111:0000:0000:0000:0000:0000:0000:0111/128.

  • To * configure Network Firewall to inspect for IP addresses from * 1111:0000:0000:0000:0000:0000:0000:0000 to * 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify * 1111:0000:0000:0000:0000:0000:0000:0000/64.

For * more information about CIDR notation, see the Wikipedia entry Classless * Inter-Domain Routing.

*/ inline bool DestinationHasBeenSet() const { return m_destinationHasBeenSet; } /** *

The destination IP address or address range to inspect for, in CIDR notation. * To match with any address, specify ANY.

Specify an IP * address or a block of IP addresses in Classless Inter-Domain Routing (CIDR) * notation. Network Firewall supports all address ranges for IPv4 and IPv6.

*

Examples:

  • To configure Network Firewall to inspect for the * IP address 192.0.2.44, specify 192.0.2.44/32.

  • To * configure Network Firewall to inspect for IP addresses from 192.0.2.0 to * 192.0.2.255, specify 192.0.2.0/24.

  • To configure * Network Firewall to inspect for the IP address * 1111:0000:0000:0000:0000:0000:0000:0111, specify * 1111:0000:0000:0000:0000:0000:0000:0111/128.

  • To * configure Network Firewall to inspect for IP addresses from * 1111:0000:0000:0000:0000:0000:0000:0000 to * 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify * 1111:0000:0000:0000:0000:0000:0000:0000/64.

For * more information about CIDR notation, see the Wikipedia entry Classless * Inter-Domain Routing.

*/ inline void SetDestination(const Aws::String& value) { m_destinationHasBeenSet = true; m_destination = value; } /** *

The destination IP address or address range to inspect for, in CIDR notation. * To match with any address, specify ANY.

Specify an IP * address or a block of IP addresses in Classless Inter-Domain Routing (CIDR) * notation. Network Firewall supports all address ranges for IPv4 and IPv6.

*

Examples:

  • To configure Network Firewall to inspect for the * IP address 192.0.2.44, specify 192.0.2.44/32.

  • To * configure Network Firewall to inspect for IP addresses from 192.0.2.0 to * 192.0.2.255, specify 192.0.2.0/24.

  • To configure * Network Firewall to inspect for the IP address * 1111:0000:0000:0000:0000:0000:0000:0111, specify * 1111:0000:0000:0000:0000:0000:0000:0111/128.

  • To * configure Network Firewall to inspect for IP addresses from * 1111:0000:0000:0000:0000:0000:0000:0000 to * 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify * 1111:0000:0000:0000:0000:0000:0000:0000/64.

For * more information about CIDR notation, see the Wikipedia entry Classless * Inter-Domain Routing.

*/ inline void SetDestination(Aws::String&& value) { m_destinationHasBeenSet = true; m_destination = std::move(value); } /** *

The destination IP address or address range to inspect for, in CIDR notation. * To match with any address, specify ANY.

Specify an IP * address or a block of IP addresses in Classless Inter-Domain Routing (CIDR) * notation. Network Firewall supports all address ranges for IPv4 and IPv6.

*

Examples:

  • To configure Network Firewall to inspect for the * IP address 192.0.2.44, specify 192.0.2.44/32.

  • To * configure Network Firewall to inspect for IP addresses from 192.0.2.0 to * 192.0.2.255, specify 192.0.2.0/24.

  • To configure * Network Firewall to inspect for the IP address * 1111:0000:0000:0000:0000:0000:0000:0111, specify * 1111:0000:0000:0000:0000:0000:0000:0111/128.

  • To * configure Network Firewall to inspect for IP addresses from * 1111:0000:0000:0000:0000:0000:0000:0000 to * 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify * 1111:0000:0000:0000:0000:0000:0000:0000/64.

For * more information about CIDR notation, see the Wikipedia entry Classless * Inter-Domain Routing.

*/ inline void SetDestination(const char* value) { m_destinationHasBeenSet = true; m_destination.assign(value); } /** *

The destination IP address or address range to inspect for, in CIDR notation. * To match with any address, specify ANY.

Specify an IP * address or a block of IP addresses in Classless Inter-Domain Routing (CIDR) * notation. Network Firewall supports all address ranges for IPv4 and IPv6.

*

Examples:

  • To configure Network Firewall to inspect for the * IP address 192.0.2.44, specify 192.0.2.44/32.

  • To * configure Network Firewall to inspect for IP addresses from 192.0.2.0 to * 192.0.2.255, specify 192.0.2.0/24.

  • To configure * Network Firewall to inspect for the IP address * 1111:0000:0000:0000:0000:0000:0000:0111, specify * 1111:0000:0000:0000:0000:0000:0000:0111/128.

  • To * configure Network Firewall to inspect for IP addresses from * 1111:0000:0000:0000:0000:0000:0000:0000 to * 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify * 1111:0000:0000:0000:0000:0000:0000:0000/64.

For * more information about CIDR notation, see the Wikipedia entry Classless * Inter-Domain Routing.

*/ inline Header& WithDestination(const Aws::String& value) { SetDestination(value); return *this;} /** *

The destination IP address or address range to inspect for, in CIDR notation. * To match with any address, specify ANY.

Specify an IP * address or a block of IP addresses in Classless Inter-Domain Routing (CIDR) * notation. Network Firewall supports all address ranges for IPv4 and IPv6.

*

Examples:

  • To configure Network Firewall to inspect for the * IP address 192.0.2.44, specify 192.0.2.44/32.

  • To * configure Network Firewall to inspect for IP addresses from 192.0.2.0 to * 192.0.2.255, specify 192.0.2.0/24.

  • To configure * Network Firewall to inspect for the IP address * 1111:0000:0000:0000:0000:0000:0000:0111, specify * 1111:0000:0000:0000:0000:0000:0000:0111/128.

  • To * configure Network Firewall to inspect for IP addresses from * 1111:0000:0000:0000:0000:0000:0000:0000 to * 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify * 1111:0000:0000:0000:0000:0000:0000:0000/64.

For * more information about CIDR notation, see the Wikipedia entry Classless * Inter-Domain Routing.

*/ inline Header& WithDestination(Aws::String&& value) { SetDestination(std::move(value)); return *this;} /** *

The destination IP address or address range to inspect for, in CIDR notation. * To match with any address, specify ANY.

Specify an IP * address or a block of IP addresses in Classless Inter-Domain Routing (CIDR) * notation. Network Firewall supports all address ranges for IPv4 and IPv6.

*

Examples:

  • To configure Network Firewall to inspect for the * IP address 192.0.2.44, specify 192.0.2.44/32.

  • To * configure Network Firewall to inspect for IP addresses from 192.0.2.0 to * 192.0.2.255, specify 192.0.2.0/24.

  • To configure * Network Firewall to inspect for the IP address * 1111:0000:0000:0000:0000:0000:0000:0111, specify * 1111:0000:0000:0000:0000:0000:0000:0111/128.

  • To * configure Network Firewall to inspect for IP addresses from * 1111:0000:0000:0000:0000:0000:0000:0000 to * 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify * 1111:0000:0000:0000:0000:0000:0000:0000/64.

For * more information about CIDR notation, see the Wikipedia entry Classless * Inter-Domain Routing.

*/ inline Header& WithDestination(const char* value) { SetDestination(value); return *this;} /** *

The destination port to inspect for. You can specify an individual port, for * example 1994 and you can specify a port range, for example * 1990:1994. To match with any port, specify ANY.

*/ inline const Aws::String& GetDestinationPort() const{ return m_destinationPort; } /** *

The destination port to inspect for. You can specify an individual port, for * example 1994 and you can specify a port range, for example * 1990:1994. To match with any port, specify ANY.

*/ inline bool DestinationPortHasBeenSet() const { return m_destinationPortHasBeenSet; } /** *

The destination port to inspect for. You can specify an individual port, for * example 1994 and you can specify a port range, for example * 1990:1994. To match with any port, specify ANY.

*/ inline void SetDestinationPort(const Aws::String& value) { m_destinationPortHasBeenSet = true; m_destinationPort = value; } /** *

The destination port to inspect for. You can specify an individual port, for * example 1994 and you can specify a port range, for example * 1990:1994. To match with any port, specify ANY.

*/ inline void SetDestinationPort(Aws::String&& value) { m_destinationPortHasBeenSet = true; m_destinationPort = std::move(value); } /** *

The destination port to inspect for. You can specify an individual port, for * example 1994 and you can specify a port range, for example * 1990:1994. To match with any port, specify ANY.

*/ inline void SetDestinationPort(const char* value) { m_destinationPortHasBeenSet = true; m_destinationPort.assign(value); } /** *

The destination port to inspect for. You can specify an individual port, for * example 1994 and you can specify a port range, for example * 1990:1994. To match with any port, specify ANY.

*/ inline Header& WithDestinationPort(const Aws::String& value) { SetDestinationPort(value); return *this;} /** *

The destination port to inspect for. You can specify an individual port, for * example 1994 and you can specify a port range, for example * 1990:1994. To match with any port, specify ANY.

*/ inline Header& WithDestinationPort(Aws::String&& value) { SetDestinationPort(std::move(value)); return *this;} /** *

The destination port to inspect for. You can specify an individual port, for * example 1994 and you can specify a port range, for example * 1990:1994. To match with any port, specify ANY.

*/ inline Header& WithDestinationPort(const char* value) { SetDestinationPort(value); return *this;} private: StatefulRuleProtocol m_protocol; bool m_protocolHasBeenSet = false; Aws::String m_source; bool m_sourceHasBeenSet = false; Aws::String m_sourcePort; bool m_sourcePortHasBeenSet = false; StatefulRuleDirection m_direction; bool m_directionHasBeenSet = false; Aws::String m_destination; bool m_destinationHasBeenSet = false; Aws::String m_destinationPort; bool m_destinationPortHasBeenSet = false; }; } // namespace Model } // namespace NetworkFirewall } // namespace Aws