summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorFĂ©lix Sipma2016-03-04 11:44:40 +0100
committerJoey Hess2016-03-04 12:32:35 -0400
commit6f12458190537c64461d4edcdb07f52142ca533d (patch)
treede15830a61a18d01b0d1757bab577fb56234ff76 /src
parent30cb9dfc4531793b6f3ba144613263e1b48e1bda (diff)
Firewall: update Chain constructors
(cherry picked from commit 1a485202eeab60d9d677576278480a4109db72fb)
Diffstat (limited to 'src')
-rw-r--r--src/Propellor/Property/Firewall.hs32
1 files changed, 21 insertions, 11 deletions
diff --git a/src/Propellor/Property/Firewall.hs b/src/Propellor/Property/Firewall.hs
index 9d9c7926..bb38c27f 100644
--- a/src/Propellor/Property/Firewall.hs
+++ b/src/Propellor/Property/Firewall.hs
@@ -6,6 +6,11 @@ module Propellor.Property.Firewall (
rule,
installed,
Chain(..),
+ ChainFilterT(..),
+ ChainNatT(..),
+ ChainMangleT(..),
+ ChainRawT(..),
+ ChainSecurityT(..),
Table(..),
Target(..),
Proto(..),
@@ -124,7 +129,12 @@ fromTarget DROP = "DROP"
fromTarget LOG = "LOG"
fromTarget (TargetCustom t) = t
-data Chain = ChainFilter | ChainNat | ChainMangle | ChainRaw | ChainSecurity
+data Chain
+ = ChainFilter ChainFilterT
+ | ChainNat ChainNatT
+ | ChainMangle ChainMangleT
+ | ChainRaw ChainRawT
+ | ChainSecurity ChainSecurityT
deriving (Eq, Show)
instance FromChain Chain where
@@ -133,28 +143,28 @@ instance FromChain Chain where
class FromChain a where
fromChain :: a -> String
-data ChainFilter = INPUT | OUTPUT | FORWARD | FilterCustom String
+data ChainFilterT = INPUT | OUTPUT | FORWARD | FilterCustom String
deriving (Eq, Show)
-instance FromChain ChainFilter where
+instance FromChain ChainFilterT where
fromChain INPUT = "INPUT"
fromChain OUTPUT = "OUTPUT"
fromChain FORWARD = "FORWARD"
fromChain (FilterCustom c) = c
-data ChainNat = NatPREROUTING | NatOUTPUT | NatPOSTROUTING | NatCustom String
+data ChainNatT = NatPREROUTING | NatOUTPUT | NatPOSTROUTING | NatCustom String
deriving (Eq, Show)
-instance FromChain ChainNat where
+instance FromChain ChainNatT where
fromChain NatPREROUTING = "PREROUTING"
fromChain NatOUTPUT = "OUTPUT"
fromChain NatPOSTROUTING = "POSTROUTING"
fromChain (NatCustom f) = f
-data ChainMangle = ManglePREROUTING | MangleOUTPUT | MangleINPUT | MangleFORWARD | ManglePOSTROUTING | MangleCustom String
+data ChainMangleT = ManglePREROUTING | MangleOUTPUT | MangleINPUT | MangleFORWARD | ManglePOSTROUTING | MangleCustom String
deriving (Eq, Show)
-instance FromChain ChainMangle where
+instance FromChain ChainMangleT where
fromChain ManglePREROUTING = "PREROUTING"
fromChain MangleOUTPUT = "OUTPUT"
fromChain MangleINPUT = "INPUT"
@@ -162,18 +172,18 @@ instance FromChain ChainMangle where
fromChain ManglePOSTROUTING = "POSTROUTING"
fromChain (MangleCustom f) = f
-data ChainRaw = RawPREROUTING | RawOUTPUT | RawCustom String
+data ChainRawT = RawPREROUTING | RawOUTPUT | RawCustom String
deriving (Eq, Show)
-instance FromChain ChainRaw where
+instance FromChain ChainRawT where
fromChain RawPREROUTING = "PREROUTING"
fromChain RawOUTPUT = "OUTPUT"
fromChain (RawCustom f) = f
-data ChainSecurity = SecurityINPUT | SecurityOUTPUT | SecurityFORWARD | SecurityCustom String
+data ChainSecurityT = SecurityINPUT | SecurityOUTPUT | SecurityFORWARD | SecurityCustom String
deriving (Eq, Show)
-instance FromChain ChainSecurity where
+instance FromChain ChainSecurityT where
fromChain SecurityINPUT = "INPUT"
fromChain SecurityOUTPUT = "OUTPUT"
fromChain SecurityFORWARD = "FORWARD"