File credentials-obfuscation-3.4.0-git.patch of Package credentials_obfuscation

diff --git a/.github/workflows/erlang.yml b/.github/workflows/erlang.yml
index a0eae95..959785b 100644
--- a/.github/workflows/erlang.yml
+++ b/.github/workflows/erlang.yml
@@ -5,7 +5,7 @@ jobs:
     runs-on: ${{ matrix.os }}
     strategy:
       matrix:
-        otp_version: [24, 25, "26.0-rc3"]
+        otp_version: [24, 25, 26]
         os: [ubuntu-latest, windows-latest]
     steps:
     - uses: actions/checkout@v3
diff --git a/priv/schema/credentials_obfuscation.schema b/priv/schema/credentials_obfuscation.schema
new file mode 100644
index 0000000..1c1ea93
--- /dev/null
+++ b/priv/schema/credentials_obfuscation.schema
@@ -0,0 +1,55 @@
+% ==============================
+% Credentials Obfuscation schema
+% ==============================
+
+{mapping, "credentials_obfuscation.enabled", "credentials_obfuscation.enabled",
+   [{datatype, {enum, [true, false]}}]}.
+
+{mapping, "credentials_obfuscation.cipher", "credentials_obfuscation.cipher",
+   [{datatype, atom}]}.
+
+{translation, "credentials_obfuscation.cipher",
+fun(Conf) ->
+    case cuttlefish:conf_get("credentials_obfuscation.cipher", Conf, undefined) of
+        undefined -> cuttlefish:unset();
+        Setting ->
+            case
+                lists:member(Setting,
+                             credentials_obfuscation_pbe:supported_ciphers())
+            of
+                true ->
+                    Setting;
+                false ->
+                    cuttlefish:invalid("Unsupported cipher")
+            end
+    end
+end}.
+
+
+{mapping, "credentials_obfuscation.hash", "credentials_obfuscation.hash",
+   [{datatype, atom}]}.
+
+{translation, "credentials_obfuscation.hash",
+fun(Conf) ->
+    case cuttlefish:conf_get("credentials_obfuscation.hash", Conf, undefined) of
+        undefined -> cuttlefish:unset();
+        Setting ->
+            case
+                lists:member(Setting,
+                             credentials_obfuscation_pbe:supported_hashes())
+            of
+                true ->
+                    Setting;
+                false ->
+                    cuttlefish:invalid("Unsupported hash")
+            end
+    end
+end}.
+
+{mapping, "credentials_obfuscation.iterations", "credentials_obfuscation.iterations",
+   [{datatype, integer}, {validators, ["non_zero_positive_integer"]}]}.
+
+{validator, "non_zero_positive_integer", "number should be greater or equal to one",
+fun(Int) when is_integer(Int) ->
+    Int >= 1
+end}.
openSUSE Build Service is sponsored by