/// <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)) { }
/// <summary> /// Constructor. /// </summary> /// <param name="ale_layer">The ALE layer type..</param> public FirewallFilterEnumTemplate(FirewallAleLayer ale_layer) : this(FirewallUtils.GetLayerGuidForAleLayer(ale_layer)) { }