From 8b5f3eebb9f8d9bd55e922a809ffa3bd52e33401 Mon Sep 17 00:00:00 2001 From: vman Date: Fri, 9 Dec 2022 13:54:16 -0500 Subject: Sql essentials classes moved, secret loading updates --- VNLib.Plugins.Extensions.Loading/LoadingExtensions.cs | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'VNLib.Plugins.Extensions.Loading/LoadingExtensions.cs') diff --git a/VNLib.Plugins.Extensions.Loading/LoadingExtensions.cs b/VNLib.Plugins.Extensions.Loading/LoadingExtensions.cs index bfe0de1..7c8caee 100644 --- a/VNLib.Plugins.Extensions.Loading/LoadingExtensions.cs +++ b/VNLib.Plugins.Extensions.Loading/LoadingExtensions.cs @@ -72,15 +72,15 @@ namespace VNLib.Plugins.Extensions.Loading { PasswordHashing Passwords; //Get the global password system secret (pepper) - string pepperEl = plugin.TryGetSecretAsync(PASSWORD_HASHING_KEY).Result ?? throw new KeyNotFoundException($"Missing required key '{PASSWORD_HASHING_KEY}' in secrets"); - - byte[] pepper = Convert.FromBase64String(pepperEl); - - //wipe the pepper string - Utils.Memory.Memory.UnsafeZeroMemory(pepperEl); + using SecretResult pepperEl = plugin.TryGetSecretAsync(PASSWORD_HASHING_KEY).Result ?? throw new KeyNotFoundException($"Missing required key '{PASSWORD_HASHING_KEY}' in secrets"); + + byte[] pepper = pepperEl.GetFromBase64(); ERRNO cb(Span buffer) { + //No longer valid peper if plugin is unloaded as its set to zero, so we need to protect it + plugin.ThrowIfUnloaded(); + pepper.CopyTo(buffer); return pepper.Length; } @@ -210,7 +210,7 @@ namespace VNLib.Plugins.Extensions.Loading Task deferred = Task.Run(asyncTask); //Add task to deferred list - plugin.DeferredTasks.Add(deferred); + plugin.ObserveTask(deferred); try { //Await the task results @@ -224,7 +224,7 @@ namespace VNLib.Plugins.Extensions.Loading finally { //Remove task when complete - plugin.DeferredTasks.Remove(deferred); + plugin.RemoveObservedTask(deferred); } } } -- cgit