From 7b13948b612555757234211fa9c4b46cb67894f2 Mon Sep 17 00:00:00 2001
From: Lukas Audzevicius <laudzevicius24@hotmail.com>
Date: Thu, 16 Feb 2023 14:51:07 +0000
Subject: [PATCH] bugfix

---
 manifests/init.pp            | 16 ++++++++--------
 manifests/linux.pp           | 18 +++++++++---------
 manifests/linux/archlinux.pp |  2 +-
 manifests/linux/debian.pp    |  2 +-
 manifests/linux/gentoo.pp    |  2 +-
 manifests/linux/redhat.pp    |  4 ++--
 6 files changed, 22 insertions(+), 22 deletions(-)

diff --git a/manifests/init.pp b/manifests/init.pp
index d848010..37c35fb 100644
--- a/manifests/init.pp
+++ b/manifests/init.pp
@@ -16,7 +16,7 @@
 #   Controls the state of the ipv6 iptables service on your system. Valid options: 'running' or 'stopped'.
 #
 # @param pkg_ensure
-#   Controls the state of the iptables package on your system. Valid options: 'present' or 'latest'.
+#   Controls the state of the iptables package on your system. Valid options: 'present', 'installed' or 'latest'.
 #
 # @param service_name
 #   Specify the name of the IPv4 iptables service.
@@ -31,13 +31,13 @@
 #   Controls whether puppet manages the ebtables package or not. If managed, the package will use the value of pkg_ensure.
 #
 class firewall (
-  Enum[running, stopped, 'running', 'stopped']           $ensure          = running,
-  Optional[Enum[running, stopped, 'running', 'stopped']] $ensure_v6       = undef,
-  Enum[present, latest, 'present', 'latest']             $pkg_ensure      = present,
-  Variant[String[1], Array[String[1]]]                   $service_name    = $firewall::params::service_name,
-  Optional[String[1]]                                    $service_name_v6 = $firewall::params::service_name_v6,
-  Optional[Variant[String[1], Array[String[1]]]]         $package_name    = $firewall::params::package_name,
-  Boolean                                                $ebtables_manage = false,
+  Enum[running, stopped, 'running', 'stopped']                       $ensure          = running,
+  Optional[Enum[running, stopped, 'running', 'stopped']]             $ensure_v6       = undef,
+  Enum[present, installed, latest, 'present', 'installed', 'latest'] $pkg_ensure      = present,
+  Variant[String[1], Array[String[1]]]                               $service_name    = $firewall::params::service_name,
+  Optional[String[1]]                                                $service_name_v6 = $firewall::params::service_name_v6,
+  Optional[Variant[String[1], Array[String[1]]]]                     $package_name    = $firewall::params::package_name,
+  Boolean                                                            $ebtables_manage = false,
 ) inherits firewall::params {
   $_ensure_v6 = pick($ensure_v6, $ensure)
 
diff --git a/manifests/linux.pp b/manifests/linux.pp
index 5c15c8e..1d3f8bf 100644
--- a/manifests/linux.pp
+++ b/manifests/linux.pp
@@ -7,7 +7,7 @@
 #   Controls the state of the ipv6 iptables service on your system. Valid options: 'running' or 'stopped'. Defaults to 'running'.
 #
 # @param pkg_ensure
-#   Controls the state of the iptables package on your system. Valid options: 'installed' or 'latest'. Defaults to 'latest'.
+#   Controls the state of the iptables package on your system. Valid options: 'present', 'installed' or 'latest'. Defaults to 'latest'.
 #
 # @param service_name
 #   Specify the name of the IPv4 iptables service. Defaults defined in firewall::params.
@@ -24,14 +24,14 @@
 # @api private
 #
 class firewall::linux (
-  Enum[running, stopped, 'running', 'stopped']           $ensure          = running,
-  Optional[Enum[running, stopped, 'running', 'stopped']] $ensure_v6       = undef,
-  Enum[installed, latest, 'installed', 'latest']         $pkg_ensure      = installed,
-  Variant[String[1], Array[String[1]]]                   $service_name    = $firewall::params::service_name,
-  Optional[String[1]]                                    $service_name_v6 = $firewall::params::service_name_v6,
-  Optional[Variant[String[1], Array[String[1]]]]         $package_name    = $firewall::params::package_name,
-  Boolean                                                $ebtables_manage = false,
-  String[1]                                              $iptables_name   = $firewall::params::iptables_name,
+  Enum[running, stopped, 'running', 'stopped']                       $ensure          = running,
+  Optional[Enum[running, stopped, 'running', 'stopped']]             $ensure_v6       = undef,
+  Enum[present, installed, latest, 'present', 'installed', 'latest'] $pkg_ensure      = installed,
+  Variant[String[1], Array[String[1]]]                               $service_name    = $firewall::params::service_name,
+  Optional[String[1]]                                                $service_name_v6 = $firewall::params::service_name_v6,
+  Optional[Variant[String[1], Array[String[1]]]]                     $package_name    = $firewall::params::package_name,
+  Boolean                                                            $ebtables_manage = false,
+  String[1]                                                          $iptables_name   = $firewall::params::iptables_name,
 ) inherits firewall::params {
   $enable = $ensure ? {
     'running' => true,
diff --git a/manifests/linux/archlinux.pp b/manifests/linux/archlinux.pp
index da82363..af930b1 100644
--- a/manifests/linux/archlinux.pp
+++ b/manifests/linux/archlinux.pp
@@ -20,7 +20,7 @@
 #
 class firewall::linux::archlinux (
   Enum[running, stopped, 'running', 'stopped']   $ensure         = 'running',
-  Boolean                                        $enable         = true,
+  Variant[Boolean, String[1]]                    $enable         = true,
   Variant[String[1], Array[String[1]]]           $service_name   = $firewall::params::service_name,
   Optional[Variant[String[1], Array[String[1]]]] $package_name   = $firewall::params::package_name,
   Enum[present, latest, 'present', 'latest']     $package_ensure = $firewall::params::package_ensure,
diff --git a/manifests/linux/debian.pp b/manifests/linux/debian.pp
index 47ab859..d83fc4d 100644
--- a/manifests/linux/debian.pp
+++ b/manifests/linux/debian.pp
@@ -20,7 +20,7 @@
 #
 class firewall::linux::debian (
   Enum[running, stopped, 'running', 'stopped']   $ensure         = running,
-  Boolean                                        $enable         = true,
+  Variant[Boolean, String[1]]                    $enable         = true,
   Variant[String[1], Array[String[1]]]           $service_name   = $firewall::params::service_name,
   Optional[Variant[String[1], Array[String[1]]]] $package_name   = $firewall::params::package_name,
   Enum[present, latest, 'present', 'latest']     $package_ensure = $firewall::params::package_ensure,
diff --git a/manifests/linux/gentoo.pp b/manifests/linux/gentoo.pp
index 0f84578..1d2fa09 100644
--- a/manifests/linux/gentoo.pp
+++ b/manifests/linux/gentoo.pp
@@ -20,7 +20,7 @@
 #
 class firewall::linux::gentoo (
   Enum[running, stopped, 'running', 'stopped']   $ensure         = running,
-  Boolean                                        $enable         = true,
+  Variant[Boolean, String[1]]                    $enable         = true,
   Variant[String[1], Array[String[1]]]           $service_name   = $firewall::params::service_name,
   Optional[Variant[String[1], Array[String[1]]]] $package_name   = $firewall::params::package_name,
   Enum[present, latest, 'present', 'latest']     $package_ensure = $firewall::params::package_ensure,
diff --git a/manifests/linux/redhat.pp b/manifests/linux/redhat.pp
index 9965043..0231146 100644
--- a/manifests/linux/redhat.pp
+++ b/manifests/linux/redhat.pp
@@ -34,8 +34,8 @@
 class firewall::linux::redhat (
   Enum[running, stopped, 'running', 'stopped']           $ensure           = running,
   Optional[Enum[running, stopped, 'running', 'stopped']] $ensure_v6        = undef,
-  Boolean                                                $enable           = true,
-  Optional[Boolean]                                      $enable_v6        = undef,
+  Variant[Boolean, String[1]]                            $enable           = true,
+  Optional[Variant[Boolean, String[1]]]                  $enable_v6        = undef,
   Variant[String[1], Array[String[1]]]                   $service_name     = $firewall::params::service_name,
   Optional[String[1]]                                    $service_name_v6  = $firewall::params::service_name_v6,
   Optional[Variant[String[1], Array[String[1]]]]         $package_name     = $firewall::params::package_name,
-- 
2.45.2