Example #1
0
        /// <summary>
        /// Get a layer GUID for an ALE layer enumeration.
        /// </summary>
        /// <param name="ale_layer">The ALE layer enumeration.</param>
        /// <returns>The ALE layer GUID.</returns>
        public static Guid GetLayerGuidForAleLayer(FirewallAleLayer ale_layer)
        {
            switch (ale_layer)
            {
            case FirewallAleLayer.ConnectV4:
                return(FirewallLayerGuids.FWPM_LAYER_ALE_AUTH_CONNECT_V4);

            case FirewallAleLayer.ConnectV6:
                return(FirewallLayerGuids.FWPM_LAYER_ALE_AUTH_CONNECT_V6);

            case FirewallAleLayer.ListenV4:
                return(FirewallLayerGuids.FWPM_LAYER_ALE_AUTH_LISTEN_V4);

            case FirewallAleLayer.ListenV6:
                return(FirewallLayerGuids.FWPM_LAYER_ALE_AUTH_LISTEN_V6);

            case FirewallAleLayer.RecvAcceptV4:
                return(FirewallLayerGuids.FWPM_LAYER_ALE_AUTH_RECV_ACCEPT_V4);

            case FirewallAleLayer.RecvAcceptV6:
                return(FirewallLayerGuids.FWPM_LAYER_ALE_AUTH_RECV_ACCEPT_V6);

            default:
                throw new ArgumentException("Unknown ALE layer", nameof(ale_layer));
            }
        }
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="ale_layer">The pre-defined ALE layer.</param>
 public FirewallLayerGuid(FirewallAleLayer ale_layer)
     : base(FirewallUtils.GetLayerGuidForAleLayer(ale_layer))
 {
 }
Example #3
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="ale_layer">The ALE layer type..</param>
 public FirewallFilterEnumTemplate(FirewallAleLayer ale_layer)
     : this(FirewallUtils.GetLayerGuidForAleLayer(ale_layer))
 {
 }