summaryrefslogtreecommitdiff
path: root/puppet/modules/shorewall/manifests/interface.pp
diff options
context:
space:
mode:
authorMicah <micah@leap.se>2016-05-24 10:19:26 -0400
committerMicah <micah@leap.se>2016-05-24 10:19:26 -0400
commitb77078c4bac8dd2ecc00001696455c34c378f636 (patch)
tree9c35002726240c23243f9bfff78300d4f33550aa /puppet/modules/shorewall/manifests/interface.pp
parent33640f86db0da8830bc8af1c56fc96ad465f7bf4 (diff)
parentb0e1e4c82db3c70ddc67639a9b983de89b415477 (diff)
Merge commit 'b0e1e4c82db3c70ddc67639a9b983de89b415477' as 'puppet/modules/shorewall'
Diffstat (limited to 'puppet/modules/shorewall/manifests/interface.pp')
-rw-r--r--puppet/modules/shorewall/manifests/interface.pp29
1 files changed, 29 insertions, 0 deletions
diff --git a/puppet/modules/shorewall/manifests/interface.pp b/puppet/modules/shorewall/manifests/interface.pp
new file mode 100644
index 00000000..403ee749
--- /dev/null
+++ b/puppet/modules/shorewall/manifests/interface.pp
@@ -0,0 +1,29 @@
+define shorewall::interface(
+ $zone,
+ $broadcast = 'detect',
+ $options = 'tcpflags,blacklist,routefilter,nosmurfs,logmartians',
+ $add_options = '',
+ $rfc1918 = false,
+ $dhcp = false,
+ $order = 100
+){
+ $added_opts = $add_options ? {
+ '' => '',
+ default => ",${add_options}",
+ }
+
+ $dhcp_opt = $dhcp ? {
+ false => '',
+ default => ',dhcp',
+ }
+
+ $rfc1918_opt = $rfc1918 ? {
+ false => ',norfc1918',
+ default => '',
+ }
+
+ shorewall::entry { "interfaces-${order}-${name}":
+ line => "${zone} ${name} ${broadcast} ${options}${dhcp_opt}${rfc1918_opt}${added_opts}",
+ }
+}
+