summaryrefslogtreecommitdiff
path: root/manifests/wifi.pp
diff options
context:
space:
mode:
Diffstat (limited to 'manifests/wifi.pp')
-rw-r--r--manifests/wifi.pp51
1 files changed, 4 insertions, 47 deletions
diff --git a/manifests/wifi.pp b/manifests/wifi.pp
index a93ca6a..92415ac 100644
--- a/manifests/wifi.pp
+++ b/manifests/wifi.pp
@@ -1,53 +1,10 @@
class firewall::wifi (
+ $implementation = lookup('firewall::implementation', undef, undef, 'shorewall'),
$shorewall_local_net = false,
$wifi_device = '',
) {
- $rfc1918 = $shorewall_local_net ? {
- true => true,
- false => false,
- default => false,
- }
-
- # Default device depends if madwifi or
- # built-in kernel driver is being used
- $wifi_default_device = $lsbdistcodename ? {
- 'lenny' => 'ath0',
- default => 'wlan0',
- }
-
- $wifi_dev = $wifi_device ? {
- '' => $wifi_default_device,
- default => $wifi_device,
- }
-
- #
- # Interfaces
- #
- shorewall::interface { "$wifi_dev":
- zone => '-',
- rfc1918 => $rfc1918,
- }
-
- #
- # Hosts
- #
- shorewall::host { "$wifi_dev-subnet":
- name => "$wifi_dev:192.168.0.0/24",
- zone => 'vm',
- options => '',
- order => 1,
- }
-
- shorewall::host { "$wifi_dev":
- name => "$wifi_dev:0.0.0.0/0",
- zone => 'net',
- options => '',
- order => 2,
- }
-
- shorewall::masq { "$wifi_dev":
- interface => "$wifi_dev:!192.168.0.0/24",
- source => '192.168.0.0/24',
- order => 1,
+ class { "firewall::implementations::${implementation}::wifi":
+ shorewall_local_net => $shorewall_local_net,
+ wifi_device => $wifi_device,
}
}