<filename>sdk/dotnet/Tencentcloud/Teo/Outputs/DdosPolicyDdosRulePacketFilterPacketFilter.cs<gh_stars>0// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;
using Pulumi;

namespace TencentCloudIAC.PulumiPackage.Tencentcloud.Teo.Outputs
{

    [OutputType]
    public sealed class DdosPolicyDdosRulePacketFilterPacketFilter
    {
        /// <summary>
        /// Action to take. Valid values: `drop`, `transmit`, `drop_block`, `forward`.
        /// </summary>
        public readonly string? Action;
        /// <summary>
        /// Packet character depth to check of feature 1. Valid value range: 1-1500.
        /// </summary>
        public readonly int? Depth;
        /// <summary>
        /// Packet character depth to check of feature 2. Valid value range: 1-1500.
        /// </summary>
        public readonly int? Depth2;
        /// <summary>
        /// End of the dest port range. Valid value range: 0-65535.
        /// </summary>
        public readonly int? DportEnd;
        /// <summary>
        /// Start of the dest port range. Valid value range: 0-65535.
        /// </summary>
        public readonly int? DportStart;
        /// <summary>
        /// Negate the match condition of feature 1. Valid values:- `0`: match.- `1`: not match.
        /// </summary>
        public readonly int? IsNot;
        /// <summary>
        /// Negate the match condition of feature 2. Valid values:- `0`: match.- `1`: not match.
        /// </summary>
        public readonly int? IsNot2;
        /// <summary>
        /// Packet layer for matching begin of feature 1. Valid values:- `begin_l5`: matching from packet payload.- `begin_l4`: matching from TCP/UDP header.- `begin_l3`: matching from IP header.
        /// </summary>
        public readonly string? MatchBegin;
        /// <summary>
        /// Packet layer for matching begin of feature 2. Valid values:- `begin_l5`: matching from packet payload.- `begin_l4`: matching from TCP/UDP header.- `begin_l3`: matching from IP header.
        /// </summary>
        public readonly string? MatchBegin2;
        /// <summary>
        /// Relation between multi features. Valid values: `and`, `or`, `none` (only feature 1 is used).
        /// </summary>
        public readonly string? MatchLogic;
        /// <summary>
        /// Match type of feature 1. Valid values:- `pcre`: regex expression.- `sunday`: string match.
        /// </summary>
        public readonly string? MatchType;
        /// <summary>
        /// Match type of feature 2. Valid values:- `pcre`: regex expression.- `sunday`: string match.
        /// </summary>
        public readonly string? MatchType2;
        /// <summary>
        /// Offset of feature 1. Valid value range: 1-1500.
        /// </summary>
        public readonly int? Offset;
        /// <summary>
        /// Offset of feature 2. Valid value range: 1-1500.
        /// </summary>
        public readonly int? Offset2;
        /// <summary>
        /// Max packet size. Valid value range: 0-1500.
        /// </summary>
        public readonly int? PacketMax;
        /// <summary>
        /// Min packet size. Valid value range: 0-1500.
        /// </summary>
        public readonly int? PacketMin;
        /// <summary>
        /// Valid value: `tcp`, `udp`, `icmp`, `all`.
        /// </summary>
        public readonly string? Protocol;
        /// <summary>
        /// End of the source port range. Valid value range: 0-65535.
        /// </summary>
        public readonly int? SportEnd;
        /// <summary>
        /// Start of the source port range. Valid value range: 0-65535.
        /// </summary>
        public readonly int? SportStart;
        /// <summary>
        /// Regex expression or string to match.
        /// </summary>
        public readonly string? Str;
        /// <summary>
        /// Regex expression or string to match.
        /// </summary>
        public readonly string? Str2;

        [OutputConstructor]
        private DdosPolicyDdosRulePacketFilterPacketFilter(
            string? action,

            int? depth,

            int? depth2,

            int? dportEnd,

            int? dportStart,

            int? isNot,

            int? isNot2,

            string? matchBegin,

            string? matchBegin2,

            string? matchLogic,

            string? matchType,

            string? matchType2,

            int? offset,

            int? offset2,

            int? packetMax,

            int? packetMin,

            string? protocol,

            int? sportEnd,

            int? sportStart,

            string? str,

            string? str2)
        {
            Action = action;
            Depth = depth;
            Depth2 = depth2;
            DportEnd = dportEnd;
            DportStart = dportStart;
            IsNot = isNot;
            IsNot2 = isNot2;
            MatchBegin = matchBegin;
            MatchBegin2 = matchBegin2;
            MatchLogic = matchLogic;
            MatchType = matchType;
            MatchType2 = matchType2;
            Offset = offset;
            Offset2 = offset2;
            PacketMax = packetMax;
            PacketMin = packetMin;
            Protocol = protocol;
            SportEnd = sportEnd;
            SportStart = sportStart;
            Str = str;
            Str2 = str2;
        }
    }
}
