summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorWouterTinus <wouter.tinus@gmail.com>2019-09-07 01:36:12 +0200
committerWouterTinus <wouter.tinus@gmail.com>2019-09-07 01:36:12 +0200
commit7673fa357a81444cf6c216267dfab4e76684ba5c (patch)
tree73c0bd36e5b6261cd89a168c2a099f6556c59f4d /src
parent42aa0faa4de6ea4184cfe1a5830508777418b11a (diff)
downloadletsencrypt-win-simple-7673fa357a81444cf6c216267dfab4e76684ba5c.zip
letsencrypt-win-simple-7673fa357a81444cf6c216267dfab4e76684ba5c.tar.gz
letsencrypt-win-simple-7673fa357a81444cf6c216267dfab4e76684ba5c.tar.bz2
move plugins & re-implement WebDav
Diffstat (limited to 'src')
-rw-r--r--src/main.lib/Clients/FtpClient.cs (renamed from src/main/Clients/FtpClient.cs)0
-rw-r--r--src/main.lib/Clients/WebDavClient.cs154
-rw-r--r--src/main.lib/Plugins/CsrPlugins/CsrArguments.cs (renamed from src/main/Plugins/CsrPlugins/CsrArguments.cs)0
-rw-r--r--src/main.lib/Plugins/CsrPlugins/CsrArgumentsProvider.cs (renamed from src/main/Plugins/CsrPlugins/CsrArgumentsProvider.cs)0
-rw-r--r--src/main.lib/Plugins/CsrPlugins/CsrPlugin.cs (renamed from src/main/Plugins/CsrPlugins/CsrPlugin.cs)0
-rw-r--r--src/main.lib/Plugins/CsrPlugins/Ec/Ec.cs (renamed from src/main/Plugins/CsrPlugins/Ec/Ec.cs)0
-rw-r--r--src/main.lib/Plugins/CsrPlugins/Ec/EcOptions.cs (renamed from src/main/Plugins/CsrPlugins/Ec/EcOptions.cs)0
-rw-r--r--src/main.lib/Plugins/CsrPlugins/Ec/EcOptionsFactory.cs (renamed from src/main/Plugins/CsrPlugins/Ec/EcOptionsFactory.cs)0
-rw-r--r--src/main.lib/Plugins/CsrPlugins/Rsa/Rsa.cs (renamed from src/main/Plugins/CsrPlugins/Rsa/Rsa.cs)0
-rw-r--r--src/main.lib/Plugins/CsrPlugins/Rsa/RsaOptions.cs (renamed from src/main/Plugins/CsrPlugins/Rsa/RsaOptions.cs)0
-rw-r--r--src/main.lib/Plugins/CsrPlugins/Rsa/RsaOptionsFactory.cs (renamed from src/main/Plugins/CsrPlugins/Rsa/RsaOptionsFactory.cs)0
-rw-r--r--src/main.lib/Plugins/InstallationPlugins/IISFtp/IISFtp.cs (renamed from src/main/Plugins/InstallationPlugins/IISFtp/IISFtp.cs)0
-rw-r--r--src/main.lib/Plugins/InstallationPlugins/IISFtp/IISFtpArguments.cs (renamed from src/main/Plugins/InstallationPlugins/IISFtp/IISFtpArguments.cs)0
-rw-r--r--src/main.lib/Plugins/InstallationPlugins/IISFtp/IISFtpArgumentsProvider.cs (renamed from src/main/Plugins/InstallationPlugins/IISFtp/IISFtpArgumentsProvider.cs)0
-rw-r--r--src/main.lib/Plugins/InstallationPlugins/IISFtp/IISFtpOptions.cs (renamed from src/main/Plugins/InstallationPlugins/IISFtp/IISFtpOptions.cs)0
-rw-r--r--src/main.lib/Plugins/InstallationPlugins/IISFtp/IISFtpOptionsFactory.cs (renamed from src/main/Plugins/InstallationPlugins/IISFtp/IISFtpOptionsFactory.cs)0
-rw-r--r--src/main.lib/Plugins/InstallationPlugins/IISWeb/IISWeb.cs (renamed from src/main/Plugins/InstallationPlugins/IISWeb/IISWeb.cs)0
-rw-r--r--src/main.lib/Plugins/InstallationPlugins/IISWeb/IISWebArguments.cs (renamed from src/main/Plugins/InstallationPlugins/IISWeb/IISWebArguments.cs)0
-rw-r--r--src/main.lib/Plugins/InstallationPlugins/IISWeb/IISWebArgumentsProvider.cs (renamed from src/main/Plugins/InstallationPlugins/IISWeb/IISWebArgumentsProvider.cs)0
-rw-r--r--src/main.lib/Plugins/InstallationPlugins/IISWeb/IISWebOptions.cs (renamed from src/main/Plugins/InstallationPlugins/IISWeb/IISWebOptions.cs)0
-rw-r--r--src/main.lib/Plugins/InstallationPlugins/IISWeb/IISWebOptionsFactory.cs (renamed from src/main/Plugins/InstallationPlugins/IISWeb/IISWebOptionsFactory.cs)0
-rw-r--r--src/main.lib/Plugins/InstallationPlugins/Script/Script.cs (renamed from src/main/Plugins/InstallationPlugins/Script/Script.cs)0
-rw-r--r--src/main.lib/Plugins/InstallationPlugins/Script/ScriptArguments.cs (renamed from src/main/Plugins/InstallationPlugins/Script/ScriptArguments.cs)0
-rw-r--r--src/main.lib/Plugins/InstallationPlugins/Script/ScriptArgumentsProvider.cs (renamed from src/main/Plugins/InstallationPlugins/Script/ScriptArgumentsProvider.cs)0
-rw-r--r--src/main.lib/Plugins/InstallationPlugins/Script/ScriptOptions.cs (renamed from src/main/Plugins/InstallationPlugins/Script/ScriptOptions.cs)0
-rw-r--r--src/main.lib/Plugins/InstallationPlugins/Script/ScriptOptionsFactory.cs (renamed from src/main/Plugins/InstallationPlugins/Script/ScriptOptionsFactory.cs)0
-rw-r--r--src/main.lib/Plugins/Resolvers/InteractiveResolver.cs (renamed from src/main/Plugins/Resolvers/InteractiveResolver.cs)0
-rw-r--r--src/main.lib/Plugins/Resolvers/UnattendedResolver.cs (renamed from src/main/Plugins/Resolvers/UnattendedResolver.cs)0
-rw-r--r--src/main.lib/Plugins/StorePlugins/CentralSsl/CentralSsl.cs (renamed from src/main/Plugins/StorePlugins/CentralSsl/CentralSsl.cs)0
-rw-r--r--src/main.lib/Plugins/StorePlugins/CentralSsl/CentralSslArguments.cs (renamed from src/main/Plugins/StorePlugins/CentralSsl/CentralSslArguments.cs)0
-rw-r--r--src/main.lib/Plugins/StorePlugins/CentralSsl/CentralSslArgumentsProvider.cs (renamed from src/main/Plugins/StorePlugins/CentralSsl/CentralSslArgumentsProvider.cs)0
-rw-r--r--src/main.lib/Plugins/StorePlugins/CentralSsl/CentralSslOptions.cs (renamed from src/main/Plugins/StorePlugins/CentralSsl/CentralSslOptions.cs)0
-rw-r--r--src/main.lib/Plugins/StorePlugins/CentralSsl/CentralSslOptionsFactory.cs (renamed from src/main/Plugins/StorePlugins/CentralSsl/CentralSslOptionsFactory.cs)0
-rw-r--r--src/main.lib/Plugins/StorePlugins/CertificateStore/CertificateStore.cs (renamed from src/main/Plugins/StorePlugins/CertificateStore/CertificateStore.cs)1
-rw-r--r--src/main.lib/Plugins/StorePlugins/CertificateStore/CertificateStoreArguments.cs (renamed from src/main/Plugins/StorePlugins/CertificateStore/CertificateStoreArguments.cs)0
-rw-r--r--src/main.lib/Plugins/StorePlugins/CertificateStore/CertificateStoreArgumentsProvider.cs (renamed from src/main/Plugins/StorePlugins/CertificateStore/CertificateStoreArgumentsProvider.cs)0
-rw-r--r--src/main.lib/Plugins/StorePlugins/CertificateStore/CertificateStoreOptions.cs (renamed from src/main/Plugins/StorePlugins/CertificateStore/CertificateStoreOptions.cs)0
-rw-r--r--src/main.lib/Plugins/StorePlugins/CertificateStore/CertificateStoreOptionsFactory.cs (renamed from src/main/Plugins/StorePlugins/CertificateStore/CertificateStoreOptionsFactory.cs)0
-rw-r--r--src/main.lib/Plugins/StorePlugins/PemFiles/PemFiles.cs (renamed from src/main/Plugins/StorePlugins/PemFiles/PemFiles.cs)5
-rw-r--r--src/main.lib/Plugins/StorePlugins/PemFiles/PemFilesArguments.cs (renamed from src/main/Plugins/StorePlugins/PemFiles/PemFilesArguments.cs)0
-rw-r--r--src/main.lib/Plugins/StorePlugins/PemFiles/PemFilesArgumentsProvider.cs (renamed from src/main/Plugins/StorePlugins/PemFiles/PemFilesArgumentsProvider.cs)0
-rw-r--r--src/main.lib/Plugins/StorePlugins/PemFiles/PemFilesOptions.cs (renamed from src/main/Plugins/StorePlugins/PemFiles/PemFilesOptions.cs)0
-rw-r--r--src/main.lib/Plugins/StorePlugins/PemFiles/PemFilesOptionsFactory.cs (renamed from src/main/Plugins/StorePlugins/PemFiles/PemFilesOptionsFactory.cs)0
-rw-r--r--src/main.lib/Plugins/TargetPlugins/IISBinding/IISBinding.cs (renamed from src/main/Plugins/TargetPlugins/IISBinding/IISBinding.cs)0
-rw-r--r--src/main.lib/Plugins/TargetPlugins/IISBinding/IISBindingArguments.cs (renamed from src/main/Plugins/TargetPlugins/IISBinding/IISBindingArguments.cs)0
-rw-r--r--src/main.lib/Plugins/TargetPlugins/IISBinding/IISBindingArgumentsProvider.cs (renamed from src/main/Plugins/TargetPlugins/IISBinding/IISBindingArgumentsProvider.cs)0
-rw-r--r--src/main.lib/Plugins/TargetPlugins/IISBinding/IISBindingOptions.cs (renamed from src/main/Plugins/TargetPlugins/IISBinding/IISBindingOptions.cs)0
-rw-r--r--src/main.lib/Plugins/TargetPlugins/IISBinding/IISBindingOptionsFactory.cs (renamed from src/main/Plugins/TargetPlugins/IISBinding/IISBindingOptionsFactory.cs)0
-rw-r--r--src/main.lib/Plugins/TargetPlugins/IISSite/IISSite.cs (renamed from src/main/Plugins/TargetPlugins/IISSite/IISSite.cs)0
-rw-r--r--src/main.lib/Plugins/TargetPlugins/IISSite/IISSiteArguments.cs (renamed from src/main/Plugins/TargetPlugins/IISSite/IISSiteArguments.cs)0
-rw-r--r--src/main.lib/Plugins/TargetPlugins/IISSite/IISSiteArgumentsProvider.cs (renamed from src/main/Plugins/TargetPlugins/IISSite/IISSiteArgumentsProvider.cs)0
-rw-r--r--src/main.lib/Plugins/TargetPlugins/IISSite/IISSiteOptions.cs (renamed from src/main/Plugins/TargetPlugins/IISSite/IISSiteOptions.cs)0
-rw-r--r--src/main.lib/Plugins/TargetPlugins/IISSite/IISSiteOptionsFactory.cs (renamed from src/main/Plugins/TargetPlugins/IISSite/IISSiteOptionsFactory.cs)0
-rw-r--r--src/main.lib/Plugins/TargetPlugins/IISSite/IISSiteOptionsHelper.cs (renamed from src/main/Plugins/TargetPlugins/IISSite/IISSiteOptionsHelper.cs)0
-rw-r--r--src/main.lib/Plugins/TargetPlugins/IISSites/IISSites.cs (renamed from src/main/Plugins/TargetPlugins/IISSites/IISSites.cs)0
-rw-r--r--src/main.lib/Plugins/TargetPlugins/IISSites/IISSitesOptions.cs (renamed from src/main/Plugins/TargetPlugins/IISSites/IISSitesOptions.cs)0
-rw-r--r--src/main.lib/Plugins/TargetPlugins/IISSites/IISSitesOptionsFactory.cs (renamed from src/main/Plugins/TargetPlugins/IISSites/IISSitesOptionsFactory.cs)0
-rw-r--r--src/main.lib/Plugins/TargetPlugins/Manual/Manual.cs (renamed from src/main/Plugins/TargetPlugins/Manual/Manual.cs)0
-rw-r--r--src/main.lib/Plugins/TargetPlugins/Manual/ManualArguments.cs (renamed from src/main/Plugins/TargetPlugins/Manual/ManualArguments.cs)0
-rw-r--r--src/main.lib/Plugins/TargetPlugins/Manual/ManualArgumentsProvider.cs (renamed from src/main/Plugins/TargetPlugins/Manual/ManualArgumentsProvider.cs)0
-rw-r--r--src/main.lib/Plugins/TargetPlugins/Manual/ManualOptions.cs (renamed from src/main/Plugins/TargetPlugins/Manual/ManualOptions.cs)0
-rw-r--r--src/main.lib/Plugins/TargetPlugins/Manual/ManualOptionsFactory.cs (renamed from src/main/Plugins/TargetPlugins/Manual/ManualOptionsFactory.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Dns/Acme/Acme.cs (renamed from src/main/Plugins/ValidationPlugins/Dns/Acme/Acme.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Dns/Acme/AcmeArguments.cs (renamed from src/main/Plugins/ValidationPlugins/Dns/Acme/AcmeArguments.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Dns/Acme/AcmeArgumentsProvider.cs (renamed from src/main/Plugins/ValidationPlugins/Dns/Acme/AcmeArgumentsProvider.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Dns/Acme/AcmeOptions.cs (renamed from src/main/Plugins/ValidationPlugins/Dns/Acme/AcmeOptions.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Dns/Acme/AcmeOptionsFactory.cs (renamed from src/main/Plugins/ValidationPlugins/Dns/Acme/AcmeOptionsFactory.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Dns/DnsValidation.cs (renamed from src/main/Plugins/ValidationPlugins/Dns/DnsValidation.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Dns/Manual/Manual.cs (renamed from src/main/Plugins/ValidationPlugins/Dns/Manual/Manual.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Dns/Manual/ManualOptions.cs (renamed from src/main/Plugins/ValidationPlugins/Dns/Manual/ManualOptions.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Dns/Manual/ManualOptionsFactory.cs (renamed from src/main/Plugins/ValidationPlugins/Dns/Manual/ManualOptionsFactory.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Dns/Script/Script.cs (renamed from src/main/Plugins/ValidationPlugins/Dns/Script/Script.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Dns/Script/ScriptArguments.cs (renamed from src/main/Plugins/ValidationPlugins/Dns/Script/ScriptArguments.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Dns/Script/ScriptArgumentsProvider.cs (renamed from src/main/Plugins/ValidationPlugins/Dns/Script/ScriptArgumentsProvider.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Dns/Script/ScriptOptions.cs (renamed from src/main/Plugins/ValidationPlugins/Dns/Script/ScriptOptions.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Dns/Script/ScriptOptionsFactory.cs (renamed from src/main/Plugins/ValidationPlugins/Dns/Script/ScriptOptionsFactory.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Http/FileSystem/FileSystem.cs (renamed from src/main/Plugins/ValidationPlugins/Http/FileSystem/FileSystem.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Http/FileSystem/FileSystemArguments.cs (renamed from src/main/Plugins/ValidationPlugins/Http/FileSystem/FileSystemArguments.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Http/FileSystem/FileSystemArgumentsProvider.cs (renamed from src/main/Plugins/ValidationPlugins/Http/FileSystem/FileSystemArgumentsProvider.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Http/FileSystem/FileSystemOptions.cs (renamed from src/main/Plugins/ValidationPlugins/Http/FileSystem/FileSystemOptions.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Http/FileSystem/FileSystemOptionsFactory.cs (renamed from src/main/Plugins/ValidationPlugins/Http/FileSystem/FileSystemOptionsFactory.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Http/Ftp/Ftp.cs (renamed from src/main/Plugins/ValidationPlugins/Http/Ftp/Ftp.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Http/Ftp/FtpOptions.cs (renamed from src/main/Plugins/ValidationPlugins/Http/Ftp/FtpOptions.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Http/Ftp/FtpOptionsFactory.cs (renamed from src/main/Plugins/ValidationPlugins/Http/Ftp/FtpOptionsFactory.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Http/HttpValidation.cs (renamed from src/main/Plugins/ValidationPlugins/Http/HttpValidation.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Http/HttpValidationArguments.cs (renamed from src/main/Plugins/ValidationPlugins/Http/HttpValidationArguments.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Http/HttpValidationArgumentsProvider.cs (renamed from src/main/Plugins/ValidationPlugins/Http/HttpValidationArgumentsProvider.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Http/HttpValidationOptions.cs (renamed from src/main/Plugins/ValidationPlugins/Http/HttpValidationOptions.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Http/HttpValidationOptionsFactory.cs (renamed from src/main/Plugins/ValidationPlugins/Http/HttpValidationOptionsFactory.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Http/HttpValidationParameters.cs (renamed from src/main/Plugins/ValidationPlugins/Http/HttpValidationParameters.cs)1
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Http/SelfHosting/SelfHosting.cs (renamed from src/main/Plugins/ValidationPlugins/Http/SelfHosting/SelfHosting.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Http/SelfHosting/SelfHostingArguments.cs (renamed from src/main/Plugins/ValidationPlugins/Http/SelfHosting/SelfHostingArguments.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Http/SelfHosting/SelfHostingArgumentsProvider.cs (renamed from src/main/Plugins/ValidationPlugins/Http/SelfHosting/SelfHostingArgumentsProvider.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Http/SelfHosting/SelfHostingOptions.cs (renamed from src/main/Plugins/ValidationPlugins/Http/SelfHosting/SelfHostingOptions.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Http/SelfHosting/SelfHostingOptionsFactory.cs (renamed from src/main/Plugins/ValidationPlugins/Http/SelfHosting/SelfHostingOptionsFactory.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Http/Sftp/Sftp.cs (renamed from src/main/Plugins/ValidationPlugins/Http/Sftp/Sftp.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Http/Sftp/SftpOptions.cs (renamed from src/main/Plugins/ValidationPlugins/Http/Sftp/SftpOptions.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Http/Sftp/SftpOptionsFactory.cs (renamed from src/main/Plugins/ValidationPlugins/Http/Sftp/SftpOptionsFactory.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Http/WebDav/WebDav.cs (renamed from src/main/Plugins/ValidationPlugins/Http/WebDav/WebDav.cs)15
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Http/WebDav/WebDavOptions.cs (renamed from src/main/Plugins/ValidationPlugins/Http/WebDav/WebDavOptions.cs)0
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Http/WebDav/WebDavOptionsFactory.cs (renamed from src/main/Plugins/ValidationPlugins/Http/WebDav/WebDavOptionsFactory.cs)12
-rw-r--r--src/main.lib/Plugins/ValidationPlugins/Validation.cs (renamed from src/main/Plugins/ValidationPlugins/Validation.cs)0
-rw-r--r--src/main.lib/Services/Legacy/BaseLegacyRenewalService.cs122
-rw-r--r--src/main.lib/Services/Legacy/FileLegacyRenewalService.cs33
-rw-r--r--src/main.lib/Services/Legacy/Importer.cs278
-rw-r--r--src/main.lib/Services/Legacy/RegistryLegacyRenewalService.cs40
-rw-r--r--src/main.lib/Services/PluginService.cs20
-rw-r--r--src/main.lib/wacs.lib.csproj5
-rw-r--r--src/main/App.config10
-rw-r--r--src/main/Clients/WebDavClient.cs91
-rw-r--r--src/main/Services/Legacy/BaseLegacyRenewalService.cs1
-rw-r--r--src/main/Services/Legacy/FileLegacyRenewalService.cs3
-rw-r--r--src/main/Services/Legacy/RegistryLegacyRenewalService.cs4
-rw-r--r--src/main/Services/SettingsService.cs13
-rw-r--r--src/main/packages.config178
-rw-r--r--src/main/wacs.csproj175
116 files changed, 831 insertions, 330 deletions
diff --git a/src/main/Clients/FtpClient.cs b/src/main.lib/Clients/FtpClient.cs
index 0f52343..0f52343 100644
--- a/src/main/Clients/FtpClient.cs
+++ b/src/main.lib/Clients/FtpClient.cs
diff --git a/src/main.lib/Clients/WebDavClient.cs b/src/main.lib/Clients/WebDavClient.cs
new file mode 100644
index 0000000..cc79b5a
--- /dev/null
+++ b/src/main.lib/Clients/WebDavClient.cs
@@ -0,0 +1,154 @@
+using PKISharp.WACS.Configuration;
+using PKISharp.WACS.Services;
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Net;
+using WebDav;
+
+namespace PKISharp.WACS.Client
+{
+ internal class WebDavClientWrapper : IDisposable
+ {
+ private readonly NetworkCredential _credential;
+ private readonly ILogService _log;
+ private readonly ProxyService _proxy;
+ private readonly WebDavClient _client;
+ public WebDavClientWrapper(NetworkCredentialOptions options, ILogService log, ProxyService proxy)
+ {
+ _log = log;
+ _credential = options.GetCredential();
+ _proxy = proxy;
+ _client = new WebDavClient(new WebDavClientParams()
+ {
+ Proxy = _proxy.GetWebProxy(),
+ Credentials = string.IsNullOrEmpty(_credential.UserName) ? null : _credential
+ });
+ }
+
+ private string NormalizePath(string path)
+ {
+ return path.
+ Replace("webdav:", "https:").
+ Replace("dav:", "https:").
+ Replace("\\\\", "https://").
+ Replace("\\", "/");
+ }
+
+ public void Upload(string originalPath, string content)
+ {
+ try
+ {
+ var path = NormalizePath(originalPath);
+ var uri = new Uri(path);
+ var stream = new MemoryStream();
+ using (var writer = new StreamWriter(stream))
+ {
+ writer.Write(content);
+ writer.Flush();
+ stream.Position = 0;
+ var currentPath = $"{uri.Scheme}://{uri.Host}{(uri.IsDefaultPort ? "": $":{uri.Port}")}";
+ var directories = uri.AbsolutePath.Trim('/').Split('/');
+ for (var i = 0; i < directories.Length - 1; i++)
+ {
+ currentPath += $"/{directories[i]}";
+ if (!FolderExists(currentPath))
+ {
+ var dirCreated = _client.Mkcol(currentPath).Result;
+ if (!dirCreated.IsSuccessful)
+ {
+ throw new Exception($"path {currentPath} - {dirCreated.StatusCode} ({dirCreated.Description})");
+ }
+ }
+ }
+ // Upload file
+ currentPath += $"/{directories[directories.Count()-1]}";
+ var fileUploaded = _client.PutFile(currentPath, stream).Result;
+ if (!fileUploaded.IsSuccessful)
+ {
+ throw new Exception($"{fileUploaded.StatusCode} ({fileUploaded.Description})");
+ }
+ }
+ }
+ catch (Exception ex)
+ {
+ _log.Error("Error uploading file {path} {Message}", originalPath, ex.Message);
+ throw;
+ }
+ }
+
+ private bool FolderExists(string path)
+ {
+ var exists = _client.Propfind(path).Result;
+ return exists.IsSuccessful &&
+ exists.Resources.Any() &&
+ exists.Resources.First().IsCollection;
+ }
+
+ internal bool IsEmpty(string path)
+ {
+ var exists = _client.Propfind(path).Result;
+ return exists.IsSuccessful &&
+ !exists.Resources.Any();
+ }
+
+ public void Delete(string path)
+ {
+ path = NormalizePath(path);
+ try
+ {
+ var x = _client.Delete(path).Result;
+ }
+ catch (Exception ex)
+ {
+ _log.Verbose("WebDav error {@ex}", ex);
+ _log.Warning("Error deleting file/folder {path} {Message}", path, ex.Message);
+ }
+ }
+
+ public IEnumerable<string> GetFiles(string path)
+ {
+ try
+ {
+ path = NormalizePath(path);
+ var folderFiles = _client.Propfind(path).Result;
+ if (folderFiles.IsSuccessful)
+ {
+ return folderFiles.Resources.Select(r => r.DisplayName);
+ }
+ }
+ catch (Exception ex)
+ {
+ _log.Verbose("WebDav error {@ex}", ex);
+ }
+ return new string[] { };
+ }
+
+ #region IDisposable
+
+ private bool disposedValue = false; // To detect redundant calls
+
+ protected virtual void Dispose(bool disposing)
+ {
+ if (!disposedValue)
+ {
+ if (disposing)
+ {
+ if (_client != null)
+ {
+ _client.Dispose();
+ }
+ }
+ disposedValue = true;
+ }
+ }
+
+ public void Dispose()
+ {
+ Dispose(true);
+ }
+
+ #endregion
+ }
+} \ No newline at end of file
diff --git a/src/main/Plugins/CsrPlugins/CsrArguments.cs b/src/main.lib/Plugins/CsrPlugins/CsrArguments.cs
index 0850985..0850985 100644
--- a/src/main/Plugins/CsrPlugins/CsrArguments.cs
+++ b/src/main.lib/Plugins/CsrPlugins/CsrArguments.cs
diff --git a/src/main/Plugins/CsrPlugins/CsrArgumentsProvider.cs b/src/main.lib/Plugins/CsrPlugins/CsrArgumentsProvider.cs
index b543b41..b543b41 100644
--- a/src/main/Plugins/CsrPlugins/CsrArgumentsProvider.cs
+++ b/src/main.lib/Plugins/CsrPlugins/CsrArgumentsProvider.cs
diff --git a/src/main/Plugins/CsrPlugins/CsrPlugin.cs b/src/main.lib/Plugins/CsrPlugins/CsrPlugin.cs
index d7e3ce2..d7e3ce2 100644
--- a/src/main/Plugins/CsrPlugins/CsrPlugin.cs
+++ b/src/main.lib/Plugins/CsrPlugins/CsrPlugin.cs
diff --git a/src/main/Plugins/CsrPlugins/Ec/Ec.cs b/src/main.lib/Plugins/CsrPlugins/Ec/Ec.cs
index c09dba4..c09dba4 100644
--- a/src/main/Plugins/CsrPlugins/Ec/Ec.cs
+++ b/src/main.lib/Plugins/CsrPlugins/Ec/Ec.cs
diff --git a/src/main/Plugins/CsrPlugins/Ec/EcOptions.cs b/src/main.lib/Plugins/CsrPlugins/Ec/EcOptions.cs
index f77dcae..f77dcae 100644
--- a/src/main/Plugins/CsrPlugins/Ec/EcOptions.cs
+++ b/src/main.lib/Plugins/CsrPlugins/Ec/EcOptions.cs
diff --git a/src/main/Plugins/CsrPlugins/Ec/EcOptionsFactory.cs b/src/main.lib/Plugins/CsrPlugins/Ec/EcOptionsFactory.cs
index 5f4c65a..5f4c65a 100644
--- a/src/main/Plugins/CsrPlugins/Ec/EcOptionsFactory.cs
+++ b/src/main.lib/Plugins/CsrPlugins/Ec/EcOptionsFactory.cs
diff --git a/src/main/Plugins/CsrPlugins/Rsa/Rsa.cs b/src/main.lib/Plugins/CsrPlugins/Rsa/Rsa.cs
index 4f5961f..4f5961f 100644
--- a/src/main/Plugins/CsrPlugins/Rsa/Rsa.cs
+++ b/src/main.lib/Plugins/CsrPlugins/Rsa/Rsa.cs
diff --git a/src/main/Plugins/CsrPlugins/Rsa/RsaOptions.cs b/src/main.lib/Plugins/CsrPlugins/Rsa/RsaOptions.cs
index 2402a3b..2402a3b 100644
--- a/src/main/Plugins/CsrPlugins/Rsa/RsaOptions.cs
+++ b/src/main.lib/Plugins/CsrPlugins/Rsa/RsaOptions.cs
diff --git a/src/main/Plugins/CsrPlugins/Rsa/RsaOptionsFactory.cs b/src/main.lib/Plugins/CsrPlugins/Rsa/RsaOptionsFactory.cs
index 8256756..8256756 100644
--- a/src/main/Plugins/CsrPlugins/Rsa/RsaOptionsFactory.cs
+++ b/src/main.lib/Plugins/CsrPlugins/Rsa/RsaOptionsFactory.cs
diff --git a/src/main/Plugins/InstallationPlugins/IISFtp/IISFtp.cs b/src/main.lib/Plugins/InstallationPlugins/IISFtp/IISFtp.cs
index 7e6ce2d..7e6ce2d 100644
--- a/src/main/Plugins/InstallationPlugins/IISFtp/IISFtp.cs
+++ b/src/main.lib/Plugins/InstallationPlugins/IISFtp/IISFtp.cs
diff --git a/src/main/Plugins/InstallationPlugins/IISFtp/IISFtpArguments.cs b/src/main.lib/Plugins/InstallationPlugins/IISFtp/IISFtpArguments.cs
index 43f7924..43f7924 100644
--- a/src/main/Plugins/InstallationPlugins/IISFtp/IISFtpArguments.cs
+++ b/src/main.lib/Plugins/InstallationPlugins/IISFtp/IISFtpArguments.cs
diff --git a/src/main/Plugins/InstallationPlugins/IISFtp/IISFtpArgumentsProvider.cs b/src/main.lib/Plugins/InstallationPlugins/IISFtp/IISFtpArgumentsProvider.cs
index 20a1f5d..20a1f5d 100644
--- a/src/main/Plugins/InstallationPlugins/IISFtp/IISFtpArgumentsProvider.cs
+++ b/src/main.lib/Plugins/InstallationPlugins/IISFtp/IISFtpArgumentsProvider.cs
diff --git a/src/main/Plugins/InstallationPlugins/IISFtp/IISFtpOptions.cs b/src/main.lib/Plugins/InstallationPlugins/IISFtp/IISFtpOptions.cs
index 4704501..4704501 100644
--- a/src/main/Plugins/InstallationPlugins/IISFtp/IISFtpOptions.cs
+++ b/src/main.lib/Plugins/InstallationPlugins/IISFtp/IISFtpOptions.cs
diff --git a/src/main/Plugins/InstallationPlugins/IISFtp/IISFtpOptionsFactory.cs b/src/main.lib/Plugins/InstallationPlugins/IISFtp/IISFtpOptionsFactory.cs
index b8deaf9..b8deaf9 100644
--- a/src/main/Plugins/InstallationPlugins/IISFtp/IISFtpOptionsFactory.cs
+++ b/src/main.lib/Plugins/InstallationPlugins/IISFtp/IISFtpOptionsFactory.cs
diff --git a/src/main/Plugins/InstallationPlugins/IISWeb/IISWeb.cs b/src/main.lib/Plugins/InstallationPlugins/IISWeb/IISWeb.cs
index f5e8aa8..f5e8aa8 100644
--- a/src/main/Plugins/InstallationPlugins/IISWeb/IISWeb.cs
+++ b/src/main.lib/Plugins/InstallationPlugins/IISWeb/IISWeb.cs
diff --git a/src/main/Plugins/InstallationPlugins/IISWeb/IISWebArguments.cs b/src/main.lib/Plugins/InstallationPlugins/IISWeb/IISWebArguments.cs
index 94f2e1f..94f2e1f 100644
--- a/src/main/Plugins/InstallationPlugins/IISWeb/IISWebArguments.cs
+++ b/src/main.lib/Plugins/InstallationPlugins/IISWeb/IISWebArguments.cs
diff --git a/src/main/Plugins/InstallationPlugins/IISWeb/IISWebArgumentsProvider.cs b/src/main.lib/Plugins/InstallationPlugins/IISWeb/IISWebArgumentsProvider.cs
index 0d12454..0d12454 100644
--- a/src/main/Plugins/InstallationPlugins/IISWeb/IISWebArgumentsProvider.cs
+++ b/src/main.lib/Plugins/InstallationPlugins/IISWeb/IISWebArgumentsProvider.cs
diff --git a/src/main/Plugins/InstallationPlugins/IISWeb/IISWebOptions.cs b/src/main.lib/Plugins/InstallationPlugins/IISWeb/IISWebOptions.cs
index 30a5192..30a5192 100644
--- a/src/main/Plugins/InstallationPlugins/IISWeb/IISWebOptions.cs
+++ b/src/main.lib/Plugins/InstallationPlugins/IISWeb/IISWebOptions.cs
diff --git a/src/main/Plugins/InstallationPlugins/IISWeb/IISWebOptionsFactory.cs b/src/main.lib/Plugins/InstallationPlugins/IISWeb/IISWebOptionsFactory.cs
index 4a0dece..4a0dece 100644
--- a/src/main/Plugins/InstallationPlugins/IISWeb/IISWebOptionsFactory.cs
+++ b/src/main.lib/Plugins/InstallationPlugins/IISWeb/IISWebOptionsFactory.cs
diff --git a/src/main/Plugins/InstallationPlugins/Script/Script.cs b/src/main.lib/Plugins/InstallationPlugins/Script/Script.cs
index 65147d2..65147d2 100644
--- a/src/main/Plugins/InstallationPlugins/Script/Script.cs
+++ b/src/main.lib/Plugins/InstallationPlugins/Script/Script.cs
diff --git a/src/main/Plugins/InstallationPlugins/Script/ScriptArguments.cs b/src/main.lib/Plugins/InstallationPlugins/Script/ScriptArguments.cs
index f57f794..f57f794 100644
--- a/src/main/Plugins/InstallationPlugins/Script/ScriptArguments.cs
+++ b/src/main.lib/Plugins/InstallationPlugins/Script/ScriptArguments.cs
diff --git a/src/main/Plugins/InstallationPlugins/Script/ScriptArgumentsProvider.cs b/src/main.lib/Plugins/InstallationPlugins/Script/ScriptArgumentsProvider.cs
index eb33f21..eb33f21 100644
--- a/src/main/Plugins/InstallationPlugins/Script/ScriptArgumentsProvider.cs
+++ b/src/main.lib/Plugins/InstallationPlugins/Script/ScriptArgumentsProvider.cs
diff --git a/src/main/Plugins/InstallationPlugins/Script/ScriptOptions.cs b/src/main.lib/Plugins/InstallationPlugins/Script/ScriptOptions.cs
index fece33e..fece33e 100644
--- a/src/main/Plugins/InstallationPlugins/Script/ScriptOptions.cs
+++ b/src/main.lib/Plugins/InstallationPlugins/Script/ScriptOptions.cs
diff --git a/src/main/Plugins/InstallationPlugins/Script/ScriptOptionsFactory.cs b/src/main.lib/Plugins/InstallationPlugins/Script/ScriptOptionsFactory.cs
index 2a7836a..2a7836a 100644
--- a/src/main/Plugins/InstallationPlugins/Script/ScriptOptionsFactory.cs
+++ b/src/main.lib/Plugins/InstallationPlugins/Script/ScriptOptionsFactory.cs
diff --git a/src/main/Plugins/Resolvers/InteractiveResolver.cs b/src/main.lib/Plugins/Resolvers/InteractiveResolver.cs
index 8397fb1..8397fb1 100644
--- a/src/main/Plugins/Resolvers/InteractiveResolver.cs
+++ b/src/main.lib/Plugins/Resolvers/InteractiveResolver.cs
diff --git a/src/main/Plugins/Resolvers/UnattendedResolver.cs b/src/main.lib/Plugins/Resolvers/UnattendedResolver.cs
index 2af83d0..2af83d0 100644
--- a/src/main/Plugins/Resolvers/UnattendedResolver.cs
+++ b/src/main.lib/Plugins/Resolvers/UnattendedResolver.cs
diff --git a/src/main/Plugins/StorePlugins/CentralSsl/CentralSsl.cs b/src/main.lib/Plugins/StorePlugins/CentralSsl/CentralSsl.cs
index e42ea79..e42ea79 100644
--- a/src/main/Plugins/StorePlugins/CentralSsl/CentralSsl.cs
+++ b/src/main.lib/Plugins/StorePlugins/CentralSsl/CentralSsl.cs
diff --git a/src/main/Plugins/StorePlugins/CentralSsl/CentralSslArguments.cs b/src/main.lib/Plugins/StorePlugins/CentralSsl/CentralSslArguments.cs
index 95ebe7f..95ebe7f 100644
--- a/src/main/Plugins/StorePlugins/CentralSsl/CentralSslArguments.cs
+++ b/src/main.lib/Plugins/StorePlugins/CentralSsl/CentralSslArguments.cs
diff --git a/src/main/Plugins/StorePlugins/CentralSsl/CentralSslArgumentsProvider.cs b/src/main.lib/Plugins/StorePlugins/CentralSsl/CentralSslArgumentsProvider.cs
index 87ef5b0..87ef5b0 100644
--- a/src/main/Plugins/StorePlugins/CentralSsl/CentralSslArgumentsProvider.cs
+++ b/src/main.lib/Plugins/StorePlugins/CentralSsl/CentralSslArgumentsProvider.cs
diff --git a/src/main/Plugins/StorePlugins/CentralSsl/CentralSslOptions.cs b/src/main.lib/Plugins/StorePlugins/CentralSsl/CentralSslOptions.cs
index 064c386..064c386 100644
--- a/src/main/Plugins/StorePlugins/CentralSsl/CentralSslOptions.cs
+++ b/src/main.lib/Plugins/StorePlugins/CentralSsl/CentralSslOptions.cs
diff --git a/src/main/Plugins/StorePlugins/CentralSsl/CentralSslOptionsFactory.cs b/src/main.lib/Plugins/StorePlugins/CentralSsl/CentralSslOptionsFactory.cs
index 7315d3f..7315d3f 100644
--- a/src/main/Plugins/StorePlugins/CentralSsl/CentralSslOptionsFactory.cs
+++ b/src/main.lib/Plugins/StorePlugins/CentralSsl/CentralSslOptionsFactory.cs
diff --git a/src/main/Plugins/StorePlugins/CertificateStore/CertificateStore.cs b/src/main.lib/Plugins/StorePlugins/CertificateStore/CertificateStore.cs
index 727f70d..3cf9503 100644
--- a/src/main/Plugins/StorePlugins/CertificateStore/CertificateStore.cs
+++ b/src/main.lib/Plugins/StorePlugins/CertificateStore/CertificateStore.cs
@@ -1,7 +1,6 @@
using PKISharp.WACS.Clients.IIS;
using PKISharp.WACS.DomainObjects;
using PKISharp.WACS.Plugins.Interfaces;
-using PKISharp.WACS.Properties;
using PKISharp.WACS.Services;
using System;
using System.Collections.Generic;
diff --git a/src/main/Plugins/StorePlugins/CertificateStore/CertificateStoreArguments.cs b/src/main.lib/Plugins/StorePlugins/CertificateStore/CertificateStoreArguments.cs
index 2cbaae7..2cbaae7 100644
--- a/src/main/Plugins/StorePlugins/CertificateStore/CertificateStoreArguments.cs
+++ b/src/main.lib/Plugins/StorePlugins/CertificateStore/CertificateStoreArguments.cs
diff --git a/src/main/Plugins/StorePlugins/CertificateStore/CertificateStoreArgumentsProvider.cs b/src/main.lib/Plugins/StorePlugins/CertificateStore/CertificateStoreArgumentsProvider.cs
index 2834b47..2834b47 100644
--- a/src/main/Plugins/StorePlugins/CertificateStore/CertificateStoreArgumentsProvider.cs
+++ b/src/main.lib/Plugins/StorePlugins/CertificateStore/CertificateStoreArgumentsProvider.cs
diff --git a/src/main/Plugins/StorePlugins/CertificateStore/CertificateStoreOptions.cs b/src/main.lib/Plugins/StorePlugins/CertificateStore/CertificateStoreOptions.cs
index 52ff113..52ff113 100644
--- a/src/main/Plugins/StorePlugins/CertificateStore/CertificateStoreOptions.cs
+++ b/src/main.lib/Plugins/StorePlugins/CertificateStore/CertificateStoreOptions.cs
diff --git a/src/main/Plugins/StorePlugins/CertificateStore/CertificateStoreOptionsFactory.cs b/src/main.lib/Plugins/StorePlugins/CertificateStore/CertificateStoreOptionsFactory.cs
index d2bfed9..d2bfed9 100644
--- a/src/main/Plugins/StorePlugins/CertificateStore/CertificateStoreOptionsFactory.cs
+++ b/src/main.lib/Plugins/StorePlugins/CertificateStore/CertificateStoreOptionsFactory.cs
diff --git a/src/main/Plugins/StorePlugins/PemFiles/PemFiles.cs b/src/main.lib/Plugins/StorePlugins/PemFiles/PemFiles.cs
index e0a3696..ea7e79a 100644
--- a/src/main/Plugins/StorePlugins/PemFiles/PemFiles.cs
+++ b/src/main.lib/Plugins/StorePlugins/PemFiles/PemFiles.cs
@@ -2,7 +2,6 @@
using PKISharp.WACS.DomainObjects;
using PKISharp.WACS.Extensions;
using PKISharp.WACS.Plugins.Interfaces;
-using PKISharp.WACS.Properties;
using PKISharp.WACS.Services;
using System;
using System.IO;
@@ -13,8 +12,8 @@ namespace PKISharp.WACS.Plugins.StorePlugins
{
internal class PemFiles : IStorePlugin
{
- private ILogService _log;
- private PemService _pemService;
+ private readonly ILogService _log;
+ private readonly PemService _pemService;
private readonly string _path;
diff --git a/src/main/Plugins/StorePlugins/PemFiles/PemFilesArguments.cs b/src/main.lib/Plugins/StorePlugins/PemFiles/PemFilesArguments.cs
index 23370d6..23370d6 100644
--- a/src/main/Plugins/StorePlugins/PemFiles/PemFilesArguments.cs
+++ b/src/main.lib/Plugins/StorePlugins/PemFiles/PemFilesArguments.cs
diff --git a/src/main/Plugins/StorePlugins/PemFiles/PemFilesArgumentsProvider.cs b/src/main.lib/Plugins/StorePlugins/PemFiles/PemFilesArgumentsProvider.cs
index 52368eb..52368eb 100644
--- a/src/main/Plugins/StorePlugins/PemFiles/PemFilesArgumentsProvider.cs
+++ b/src/main.lib/Plugins/StorePlugins/PemFiles/PemFilesArgumentsProvider.cs
diff --git a/src/main/Plugins/StorePlugins/PemFiles/PemFilesOptions.cs b/src/main.lib/Plugins/StorePlugins/PemFiles/PemFilesOptions.cs
index 47e8ca3..47e8ca3 100644
--- a/src/main/Plugins/StorePlugins/PemFiles/PemFilesOptions.cs
+++ b/src/main.lib/Plugins/StorePlugins/PemFiles/PemFilesOptions.cs
diff --git a/src/main/Plugins/StorePlugins/PemFiles/PemFilesOptionsFactory.cs b/src/main.lib/Plugins/StorePlugins/PemFiles/PemFilesOptionsFactory.cs
index 2dab221..2dab221 100644
--- a/src/main/Plugins/StorePlugins/PemFiles/PemFilesOptionsFactory.cs
+++ b/src/main.lib/Plugins/StorePlugins/PemFiles/PemFilesOptionsFactory.cs
diff --git a/src/main/Plugins/TargetPlugins/IISBinding/IISBinding.cs b/src/main.lib/Plugins/TargetPlugins/IISBinding/IISBinding.cs
index b6125cc..b6125cc 100644
--- a/src/main/Plugins/TargetPlugins/IISBinding/IISBinding.cs
+++ b/src/main.lib/Plugins/TargetPlugins/IISBinding/IISBinding.cs
diff --git a/src/main/Plugins/TargetPlugins/IISBinding/IISBindingArguments.cs b/src/main.lib/Plugins/TargetPlugins/IISBinding/IISBindingArguments.cs
index 7340fb2..7340fb2 100644
--- a/src/main/Plugins/TargetPlugins/IISBinding/IISBindingArguments.cs
+++ b/src/main.lib/Plugins/TargetPlugins/IISBinding/IISBindingArguments.cs
diff --git a/src/main/Plugins/TargetPlugins/IISBinding/IISBindingArgumentsProvider.cs b/src/main.lib/Plugins/TargetPlugins/IISBinding/IISBindingArgumentsProvider.cs
index c93354e..c93354e 100644
--- a/src/main/Plugins/TargetPlugins/IISBinding/IISBindingArgumentsProvider.cs
+++ b/src/main.lib/Plugins/TargetPlugins/IISBinding/IISBindingArgumentsProvider.cs
diff --git a/src/main/Plugins/TargetPlugins/IISBinding/IISBindingOptions.cs b/src/main.lib/Plugins/TargetPlugins/IISBinding/IISBindingOptions.cs
index 81b254e..81b254e 100644
--- a/src/main/Plugins/TargetPlugins/IISBinding/IISBindingOptions.cs
+++ b/src/main.lib/Plugins/TargetPlugins/IISBinding/IISBindingOptions.cs
diff --git a/src/main/Plugins/TargetPlugins/IISBinding/IISBindingOptionsFactory.cs b/src/main.lib/Plugins/TargetPlugins/IISBinding/IISBindingOptionsFactory.cs
index f5f359b..f5f359b 100644
--- a/src/main/Plugins/TargetPlugins/IISBinding/IISBindingOptionsFactory.cs
+++ b/src/main.lib/Plugins/TargetPlugins/IISBinding/IISBindingOptionsFactory.cs
diff --git a/src/main/Plugins/TargetPlugins/IISSite/IISSite.cs b/src/main.lib/Plugins/TargetPlugins/IISSite/IISSite.cs
index 26cb8af..26cb8af 100644
--- a/src/main/Plugins/TargetPlugins/IISSite/IISSite.cs
+++ b/src/main.lib/Plugins/TargetPlugins/IISSite/IISSite.cs
diff --git a/src/main/Plugins/TargetPlugins/IISSite/IISSiteArguments.cs b/src/main.lib/Plugins/TargetPlugins/IISSite/IISSiteArguments.cs
index e03ae08..e03ae08 100644
--- a/src/main/Plugins/TargetPlugins/IISSite/IISSiteArguments.cs
+++ b/src/main.lib/Plugins/TargetPlugins/IISSite/IISSiteArguments.cs
diff --git a/src/main/Plugins/TargetPlugins/IISSite/IISSiteArgumentsProvider.cs b/src/main.lib/Plugins/TargetPlugins/IISSite/IISSiteArgumentsProvider.cs
index 0f186c0..0f186c0 100644
--- a/src/main/Plugins/TargetPlugins/IISSite/IISSiteArgumentsProvider.cs
+++ b/src/main.lib/Plugins/TargetPlugins/IISSite/IISSiteArgumentsProvider.cs
diff --git a/src/main/Plugins/TargetPlugins/IISSite/IISSiteOptions.cs b/src/main.lib/Plugins/TargetPlugins/IISSite/IISSiteOptions.cs
index 1051d08..1051d08 100644
--- a/src/main/Plugins/TargetPlugins/IISSite/IISSiteOptions.cs
+++ b/src/main.lib/Plugins/TargetPlugins/IISSite/IISSiteOptions.cs
diff --git a/src/main/Plugins/TargetPlugins/IISSite/IISSiteOptionsFactory.cs b/src/main.lib/Plugins/TargetPlugins/IISSite/IISSiteOptionsFactory.cs
index 289b59c..289b59c 100644
--- a/src/main/Plugins/TargetPlugins/IISSite/IISSiteOptionsFactory.cs
+++ b/src/main.lib/Plugins/TargetPlugins/IISSite/IISSiteOptionsFactory.cs
diff --git a/src/main/Plugins/TargetPlugins/IISSite/IISSiteOptionsHelper.cs b/src/main.lib/Plugins/TargetPlugins/IISSite/IISSiteOptionsHelper.cs
index 0483514..0483514 100644
--- a/src/main/Plugins/TargetPlugins/IISSite/IISSiteOptionsHelper.cs
+++ b/src/main.lib/Plugins/TargetPlugins/IISSite/IISSiteOptionsHelper.cs
diff --git a/src/main/Plugins/TargetPlugins/IISSites/IISSites.cs b/src/main.lib/Plugins/TargetPlugins/IISSites/IISSites.cs
index 32b46d6..32b46d6 100644
--- a/src/main/Plugins/TargetPlugins/IISSites/IISSites.cs
+++ b/src/main.lib/Plugins/TargetPlugins/IISSites/IISSites.cs
diff --git a/src/main/Plugins/TargetPlugins/IISSites/IISSitesOptions.cs b/src/main.lib/Plugins/TargetPlugins/IISSites/IISSitesOptions.cs
index 61abc53..61abc53 100644
--- a/src/main/Plugins/TargetPlugins/IISSites/IISSitesOptions.cs
+++ b/src/main.lib/Plugins/TargetPlugins/IISSites/IISSitesOptions.cs
diff --git a/src/main/Plugins/TargetPlugins/IISSites/IISSitesOptionsFactory.cs b/src/main.lib/Plugins/TargetPlugins/IISSites/IISSitesOptionsFactory.cs
index 90a336e..90a336e 100644
--- a/src/main/Plugins/TargetPlugins/IISSites/IISSitesOptionsFactory.cs
+++ b/src/main.lib/Plugins/TargetPlugins/IISSites/IISSitesOptionsFactory.cs
diff --git a/src/main/Plugins/TargetPlugins/Manual/Manual.cs b/src/main.lib/Plugins/TargetPlugins/Manual/Manual.cs
index c6cb542..c6cb542 100644
--- a/src/main/Plugins/TargetPlugins/Manual/Manual.cs
+++ b/src/main.lib/Plugins/TargetPlugins/Manual/Manual.cs
diff --git a/src/main/Plugins/TargetPlugins/Manual/ManualArguments.cs b/src/main.lib/Plugins/TargetPlugins/Manual/ManualArguments.cs
index 18cae37..18cae37 100644
--- a/src/main/Plugins/TargetPlugins/Manual/ManualArguments.cs
+++ b/src/main.lib/Plugins/TargetPlugins/Manual/ManualArguments.cs
diff --git a/src/main/Plugins/TargetPlugins/Manual/ManualArgumentsProvider.cs b/src/main.lib/Plugins/TargetPlugins/Manual/ManualArgumentsProvider.cs
index 34a76e1..34a76e1 100644
--- a/src/main/Plugins/TargetPlugins/Manual/ManualArgumentsProvider.cs
+++ b/src/main.lib/Plugins/TargetPlugins/Manual/ManualArgumentsProvider.cs
diff --git a/src/main/Plugins/TargetPlugins/Manual/ManualOptions.cs b/src/main.lib/Plugins/TargetPlugins/Manual/ManualOptions.cs
index e99a6a0..e99a6a0 100644
--- a/src/main/Plugins/TargetPlugins/Manual/ManualOptions.cs
+++ b/src/main.lib/Plugins/TargetPlugins/Manual/ManualOptions.cs
diff --git a/src/main/Plugins/TargetPlugins/Manual/ManualOptionsFactory.cs b/src/main.lib/Plugins/TargetPlugins/Manual/ManualOptionsFactory.cs
index 3a4c3a7..3a4c3a7 100644
--- a/src/main/Plugins/TargetPlugins/Manual/ManualOptionsFactory.cs
+++ b/src/main.lib/Plugins/TargetPlugins/Manual/ManualOptionsFactory.cs
diff --git a/src/main/Plugins/ValidationPlugins/Dns/Acme/Acme.cs b/src/main.lib/Plugins/ValidationPlugins/Dns/Acme/Acme.cs
index 96e7610..96e7610 100644
--- a/src/main/Plugins/ValidationPlugins/Dns/Acme/Acme.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Dns/Acme/Acme.cs
diff --git a/src/main/Plugins/ValidationPlugins/Dns/Acme/AcmeArguments.cs b/src/main.lib/Plugins/ValidationPlugins/Dns/Acme/AcmeArguments.cs
index 499b38d..499b38d 100644
--- a/src/main/Plugins/ValidationPlugins/Dns/Acme/AcmeArguments.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Dns/Acme/AcmeArguments.cs
diff --git a/src/main/Plugins/ValidationPlugins/Dns/Acme/AcmeArgumentsProvider.cs b/src/main.lib/Plugins/ValidationPlugins/Dns/Acme/AcmeArgumentsProvider.cs
index e7aeeeb..e7aeeeb 100644
--- a/src/main/Plugins/ValidationPlugins/Dns/Acme/AcmeArgumentsProvider.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Dns/Acme/AcmeArgumentsProvider.cs
diff --git a/src/main/Plugins/ValidationPlugins/Dns/Acme/AcmeOptions.cs b/src/main.lib/Plugins/ValidationPlugins/Dns/Acme/AcmeOptions.cs
index c2daeb2..c2daeb2 100644
--- a/src/main/Plugins/ValidationPlugins/Dns/Acme/AcmeOptions.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Dns/Acme/AcmeOptions.cs
diff --git a/src/main/Plugins/ValidationPlugins/Dns/Acme/AcmeOptionsFactory.cs b/src/main.lib/Plugins/ValidationPlugins/Dns/Acme/AcmeOptionsFactory.cs
index be4e55e..be4e55e 100644
--- a/src/main/Plugins/ValidationPlugins/Dns/Acme/AcmeOptionsFactory.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Dns/Acme/AcmeOptionsFactory.cs
diff --git a/src/main/Plugins/ValidationPlugins/Dns/DnsValidation.cs b/src/main.lib/Plugins/ValidationPlugins/Dns/DnsValidation.cs
index a9961d2..a9961d2 100644
--- a/src/main/Plugins/ValidationPlugins/Dns/DnsValidation.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Dns/DnsValidation.cs
diff --git a/src/main/Plugins/ValidationPlugins/Dns/Manual/Manual.cs b/src/main.lib/Plugins/ValidationPlugins/Dns/Manual/Manual.cs
index ee650dd..ee650dd 100644
--- a/src/main/Plugins/ValidationPlugins/Dns/Manual/Manual.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Dns/Manual/Manual.cs
diff --git a/src/main/Plugins/ValidationPlugins/Dns/Manual/ManualOptions.cs b/src/main.lib/Plugins/ValidationPlugins/Dns/Manual/ManualOptions.cs
index 93884e9..93884e9 100644
--- a/src/main/Plugins/ValidationPlugins/Dns/Manual/ManualOptions.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Dns/Manual/ManualOptions.cs
diff --git a/src/main/Plugins/ValidationPlugins/Dns/Manual/ManualOptionsFactory.cs b/src/main.lib/Plugins/ValidationPlugins/Dns/Manual/ManualOptionsFactory.cs
index 3234142..3234142 100644
--- a/src/main/Plugins/ValidationPlugins/Dns/Manual/ManualOptionsFactory.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Dns/Manual/ManualOptionsFactory.cs
diff --git a/src/main/Plugins/ValidationPlugins/Dns/Script/Script.cs b/src/main.lib/Plugins/ValidationPlugins/Dns/Script/Script.cs
index 7bd9e4d..7bd9e4d 100644
--- a/src/main/Plugins/ValidationPlugins/Dns/Script/Script.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Dns/Script/Script.cs
diff --git a/src/main/Plugins/ValidationPlugins/Dns/Script/ScriptArguments.cs b/src/main.lib/Plugins/ValidationPlugins/Dns/Script/ScriptArguments.cs
index c73a963..c73a963 100644
--- a/src/main/Plugins/ValidationPlugins/Dns/Script/ScriptArguments.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Dns/Script/ScriptArguments.cs
diff --git a/src/main/Plugins/ValidationPlugins/Dns/Script/ScriptArgumentsProvider.cs b/src/main.lib/Plugins/ValidationPlugins/Dns/Script/ScriptArgumentsProvider.cs
index 2fb7a1a..2fb7a1a 100644
--- a/src/main/Plugins/ValidationPlugins/Dns/Script/ScriptArgumentsProvider.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Dns/Script/ScriptArgumentsProvider.cs
diff --git a/src/main/Plugins/ValidationPlugins/Dns/Script/ScriptOptions.cs b/src/main.lib/Plugins/ValidationPlugins/Dns/Script/ScriptOptions.cs
index 4ad3f5a..4ad3f5a 100644
--- a/src/main/Plugins/ValidationPlugins/Dns/Script/ScriptOptions.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Dns/Script/ScriptOptions.cs
diff --git a/src/main/Plugins/ValidationPlugins/Dns/Script/ScriptOptionsFactory.cs b/src/main.lib/Plugins/ValidationPlugins/Dns/Script/ScriptOptionsFactory.cs
index 4ed53f4..4ed53f4 100644
--- a/src/main/Plugins/ValidationPlugins/Dns/Script/ScriptOptionsFactory.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Dns/Script/ScriptOptionsFactory.cs
diff --git a/src/main/Plugins/ValidationPlugins/Http/FileSystem/FileSystem.cs b/src/main.lib/Plugins/ValidationPlugins/Http/FileSystem/FileSystem.cs
index 1301f5b..1301f5b 100644
--- a/src/main/Plugins/ValidationPlugins/Http/FileSystem/FileSystem.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Http/FileSystem/FileSystem.cs
diff --git a/src/main/Plugins/ValidationPlugins/Http/FileSystem/FileSystemArguments.cs b/src/main.lib/Plugins/ValidationPlugins/Http/FileSystem/FileSystemArguments.cs
index b99f400..b99f400 100644
--- a/src/main/Plugins/ValidationPlugins/Http/FileSystem/FileSystemArguments.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Http/FileSystem/FileSystemArguments.cs
diff --git a/src/main/Plugins/ValidationPlugins/Http/FileSystem/FileSystemArgumentsProvider.cs b/src/main.lib/Plugins/ValidationPlugins/Http/FileSystem/FileSystemArgumentsProvider.cs
index 4d696e1..4d696e1 100644
--- a/src/main/Plugins/ValidationPlugins/Http/FileSystem/FileSystemArgumentsProvider.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Http/FileSystem/FileSystemArgumentsProvider.cs
diff --git a/src/main/Plugins/ValidationPlugins/Http/FileSystem/FileSystemOptions.cs b/src/main.lib/Plugins/ValidationPlugins/Http/FileSystem/FileSystemOptions.cs
index 4b70e2d..4b70e2d 100644
--- a/src/main/Plugins/ValidationPlugins/Http/FileSystem/FileSystemOptions.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Http/FileSystem/FileSystemOptions.cs
diff --git a/src/main/Plugins/ValidationPlugins/Http/FileSystem/FileSystemOptionsFactory.cs b/src/main.lib/Plugins/ValidationPlugins/Http/FileSystem/FileSystemOptionsFactory.cs
index ea639d5..ea639d5 100644
--- a/src/main/Plugins/ValidationPlugins/Http/FileSystem/FileSystemOptionsFactory.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Http/FileSystem/FileSystemOptionsFactory.cs
diff --git a/src/main/Plugins/ValidationPlugins/Http/Ftp/Ftp.cs b/src/main.lib/Plugins/ValidationPlugins/Http/Ftp/Ftp.cs
index 8ad5ab7..8ad5ab7 100644
--- a/src/main/Plugins/ValidationPlugins/Http/Ftp/Ftp.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Http/Ftp/Ftp.cs
diff --git a/src/main/Plugins/ValidationPlugins/Http/Ftp/FtpOptions.cs b/src/main.lib/Plugins/ValidationPlugins/Http/Ftp/FtpOptions.cs
index 889dbe1..889dbe1 100644
--- a/src/main/Plugins/ValidationPlugins/Http/Ftp/FtpOptions.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Http/Ftp/FtpOptions.cs
diff --git a/src/main/Plugins/ValidationPlugins/Http/Ftp/FtpOptionsFactory.cs b/src/main.lib/Plugins/ValidationPlugins/Http/Ftp/FtpOptionsFactory.cs
index ef6897f..ef6897f 100644
--- a/src/main/Plugins/ValidationPlugins/Http/Ftp/FtpOptionsFactory.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Http/Ftp/FtpOptionsFactory.cs
diff --git a/src/main/Plugins/ValidationPlugins/Http/HttpValidation.cs b/src/main.lib/Plugins/ValidationPlugins/Http/HttpValidation.cs
index 6c8dc64..6c8dc64 100644
--- a/src/main/Plugins/ValidationPlugins/Http/HttpValidation.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Http/HttpValidation.cs
diff --git a/src/main/Plugins/ValidationPlugins/Http/HttpValidationArguments.cs b/src/main.lib/Plugins/ValidationPlugins/Http/HttpValidationArguments.cs
index 4eb8390..4eb8390 100644
--- a/src/main/Plugins/ValidationPlugins/Http/HttpValidationArguments.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Http/HttpValidationArguments.cs
diff --git a/src/main/Plugins/ValidationPlugins/Http/HttpValidationArgumentsProvider.cs b/src/main.lib/Plugins/ValidationPlugins/Http/HttpValidationArgumentsProvider.cs
index 092f0f7..092f0f7 100644
--- a/src/main/Plugins/ValidationPlugins/Http/HttpValidationArgumentsProvider.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Http/HttpValidationArgumentsProvider.cs
diff --git a/src/main/Plugins/ValidationPlugins/Http/HttpValidationOptions.cs b/src/main.lib/Plugins/ValidationPlugins/Http/HttpValidationOptions.cs
index 6546a9a..6546a9a 100644
--- a/src/main/Plugins/ValidationPlugins/Http/HttpValidationOptions.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Http/HttpValidationOptions.cs
diff --git a/src/main/Plugins/ValidationPlugins/Http/HttpValidationOptionsFactory.cs b/src/main.lib/Plugins/ValidationPlugins/Http/HttpValidationOptionsFactory.cs
index 4b8979d..4b8979d 100644
--- a/src/main/Plugins/ValidationPlugins/Http/HttpValidationOptionsFactory.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Http/HttpValidationOptionsFactory.cs
diff --git a/src/main/Plugins/ValidationPlugins/Http/HttpValidationParameters.cs b/src/main.lib/Plugins/ValidationPlugins/Http/HttpValidationParameters.cs
index 68151f5..06a0968 100644
--- a/src/main/Plugins/ValidationPlugins/Http/HttpValidationParameters.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Http/HttpValidationParameters.cs
@@ -28,6 +28,7 @@ namespace PKISharp.WACS.Plugins.ValidationPlugins
TargetPart = target;
RunLevel = runLevel;
Identifier = identifier;
+ Settings = settings;
ProxyService = proxy;
LogService = log;
InputService = input;
diff --git a/src/main/Plugins/ValidationPlugins/Http/SelfHosting/SelfHosting.cs b/src/main.lib/Plugins/ValidationPlugins/Http/SelfHosting/SelfHosting.cs
index 1f5361e..1f5361e 100644
--- a/src/main/Plugins/ValidationPlugins/Http/SelfHosting/SelfHosting.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Http/SelfHosting/SelfHosting.cs
diff --git a/src/main/Plugins/ValidationPlugins/Http/SelfHosting/SelfHostingArguments.cs b/src/main.lib/Plugins/ValidationPlugins/Http/SelfHosting/SelfHostingArguments.cs
index 14bfe1b..14bfe1b 100644
--- a/src/main/Plugins/ValidationPlugins/Http/SelfHosting/SelfHostingArguments.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Http/SelfHosting/SelfHostingArguments.cs
diff --git a/src/main/Plugins/ValidationPlugins/Http/SelfHosting/SelfHostingArgumentsProvider.cs b/src/main.lib/Plugins/ValidationPlugins/Http/SelfHosting/SelfHostingArgumentsProvider.cs
index feac957..feac957 100644
--- a/src/main/Plugins/ValidationPlugins/Http/SelfHosting/SelfHostingArgumentsProvider.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Http/SelfHosting/SelfHostingArgumentsProvider.cs
diff --git a/src/main/Plugins/ValidationPlugins/Http/SelfHosting/SelfHostingOptions.cs b/src/main.lib/Plugins/ValidationPlugins/Http/SelfHosting/SelfHostingOptions.cs
index 0d8e562..0d8e562 100644
--- a/src/main/Plugins/ValidationPlugins/Http/SelfHosting/SelfHostingOptions.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Http/SelfHosting/SelfHostingOptions.cs
diff --git a/src/main/Plugins/ValidationPlugins/Http/SelfHosting/SelfHostingOptionsFactory.cs b/src/main.lib/Plugins/ValidationPlugins/Http/SelfHosting/SelfHostingOptionsFactory.cs
index 2a3c5ab..2a3c5ab 100644
--- a/src/main/Plugins/ValidationPlugins/Http/SelfHosting/SelfHostingOptionsFactory.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Http/SelfHosting/SelfHostingOptionsFactory.cs
diff --git a/src/main/Plugins/ValidationPlugins/Http/Sftp/Sftp.cs b/src/main.lib/Plugins/ValidationPlugins/Http/Sftp/Sftp.cs
index 150a3c0..150a3c0 100644
--- a/src/main/Plugins/ValidationPlugins/Http/Sftp/Sftp.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Http/Sftp/Sftp.cs
diff --git a/src/main/Plugins/ValidationPlugins/Http/Sftp/SftpOptions.cs b/src/main.lib/Plugins/ValidationPlugins/Http/Sftp/SftpOptions.cs
index 094566c..094566c 100644
--- a/src/main/Plugins/ValidationPlugins/Http/Sftp/SftpOptions.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Http/Sftp/SftpOptions.cs
diff --git a/src/main/Plugins/ValidationPlugins/Http/Sftp/SftpOptionsFactory.cs b/src/main.lib/Plugins/ValidationPlugins/Http/Sftp/SftpOptionsFactory.cs
index aea3981..aea3981 100644
--- a/src/main/Plugins/ValidationPlugins/Http/Sftp/SftpOptionsFactory.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Http/Sftp/SftpOptionsFactory.cs
diff --git a/src/main/Plugins/ValidationPlugins/Http/WebDav/WebDav.cs b/src/main.lib/Plugins/ValidationPlugins/Http/WebDav/WebDav.cs
index e19f98b..f44f861 100644
--- a/src/main/Plugins/ValidationPlugins/Http/WebDav/WebDav.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Http/WebDav/WebDav.cs
@@ -1,15 +1,19 @@
using PKISharp.WACS.Client;
+using PKISharp.WACS.Services;
using System.Linq;
namespace PKISharp.WACS.Plugins.ValidationPlugins.Http
{
internal class WebDav : HttpValidation<WebDavOptions, WebDav>
{
- private WebDavClient _webdavClient;
+ private WebDavClientWrapper _webdavClient;
- public WebDav(WebDavOptions options, HttpValidationParameters pars, RunLevel runLevel) : base(options, runLevel, pars)
+ public WebDav(
+ WebDavOptions options, HttpValidationParameters pars,
+ RunLevel runLevel, ProxyService proxy) :
+ base(options, runLevel, pars)
{
- _webdavClient = new WebDavClient(_options.Credential, pars.LogService);
+ _webdavClient = new WebDavClientWrapper(_options.Credential, pars.LogService, proxy);
}
protected override void DeleteFile(string path)
@@ -24,14 +28,15 @@ namespace PKISharp.WACS.Plugins.ValidationPlugins.Http
protected override bool IsEmpty(string path)
{
- return !_webdavClient.GetFiles(path).Any();
+ return !_webdavClient.IsEmpty(path);
}
+ protected override char PathSeparator => '/';
+
protected override void WriteFile(string path, string content)
{
_webdavClient.Upload(path, content);
}
-
public override void CleanUp()
{
base.CleanUp();
diff --git a/src/main/Plugins/ValidationPlugins/Http/WebDav/WebDavOptions.cs b/src/main.lib/Plugins/ValidationPlugins/Http/WebDav/WebDavOptions.cs
index 2e83328..2e83328 100644
--- a/src/main/Plugins/ValidationPlugins/Http/WebDav/WebDavOptions.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Http/WebDav/WebDavOptions.cs
diff --git a/src/main/Plugins/ValidationPlugins/Http/WebDav/WebDavOptionsFactory.cs b/src/main.lib/Plugins/ValidationPlugins/Http/WebDav/WebDavOptionsFactory.cs
index 6b952d0..d77d5d7 100644
--- a/src/main/Plugins/ValidationPlugins/Http/WebDav/WebDavOptionsFactory.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Http/WebDav/WebDavOptionsFactory.cs
@@ -9,7 +9,15 @@ namespace PKISharp.WACS.Plugins.ValidationPlugins.Http
{
public WebDavOptionsFactory(IArgumentsService arguments) : base(arguments) { }
- public override bool PathIsValid(string webRoot) => webRoot.StartsWith("\\\\");
+ public override bool PathIsValid(string webRoot)
+ {
+ return
+ webRoot.StartsWith("\\\\") ||
+ webRoot.StartsWith("dav://") ||
+ webRoot.StartsWith("webdav://") ||
+ webRoot.StartsWith("https://") ||
+ webRoot.StartsWith("http://");
+ }
public override string[] WebrootHint(bool allowEmtpy)
{
@@ -24,7 +32,7 @@ namespace PKISharp.WACS.Plugins.ValidationPlugins.Http
{
return new WebDavOptions(BaseDefault(target))
{
- Credential = new NetworkCredentialOptions()
+ Credential = new NetworkCredentialOptions(_arguments)
};
}
diff --git a/src/main/Plugins/ValidationPlugins/Validation.cs b/src/main.lib/Plugins/ValidationPlugins/Validation.cs
index 497cb70..497cb70 100644
--- a/src/main/Plugins/ValidationPlugins/Validation.cs
+++ b/src/main.lib/Plugins/ValidationPlugins/Validation.cs
diff --git a/src/main.lib/Services/Legacy/BaseLegacyRenewalService.cs b/src/main.lib/Services/Legacy/BaseLegacyRenewalService.cs
new file mode 100644
index 0000000..bcfab23
--- /dev/null
+++ b/src/main.lib/Services/Legacy/BaseLegacyRenewalService.cs
@@ -0,0 +1,122 @@
+using Newtonsoft.Json;
+using PKISharp.WACS.Configuration;
+using PKISharp.WACS.Plugins.InstallationPlugins;
+using PKISharp.WACS.Plugins.TargetPlugins;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+
+namespace PKISharp.WACS.Services.Legacy
+{
+ internal abstract class BaseLegacyRenewalService : ILegacyRenewalService
+ {
+ internal ILogService _log;
+ internal List<LegacyScheduledRenewal> _renewalsCache;
+ internal string _configPath = null;
+
+ public BaseLegacyRenewalService(
+ ISettingsService settings,
+ ILogService log)
+ {
+ _log = log;
+ _configPath = settings.ConfigPath;
+ }
+
+ public IEnumerable<LegacyScheduledRenewal> Renewals
+ {
+ get => ReadRenewals();
+ }
+
+ /// <summary>
+ /// To be implemented by inherited classes (e.g. registry/filesystem/database)
+ /// </summary>
+ /// <param name="BaseUri"></param>
+ /// <returns></returns>
+ internal abstract string[] RenewalsRaw { get; }
+
+ /// <summary>
+ /// Parse renewals from store
+ /// </summary>
+ public IEnumerable<LegacyScheduledRenewal> ReadRenewals()
+ {
+ if (_renewalsCache == null)
+ {
+ var read = RenewalsRaw;
+ var list = new List<LegacyScheduledRenewal>();
+ if (read != null)
+ {
+ list.AddRange(read.Select(x => Load(x, _configPath)).Where(x => x != null));
+ }
+ _renewalsCache = list;
+ }
+ return _renewalsCache;
+ }
+
+ /// <summary>
+ /// Parse from string
+ /// </summary>
+ /// <param name="renewal"></param>
+ /// <param name="path"></param>
+ /// <returns></returns>
+ private LegacyScheduledRenewal Load(string renewal, string path)
+ {
+ LegacyScheduledRenewal result;
+ try
+ {
+ result = JsonConvert.DeserializeObject<LegacyScheduledRenewal>(renewal);
+ if (result?.Binding == null)
+ {
+ throw new Exception();
+ }
+ }
+ catch
+ {
+ _log.Error("Unable to deserialize renewal: {renewal}", renewal);
+ return null;
+ }
+
+ if (string.IsNullOrEmpty(result.Binding.TargetPluginName))
+ {
+ switch (result.Binding.PluginName)
+ {
+ case "IIS":
+ result.Binding.TargetPluginName = result.Binding.HostIsDns == false ? nameof(IISSite) : nameof(IISBinding);
+ break;
+ case "IISSiteServer":
+ result.Binding.TargetPluginName = nameof(IISSites);
+ break;
+ case "Manual":
+ result.Binding.TargetPluginName = nameof(Manual);
+ break;
+ }
+ }
+
+ if (result.Binding.AlternativeNames == null)
+ {
+ result.Binding.AlternativeNames = new List<string>();
+ }
+
+ if (result.Binding.HostIsDns == null)
+ {
+ result.Binding.HostIsDns = !result.San;
+ }
+
+ if (result.Binding.IIS == null)
+ {
+ result.Binding.IIS = !(result.Binding.PluginName == nameof(Manual));
+ }
+
+ if (string.IsNullOrWhiteSpace(result.Binding.SSLIPAddress))
+ {
+ result.Binding.SSLIPAddress = "*";
+ }
+
+ if (result.Binding.TargetSiteId == null && result.Binding.SiteId > 0)
+ {
+ result.Binding.TargetSiteId = result.Binding.SiteId;
+ }
+
+ return result;
+ }
+ }
+}
diff --git a/src/main.lib/Services/Legacy/FileLegacyRenewalService.cs b/src/main.lib/Services/Legacy/FileLegacyRenewalService.cs
new file mode 100644
index 0000000..c753a80
--- /dev/null
+++ b/src/main.lib/Services/Legacy/FileLegacyRenewalService.cs
@@ -0,0 +1,33 @@
+using PKISharp.WACS.Configuration;
+using System.IO;
+
+namespace PKISharp.WACS.Services.Legacy
+{
+ internal class FileLegacyRenewalService : BaseLegacyRenewalService
+ {
+ private const string _renewalsKey = "Renewals";
+
+ public FileLegacyRenewalService(
+ ILogService log,
+ ISettingsService settings) : base(settings, log)
+ { }
+
+ private string FileName => Path.Combine(_configPath, _renewalsKey);
+
+ internal override string[] RenewalsRaw
+ {
+ get
+ {
+ if (File.Exists(FileName))
+ {
+ return File.ReadAllLines(FileName);
+ }
+ else
+ {
+ return null;
+ }
+ }
+
+ }
+ }
+}
diff --git a/src/main.lib/Services/Legacy/Importer.cs b/src/main.lib/Services/Legacy/Importer.cs
new file mode 100644
index 0000000..f390c88
--- /dev/null
+++ b/src/main.lib/Services/Legacy/Importer.cs
@@ -0,0 +1,278 @@
+using PKISharp.WACS.Configuration;
+using PKISharp.WACS.DomainObjects;
+using PKISharp.WACS.Extensions;
+using PKISharp.WACS.Plugins.Base.Factories.Null;
+using PKISharp.WACS.Plugins.CsrPlugins;
+using PKISharp.WACS.Services.Serialization;
+using System.Collections.Generic;
+using System.Linq;
+using dns = PKISharp.WACS.Plugins.ValidationPlugins.Dns;
+using http = PKISharp.WACS.Plugins.ValidationPlugins.Http;
+using install = PKISharp.WACS.Plugins.InstallationPlugins;
+using store = PKISharp.WACS.Plugins.StorePlugins;
+using target = PKISharp.WACS.Plugins.TargetPlugins;
+
+namespace PKISharp.WACS.Services.Legacy
+{
+ class Importer
+ {
+ private readonly ILegacyRenewalService _legacyRenewal;
+ private readonly IRenewalService _currentRenewal;
+ private readonly ILogService _log;
+ private readonly ISettingsService _settings;
+ private readonly TaskSchedulerService _currentTaskScheduler;
+ private readonly LegacyTaskSchedulerService _legacyTaskScheduler;
+ private readonly PasswordGenerator _passwordGenerator;
+
+ public Importer(ILogService log, ILegacyRenewalService legacyRenewal,
+ ISettingsService settings, IRenewalService currentRenewal,
+ LegacyTaskSchedulerService legacyTaskScheduler,
+ TaskSchedulerService currentTaskScheduler,
+ PasswordGenerator passwordGenerator)
+ {
+ _legacyRenewal = legacyRenewal;
+ _currentRenewal = currentRenewal;
+ _log = log;
+ _settings = settings;
+ _currentTaskScheduler = currentTaskScheduler;
+ _legacyTaskScheduler = legacyTaskScheduler;
+ _passwordGenerator = passwordGenerator;
+ }
+
+ public void Import()
+ {
+ _log.Information("Legacy renewals {x}", _legacyRenewal.Renewals.Count().ToString());
+ _log.Information("Current renewals {x}", _currentRenewal.Renewals.Count().ToString());
+ foreach (LegacyScheduledRenewal legacyRenewal in _legacyRenewal.Renewals)
+ {
+ var converted = Convert(legacyRenewal);
+ _currentRenewal.Import(converted);
+ }
+ _currentTaskScheduler.EnsureTaskScheduler(RunLevel.Import);
+ _legacyTaskScheduler.StopTaskScheduler();
+ }
+
+ public Renewal Convert(LegacyScheduledRenewal legacy)
+ {
+ // Note that history is not moved, so all imported renewals
+ // will be due immediately. That's the ulimate test to see
+ // if they will actually work in the new ACMEv2 environment
+
+ var ret = Renewal.Create(null, _settings.RenewalDays, _passwordGenerator);
+ ConvertTarget(legacy, ret);
+ ConvertValidation(legacy, ret);
+ ConvertStore(legacy, ret);
+ ConvertInstallation(legacy, ret);
+ ret.CsrPluginOptions = new RsaOptions();
+ ret.LastFriendlyName = legacy.Binding.Host;
+ ret.History = new List<RenewResult> {
+ new RenewResult("Imported") { }
+ };
+ return ret;
+ }
+
+ public void ConvertTarget(LegacyScheduledRenewal legacy, Renewal ret)
+ {
+ if (string.IsNullOrEmpty(legacy.Binding.TargetPluginName))
+ {
+ switch (legacy.Binding.PluginName)
+ {
+ case "IIS":
+ legacy.Binding.TargetPluginName = legacy.Binding.HostIsDns == false ? "IISSite" : "IISBinding";
+ break;
+ case "IISSiteServer":
+ legacy.Binding.TargetPluginName = "IISSites";
+ break;
+ case "Manual":
+ legacy.Binding.TargetPluginName = "Manual";
+ break;
+ }
+ }
+ switch (legacy.Binding.TargetPluginName.ToLower())
+ {
+ case "iissite":
+ ret.TargetPluginOptions = new target.IISSiteOptions() {
+ CommonName = string.IsNullOrEmpty(legacy.Binding.CommonName) ? null : legacy.Binding.CommonName,
+ ExcludeBindings = legacy.Binding.ExcludeBindings.ParseCsv(),
+ SiteId = legacy.Binding.TargetSiteId ?? legacy.Binding.SiteId ?? 0
+ };
+ break;
+ case "iissites":
+ ret.TargetPluginOptions = new target.IISSitesOptions()
+ {
+ CommonName = string.IsNullOrEmpty(legacy.Binding.CommonName) ? null : legacy.Binding.CommonName,
+ ExcludeBindings = legacy.Binding.ExcludeBindings.ParseCsv(),
+ SiteIds = legacy.Binding.Host.ParseCsv().Select(x => long.Parse(x)).ToList()
+ };
+ break;
+ case "manual":
+ ret.TargetPluginOptions = new target.ManualOptions()
+ {
+ CommonName = string.IsNullOrEmpty(legacy.Binding.CommonName) ? legacy.Binding.Host : legacy.Binding.CommonName,
+ AlternativeNames = legacy.Binding.AlternativeNames
+ };
+ break;
+ case "iisbinding":
+ ret.TargetPluginOptions = new target.IISBindingOptions()
+ {
+ Host = legacy.Binding.Host,
+ SiteId = (long)(legacy.Binding.TargetSiteId ?? legacy.Binding.SiteId)
+ };
+ break;
+ }
+ }
+
+ public void ConvertValidation(LegacyScheduledRenewal legacy, Renewal ret)
+ {
+ // Configure validation
+ if (legacy.Binding.ValidationPluginName == null)
+ {
+ legacy.Binding.ValidationPluginName = "http-01.filesystem";
+ }
+ var plugin = legacy.Binding.ValidationPluginName.Split('.')[0];
+ switch (legacy.Binding.ValidationPluginName.ToLower())
+ {
+ case "dns-01.script":
+ case "dns-01.dnsscript":
+ ret.ValidationPluginOptions = new dns.ScriptOptions()
+ {
+ CreateScript = legacy.Binding.DnsScriptOptions.CreateScript,
+ CreateScriptArguments = "{Identifier} {RecordName} {Token}",
+ DeleteScript = legacy.Binding.DnsScriptOptions.DeleteScript,
+ DeleteScriptArguments = "{Identifier} {RecordName}"
+ };
+ break;
+ case "dns-01.azure":
+ ret.ValidationPluginOptions = new CompatibleAzureOptions()
+ {
+ ClientId = legacy.Binding.DnsAzureOptions.ClientId,
+ ResourceGroupName = legacy.Binding.DnsAzureOptions.ResourceGroupName,
+ Secret = new ProtectedString(legacy.Binding.DnsAzureOptions.Secret),
+ SubscriptionId = legacy.Binding.DnsAzureOptions.SubscriptionId,
+ TenantId = legacy.Binding.DnsAzureOptions.TenantId
+ };
+ break;
+ case "http-01.ftp":
+ ret.ValidationPluginOptions = new http.FtpOptions()
+ {
+ CopyWebConfig = legacy.Binding.IIS == true,
+ Path = legacy.Binding.WebRootPath,
+ Credential = new NetworkCredentialOptions(legacy.Binding.HttpFtpOptions.UserName, legacy.Binding.HttpFtpOptions.Password)
+ };
+ break;
+ case "http-01.sftp":
+ ret.ValidationPluginOptions = new http.SftpOptions()
+ {
+ CopyWebConfig = legacy.Binding.IIS == true,
+ Path = legacy.Binding.WebRootPath,
+ Credential = new NetworkCredentialOptions(legacy.Binding.HttpFtpOptions.UserName, legacy.Binding.HttpFtpOptions.Password)
+ };
+ break;
+ case "http-01.webdav":
+ ret.ValidationPluginOptions = new http.WebDavOptions()
+ {
+ CopyWebConfig = legacy.Binding.IIS == true,
+ Path = legacy.Binding.WebRootPath,
+ Credential = new NetworkCredentialOptions(legacy.Binding.HttpWebDavOptions.UserName, legacy.Binding.HttpWebDavOptions.Password)
+ };
+ break;
+ case "tls-sni-01.iis":
+ _log.Warning("TLS-SNI-01 validation was removed from ACMEv2, changing to SelfHosting. Note that this requires port 80 to be public rather than port 443.");
+ ret.ValidationPluginOptions = new http.SelfHostingOptions();
+ break;
+ case "http-01.iis":
+ case "http-01.selfhosting":
+ ret.ValidationPluginOptions = new http.SelfHostingOptions()
+ {
+ Port = legacy.Binding.ValidationPort
+ };
+ break;
+ case "http-01.filesystem":
+ default:
+ ret.ValidationPluginOptions = new http.FileSystemOptions()
+ {
+ CopyWebConfig = legacy.Binding.IIS == true,
+ Path = legacy.Binding.WebRootPath,
+ SiteId = legacy.Binding.ValidationSiteId
+ };
+ break;
+ }
+ }
+
+ public void ConvertStore(LegacyScheduledRenewal legacy, Renewal ret)
+ {
+ // Configure store
+ if (!string.IsNullOrEmpty(legacy.CentralSslStore))
+ {
+ ret.StorePluginOptions.Add(new store.CentralSslOptions()
+ {
+ Path = legacy.CentralSslStore,
+ KeepExisting = legacy.KeepExisting == true
+ });
+ }
+ else
+ {
+ ret.StorePluginOptions.Add(new store.CertificateStoreOptions()
+ {
+ StoreName = legacy.CertificateStore,
+ KeepExisting = legacy.KeepExisting == true
+ });
+ }
+ }
+
+ public void ConvertInstallation(LegacyScheduledRenewal legacy, Renewal ret)
+ {
+ if (legacy.InstallationPluginNames == null)
+ {
+ legacy.InstallationPluginNames = new List<string>();
+ // Based on chosen target
+ if (legacy.Binding.TargetPluginName == "IISSite" ||
+ legacy.Binding.TargetPluginName == "IISSites" ||
+ legacy.Binding.TargetPluginName == "IISBinding")
+ {
+ legacy.InstallationPluginNames.Add("IIS");
+ }
+
+ // Based on command line
+ if (!string.IsNullOrEmpty(legacy.Script) || !string.IsNullOrEmpty(legacy.ScriptParameters))
+ {
+ legacy.InstallationPluginNames.Add("Manual");
+ }
+
+ // Cannot find anything, then it's no installation steps
+ if (legacy.InstallationPluginNames.Count == 0)
+ {
+ legacy.InstallationPluginNames.Add("None");
+ }
+ }
+ foreach (var legacyName in legacy.InstallationPluginNames)
+ {
+ switch (legacyName.ToLower())
+ {
+ case "iis":
+ ret.InstallationPluginOptions.Add(new install.IISWebOptions()
+ {
+ SiteId = legacy.Binding.InstallationSiteId,
+ NewBindingIp = legacy.Binding.SSLIPAddress,
+ NewBindingPort = legacy.Binding.SSLPort
+ });
+ break;
+ case "iisftp":
+ ret.InstallationPluginOptions.Add(new install.IISFtpOptions() {
+ SiteId = legacy.Binding.FtpSiteId.Value
+ });
+ break;
+ case "manual":
+ ret.InstallationPluginOptions.Add(new install.ScriptOptions() {
+ Script = legacy.Script,
+ ScriptParameters = legacy.ScriptParameters
+ });
+ break;
+ case "none":
+ ret.InstallationPluginOptions.Add(new NullInstallationOptions());
+ break;
+ }
+ }
+ }
+ }
+}
diff --git a/src/main.lib/Services/Legacy/RegistryLegacyRenewalService.cs b/src/main.lib/Services/Legacy/RegistryLegacyRenewalService.cs
new file mode 100644
index 0000000..a1bea2e
--- /dev/null
+++ b/src/main.lib/Services/Legacy/RegistryLegacyRenewalService.cs
@@ -0,0 +1,40 @@
+using Microsoft.Win32;
+using PKISharp.WACS.Configuration;
+using System.Linq;
+
+namespace PKISharp.WACS.Services.Legacy
+{
+ internal class RegistryLegacyRenewalService : BaseLegacyRenewalService
+ {
+ private const string _renewalsKey = "Renewals";
+ private readonly string _hive;
+ private readonly string _clientName;
+ private readonly string _baseUri;
+
+ public RegistryLegacyRenewalService(
+ ILogService log,
+ MainArguments main,
+ ISettingsService settings) :
+ base(settings, log)
+ {
+ _baseUri = main.BaseUri;
+ _clientName = settings.ClientNames.Last();
+ _hive = $"HKEY_CURRENT_USER{Key}";
+ if (RenewalsRaw == null)
+ {
+ _hive = $"HKEY_LOCAL_MACHINE{Key}";
+ }
+ _log.Debug("Read legacy renewals from registry {_registryHome}", _hive);
+ }
+
+ private string Key => $"\\Software\\{_clientName}\\{_baseUri}";
+
+ internal override string[] RenewalsRaw
+ {
+ get
+ {
+ return Registry.GetValue(_hive, _renewalsKey, null) as string[];
+ }
+ }
+ }
+}
diff --git a/src/main.lib/Services/PluginService.cs b/src/main.lib/Services/PluginService.cs
index dd1840d..fadfea8 100644
--- a/src/main.lib/Services/PluginService.cs
+++ b/src/main.lib/Services/PluginService.cs
@@ -146,11 +146,25 @@ namespace PKISharp.WACS.Services
private List<Type> GetTypes()
{
var ret = new List<Type>();
- foreach (var ass in AppDomain.CurrentDomain.GetAssemblies())
+ foreach (var assembly in AppDomain.CurrentDomain.GetAssemblies())
{
- if (ass.FullName.Contains("wacs"))
+ if (assembly.FullName.Contains("wacs"))
{
- ret.AddRange(ass.GetTypes());
+ IEnumerable<Type> types = new List<Type>();
+ try
+ {
+ types = assembly.GetTypes();
+ }
+ catch (ReflectionTypeLoadException rex)
+ {
+ types = rex.Types;
+ _log.Error("Error loading some types from assembly {assembly}: {@ex}", assembly.FullName, rex);
+ }
+ catch (Exception ex)
+ {
+ _log.Error("Error loading any types from assembly {assembly}: {@ex}", assembly.FullName, ex);
+ }
+ ret.AddRange(types);
}
}
diff --git a/src/main.lib/wacs.lib.csproj b/src/main.lib/wacs.lib.csproj
index 4a7882c..ffd6f46 100644
--- a/src/main.lib/wacs.lib.csproj
+++ b/src/main.lib/wacs.lib.csproj
@@ -19,8 +19,13 @@
<PackageReference Include="Serilog.Sinks.EventLog" Version="3.1.0" />
<PackageReference Include="Serilog.Sinks.File" Version="4.0.0" />
<PackageReference Include="SSH.NET" Version="2016.1.0" />
+ <PackageReference Include="System.Security.Cryptography.Algorithms" Version="4.3.1" />
+ <PackageReference Include="System.Security.Cryptography.Encoding" Version="4.3.0" />
+ <PackageReference Include="System.Security.Cryptography.Primitives" Version="4.3.0" />
<PackageReference Include="System.Security.Cryptography.ProtectedData" Version="4.5.0" />
+ <PackageReference Include="System.Security.Cryptography.X509Certificates" Version="4.3.2" />
<PackageReference Include="TaskScheduler" Version="2.8.15" />
+ <PackageReference Include="WebDav.Client" Version="2.3.1" />
</ItemGroup>
<ItemGroup>
diff --git a/src/main/App.config b/src/main/App.config
index b598a86..5995ce9 100644
--- a/src/main/App.config
+++ b/src/main/App.config
@@ -9,7 +9,7 @@
<add key="ClientSettingsProvider.ServiceUri" value="" />
</appSettings>
<startup>
- <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" />
+ <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
</startup>
<applicationSettings>
<PKISharp.WACS.Properties.Settings configSource="settings.config" />
@@ -92,14 +92,6 @@
<assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.1.1" newVersion="4.0.1.1" />
</dependentAssembly>
- <dependentAssembly>
- <assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
- <bindingRedirect oldVersion="0.0.0.0-4.2.0.0" newVersion="4.2.0.0" />
- </dependentAssembly>
- <dependentAssembly>
- <assemblyIdentity name="System.Diagnostics.TraceSource" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
- <bindingRedirect oldVersion="0.0.0.0-4.0.2.0" newVersion="4.0.2.0" />
- </dependentAssembly>
</assemblyBinding>
</runtime>
<system.web>
diff --git a/src/main/Clients/WebDavClient.cs b/src/main/Clients/WebDavClient.cs
deleted file mode 100644
index ad5c0d5..0000000
--- a/src/main/Clients/WebDavClient.cs
+++ /dev/null
@@ -1,91 +0,0 @@
-using PKISharp.WACS.Configuration;
-using PKISharp.WACS.Services;
-using System;
-using System.IO;
-using System.Linq;
-using System.Net;
-
-namespace PKISharp.WACS.Client
-{
- internal class WebDavClient
- {
- private NetworkCredential _credential;
- private readonly ILogService _log;
-
- public WebDavClient(NetworkCredentialOptions options, ILogService log)
- {
- _log = log;
- _credential = options.GetCredential();
- }
-
- private WebDAVClient.Client GetClient(string webDavPath)
- {
- var webDavUri = new Uri(webDavPath);
- var scheme = webDavUri.Scheme;
- var webDavConnection = scheme + "://" + webDavUri.Host + ":" + webDavUri.Port;
- var client = new WebDAVClient.Client(_credential)
- {
- Server = webDavConnection,
- BasePath = webDavUri.AbsolutePath
- };
- return client;
- }
-
- public void Upload(string webDavPath, string content)
- {
- try
- {
- var stream = new MemoryStream();
- using (var writer = new StreamWriter(stream))
- {
- writer.Write(content);
- writer.Flush();
- stream.Position = 0;
- var pathLastSlash = webDavPath.LastIndexOf("/", StringComparison.Ordinal) + 1;
- var file = webDavPath.Substring(pathLastSlash);
- var path = webDavPath.Remove(pathLastSlash);
- var client = GetClient(path);
- var fileUploaded = client.Upload("/", stream, file).Result;
- _log.Verbose("Upload status {StatusDescription}", fileUploaded);
- }
- }
- catch (Exception ex)
- {
- _log.Verbose("WebDav error {@ex}", ex);
- _log.Warning("Error uploading file {webDavPath} {Message}", webDavPath, ex.Message);
- }
-
- }
-
- public async void Delete(string webDavPath)
- {
- var client = GetClient(webDavPath);
- try
- {
- await client.DeleteFile(webDavPath);
- }
- catch (Exception ex)
- {
- _log.Verbose("WebDav error {@ex}", ex);
- _log.Warning("Error deleting file/folder {webDavPath} {Message}", webDavPath, ex.Message);
- }
- }
-
- public string GetFiles(string webDavPath)
- {
- try
- {
- var client = GetClient(webDavPath);
- var folderFiles = client.List().Result;
- var names = string.Join(",", folderFiles.Select(x => x.DisplayName.Trim()).ToArray());
- _log.Verbose("Files in path {webDavPath}: {@names}", webDavPath, names);
- return names;
- }
- catch (Exception ex)
- {
- _log.Verbose("WebDav error {@ex}", ex);
- return string.Empty;
- }
- }
- }
-} \ No newline at end of file
diff --git a/src/main/Services/Legacy/BaseLegacyRenewalService.cs b/src/main/Services/Legacy/BaseLegacyRenewalService.cs
index 9405bf1..bcfab23 100644
--- a/src/main/Services/Legacy/BaseLegacyRenewalService.cs
+++ b/src/main/Services/Legacy/BaseLegacyRenewalService.cs
@@ -16,7 +16,6 @@ namespace PKISharp.WACS.Services.Legacy
public BaseLegacyRenewalService(
ISettingsService settings,
- MainArguments main,
ILogService log)
{
_log = log;
diff --git a/src/main/Services/Legacy/FileLegacyRenewalService.cs b/src/main/Services/Legacy/FileLegacyRenewalService.cs
index 228032d..c753a80 100644
--- a/src/main/Services/Legacy/FileLegacyRenewalService.cs
+++ b/src/main/Services/Legacy/FileLegacyRenewalService.cs
@@ -9,8 +9,7 @@ namespace PKISharp.WACS.Services.Legacy
public FileLegacyRenewalService(
ILogService log,
- MainArguments main,
- ISettingsService settings) : base(settings, main, log)
+ ISettingsService settings) : base(settings, log)
{ }
private string FileName => Path.Combine(_configPath, _renewalsKey);
diff --git a/src/main/Services/Legacy/RegistryLegacyRenewalService.cs b/src/main/Services/Legacy/RegistryLegacyRenewalService.cs
index e617b29..a1bea2e 100644
--- a/src/main/Services/Legacy/RegistryLegacyRenewalService.cs
+++ b/src/main/Services/Legacy/RegistryLegacyRenewalService.cs
@@ -14,8 +14,8 @@ namespace PKISharp.WACS.Services.Legacy
public RegistryLegacyRenewalService(
ILogService log,
MainArguments main,
- ISettingsService settings,
- string hive) : base(settings, main, log)
+ ISettingsService settings) :
+ base(settings, log)
{
_baseUri = main.BaseUri;
_clientName = settings.ClientNames.Last();
diff --git a/src/main/Services/SettingsService.cs b/src/main/Services/SettingsService.cs
index 08d2e7f..360a10b 100644
--- a/src/main/Services/SettingsService.cs
+++ b/src/main/Services/SettingsService.cs
@@ -56,6 +56,10 @@ namespace PKISharp.WACS
{
get
{
+ if (_arguments.MainArguments == null)
+ {
+ return DefaultBaseUri;
+ }
if (_arguments.MainArguments.Test)
{
return _arguments.MainArguments.BaseUri ?? DefaultBaseUriTest;
@@ -247,12 +251,9 @@ namespace PKISharp.WACS
}
// This only happens when invalid options are provided
- if (arguments != null)
- {
- ConfigPath = Path.Combine(configRoot, BaseUri.CleanBaseUri());
- _log.Debug("Config folder: {_configPath}", ConfigPath);
- Directory.CreateDirectory(ConfigPath);
- }
+ ConfigPath = Path.Combine(configRoot, BaseUri.CleanBaseUri());
+ _log.Debug("Config folder: {_configPath}", ConfigPath);
+ Directory.CreateDirectory(ConfigPath);
}
/// <summary>
diff --git a/src/main/packages.config b/src/main/packages.config
index a1f5889..5725336 100644
--- a/src/main/packages.config
+++ b/src/main/packages.config
@@ -1,92 +1,92 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
- <package id="ACMESharpCore" version="2.0.1.105" targetFramework="net461" />
- <package id="Autofac" version="4.9.3" targetFramework="net461" />
- <package id="Costura.Fody" version="4.0.0" targetFramework="net461" developmentDependency="true" />
- <package id="DnsClient" version="1.2.0" targetFramework="net461" />
- <package id="Fody" version="5.1.1" targetFramework="net461" developmentDependency="true" />
- <package id="log4net" version="2.0.8" targetFramework="net461" />
- <package id="Microsoft.Bcl" version="1.1.10" targetFramework="net461" />
- <package id="Microsoft.Bcl.Build" version="1.0.21" targetFramework="net461" />
- <package id="Microsoft.Extensions.Configuration" version="2.2.0" targetFramework="net461" />
- <package id="Microsoft.Extensions.Configuration.Abstractions" version="2.2.0" targetFramework="net461" />
- <package id="Microsoft.Extensions.Configuration.Binder" version="2.2.4" targetFramework="net461" />
- <package id="Microsoft.Extensions.DependencyInjection.Abstractions" version="2.2.0" targetFramework="net461" />
- <package id="Microsoft.Extensions.Logging" version="2.2.0" targetFramework="net461" />
- <package id="Microsoft.Extensions.Logging.Abstractions" version="2.2.0" targetFramework="net461" />
- <package id="Microsoft.Extensions.Options" version="2.2.0" targetFramework="net461" />
- <package id="Microsoft.Extensions.Primitives" version="2.2.0" targetFramework="net461" />
- <package id="Microsoft.Net.Http" version="2.2.29" targetFramework="net461" />
- <package id="Microsoft.NETCore.Platforms" version="2.2.2" targetFramework="net461" />
- <package id="Microsoft.Web.Administration" version="11.1.0" targetFramework="net461" />
- <package id="Microsoft.Win32.Primitives" version="4.3.0" targetFramework="net461" />
- <package id="Microsoft.Win32.Registry" version="4.5.0" targetFramework="net461" />
- <package id="Nager.PublicSuffix" version="1.3.1" targetFramework="net461" />
- <package id="NETStandard.Library" version="2.0.3" targetFramework="net461" />
- <package id="Newtonsoft.Json" version="12.0.2" targetFramework="net461" />
- <package id="Portable.BouncyCastle" version="1.8.5" targetFramework="net461" />
- <package id="Serilog" version="2.8.0" targetFramework="net461" />
- <package id="Serilog.Settings.AppSettings" version="2.2.2" targetFramework="net461" />
- <package id="Serilog.Sinks.Console" version="3.1.1" targetFramework="net461" />
- <package id="Serilog.Sinks.EventLog" version="3.1.0" targetFramework="net461" />
- <package id="Serilog.Sinks.File" version="4.0.0" targetFramework="net461" />
- <package id="SSH.NET" version="2016.1.0" targetFramework="net461" />
- <package id="System.AppContext" version="4.3.0" targetFramework="net461" />
- <package id="System.Buffers" version="4.5.0" targetFramework="net461" />
- <package id="System.Collections" version="4.3.0" targetFramework="net461" />
- <package id="System.Collections.Concurrent" version="4.3.0" targetFramework="net461" />
- <package id="System.ComponentModel.Annotations" version="4.5.0" targetFramework="net461" />
- <package id="System.Console" version="4.3.1" targetFramework="net461" />
- <package id="System.Diagnostics.Debug" version="4.3.0" targetFramework="net461" />
- <package id="System.Diagnostics.EventLog" version="4.5.0" targetFramework="net461" />
- <package id="System.Diagnostics.Tools" version="4.3.0" targetFramework="net461" />
- <package id="System.Diagnostics.TraceSource" version="4.3.0" targetFramework="net461" />
- <package id="System.Diagnostics.Tracing" version="4.3.0" targetFramework="net461" />
- <package id="System.Globalization" version="4.3.0" targetFramework="net461" />
- <package id="System.Globalization.Calendars" version="4.3.0" targetFramework="net461" />
- <package id="System.IO" version="4.3.0" targetFramework="net461" />
- <package id="System.IO.Compression" version="4.3.0" targetFramework="net461" />
- <package id="System.IO.Compression.ZipFile" version="4.3.0" targetFramework="net461" />
- <package id="System.IO.FileSystem" version="4.3.0" targetFramework="net461" />
- <package id="System.IO.FileSystem.Primitives" version="4.3.0" targetFramework="net461" />
- <package id="System.Linq" version="4.3.0" targetFramework="net461" />
- <package id="System.Linq.Expressions" version="4.3.0" targetFramework="net461" />
- <package id="System.Memory" version="4.5.3" targetFramework="net461" />
- <package id="System.Net.Http" version="4.3.4" targetFramework="net461" />
- <package id="System.Net.Primitives" version="4.3.1" targetFramework="net461" />
- <package id="System.Net.Sockets" version="4.3.0" targetFramework="net461" />
- <package id="System.Numerics.Vectors" version="4.5.0" targetFramework="net461" />
- <package id="System.ObjectModel" version="4.3.0" targetFramework="net461" />
- <package id="System.Reflection" version="4.3.0" targetFramework="net461" />
- <package id="System.Reflection.Extensions" version="4.3.0" targetFramework="net461" />
- <package id="System.Reflection.Primitives" version="4.3.0" targetFramework="net461" />
- <package id="System.Reflection.TypeExtensions" version="4.5.1" targetFramework="net461" />
- <package id="System.Resources.ResourceManager" version="4.3.0" targetFramework="net461" />
- <package id="System.Runtime" version="4.3.1" targetFramework="net461" />
- <package id="System.Runtime.CompilerServices.Unsafe" version="4.5.2" targetFramework="net461" />
- <package id="System.Runtime.Extensions" version="4.3.1" targetFramework="net461" />
- <package id="System.Runtime.Handles" version="4.3.0" targetFramework="net461" />
- <package id="System.Runtime.InteropServices" version="4.3.0" targetFramework="net461" />
- <package id="System.Runtime.InteropServices.RuntimeInformation" version="4.3.0" targetFramework="net461" />
- <package id="System.Runtime.Numerics" version="4.3.0" targetFramework="net461" />
- <package id="System.Security.AccessControl" version="4.5.0" targetFramework="net461" />
- <package id="System.Security.Claims" version="4.3.0" targetFramework="net461" />
- <package id="System.Security.Cryptography.Algorithms" version="4.3.1" targetFramework="net461" />
- <package id="System.Security.Cryptography.Encoding" version="4.3.0" targetFramework="net461" />
- <package id="System.Security.Cryptography.Primitives" version="4.3.0" targetFramework="net461" />
- <package id="System.Security.Cryptography.ProtectedData" version="4.5.0" targetFramework="net461" />
- <package id="System.Security.Cryptography.X509Certificates" version="4.3.2" targetFramework="net461" />
- <package id="System.Security.Permissions" version="4.5.0" targetFramework="net461" />
- <package id="System.Security.Principal.Windows" version="4.5.1" targetFramework="net461" />
- <package id="System.ServiceProcess.ServiceController" version="4.5.0" targetFramework="net461" />
- <package id="System.Text.Encoding" version="4.3.0" targetFramework="net461" />
- <package id="System.Text.Encoding.Extensions" version="4.3.0" targetFramework="net461" />
- <package id="System.Text.RegularExpressions" version="4.3.1" targetFramework="net461" />
- <package id="System.Threading" version="4.3.0" targetFramework="net461" />
- <package id="System.Threading.Tasks" version="4.3.0" targetFramework="net461" />
- <package id="System.Threading.Timer" version="4.3.0" targetFramework="net461" />
- <package id="System.Xml.ReaderWriter" version="4.3.1" targetFramework="net461" />
- <package id="System.Xml.XDocument" version="4.3.0" targetFramework="net461" />
- <package id="TaskScheduler" version="2.8.15" targetFramework="net461" />
- <package id="WebDAVClient" version="1.1.4" targetFramework="net461" />
+ <package id="ACMESharpCore" version="2.0.1.105" targetFramework="net472" />
+ <package id="Autofac" version="4.9.3" targetFramework="net472" />
+ <package id="Costura.Fody" version="4.1.0" targetFramework="net472" developmentDependency="true" />
+ <package id="DnsClient" version="1.2.0" targetFramework="net472" />
+ <package id="Fody" version="6.0.0" targetFramework="net472" developmentDependency="true" />
+ <package id="log4net" version="2.0.8" targetFramework="net472" />
+ <package id="Microsoft.Bcl" version="1.1.10" targetFramework="net472" />
+ <package id="Microsoft.Bcl.Build" version="1.0.21" targetFramework="net472" />
+ <package id="Microsoft.Extensions.Configuration" version="2.2.0" targetFramework="net472" />
+ <package id="Microsoft.Extensions.Configuration.Abstractions" version="2.2.0" targetFramework="net472" />
+ <package id="Microsoft.Extensions.Configuration.Binder" version="2.2.4" targetFramework="net472" />
+ <package id="Microsoft.Extensions.DependencyInjection.Abstractions" version="2.2.0" targetFramework="net472" />
+ <package id="Microsoft.Extensions.Logging" version="2.2.0" targetFramework="net472" />
+ <package id="Microsoft.Extensions.Logging.Abstractions" version="2.2.0" targetFramework="net472" />
+ <package id="Microsoft.Extensions.Options" version="2.2.0" targetFramework="net472" />
+ <package id="Microsoft.Extensions.Primitives" version="2.2.0" targetFramework="net472" />
+ <package id="Microsoft.Net.Http" version="2.2.29" targetFramework="net472" />
+ <package id="Microsoft.NETCore.Platforms" version="2.2.2" targetFramework="net472" />
+ <package id="Microsoft.Web.Administration" version="11.1.0" targetFramework="net472" />
+ <package id="Microsoft.Win32.Primitives" version="4.3.0" targetFramework="net472" />
+ <package id="Microsoft.Win32.Registry" version="4.5.0" targetFramework="net472" />
+ <package id="Nager.PublicSuffix" version="1.3.1" targetFramework="net472" />
+ <package id="NETStandard.Library" version="2.0.3" targetFramework="net472" />
+ <package id="Newtonsoft.Json" version="12.0.2" targetFramework="net472" />
+ <package id="Portable.BouncyCastle" version="1.8.5" targetFramework="net472" />
+ <package id="Serilog" version="2.8.0" targetFramework="net472" />
+ <package id="Serilog.Settings.AppSettings" version="2.2.2" targetFramework="net472" />
+ <package id="Serilog.Sinks.Console" version="3.1.1" targetFramework="net472" />
+ <package id="Serilog.Sinks.EventLog" version="3.1.0" targetFramework="net472" />
+ <package id="Serilog.Sinks.File" version="4.0.0" targetFramework="net472" />
+ <package id="SSH.NET" version="2016.1.0" targetFramework="net472" />
+ <package id="System.AppContext" version="4.3.0" targetFramework="net472" />
+ <package id="System.Buffers" version="4.5.0" targetFramework="net472" />
+ <package id="System.Collections" version="4.3.0" targetFramework="net472" />
+ <package id="System.Collections.Concurrent" version="4.3.0" targetFramework="net472" />
+ <package id="System.ComponentModel.Annotations" version="4.5.0" targetFramework="net472" />
+ <package id="System.Console" version="4.3.1" targetFramework="net472" />
+ <package id="System.Diagnostics.Debug" version="4.3.0" targetFramework="net472" />
+ <package id="System.Diagnostics.EventLog" version="4.5.0" targetFramework="net472" />
+ <package id="System.Diagnostics.Tools" version="4.3.0" targetFramework="net472" />
+ <package id="System.Diagnostics.TraceSource" version="4.3.0" targetFramework="net472" />
+ <package id="System.Diagnostics.Tracing" version="4.3.0" targetFramework="net472" />
+ <package id="System.Globalization" version="4.3.0" targetFramework="net472" />
+ <package id="System.Globalization.Calendars" version="4.3.0" targetFramework="net472" />
+ <package id="System.IO" version="4.3.0" targetFramework="net472" />
+ <package id="System.IO.Compression" version="4.3.0" targetFramework="net472" />
+ <package id="System.IO.Compression.ZipFile" version="4.3.0" targetFramework="net472" />
+ <package id="System.IO.FileSystem" version="4.3.0" targetFramework="net472" />
+ <package id="System.IO.FileSystem.Primitives" version="4.3.0" targetFramework="net472" />
+ <package id="System.Linq" version="4.3.0" targetFramework="net472" />
+ <package id="System.Linq.Expressions" version="4.3.0" targetFramework="net472" />
+ <package id="System.Memory" version="4.5.3" targetFramework="net472" />
+ <package id="System.Net.Http" version="4.3.4" targetFramework="net472" />
+ <package id="System.Net.Primitives" version="4.3.1" targetFramework="net472" />
+ <package id="System.Net.Sockets" version="4.3.0" targetFramework="net472" />
+ <package id="System.Numerics.Vectors" version="4.5.0" targetFramework="net472" />
+ <package id="System.ObjectModel" version="4.3.0" targetFramework="net472" />
+ <package id="System.Reflection" version="4.3.0" targetFramework="net472" />
+ <package id="System.Reflection.Extensions" version="4.3.0" targetFramework="net472" />
+ <package id="System.Reflection.Primitives" version="4.3.0" targetFramework="net472" />
+ <package id="System.Reflection.TypeExtensions" version="4.5.1" targetFramework="net472" />
+ <package id="System.Resources.ResourceManager" version="4.3.0" targetFramework="net472" />
+ <package id="System.Runtime" version="4.3.1" targetFramework="net472" />
+ <package id="System.Runtime.CompilerServices.Unsafe" version="4.5.2" targetFramework="net472" />
+ <package id="System.Runtime.Extensions" version="4.3.1" targetFramework="net472" />
+ <package id="System.Runtime.Handles" version="4.3.0" targetFramework="net472" />
+ <package id="System.Runtime.InteropServices" version="4.3.0" targetFramework="net472" />
+ <package id="System.Runtime.InteropServices.RuntimeInformation" version="4.3.0" targetFramework="net472" />
+ <package id="System.Runtime.Numerics" version="4.3.0" targetFramework="net472" />
+ <package id="System.Security.AccessControl" version="4.5.0" targetFramework="net472" />
+ <package id="System.Security.Claims" version="4.3.0" targetFramework="net472" />
+ <package id="System.Security.Cryptography.Algorithms" version="4.3.1" targetFramework="net472" />
+ <package id="System.Security.Cryptography.Encoding" version="4.3.0" targetFramework="net472" />
+ <package id="System.Security.Cryptography.Primitives" version="4.3.0" targetFramework="net472" />
+ <package id="System.Security.Cryptography.ProtectedData" version="4.5.0" targetFramework="net472" />
+ <package id="System.Security.Cryptography.X509Certificates" version="4.3.2" targetFramework="net472" />
+ <package id="System.Security.Permissions" version="4.5.0" targetFramework="net472" />
+ <package id="System.Security.Principal.Windows" version="4.5.1" targetFramework="net472" />
+ <package id="System.ServiceProcess.ServiceController" version="4.5.0" targetFramework="net472" />
+ <package id="System.Text.Encoding" version="4.3.0" targetFramework="net472" />
+ <package id="System.Text.Encoding.Extensions" version="4.3.0" targetFramework="net472" />
+ <package id="System.Text.RegularExpressions" version="4.3.1" targetFramework="net472" />
+ <package id="System.Threading" version="4.3.0" targetFramework="net472" />
+ <package id="System.Threading.Tasks" version="4.3.0" targetFramework="net472" />
+ <package id="System.Threading.Timer" version="4.3.0" targetFramework="net472" />
+ <package id="System.Xml.ReaderWriter" version="4.3.1" targetFramework="net472" />
+ <package id="System.Xml.XDocument" version="4.3.0" targetFramework="net472" />
+ <package id="TaskScheduler" version="2.8.15" targetFramework="net472" />
+ <package id="WebDav.Client" version="2.3.1" targetFramework="net472" />
</packages> \ No newline at end of file
diff --git a/src/main/wacs.csproj b/src/main/wacs.csproj
index ccd0ddd..66cd074 100644
--- a/src/main/wacs.csproj
+++ b/src/main/wacs.csproj
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <Import Project="..\packages\Costura.Fody.4.0.0\build\Costura.Fody.props" Condition="Exists('..\packages\Costura.Fody.4.0.0\build\Costura.Fody.props')" />
+ <Import Project="..\packages\Costura.Fody.4.1.0\build\Costura.Fody.props" Condition="Exists('..\packages\Costura.Fody.4.1.0\build\Costura.Fody.props')" />
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -11,7 +11,7 @@
<DependsOnNETStandard>true</DependsOnNETStandard>
<RootNamespace>PKISharp.WACS</RootNamespace>
<AssemblyName>wacs</AssemblyName>
- <TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
+ <TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<NuGetPackageImportStamp>
</NuGetPackageImportStamp>
@@ -104,11 +104,11 @@
<Reference Include="BouncyCastle.Crypto, Version=1.8.5.0, Culture=neutral, PublicKeyToken=0e99375e54769942, processorArchitecture=MSIL">
<HintPath>..\packages\Portable.BouncyCastle.1.8.5\lib\net40\BouncyCastle.Crypto.dll</HintPath>
</Reference>
- <Reference Include="Costura, Version=4.0.0.0, Culture=neutral, PublicKeyToken=9919ef960d84173d, processorArchitecture=MSIL">
- <HintPath>..\packages\Costura.Fody.4.0.0\lib\net40\Costura.dll</HintPath>
+ <Reference Include="Costura, Version=4.1.0.0, Culture=neutral, PublicKeyToken=9919ef960d84173d, processorArchitecture=MSIL">
+ <HintPath>..\packages\Costura.Fody.4.1.0\lib\net40\Costura.dll</HintPath>
</Reference>
<Reference Include="DnsClient, Version=1.2.0.0, Culture=neutral, PublicKeyToken=4574bb5573c51424, processorArchitecture=MSIL">
- <HintPath>..\packages\DnsClient.1.2.0\lib\net45\DnsClient.dll</HintPath>
+ <HintPath>..\packages\DnsClient.1.2.0\lib\net471\DnsClient.dll</HintPath>
</Reference>
<Reference Include="log4net, Version=2.0.8.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a, processorArchitecture=MSIL">
<HintPath>..\packages\log4net.2.0.8\lib\net45-full\log4net.dll</HintPath>
@@ -176,8 +176,8 @@
<HintPath>..\packages\Serilog.Sinks.File.4.0.0\lib\net45\Serilog.Sinks.File.dll</HintPath>
</Reference>
<Reference Include="System" />
- <Reference Include="System.AppContext, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
- <HintPath>..\packages\System.AppContext.4.3.0\lib\net46\System.AppContext.dll</HintPath>
+ <Reference Include="System.AppContext, Version=4.1.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
+ <HintPath>..\packages\System.AppContext.4.3.0\lib\net463\System.AppContext.dll</HintPath>
<Private>True</Private>
<Private>True</Private>
</Reference>
@@ -205,12 +205,22 @@
<Private>True</Private>
<Private>True</Private>
</Reference>
+ <Reference Include="System.Diagnostics.Tracing, Version=4.1.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
+ <HintPath>..\packages\System.Diagnostics.Tracing.4.3.0\lib\net462\System.Diagnostics.Tracing.dll</HintPath>
+ <Private>True</Private>
+ <Private>True</Private>
+ </Reference>
<Reference Include="System.Drawing" />
<Reference Include="System.Globalization.Calendars, Version=4.0.2.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Globalization.Calendars.4.3.0\lib\net46\System.Globalization.Calendars.dll</HintPath>
<Private>True</Private>
<Private>True</Private>
</Reference>
+ <Reference Include="System.IO, Version=4.1.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
+ <HintPath>..\packages\System.IO.4.3.0\lib\net462\System.IO.dll</HintPath>
+ <Private>True</Private>
+ <Private>True</Private>
+ </Reference>
<Reference Include="System.IO.Compression, Version=4.1.2.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
<HintPath>..\packages\System.IO.Compression.4.3.0\lib\net46\System.IO.Compression.dll</HintPath>
<Private>True</Private>
@@ -232,6 +242,16 @@
<Private>True</Private>
<Private>True</Private>
</Reference>
+ <Reference Include="System.Linq, Version=4.1.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
+ <HintPath>..\packages\System.Linq.4.3.0\lib\net463\System.Linq.dll</HintPath>
+ <Private>True</Private>
+ <Private>True</Private>
+ </Reference>
+ <Reference Include="System.Linq.Expressions, Version=4.1.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
+ <HintPath>..\packages\System.Linq.Expressions.4.3.0\lib\net463\System.Linq.Expressions.dll</HintPath>
+ <Private>True</Private>
+ <Private>True</Private>
+ </Reference>
<Reference Include="System.Memory, Version=4.0.1.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Memory.4.5.3\lib\netstandard2.0\System.Memory.dll</HintPath>
</Reference>
@@ -257,12 +277,32 @@
<Reference Include="System.Numerics.Vectors, Version=4.1.4.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll</HintPath>
</Reference>
+ <Reference Include="System.Reflection, Version=4.1.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
+ <HintPath>..\packages\System.Reflection.4.3.0\lib\net462\System.Reflection.dll</HintPath>
+ <Private>True</Private>
+ <Private>True</Private>
+ </Reference>
<Reference Include="System.Reflection.TypeExtensions, Version=4.1.3.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Reflection.TypeExtensions.4.5.1\lib\net461\System.Reflection.TypeExtensions.dll</HintPath>
</Reference>
+ <Reference Include="System.Runtime, Version=4.1.1.1, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
+ <HintPath>..\packages\System.Runtime.4.3.1\lib\net462\System.Runtime.dll</HintPath>
+ <Private>True</Private>
+ <Private>True</Private>
+ </Reference>
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=4.0.4.1, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.4.5.2\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
</Reference>
+ <Reference Include="System.Runtime.Extensions, Version=4.1.1.1, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
+ <HintPath>..\packages\System.Runtime.Extensions.4.3.1\lib\net462\System.Runtime.Extensions.dll</HintPath>
+ <Private>True</Private>
+ <Private>True</Private>
+ </Reference>
+ <Reference Include="System.Runtime.InteropServices, Version=4.1.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
+ <HintPath>..\packages\System.Runtime.InteropServices.4.3.0\lib\net463\System.Runtime.InteropServices.dll</HintPath>
+ <Private>True</Private>
+ <Private>True</Private>
+ </Reference>
<Reference Include="System.Runtime.InteropServices.RuntimeInformation, Version=4.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Runtime.InteropServices.RuntimeInformation.4.3.0\lib\net45\System.Runtime.InteropServices.RuntimeInformation.dll</HintPath>
<Private>True</Private>
@@ -278,8 +318,8 @@
<Private>True</Private>
<Private>True</Private>
</Reference>
- <Reference Include="System.Security.Cryptography.Algorithms, Version=4.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
- <HintPath>..\packages\System.Security.Cryptography.Algorithms.4.3.1\lib\net461\System.Security.Cryptography.Algorithms.dll</HintPath>
+ <Reference Include="System.Security.Cryptography.Algorithms, Version=4.2.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
+ <HintPath>..\packages\System.Security.Cryptography.Algorithms.4.3.1\lib\net463\System.Security.Cryptography.Algorithms.dll</HintPath>
<Private>True</Private>
<Private>True</Private>
</Reference>
@@ -312,6 +352,11 @@
<Reference Include="System.ServiceProcess.ServiceController, Version=4.2.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.ServiceProcess.ServiceController.4.5.0\lib\net461\System.ServiceProcess.ServiceController.dll</HintPath>
</Reference>
+ <Reference Include="System.Text.RegularExpressions, Version=4.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
+ <HintPath>..\packages\System.Text.RegularExpressions.4.3.1\lib\net463\System.Text.RegularExpressions.dll</HintPath>
+ <Private>True</Private>
+ <Private>True</Private>
+ </Reference>
<Reference Include="System.Transactions" />
<Reference Include="System.Web.Extensions" />
<Reference Include="System.Xml.Linq" />
@@ -324,116 +369,14 @@
<Private>True</Private>
<Private>True</Private>
</Reference>
- <Reference Include="WebDAVClient, Version=1.1.4.0, Culture=neutral, processorArchitecture=MSIL">
- <HintPath>..\packages\WebDAVClient.1.1.4\lib\net45\WebDAVClient.dll</HintPath>
+ <Reference Include="WebDav.Client, Version=2.3.1.0, Culture=neutral, PublicKeyToken=daed9acc7deb9472, processorArchitecture=MSIL">
+ <HintPath>..\packages\WebDav.Client.2.3.1\lib\net45\WebDav.Client.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
- <Compile Include="Plugins\CsrPlugins\CsrArguments.cs" />
- <Compile Include="Plugins\CsrPlugins\CsrArgumentsProvider.cs" />
- <Compile Include="Plugins\CsrPlugins\CsrPlugin.cs" />
- <Compile Include="Plugins\CsrPlugins\Ec\Ec.cs" />
- <Compile Include="Plugins\CsrPlugins\Ec\EcOptions.cs" />
- <Compile Include="Plugins\CsrPlugins\Ec\EcOptionsFactory.cs" />
- <Compile Include="Plugins\CsrPlugins\Rsa\Rsa.cs" />
- <Compile Include="Plugins\CsrPlugins\Rsa\RsaOptions.cs" />
- <Compile Include="Plugins\CsrPlugins\Rsa\RsaOptionsFactory.cs" />
- <Compile Include="Plugins\InstallationPlugins\IISFtp\IISFtpArguments.cs" />
- <Compile Include="Plugins\InstallationPlugins\IISFtp\IISFtpArgumentsProvider.cs" />
- <Compile Include="Plugins\InstallationPlugins\IISWeb\IISWebArguments.cs" />
- <Compile Include="Plugins\InstallationPlugins\IISWeb\IISWebArgumentsProvider.cs" />
- <Compile Include="Plugins\InstallationPlugins\Script\ScriptArguments.cs" />
- <Compile Include="Plugins\InstallationPlugins\Script\ScriptArgumentsProvider.cs" />
- <Compile Include="Plugins\StorePlugins\PemFiles\PemFiles.cs" />
- <Compile Include="Plugins\StorePlugins\PemFiles\PemFilesArguments.cs" />
- <Compile Include="Plugins\StorePlugins\PemFiles\PemFilesArgumentsProvider.cs" />
- <Compile Include="Plugins\StorePlugins\PemFiles\PemFilesOptions.cs" />
- <Compile Include="Plugins\StorePlugins\PemFiles\PemFilesOptionsFactory.cs" />
- <Compile Include="Plugins\StorePlugins\CentralSsl\CentralSslArguments.cs" />
- <Compile Include="Plugins\StorePlugins\CentralSsl\CentralSslArgumentsProvider.cs" />
- <Compile Include="Plugins\StorePlugins\CertificateStore\CertificateStoreArguments.cs" />
- <Compile Include="Plugins\StorePlugins\CertificateStore\CertificateStoreArgumentsProvider.cs" />
- <Compile Include="Plugins\TargetPlugins\IISBinding\IISBindingArguments.cs" />
- <Compile Include="Plugins\TargetPlugins\IISBinding\IISBindingArgumentsProvider.cs" />
- <Compile Include="Plugins\TargetPlugins\IISSite\IISSiteArguments.cs" />
- <Compile Include="Plugins\TargetPlugins\IISSite\IISSiteArgumentsProvider.cs" />
- <Compile Include="Plugins\TargetPlugins\IISSite\IISSiteOptionsHelper.cs" />
- <Compile Include="Plugins\TargetPlugins\Manual\ManualArguments.cs" />
- <Compile Include="Plugins\TargetPlugins\Manual\ManualArgumentsProvider.cs" />
- <Compile Include="Plugins\ValidationPlugins\Dns\Acme\Acme.cs" />
- <Compile Include="Plugins\ValidationPlugins\Dns\Acme\AcmeArguments.cs" />
- <Compile Include="Plugins\ValidationPlugins\Dns\Acme\AcmeArgumentsProvider.cs" />
- <Compile Include="Plugins\ValidationPlugins\Dns\Acme\AcmeOptions.cs" />
- <Compile Include="Plugins\ValidationPlugins\Dns\Acme\AcmeOptionsFactory.cs" />
- <Compile Include="Plugins\ValidationPlugins\Dns\Manual\Manual.cs" />
- <Compile Include="Plugins\ValidationPlugins\Dns\Manual\ManualOptions.cs" />
- <Compile Include="Plugins\ValidationPlugins\Dns\Manual\ManualOptionsFactory.cs" />
- <Compile Include="Plugins\ValidationPlugins\Dns\Script\ScriptArguments.cs" />
- <Compile Include="Plugins\ValidationPlugins\Dns\Script\ScriptArgumentsProvider.cs" />
- <Compile Include="Plugins\ValidationPlugins\Http\FileSystem\FileSystemArguments.cs" />
- <Compile Include="Plugins\ValidationPlugins\Http\FileSystem\FileSystemArgumentsProvider.cs" />
- <Compile Include="Plugins\ValidationPlugins\Http\HttpValidationArguments.cs" />
- <Compile Include="Plugins\ValidationPlugins\Http\HttpValidationArgumentsProvider.cs" />
- <Compile Include="Plugins\ValidationPlugins\Http\SelfHosting\SelfHostingArguments.cs" />
- <Compile Include="Plugins\ValidationPlugins\Http\SelfHosting\SelfHostingArgumentsProvider.cs" />
<Compile Include="Services\AutofacBuilder.cs" />
- <Compile Include="Plugins\InstallationPlugins\IISFtp\IISFtpOptionsFactory.cs" />
- <Compile Include="Plugins\InstallationPlugins\IISFtp\IISFtpOptions.cs" />
- <Compile Include="Plugins\InstallationPlugins\IISWeb\IISWebOptionsFactory.cs" />
- <Compile Include="Plugins\InstallationPlugins\IISWeb\IISWebOptions.cs" />
- <Compile Include="Plugins\InstallationPlugins\Script\ScriptOptionsFactory.cs" />
- <Compile Include="Plugins\InstallationPlugins\Script\ScriptOptions.cs" />
- <Compile Include="Plugins\StorePlugins\CentralSsl\CentralSslOptionsFactory.cs" />
- <Compile Include="Plugins\StorePlugins\CentralSsl\CentralSslOptions.cs" />
- <Compile Include="Plugins\StorePlugins\CertificateStore\CertificateStoreOptionsFactory.cs" />
- <Compile Include="Plugins\StorePlugins\CertificateStore\CertificateStoreOptions.cs" />
- <Compile Include="Plugins\TargetPlugins\IISBinding\IISBindingOptions.cs" />
- <Compile Include="Plugins\TargetPlugins\IISBinding\IISBindingOptionsFactory.cs" />
- <Compile Include="Plugins\TargetPlugins\IISSite\IISSiteOptions.cs" />
- <Compile Include="Plugins\TargetPlugins\IISSite\IISSiteOptionsFactory.cs" />
- <Compile Include="Plugins\TargetPlugins\IISSites\IISSitesOptions.cs" />
- <Compile Include="Plugins\TargetPlugins\IISSites\IISSitesOptionsFactory.cs" />
- <Compile Include="Plugins\TargetPlugins\Manual\ManualOptions.cs" />
- <Compile Include="Plugins\TargetPlugins\Manual\ManualOptionsFactory.cs" />
- <Compile Include="Plugins\ValidationPlugins\Http\HttpValidationOptions.cs" />
- <Compile Include="Plugins\ValidationPlugins\Dns\Script\ScriptOptionsFactory.cs" />
- <Compile Include="Plugins\ValidationPlugins\Dns\Script\ScriptOptions.cs" />
- <Compile Include="Plugins\ValidationPlugins\Http\HttpValidationParameters.cs" />
- <Compile Include="Plugins\ValidationPlugins\Http\FileSystem\FileSystemOptionsFactory.cs" />
- <Compile Include="Plugins\ValidationPlugins\Http\FileSystem\FileSystemOptions.cs" />
- <Compile Include="Plugins\ValidationPlugins\Http\Ftp\FtpOptionsFactory.cs" />
- <Compile Include="Plugins\ValidationPlugins\Http\Ftp\FtpOptions.cs" />
- <Compile Include="Plugins\ValidationPlugins\Http\SelfHosting\SelfHostingOptionsFactory.cs" />
- <Compile Include="Plugins\ValidationPlugins\Http\SelfHosting\SelfHostingOptions.cs" />
- <Compile Include="Plugins\ValidationPlugins\Http\Sftp\SftpOptionsFactory.cs" />
- <Compile Include="Plugins\ValidationPlugins\Http\Sftp\SftpOptions.cs" />
- <Compile Include="Plugins\ValidationPlugins\Http\WebDav\WebDavOptionsFactory.cs" />
- <Compile Include="Plugins\ValidationPlugins\Http\WebDav\WebDavOptions.cs" />
<Compile Include="MainMenu.cs" />
- <Compile Include="Plugins\InstallationPlugins\IISFtp\IISFtp.cs" />
- <Compile Include="Plugins\InstallationPlugins\IISWeb\IISWeb.cs" />
- <Compile Include="Plugins\InstallationPlugins\Script\Script.cs" />
- <Compile Include="Plugins\Resolvers\InteractiveResolver.cs" />
- <Compile Include="Plugins\Resolvers\UnattendedResolver.cs" />
- <Compile Include="Plugins\TargetPlugins\IISBinding\IISBinding.cs" />
- <Compile Include="Plugins\TargetPlugins\IISSite\IISSite.cs" />
- <Compile Include="Plugins\TargetPlugins\IISSites\IISSites.cs" />
- <Compile Include="Plugins\TargetPlugins\Manual\Manual.cs" />
- <Compile Include="Plugins\ValidationPlugins\Http\HttpValidation.cs" />
- <Compile Include="Plugins\ValidationPlugins\Validation.cs" />
- <Compile Include="Plugins\ValidationPlugins\Dns\DnsValidation.cs" />
- <Compile Include="Plugins\ValidationPlugins\Dns\Script\Script.cs" />
- <Compile Include="Plugins\ValidationPlugins\Http\FileSystem\FileSystem.cs" />
- <Compile Include="Plugins\ValidationPlugins\Http\Ftp\Ftp.cs" />
- <Compile Include="Plugins\ValidationPlugins\Http\HttpValidationOptionsFactory.cs" />
- <Compile Include="Plugins\ValidationPlugins\Http\SelfHosting\SelfHosting.cs" />
- <Compile Include="Plugins\ValidationPlugins\Http\Sftp\Sftp.cs" />
- <Compile Include="Plugins\ValidationPlugins\Http\WebDav\WebDav.cs" />
- <Compile Include="Plugins\StorePlugins\CentralSsl\CentralSsl.cs" />
<Compile Include="Renew.cs" />
- <Compile Include="Plugins\StorePlugins\CertificateStore\CertificateStore.cs" />
- <Compile Include="Clients\WebDavClient.cs" />
- <Compile Include="Clients\FtpClient.cs" />
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Properties\Settings.Designer.cs">
@@ -496,16 +439,16 @@
</ProjectReference>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
- <Import Project="..\packages\Fody.5.1.1\build\Fody.targets" Condition="Exists('..\packages\Fody.5.1.1\build\Fody.targets')" />
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
</PropertyGroup>
- <Error Condition="!Exists('..\packages\Fody.5.1.1\build\Fody.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Fody.5.1.1\build\Fody.targets'))" />
- <Error Condition="!Exists('..\packages\Costura.Fody.4.0.0\build\Costura.Fody.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Costura.Fody.4.0.0\build\Costura.Fody.props'))" />
<Error Condition="!Exists('..\packages\Microsoft.Bcl.Build.1.0.21\build\Microsoft.Bcl.Build.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.Bcl.Build.1.0.21\build\Microsoft.Bcl.Build.targets'))" />
<Error Condition="!Exists('..\packages\NETStandard.Library.2.0.3\build\netstandard2.0\NETStandard.Library.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\NETStandard.Library.2.0.3\build\netstandard2.0\NETStandard.Library.targets'))" />
+ <Error Condition="!Exists('..\packages\Fody.6.0.0\build\Fody.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Fody.6.0.0\build\Fody.targets'))" />
+ <Error Condition="!Exists('..\packages\Costura.Fody.4.1.0\build\Costura.Fody.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Costura.Fody.4.1.0\build\Costura.Fody.props'))" />
</Target>
<Import Project="..\packages\Microsoft.Bcl.Build.1.0.21\build\Microsoft.Bcl.Build.targets" Condition="Exists('..\packages\Microsoft.Bcl.Build.1.0.21\build\Microsoft.Bcl.Build.targets')" />
<Import Project="..\packages\NETStandard.Library.2.0.3\build\netstandard2.0\NETStandard.Library.targets" Condition="Exists('..\packages\NETStandard.Library.2.0.3\build\netstandard2.0\NETStandard.Library.targets')" />
+ <Import Project="..\packages\Fody.6.0.0\build\Fody.targets" Condition="Exists('..\packages\Fody.6.0.0\build\Fody.targets')" />
</Project> \ No newline at end of file