From 0043689b8f67ad2b2c25f20c0b3d50ef9146e2e3 Mon Sep 17 00:00:00 2001 From: vfedosevich Date: Fri, 22 Nov 2013 14:35:44 +0300 Subject: [PATCH 01/32] bug fixes --- .../App_Themes/Default/Icons.skin | 2 +- .../Default/Images/Exchange/spaces16.png | Bin 0 -> 1546 bytes .../Default/Images/Exchange/spaces48.png | Bin 0 -> 3623 bytes 3 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 WebsitePanel/Sources/WebsitePanel.WebPortal/App_Themes/Default/Images/Exchange/spaces16.png create mode 100644 WebsitePanel/Sources/WebsitePanel.WebPortal/App_Themes/Default/Images/Exchange/spaces48.png diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Themes/Default/Icons.skin b/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Themes/Default/Icons.skin index 4d334ddb..2e2c3967 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Themes/Default/Icons.skin +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Themes/Default/Icons.skin @@ -94,4 +94,4 @@ Default skin template. The following skins are provided as examples only. <%-- Enterprise Storage Icons --%> - \ No newline at end of file + \ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Themes/Default/Images/Exchange/spaces16.png b/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Themes/Default/Images/Exchange/spaces16.png new file mode 100644 index 0000000000000000000000000000000000000000..9885c54b8660ab057a9e231e232ed27df6c094d8 GIT binary patch literal 1546 zcmbVMeNYs27+xa}a=>FW5&T2e#l|nVy}jf1?pE&b_U;J60|qE)rhw&cfm81G+*`c^ z84j=vt!5}GAWdz=QOEpfnvBBW1jNh_qM^|m8YC&B91ccM=;F5D@>PGBf3&l^zmI*M z=l%G-@9xV;dp>N*swEHvg{34LGQk)wJRu_Rj()&XV2I+3xm*@g#JMPzhIAIDkcLxi zR56`NQj)L8`QoECIYmgaT0?dVN z6oF?T+;$Bz>r}2O1J*Mv4J#z_II|SPU>uiV@d_NrVquvSlc7>@<8fF#p}+~55}vyd zV2!mD5t)XhIa^?*K}tBzL7=G1<&wDM5{4~CF|}GPXvk!701@XbvvZU?&hCtvS1`~{ zGi!BlR>lqsic}%9lhYu;)7cPg4wGp?*zTN56i6BBrW`0Hk)k%65Z4Ua$z{_2xbaxD zGrP<|qnWgm*~yy0c@)LWlR@sDY)AkCZ-{i(3J!%TH8AF#Hrmdm7&Hj@BC%L41gTb$ za)lJv;|iHkj$t|#rc>ie6{*72N>WeGYdnstlp3WfHD&-z62pvgwOS_CD@c`2jwwhv zxxh`aJ2}d3rswTif!#T-{)t>d&(ajfu-Ob#I$r@9B@D+nOBe^N&%)vLIaa%caXB{# z$1@wPfo83{XiE~y*x;G`64uAqSCR3!B3_+jRQ^}ovs}yn$r%cqL51S@SFy}*feI9+ z3#AVh3(Z5@LC3J5HJbAed;mdD5h(^;w)@Azzj!_|$lPlZSu#q{NRNNQ*OA)e*;YMS z{_g!-*~XXsesNoV?Z+dYBSamv%A4U1+PcRv)}5pKb@}RxP26uk@tb{tJy>nnvY@M% z`Yw%2v7^<&zRHzT+a84M9uDcayrr}*GI{B%n%ng?6KGa{Q9@g1PT3#%*G825K*iJp zzSlp%>#96&Y-$uFs{5+?YR0R+5+lprZ=dv??6_KRtfL3^K5Wo69*in&@un$TjM4or z?BevF4TGI%(cT!BRu;SY(bULIE^5X3mG~=x>vx*Jxp6d|#RX66=ML<{%4^Q_)I(>2)?TSSy!32q zdI0V2>GEzo+3A&Ry9w|5vVQOrG9-88k$+R@Ic>oFZGY3XkksJV(We(J&N-1z7r64f zyQnnZYr|+>)7Gb6K}r0=J#QL@Q#|${QAXFO+U0v4^EFw pi*J2)g;{a-nX$mRq?g3u1yJP%jc#wMVNm!xrx?==XUT$^zX2RaR@VRk literal 0 HcmV?d00001 diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Themes/Default/Images/Exchange/spaces48.png b/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Themes/Default/Images/Exchange/spaces48.png new file mode 100644 index 0000000000000000000000000000000000000000..4e200101da864b0faf9648a05bc542b125b8a551 GIT binary patch literal 3623 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 X0s9lryS_B+{JLS#$57>#KC%A+RftWw literal 0 HcmV?d00001 From 8851dc1212e5fc72e55f614ce965997f366922f7 Mon Sep 17 00:00:00 2001 From: vfedosevich Date: Wed, 27 Nov 2013 17:39:00 +0300 Subject: [PATCH 02/32] fixed bug reinstall scheduler service --- .../CustomAction.cs | 24 +++++++++++++++++-- .../Common/SecurityUtils.cs | 14 ++++++++++- 2 files changed, 35 insertions(+), 3 deletions(-) diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.SchedulerServiceInstaller/CustomAction.cs b/WebsitePanel.Installer/Sources/WebsitePanel.SchedulerServiceInstaller/CustomAction.cs index f5655efd..eff618a7 100644 --- a/WebsitePanel.Installer/Sources/WebsitePanel.SchedulerServiceInstaller/CustomAction.cs +++ b/WebsitePanel.Installer/Sources/WebsitePanel.SchedulerServiceInstaller/CustomAction.cs @@ -35,6 +35,7 @@ using System.Linq; using System.ServiceProcess; using System.Text.RegularExpressions; using Microsoft.Deployment.WindowsInstaller; +using WebsitePanel.Setup; namespace WebsitePanel.SchedulerServiceInstaller { @@ -72,11 +73,19 @@ namespace WebsitePanel.SchedulerServiceInstaller { try { - if (!ServiceController.GetServices().Any(s => s.DisplayName.Equals("WebsitePanel Scheduler", StringComparison.CurrentCultureIgnoreCase))) + var schedulerService = + ServiceController.GetServices().FirstOrDefault( + s => s.DisplayName.Equals("WebsitePanel Scheduler", StringComparison.CurrentCultureIgnoreCase)); + + if (schedulerService != null) { - ManagedInstallerClass.InstallHelper(new[] {"/i", Path.Combine(installFolder, "WebsitePanel.SchedulerService.exe")}); + StopService(schedulerService.ServiceName); + + SecurityUtils.DeleteService(schedulerService.ServiceName); } + ManagedInstallerClass.InstallHelper(new[] { "/i", Path.Combine(installFolder, "WebsitePanel.SchedulerService.exe") }); + StartService("WebsitePanel Scheduler"); } catch (Exception) @@ -122,6 +131,17 @@ namespace WebsitePanel.SchedulerServiceInstaller } } + private static void StopService(string serviceName) + { + var sc = new ServiceController(serviceName); + + if (sc.Status == ServiceControllerStatus.Running) + { + sc.Stop(); + sc.WaitForStatus(ServiceControllerStatus.Stopped); + } + } + private static void StartService(string serviceName) { var sc = new ServiceController(serviceName); diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Setup/Common/SecurityUtils.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Setup/Common/SecurityUtils.cs index e69f9bbb..668e7875 100644 --- a/WebsitePanel.Installer/Sources/WebsitePanel.Setup/Common/SecurityUtils.cs +++ b/WebsitePanel.Installer/Sources/WebsitePanel.Setup/Common/SecurityUtils.cs @@ -27,6 +27,7 @@ // SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. using System; +using System.IO; using System.Text; using System.DirectoryServices; using System.DirectoryServices.ActiveDirectory; @@ -1099,7 +1100,18 @@ namespace WebsitePanel.Setup } #endregion - } + + #region Windows Services + + public static void DeleteService(string serviceName) + { + var wmiService = wmi.GetObject(String.Format("Win32_Service.Name='{0}'", serviceName)); + + wmiService.Delete(); + } + + #endregion + } #region Enums [Flags] From d859dd56c1e51af66c2b4f5448538704aa13db2f Mon Sep 17 00:00:00 2001 From: vfedosevich Date: Wed, 27 Nov 2013 18:18:28 +0300 Subject: [PATCH 03/32] bug fixes --- .../EnterpriseStorageController.cs | 28 +++--- .../Packages/PackageController.cs | 40 ++++++++- .../Windows2012.cs | 86 +++++++++++++++---- 3 files changed, 120 insertions(+), 34 deletions(-) diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/EnterpriseStorage/EnterpriseStorageController.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/EnterpriseStorage/EnterpriseStorageController.cs index dec560e2..5f17b245 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/EnterpriseStorage/EnterpriseStorageController.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/EnterpriseStorage/EnterpriseStorageController.cs @@ -261,16 +261,16 @@ namespace WebsitePanel.EnterpriseServer EnterpriseStorageController.AddWebDavDirectory(packageId, usersDomain, org.OrganizationId, homePath); - int osId = PackageController.GetPackageServiceId(packageId, ResourceGroups.Os); - bool enableHardQuota = (esSesstings["enablehardquota"] != null) - ? bool.Parse(esSesstings["enablehardquota"]) - : false; + //int osId = PackageController.GetPackageServiceId(packageId, ResourceGroups.Os); + //bool enableHardQuota = (esSesstings["enablehardquota"] != null) + // ? bool.Parse(esSesstings["enablehardquota"]) + // : false; - if (enableHardQuota && osId != 0 && OperatingSystemController.CheckFileServicesInstallation(osId)) - { - FilesController.SetFolderQuota(packageId, Path.Combine(usersHome, org.OrganizationId), - locationDrive, Quotas.ENTERPRISESTORAGE_DISKSTORAGESPACE); - } + //if (enableHardQuota && osId != 0 && OperatingSystemController.CheckFileServicesInstallation(osId)) + //{ + // FilesController.SetFolderQuota(packageId, Path.Combine(usersHome, org.OrganizationId), + // locationDrive, Quotas.ENTERPRISESTORAGE_DISKSTORAGESPACE); + //} } } catch (Exception ex) @@ -579,11 +579,6 @@ namespace WebsitePanel.EnterpriseServer dir.HttpErrors = null; dir.MimeMaps = null; - int serviceId = PackageController.GetPackageServiceId(packageId, ResourceGroups.Web); - - if (serviceId == -1) - return serviceId; - // create directory WebServer web = GetWebServer(packageId); @@ -867,6 +862,11 @@ namespace WebsitePanel.EnterpriseServer cnfg.ProviderSettings.ProviderName = webProvider.DisplayName; cnfg.ProviderSettings.ProviderType = webProvider.ProviderType; + //// set service settings + //StringDictionary serviceSettings = ServerController.GetServiceSettings(serviceId); + //foreach (string key in serviceSettings.Keys) + // cnfg.ProviderSettings.Settings[key] = serviceSettings[key]; + ServiceProviderProxy.ServerInit(web, cnfg, package.ServerId); return web; diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/Packages/PackageController.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/Packages/PackageController.cs index 1b89f3dc..f07a01bf 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/Packages/PackageController.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/Packages/PackageController.cs @@ -783,6 +783,7 @@ namespace WebsitePanel.EnterpriseServer // Update the Hard quota on home folder in case it was enabled and in case there was a change in disk space UpdatePackageHardQuota(package.PackageId); + UpdateESHardQuota(package.PackageId); DataProvider.DistributePackageServices(SecurityContext.User.UserId, package.PackageId); } @@ -980,6 +981,7 @@ namespace WebsitePanel.EnterpriseServer // Added By Haya UpdatePackageHardQuota(packageId); + UpdateESHardQuota(packageId); // save package item return AddPackageItem(homeFolder); @@ -1019,6 +1021,33 @@ namespace WebsitePanel.EnterpriseServer } + public static void UpdateESHardQuota(int packageId) + { + int esServiceId = PackageController.GetPackageServiceId(packageId, ResourceGroups.EnterpriseStorage); + + if (esServiceId != 0) + { + + StringDictionary esSesstings = ServerController.GetServiceSettings(esServiceId); + + string usersHome = esSesstings["UsersHome"]; + string usersDomain = esSesstings["UsersDomain"]; + string locationDrive = esSesstings["LocationDrive"]; + + string homePath = string.Format("{0}:\\{1}", locationDrive, usersHome); + + int osId = PackageController.GetPackageServiceId(packageId, ResourceGroups.Os); + bool enableHardQuota = (esSesstings["enablehardquota"] != null) + ? bool.Parse(esSesstings["enablehardquota"]) + : false; + + if (enableHardQuota && osId != 0 && OperatingSystemController.CheckFileServicesInstallation(osId)) + { + FilesController.SetFolderQuota(packageId, usersHome, locationDrive, Quotas.ENTERPRISESTORAGE_DISKSTORAGESPACE); + } + } + } + #endregion #region Package Add-ons @@ -1079,6 +1108,7 @@ namespace WebsitePanel.EnterpriseServer // Update the Hard quota on home folder in case it was enabled and in case there was a change in disk space UpdatePackageHardQuota(addon.PackageId); + UpdateESHardQuota(addon.PackageId); return result; } @@ -1108,7 +1138,7 @@ namespace WebsitePanel.EnterpriseServer // Update the Hard quota on home folder in case it was enabled and in case there was a change in disk space UpdatePackageHardQuota(addon.PackageId); - + UpdateESHardQuota(addon.PackageId); return result; } @@ -1119,12 +1149,14 @@ namespace WebsitePanel.EnterpriseServer | DemandAccount.IsReseller); if (accountCheck < 0) return accountCheck; - - // Update the Hard quota on home folder in case it was enabled and in case there was a change in disk space - UpdatePackageHardQuota(GetPackageAddon(packageAddonId).PackageId); + var packageId = GetPackageAddon(packageAddonId).PackageId; DataProvider.DeletePackageAddon(SecurityContext.User.UserId, packageAddonId); + // Update the Hard quota on home folder in case it was enabled and in case there was a change in disk space + UpdatePackageHardQuota(packageId); + UpdateESHardQuota(packageId); + return 0; } diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.OS.Windows2012/Windows2012.cs b/WebsitePanel/Sources/WebsitePanel.Providers.OS.Windows2012/Windows2012.cs index 3542555e..238cbc0c 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.OS.Windows2012/Windows2012.cs +++ b/WebsitePanel/Sources/WebsitePanel.Providers.OS.Windows2012/Windows2012.cs @@ -49,6 +49,7 @@ using System.Management.Automation.Runspaces; using WebsitePanel.Providers.Common; using WebsitePanel.Providers; using WebsitePanel.Providers.HostedSolution; +using System.Runtime.InteropServices; namespace WebsitePanel.Providers.OS @@ -80,28 +81,34 @@ namespace WebsitePanel.Providers.OS Log.WriteInfo("ShareNameDrive : {0}", shareNameDrive); Log.WriteInfo("QuotaLimit : {0}", quotaLimit); + string path = Path.Combine(shareNameDrive + @":\", folderPath); + var quota = CalculateQuota(quotaLimit); + Runspace runSpace = null; try { runSpace = OpenRunspace(); - string[] splits = folderPath.Split('\\'); - if (splits.Length > 0) + + if (path.IndexOfAny(Path.GetInvalidPathChars()) == -1) { - string sharePath = String.Empty; + if (!FileUtils.DirectoryExists(path)) + FileUtils.CreateDirectory(path); - if (splits.Length > 4) + switch (mode) { - // Form the share physicalPath - sharePath = shareNameDrive + @":\" + splits[3]; - - if (splits.Length == 5 && !quotaLimit.Equals(String.Empty)) - { - Command cmd = new Command("Set-FsrmQuota"); - cmd.Parameters.Add("Path", sharePath + @"\" + splits[4]); - cmd.Parameters.Add("Size", quotaLimit); - cmd.Parameters.Add("Confirm", true); - ExecuteShellCommand(runSpace, cmd, false); - } + //deleting old quota and creating new one + case 0: + { + RemoveOldQuotaOnFolder(runSpace, path); + ChangeQuotaOnFolder(runSpace, "New-FsrmQuota", path, quota); + break; + } + //modifying folder quota + case 1: + { + ChangeQuotaOnFolder(runSpace, "Set-FsrmQuota", path, quota); + break; + } } } } @@ -112,13 +119,60 @@ namespace WebsitePanel.Providers.OS } finally { - CloseRunspace(runSpace); } Log.WriteEnd("SetQuotaLimitOnFolder"); } + public UInt64 CalculateQuota(string quota) + { + UInt64 OneKb = 1024; + UInt64 OneMb = OneKb * 1024; + UInt64 OneGb = OneMb * 1024; + + UInt64 result = 0; + + // Quota Unit + if (quota.ToLower().Contains("gb")) + { + result = UInt64.Parse(quota.ToLower().Replace("gb", "")) * OneGb; + } + else if (quota.ToLower().Contains("mb")) + { + result = UInt64.Parse(quota.ToLower().Replace("mb", "")) * OneMb; + } + else + { + result = UInt64.Parse(quota.ToLower().Replace("kb", "")) * OneKb; + } + + return result; + } + + public void RemoveOldQuotaOnFolder(Runspace runSpace, string path) + { + try + { + runSpace = OpenRunspace(); + if (!string.IsNullOrEmpty(path)) + { + Command cmd = new Command("Remove-FsrmQuota"); + cmd.Parameters.Add("Path", path); + ExecuteShellCommand(runSpace, cmd, false); + } + } + catch { /* do nothing */ } + } + + public void ChangeQuotaOnFolder(Runspace runSpace, string command, string path, UInt64 quota) + { + Command cmd = new Command(command); + cmd.Parameters.Add("Path", path); + cmd.Parameters.Add("Size", quota); + ExecuteShellCommand(runSpace, cmd, false); + } + #region PowerShell integration private static InitialSessionState session = null; From cf2013466bb06ca6981fd5bac34f7b3b5caec0e9 Mon Sep 17 00:00:00 2001 From: vfedosevich Date: Thu, 28 Nov 2013 09:44:19 +0300 Subject: [PATCH 04/32] commit project file --- WebsitePanel.Installer/Sources/WebsitePanel.Installer.sln | 3 +++ .../WebsitePanel.SchedulerServiceInstaller.csproj | 7 +++++++ 2 files changed, 10 insertions(+) diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Installer.sln b/WebsitePanel.Installer/Sources/WebsitePanel.Installer.sln index 6ded8966..2a9fa4c2 100644 --- a/WebsitePanel.Installer/Sources/WebsitePanel.Installer.sln +++ b/WebsitePanel.Installer/Sources/WebsitePanel.Installer.sln @@ -25,6 +25,9 @@ EndProject Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "Setup.WIX", "Setup.WIX\Setup.WIX.wixproj", "{F963A4AF-CC72-4512-B636-829345C35318}" EndProject Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "Setup.SchedulerService", "Setup.SchedulerService\Setup.SchedulerService.wixproj", "{EAD7C528-EA3D-40E8-9688-9F1D8DC8D758}" + ProjectSection(ProjectDependencies) = postProject + {24A4C231-73A9-4F03-ABAD-9A8FE5324495} = {24A4C231-73A9-4F03-ABAD-9A8FE5324495} + EndProjectSection EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WebsitePanel.SchedulerServiceInstaller", "WebsitePanel.SchedulerServiceInstaller\WebsitePanel.SchedulerServiceInstaller.csproj", "{24A4C231-73A9-4F03-ABAD-9A8FE5324495}" EndProject diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.SchedulerServiceInstaller/WebsitePanel.SchedulerServiceInstaller.csproj b/WebsitePanel.Installer/Sources/WebsitePanel.SchedulerServiceInstaller/WebsitePanel.SchedulerServiceInstaller.csproj index 22f11548..10824162 100644 --- a/WebsitePanel.Installer/Sources/WebsitePanel.SchedulerServiceInstaller/WebsitePanel.SchedulerServiceInstaller.csproj +++ b/WebsitePanel.Installer/Sources/WebsitePanel.SchedulerServiceInstaller/WebsitePanel.SchedulerServiceInstaller.csproj @@ -37,6 +37,7 @@ + @@ -47,6 +48,12 @@ + + + {3951C0EC-BD98-450E-B228-CDBE5BD4AD49} + WebsitePanel.Setup + + \ No newline at end of file From 872c8a675a3e006cbddb9378b6186951fea5a8d0 Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Thu, 28 Nov 2013 08:50:48 -0500 Subject: [PATCH 05/32] Added tag build-2.1.0.239 for changeset 4a5cce76368f From c13e350aa456b2322ddc4eeaaf78dad8ee5c6911 Mon Sep 17 00:00:00 2001 From: Konstantin Date: Thu, 28 Nov 2013 20:38:38 +0100 Subject: [PATCH 06/32] DNS 2012 - first commit --- .../Microsoft.Management.Infrastructure.dll | Bin 0 -> 122880 bytes .../DnsCommands.cs | 287 ++++++++++++ .../MsDNS.cs | 424 ++++++++++++++++++ .../PowerShellHelper.cs | 84 ++++ .../Properties/AssemblyInfo.cs | 36 ++ .../RecordConverter.cs | 147 ++++++ .../RecordTypes.cs | 40 ++ ...ebsitePanel.Providers.DNS.MsDNS2012.csproj | 75 ++++ WebsitePanel/Sources/WebsitePanel.Server.sln | 16 + 9 files changed, 1109 insertions(+) create mode 100644 WebsitePanel/Lib/Microsoft.Management.Infrastructure.dll create mode 100644 WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/DnsCommands.cs create mode 100644 WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/MsDNS.cs create mode 100644 WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/PowerShellHelper.cs create mode 100644 WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/Properties/AssemblyInfo.cs create mode 100644 WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/RecordConverter.cs create mode 100644 WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/RecordTypes.cs create mode 100644 WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/WebsitePanel.Providers.DNS.MsDNS2012.csproj diff --git a/WebsitePanel/Lib/Microsoft.Management.Infrastructure.dll b/WebsitePanel/Lib/Microsoft.Management.Infrastructure.dll new file mode 100644 index 0000000000000000000000000000000000000000..9c72405baff28b030284404558bd466a731582f5 GIT binary patch literal 122880 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

1@HNQlp6V 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 v%oVzFGThis class wraps MS DNS server PowerShell commands used by the WebsitePanel. + internal static class DnsCommands + { + ///

Add parameter to PS command + /// command + /// Parameter name + /// Parameter value + /// Same command + private static Command addParam( this Command cmd, string name, object value ) + { + cmd.Parameters.Add( name, value ); + return cmd; + } + + /// Add parameter without value to the PS command + /// command + /// Parameter name + /// Same command + private static Command addParam( this Command cmd, string name ) + { + cmd.Parameters.Add( name ); + return cmd; + } + + /// Create "Where-Object -Property ... -eq -Value ..." command + /// + /// + /// + private static Command where( string property, object value ) + { + return new Command( "Where-Object" ) + .addParam( "Property", property ) + .addParam( "eq" ) + .addParam( "Value", value ); + } + + /// Test-DnsServer -IPAddress 127.0.0.1 + /// PowerShell host to use + /// true if localhost is an MS DNS server + public static bool Test_DnsServer( this PowerShellHelper ps ) + { + if( null == ps ) + throw new ArgumentNullException( "ps" ); + + var cmd = new Command( "Test-DnsServer" ) + .addParam( "IPAddress", IPAddress.Loopback ); + + PSObject res = ps.RunPipeline( cmd ).FirstOrDefault(); + + if( null == res || null == res.Properties ) + return false; + PSPropertyInfo p = res.Properties[ "Result" ]; + if( null == p || null == p.Value ) + return false; + return p.Value.ToString() == "Success"; + } + + #region Zones + + /// Get-DnsServerZone | Select-Object -Property ZoneName + /// Only primary DNS zones are returned + /// Array of zone names + public static string[] Get_DnsServerZone_Names( this PowerShellHelper ps ) + { + var allZones = ps.RunPipeline( new Command( "Get-DnsServerZone" ), + where( "IsAutoCreated", false ) ); + + string[] res = allZones + .Select( pso => new + { + name = (string)pso.Properties[ "ZoneName" ].Value, + type = (string)pso.Properties[ "ZoneType" ].Value + } ) + .Where( obj => obj.type == "Primary" ) + .Select( obj => obj.name ) + .ToArray(); + + Log.WriteInfo( "Get_DnsServerZone_Names: {{{0}}}", String.Join( ", ", res ) ); + return res; + } + + /// Returns true if the specified zone exists. + /// The PS pipeline being run: Get-DnsServerZone | Where-Object -Property ZoneName -eq -Value "name" + /// + /// + /// + public static bool ZoneExists( this PowerShellHelper ps, string name ) + { + Log.WriteStart( "ZoneExists {0}", name ); + bool res = ps.RunPipeline( new Command( "Get-DnsServerZone" ), + where( "ZoneName", name ) ) + .Any(); + Log.WriteEnd( "ZoneExists: {0}", res ); + return res; + } + + /* public enum eReplicationScope: byte + { + Custom, Domain, Forest, Legacy + } */ + + /// + /// + /// + /// Specifies a partition on which to store an Active Directory-integrated zone. + /// + public static void Add_DnsServerPrimaryZone( this PowerShellHelper ps, string zoneName, string[] secondaryServers ) + { + Log.WriteStart( "Add_DnsServerPrimaryZone {0} {{{1}}}", zoneName, String.Join( ", ", secondaryServers ) ); + + // Add-DnsServerPrimaryZone -Name zzz.com -ZoneFile zzz.com.dns + var cmd = new Command( "Add-DnsServerPrimaryZone" ); + cmd.addParam( "Name", zoneName ); + cmd.addParam( "ZoneFile", zoneName + ".dns" ); + ps.RunPipeline( cmd ); + + // Set-DnsServerPrimaryZone -Name zzz.com -SecureSecondaries ... -Notify ... Servers .. + cmd = new Command( "Set-DnsServerPrimaryZone" ); + cmd.addParam( "Name", zoneName ); + + if( secondaryServers == null || secondaryServers.Length == 0 ) + { + // transfers are not allowed + // inParams2[ "SecureSecondaries" ] = 3; + // inParams2[ "Notify" ] = 0; + cmd.addParam( "SecureSecondaries", "NoTransfer" ); + cmd.addParam( "Notify", "NoNotify" ); + } + else if( secondaryServers.Length == 1 && secondaryServers[ 0 ] == "*" ) + { + // allowed transfer from all servers + // inParams2[ "SecureSecondaries" ] = 0; + // inParams2[ "Notify" ] = 1; + cmd.addParam( "SecureSecondaries", "TransferAnyServer" ); + cmd.addParam( "Notify", "Notify" ); + } + else + { + // allowed transfer from specified servers + // inParams2[ "SecureSecondaries" ] = 2; + // inParams2[ "SecondaryServers" ] = secondaryServers; + // inParams2[ "NotifyServers" ] = secondaryServers; + // inParams2[ "Notify" ] = 2; + cmd.addParam( "SecureSecondaries", "TransferToSecureServers" ); + cmd.addParam( "Notify", "NotifyServers" ); + cmd.addParam( "SecondaryServers", secondaryServers ); + cmd.addParam( "NotifyServers", secondaryServers ); + } + ps.RunPipeline( cmd ); + Log.WriteEnd( "Add_DnsServerPrimaryZone" ); + } + + public static void Add_DnsServerSecondaryZone( this PowerShellHelper ps, string zoneName, string[] masterServers ) + { + // Add-DnsServerSecondaryZone -Name zzz.com -ZoneFile zzz.com.dns + var cmd = new Command( "Add-DnsServerSecondaryZone" ); + cmd.addParam( "Name", zoneName ); + cmd.addParam( "ZoneFile", zoneName + ".dns" ); + ps.RunPipeline( cmd ); + + // Set-DnsServerSecondaryZone -Name zzz.com -MasterServers ... + cmd = new Command( "Set-DnsServerSecondaryZone" ); + cmd.addParam( "Name", zoneName ); + cmd.addParam( "MasterServers", masterServers ); + ps.RunPipeline( cmd ); + } + + public static void Remove_DnsServerZone( this PowerShellHelper ps, string zoneName ) + { + var cmd = new Command( "Remove-DnsServerZone" ); + cmd.addParam( "Name", zoneName ); + cmd.addParam( "Force" ); + ps.RunPipeline( cmd ); + } + #endregion + + /// Get all records, except the SOA + /// + /// Name of the zone + /// Array of records + public static DnsRecord[] GetZoneRecords( this PowerShellHelper ps, string zoneName ) + { + // Get-DnsServerResourceRecord -ZoneName xxxx.com + var allRecords = ps.RunPipeline( new Command( "Get-DnsServerResourceRecord" ).addParam( "ZoneName", zoneName ) ); + + return allRecords.Select( o => o.asDnsRecord( zoneName ) ) + .Where( r => null != r ) + .Where( r => r.RecordType != DnsRecordType.SOA ) + // .Where( r => !( r.RecordName == "@" && DnsRecordType.NS == r.RecordType ) ) + .ToArray(); + } + + #region Records add / remove + + public static void Add_DnsServerResourceRecordA( this PowerShellHelper ps, string zoneName, string Name, string address ) + { + var cmd = new Command( "Add-DnsServerResourceRecordA" ); + cmd.addParam( "ZoneName", zoneName ); + cmd.addParam( "Name", Name ); + cmd.addParam( "IPv4Address", address ); + ps.RunPipeline( cmd ); + } + + public static void Add_DnsServerResourceRecordAAAA( this PowerShellHelper ps, string zoneName, string Name, string address ) + { + var cmd = new Command( "Add-DnsServerResourceRecordAAAA" ); + cmd.addParam( "ZoneName", zoneName ); + cmd.addParam( "Name", Name ); + cmd.addParam( "IPv6Address", address ); + ps.RunPipeline( cmd ); + } + + public static void Add_DnsServerResourceRecordCName( this PowerShellHelper ps, string zoneName, string Name, string alias ) + { + var cmd = new Command( "Add-DnsServerResourceRecordCName" ); + cmd.addParam( "ZoneName", zoneName ); + cmd.addParam( "Name", Name ); + cmd.addParam( "HostNameAlias", alias ); + ps.RunPipeline( cmd ); + } + + public static void Add_DnsServerResourceRecordMX( this PowerShellHelper ps, string zoneName, string Name, string mx, UInt16 pref ) + { + var cmd = new Command( "Add-DnsServerResourceRecordMX" ); + cmd.addParam( "ZoneName", zoneName ); + cmd.addParam( "Name", Name ); + cmd.addParam( "MailExchange", mx ); + cmd.addParam( "Preference", pref ); + ps.RunPipeline( cmd ); + } + + public static void Add_DnsServerResourceRecordNS( this PowerShellHelper ps, string zoneName, string Name, string NameServer ) + { + var cmd = new Command( "Add-DnsServerResourceRecord" ); + cmd.addParam( "ZoneName", zoneName ); + cmd.addParam( "Name", Name ); + cmd.addParam( "NS" ); + cmd.addParam( "NameServer", NameServer ); + ps.RunPipeline( cmd ); + } + + public static void Add_DnsServerResourceRecordTXT( this PowerShellHelper ps, string zoneName, string Name, string txt ) + { + var cmd = new Command( "Add-DnsServerResourceRecord" ); + cmd.addParam( "ZoneName", zoneName ); + cmd.addParam( "Name", Name ); + cmd.addParam( "Txt" ); + cmd.addParam( "DescriptiveText", txt ); + ps.RunPipeline( cmd ); + } + + public static void Add_DnsServerResourceRecordSRV( this PowerShellHelper ps, string zoneName, string Name, string DomainName, UInt16 Port, UInt16 Priority, UInt16 Weight ) + { + var cmd = new Command( "Add-DnsServerResourceRecord" ); + cmd.addParam( "ZoneName", zoneName ); + cmd.addParam( "Name", Name ); + cmd.addParam( "Srv" ); + cmd.addParam( "DomainName", DomainName ); + cmd.addParam( "Port", Port ); + cmd.addParam( "Priority", Priority ); + cmd.addParam( "Weight", Weight ); + ps.RunPipeline( cmd ); + } + + public static void Remove_DnsServerResourceRecord( this PowerShellHelper ps, string zoneName, string Name, string type ) + { + // Remove-DnsServerResourceRecord -ZoneName xxxx.com -Name "@" -RRType Soa -Force + var cmd = new Command( "Remove-DnsServerResourceRecord" ); + cmd.addParam( "ZoneName", zoneName ); + cmd.addParam( "Name", Name ); + cmd.addParam( "RRType", type ); + cmd.addParam( "Force" ); + ps.RunPipeline( cmd ); + } + + #endregion + } +} \ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/MsDNS.cs b/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/MsDNS.cs new file mode 100644 index 00000000..9dfa9f69 --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/MsDNS.cs @@ -0,0 +1,424 @@ +// Copyright (c) 2012, Outercurve Foundation. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without modification, +// are permitted provided that the following conditions are met: +// +// - Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// - Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// - Neither the name of the Outercurve Foundation nor the names of its +// contributors may be used to endorse or promote products derived from this +// software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// A lot of modifications made since 2012.. + +using System; +using System.Management; +using System.Collections.Generic; +using System.Text; +using Microsoft.Win32; + +using WebsitePanel.Server.Utils; +using WebsitePanel.Providers.Utils; + +namespace WebsitePanel.Providers.DNS +{ + public class MsDNS: HostingServiceProviderBase, IDnsServer + { + + protected int ExpireLimit + { + get { return ProviderSettings.GetInt( "ExpireLimit" ); } + } + + protected int MinimumTTL + { + get { return ProviderSettings.GetInt( "MinimumTTL" ); } + } + + protected int RefreshInterval + { + get { return ProviderSettings.GetInt( "RefreshInterval" ); } + } + + protected int RetryDelay + { + get { return ProviderSettings.GetInt( "RetryDelay" ); } + } + + protected bool AdMode + { + get { return ProviderSettings.GetBool( "AdMode" ); } + } + + private PowerShellHelper ps = null; + private WmiHelper wmi = null; //< We still need WMI because PowerShell doesn't support SOA updates. + private bool bulkRecords; + + public MsDNS() + { + // Create PowerShell helper + ps = new PowerShellHelper(); + if( !this.IsInstalled() ) + return; + + // Create WMI helper + wmi = new WmiHelper( "root\\MicrosoftDNS" ); + } + + #region Zones + + public virtual string[] GetZones() + { + return ps.Get_DnsServerZone_Names(); + } + + public virtual bool ZoneExists( string zoneName ) + { + return ps.ZoneExists( zoneName ); + } + + public virtual DnsRecord[] GetZoneRecords( string zoneName ) + { + return ps.GetZoneRecords( zoneName ); + } + + public virtual void AddPrimaryZone( string zoneName, string[] secondaryServers ) + { + ps.Add_DnsServerPrimaryZone( zoneName, secondaryServers ); + + // delete orphan NS records + DeleteOrphanNsRecords( zoneName ); + } + + public virtual void AddSecondaryZone( string zoneName, string[] masterServers ) + { + ps.Add_DnsServerSecondaryZone( zoneName, masterServers ); + + // delete orphan NS records + DeleteOrphanNsRecords( zoneName ); + } + + public virtual void DeleteZone( string zoneName ) + { + try + { + ps.Remove_DnsServerZone( zoneName ); + } + catch( Exception ex ) + { + Log.WriteError( ex ); + } + } + + public virtual void AddZoneRecord( string zoneName, DnsRecord record ) + { + try + { + string name = record.RecordName; + if( String.IsNullOrEmpty( name ) ) + name = "."; + + if( record.RecordType == DnsRecordType.A ) + ps.Add_DnsServerResourceRecordA( zoneName, name, record.RecordData ); + else if( record.RecordType == DnsRecordType.AAAA ) + ps.Add_DnsServerResourceRecordAAAA( zoneName, name, record.RecordData ); + else if( record.RecordType == DnsRecordType.CNAME ) + ps.Add_DnsServerResourceRecordCName( zoneName, name, record.RecordData ); + else if( record.RecordType == DnsRecordType.MX ) + ps.Add_DnsServerResourceRecordMX( zoneName, name, record.RecordData, (ushort)record.MxPriority ); + else if( record.RecordType == DnsRecordType.NS ) + ps.Add_DnsServerResourceRecordNS( zoneName, name, record.RecordData ); + else if( record.RecordType == DnsRecordType.TXT ) + ps.Add_DnsServerResourceRecordTXT( zoneName, name, record.RecordData ); + else if( record.RecordType == DnsRecordType.SRV ) + ps.Add_DnsServerResourceRecordSRV( zoneName, name, record.RecordData, (ushort)record.SrvPort, (ushort)record.SrvPriority, (ushort)record.SrvWeight ); + else + throw new Exception( "Unknown record type" ); + } + catch( Exception ex ) + { + // log exception + Log.WriteError( ex ); + } + } + + public virtual void AddZoneRecords( string zoneName, DnsRecord[] records ) + { + bulkRecords = true; + try + { + foreach( DnsRecord record in records ) + AddZoneRecord( zoneName, record ); + } + finally + { + bulkRecords = false; + } + + UpdateSoaRecord( zoneName ); + } + + public virtual void DeleteZoneRecord( string zoneName, DnsRecord record ) + { + try + { + string rrType; + if( !RecordTypes.rrTypeFromRecord.TryGetValue( record.RecordType, out rrType ) ) + throw new Exception( "Unknown record type" ); + ps.Remove_DnsServerResourceRecord( zoneName, record.RecordName, rrType ); + } + catch( Exception ex ) + { + // log exception + Log.WriteError( ex ); + } + } + + public virtual void DeleteZoneRecords( string zoneName, DnsRecord[] records ) + { + foreach( DnsRecord record in records ) + DeleteZoneRecord( zoneName, record ); + } + + public void AddZoneRecord( string zoneName, string recordText ) + { + try + { + Log.WriteStart( string.Format( "Adding MS DNS Server zone '{0}' record '{1}'", zoneName, recordText ) ); + AddDnsRecord( zoneName, recordText ); + Log.WriteEnd( "Added MS DNS Server zone record" ); + } + catch( Exception ex ) + { + Log.WriteError( ex ); + throw; + } + } + #endregion + + #region SOA Record + public virtual void UpdateSoaRecord( string zoneName, string host, string primaryNsServer, string primaryPerson ) + { + host = CorrectHostName( zoneName, host ); + + // delete record if exists + DeleteSoaRecord( zoneName ); + + // format record data + string recordText = GetSoaRecordText( host, primaryNsServer, primaryPerson ); + + // add record + AddDnsRecord( zoneName, recordText ); + + // update SOA record + UpdateSoaRecord( zoneName ); + } + + private void DeleteSoaRecord( string zoneName ) + { + // TODO: find a PowerShell replacement + + string query = String.Format( "SELECT * FROM MicrosoftDNS_SOAType " + + "WHERE OwnerName = '{0}'", + zoneName ); + using( ManagementObjectCollection objRRs = wmi.ExecuteQuery( query ) ) + { + foreach( ManagementObject objRR in objRRs ) using( objRR ) + objRR.Delete(); + } + + // This doesn't work: no errors in PS, but the record stays in the DNS + /* try + { + ps.Remove_DnsServerResourceRecord( zoneName, "@", "Soa" ); + } + catch( System.Exception ex ) + { + Log.WriteWarning( "{0}", ex.Message ); + } */ + } + + private string GetSoaRecordText( string host, string primaryNsServer, string primaryPerson ) + { + return String.Format( "{0} IN SOA {1} {2} 1 900 600 86400 3600", host, primaryNsServer, primaryPerson ); + } + + private static string RemoveTrailingDot( string str ) + { + return ( str.EndsWith( "." ) ) ? str.Substring( 0, str.Length - 1 ) : str; + } + + private void UpdateSoaRecord( string zoneName ) + { + if( bulkRecords ) + return; + + // TODO: find a PowerShell replacement + + // get existing SOA record in order to read serial number + try + { + + ManagementObject objSoa = wmi.GetWmiObject( "MicrosoftDNS_SOAType", "ContainerName = '{0}'", RemoveTrailingDot( zoneName ) ); + + if( objSoa != null ) + { + if( objSoa.Properties[ "OwnerName" ].Value.Equals( zoneName ) ) + { + string primaryServer = (string)objSoa.Properties[ "PrimaryServer" ].Value; + string responsibleParty = (string)objSoa.Properties[ "ResponsibleParty" ].Value; + UInt32 serialNumber = (UInt32)objSoa.Properties[ "SerialNumber" ].Value; + + // update record's serial number + string sn = serialNumber.ToString(); + string todayDate = DateTime.Now.ToString( "yyyyMMdd" ); + if( sn.Length < 10 || !sn.StartsWith( todayDate ) ) + { + // build a new serial number + sn = todayDate + "01"; + serialNumber = UInt32.Parse( sn ); + } + else + { + // just increment serial number + serialNumber += 1; + } + + // update SOA record + using( ManagementBaseObject methodParams = objSoa.GetMethodParameters( "Modify" ) ) + { + methodParams[ "ResponsibleParty" ] = responsibleParty; + methodParams[ "PrimaryServer" ] = primaryServer; + methodParams[ "SerialNumber" ] = serialNumber; + + methodParams[ "ExpireLimit" ] = ExpireLimit; + methodParams[ "MinimumTTL" ] = MinimumTTL; + methodParams[ "TTL" ] = MinimumTTL; + methodParams[ "RefreshInterval" ] = RefreshInterval; + methodParams[ "RetryDelay" ] = RetryDelay; + + ManagementBaseObject outParams = objSoa.InvokeMethod( "Modify", methodParams, null ); + } + // + objSoa.Dispose(); + } + + } + } + catch( Exception ex ) + { + Log.WriteError( ex ); + } + } + + #endregion + + private void DeleteOrphanNsRecords( string zoneName ) + { + // TODO: find a PowerShell replacement + string machineName = System.Net.Dns.GetHostEntry( "LocalHost" ).HostName.ToLower(); + string computerName = Environment.MachineName.ToLower(); + + using( ManagementObjectCollection objRRs = wmi.ExecuteQuery( String.Format( "SELECT * FROM MicrosoftDNS_NSType WHERE DomainName = '{0}'", zoneName ) ) ) + { + foreach( ManagementObject objRR in objRRs ) + { + using( objRR ) + { + string ns = ( (string)objRR.Properties[ "NSHost" ].Value ).ToLower(); + if( ns.StartsWith( machineName ) || ns.StartsWith( computerName ) ) + objRR.Delete(); + + } + } + } + } + + #region private helper methods + + private string GetDnsServerName() + { + // TODO: find a PowerShell replacement + using( ManagementObject objServer = wmi.GetObject( "MicrosoftDNS_Server.Name=\".\"" ) ) + { + return (string)objServer.Properties[ "Name" ].Value; + } + } + + private string AddDnsRecord( string zoneName, string recordText ) + { + // get the name of the server + string serverName = GetDnsServerName(); + + // TODO: find a PowerShell replacement + // add record + using( ManagementClass clsRR = wmi.GetClass( "MicrosoftDNS_ResourceRecord" ) ) + { + object[] prms = new object[] { serverName, zoneName, recordText, null }; + clsRR.InvokeMethod( "CreateInstanceFromTextRepresentation", prms ); + return (string)prms[ 3 ]; + } + } + + private string CorrectHostName( string zoneName, string host ) + { + // if host is empty or null + if( host == null || host == "" ) + return zoneName; + + // if there are not dot at all + else if( host.IndexOf( "." ) == -1 ) + return host + "." + zoneName; + + // if only one dot at the end + else if( host[ host.Length - 1 ] == '.' && host.IndexOf( "." ) == ( host.Length - 1 ) ) + return host + zoneName; + + // other cases + else + return host; + } + #endregion + + public override void DeleteServiceItems( ServiceProviderItem[] items ) + { + foreach( ServiceProviderItem item in items ) + { + if( item is DnsZone ) + { + try + { + // delete DNS zone + DeleteZone( item.Name ); + } + catch( Exception ex ) + { + Log.WriteError( String.Format( "Error deleting '{0}' MS DNS zone", item.Name ), ex ); + } + } + } + } + + public override bool IsInstalled() + { + return ps.Test_DnsServer(); + } + } +} \ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/PowerShellHelper.cs b/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/PowerShellHelper.cs new file mode 100644 index 00000000..980e5ac7 --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/PowerShellHelper.cs @@ -0,0 +1,84 @@ +using System; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Management.Automation; +using System.Management.Automation.Runspaces; +using WebsitePanel.Server.Utils; + +namespace WebsitePanel.Providers.DNS +{ + /// This class is a generic helper hosting the PowerShell runtime. + /// It's probably a good idea to move to some utility module. + public class PowerShellHelper: IDisposable + { + private static InitialSessionState s_session = null; + + static PowerShellHelper() + { + s_session = InitialSessionState.CreateDefault(); + // s_session.ImportPSModule( new string[] { "FileServerResourceManager" } ); + } + + public PowerShellHelper() + { + Log.WriteStart( "PowerShellHelper::ctor" ); + + Runspace rs = RunspaceFactory.CreateRunspace( s_session ); + rs.Open(); + // rs.SessionStateProxy.SetVariable( "ConfirmPreference", "none" ); + + this.runSpace = rs; + Log.WriteEnd( "PowerShellHelper::ctor" ); + } + + public void Dispose() + { + try + { + if( this.runSpace == null ) + return; + if( this.runSpace.RunspaceStateInfo.State == RunspaceState.Opened ) + this.runSpace.Close(); + this.runSpace = null; + } + catch( Exception ex ) + { + Log.WriteError( "Runspace error", ex ); + } + } + + public Runspace runSpace { get; private set; } + + public Collection RunPipeline( params Command[] pipelineCommands ) + { + Log.WriteStart( "ExecuteShellCommand" ); + List errorList = new List(); + + Collection results = null; + using( Pipeline pipeLine = runSpace.CreatePipeline() ) + { + // Add the command + foreach( var cmd in pipelineCommands ) + pipeLine.Commands.Add( cmd ); + + // Execute the pipeline and save the objects returned. + results = pipeLine.Invoke(); + + // Only non-terminating errors are delivered here. + // Terminating errors raise exceptions instead. + if( null != pipeLine.Error && pipeLine.Error.Count > 0 ) + { + foreach( object item in pipeLine.Error.ReadToEnd() ) + { + errorList.Add( item ); + string errorMessage = string.Format( "Invoke error: {0}", item ); + Log.WriteWarning( errorMessage ); + } + } + } + // errors = errorList.ToArray(); + Log.WriteEnd( "ExecuteShellCommand" ); + return results; + } + } +} \ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/Properties/AssemblyInfo.cs b/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/Properties/AssemblyInfo.cs new file mode 100644 index 00000000..b37fc853 --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("WebsitePanel.Providers.DNS.MsDNS2012")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("WebsitePanel.Providers.DNS.MsDNS2012")] +[assembly: AssemblyCopyright("Copyright © 2013")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("f2a902f2-5654-4e67-8c5e-4d2fdf6de873")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/RecordConverter.cs b/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/RecordConverter.cs new file mode 100644 index 00000000..3cf72bfb --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/RecordConverter.cs @@ -0,0 +1,147 @@ +using System; +using System.Linq; +using System.Management.Automation; +using Microsoft.Management.Infrastructure; +using Microsoft.Management.Infrastructure.Generic; +using WebsitePanel.Server.Utils; + +namespace WebsitePanel.Providers.DNS +{ + /// Copy fields from CimInstance#DnsServerResourceRecord into DnsRecord + /// It's also possible to access native CIM object, and use Mgmtclassgen.exe for that. + internal static class RecordConverter + { + private static string RemoveTrailingDot( string str ) + { + if( !str.EndsWith( "." ) ) + return str; + return str.Substring( 0, str.Length - 1 ); + } + + private static string CorrectHost( string zoneName, string host ) + { + if( host.ToLower() == zoneName.ToLower() ) + return ""; + if( host.ToLower().EndsWith( "." + zoneName.ToLower() ) ) + return host.Substring( 0, ( host.Length - zoneName.Length - 1 ) ); + return host; + } + + public static DnsRecord asDnsRecord( this PSObject obj, string zoneName ) + { + // Here's what comes from Server 2012 in the TypeNames: + // "Microsoft.Management.Infrastructure.CimInstance#root/Microsoft/Windows/DNS/DnsServerResourceRecord" + // "Microsoft.Management.Infrastructure.CimInstance#ROOT/Microsoft/Windows/DNS/DnsDomain" + // "Microsoft.Management.Infrastructure.CimInstance#DnsServerResourceRecord" + // "Microsoft.Management.Infrastructure.CimInstance#DnsDomain" + // "Microsoft.Management.Infrastructure.CimInstance" + // "System.Object" string + + if( !obj.TypeNames.Contains( "Microsoft.Management.Infrastructure.CimInstance#DnsServerResourceRecord" ) ) + { + Log.WriteWarning( "asDnsRecord: wrong object type {0}", obj.TypeNames.FirstOrDefault() ); + return null; + } + + string strRT = (string)obj.Properties[ "RecordType" ].Value; + DnsRecordType tp; + if( !RecordTypes.recordFromString.TryGetValue( strRT, out tp ) ) + return null; + + /*// Debug code below: + obj.dumpProperties(); + CimInstance rd = (CimInstance)obj.Properties[ "RecordData" ].Value; + rd.dumpProperties(); //*/ + + CimKeyedCollection data = ( (CimInstance)obj.Properties[ "RecordData" ].Value ).CimInstanceProperties; + string host = CorrectHost( zoneName, (string)obj.Properties[ "HostName" ].Value ); + + switch( tp ) + { + // The compiler should create a Dictionary<> from dis switch + case DnsRecordType.A: + { + return new DnsRecord() + { + RecordType = tp, + RecordName = host, + RecordData = data[ "IPv4Address" ].Value as string, + }; + } + case DnsRecordType.AAAA: + { + return new DnsRecord() + { + RecordType = tp, + RecordName = host, + RecordData = data[ "IPv6Address" ].Value as string, + }; + } + case DnsRecordType.CNAME: + { + return new DnsRecord() + { + RecordType = tp, + RecordName = host, + RecordData = RemoveTrailingDot( data[ "HostNameAlias" ].Value as string ), + }; + } + case DnsRecordType.MX: + { + return new DnsRecord() + { + RecordType = tp, + RecordName = host, + RecordData = RemoveTrailingDot( data[ "MailExchange" ].Value as string ), + MxPriority = (UInt16)data[ "Preference" ].Value, + }; + } + case DnsRecordType.NS: + { + return new DnsRecord() + { + RecordType = tp, + RecordName = host, + RecordData = RemoveTrailingDot( data[ "NameServer" ].Value as string ), + }; + } + case DnsRecordType.TXT: + { + return new DnsRecord() + { + RecordType = tp, + RecordName = host, + RecordData = data[ "DescriptiveText" ].Value as string, + }; + } + case DnsRecordType.SOA: + { + string PrimaryServer = data[ "PrimaryServer" ].Value as string; + string ResponsiblePerson = data[ "ResponsiblePerson" ].Value as string; + UInt32? sn = (UInt32?)data[ "SerialNumber" ].Value; + return new DnsSOARecord() + { + RecordType = tp, + RecordName = host, + PrimaryNsServer = PrimaryServer, + PrimaryPerson = ResponsiblePerson, + SerialNumber = ( sn.HasValue ) ? sn.Value.ToString() : null, + }; + } + case DnsRecordType.SRV: + { + return new DnsRecord() + { + RecordType = tp, + RecordName = host, + RecordData = RemoveTrailingDot( data[ "DomainName" ].Value as string ), + SrvPriority = (UInt16)data[ "Priority" ].Value, + SrvWeight = (UInt16)data[ "Weight" ].Value, + SrvPort = (UInt16)data[ "Port" ].Value, + }; + } + } + return null; + } + } +} \ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/RecordTypes.cs b/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/RecordTypes.cs new file mode 100644 index 00000000..cb3f9864 --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/RecordTypes.cs @@ -0,0 +1,40 @@ +using System; +using System.Collections.Generic; +using System.Globalization; +using System.Linq; + +namespace WebsitePanel.Providers.DNS +{ + /// This static class holds 2 lookup tables, from/to DnsRecordType enum + internal static class RecordTypes + { + static readonly Dictionary s_lookup; + static readonly Dictionary s_lookupInv; + + static RecordTypes() + { + s_lookup = new Dictionary() + { + { "A", DnsRecordType.A }, + { "AAAA", DnsRecordType.AAAA }, + { "NS", DnsRecordType.NS }, + { "MX", DnsRecordType.MX }, + { "CNAME", DnsRecordType.CNAME }, + { "SOA", DnsRecordType.SOA }, + { "TXT", DnsRecordType.TXT }, + { "SRV", DnsRecordType.SRV }, + }; + + TextInfo ti = new CultureInfo( "en-US", false ).TextInfo; + + s_lookupInv = s_lookup + .ToDictionary( kvp => kvp.Value, kvp => ti.ToTitleCase( kvp.Key ) ); + } + + /// The dictionary that maps string record types to DnsRecordType enum + public static Dictionary recordFromString { get { return s_lookup; } } + + /// the dictionary that maps DnsRecordType enum to strings, suitable for PowerShell + public static Dictionary rrTypeFromRecord { get { return s_lookupInv; } } + } +} \ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/WebsitePanel.Providers.DNS.MsDNS2012.csproj b/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/WebsitePanel.Providers.DNS.MsDNS2012.csproj new file mode 100644 index 00000000..0dcf61bc --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/WebsitePanel.Providers.DNS.MsDNS2012.csproj @@ -0,0 +1,75 @@ + + + + + Debug + AnyCPU + {FA0FB0BA-5A39-4F4E-8EC2-B806B58B74D4} + Library + Properties + WebsitePanel.Providers.DNS.MsDNS2012 + WebsitePanel.Providers.DNS.MsDNS2012 + v4.0 + 512 + + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + False + ..\..\Lib\Microsoft.Management.Infrastructure.dll + True + + + + + + False + ..\..\Lib\System.Management.Automation.dll + True + + + + + + + + + + + + + + {684c932a-6c75-46ac-a327-f3689d89eb42} + WebsitePanel.Providers.Base + + + {e91e52f3-9555-4d00-b577-2b1dbdd87ca7} + WebsitePanel.Server.Utils + + + + + \ No newline at end of file diff --git a/WebsitePanel/Sources/WebsitePanel.Server.sln b/WebsitePanel/Sources/WebsitePanel.Server.sln index aaca761a..97e2925c 100644 --- a/WebsitePanel/Sources/WebsitePanel.Server.sln +++ b/WebsitePanel/Sources/WebsitePanel.Server.sln @@ -142,6 +142,12 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WebsitePanel.Providers.Host EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WebsitePanel.Providers.Web.WebDav", "WebsitePanel.Providers.Web.WebDav\WebsitePanel.Providers.Web.WebDav.csproj", "{CE2DF3D7-D6FF-48FA-B2EA-7B836FCBF698}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WebsitePanel.Providers.DNS.MsDNS2012", "WebsitePanel.Providers.DNS.MsDNS2012\WebsitePanel.Providers.DNS.MsDNS2012.csproj", "{FA0FB0BA-5A39-4F4E-8EC2-B806B58B74D4}" + ProjectSection(ProjectDependencies) = postProject + {684C932A-6C75-46AC-A327-F3689D89EB42} = {684C932A-6C75-46AC-A327-F3689D89EB42} + {E91E52F3-9555-4D00-B577-2B1DBDD87CA7} = {E91E52F3-9555-4D00-B577-2B1DBDD87CA7} + EndProjectSection +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -732,6 +738,16 @@ Global {CE2DF3D7-D6FF-48FA-B2EA-7B836FCBF698}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU {CE2DF3D7-D6FF-48FA-B2EA-7B836FCBF698}.Release|Mixed Platforms.Build.0 = Release|Any CPU {CE2DF3D7-D6FF-48FA-B2EA-7B836FCBF698}.Release|x86.ActiveCfg = Release|Any CPU + {FA0FB0BA-5A39-4F4E-8EC2-B806B58B74D4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {FA0FB0BA-5A39-4F4E-8EC2-B806B58B74D4}.Debug|Any CPU.Build.0 = Debug|Any CPU + {FA0FB0BA-5A39-4F4E-8EC2-B806B58B74D4}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU + {FA0FB0BA-5A39-4F4E-8EC2-B806B58B74D4}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU + {FA0FB0BA-5A39-4F4E-8EC2-B806B58B74D4}.Debug|x86.ActiveCfg = Debug|Any CPU + {FA0FB0BA-5A39-4F4E-8EC2-B806B58B74D4}.Release|Any CPU.ActiveCfg = Release|Any CPU + {FA0FB0BA-5A39-4F4E-8EC2-B806B58B74D4}.Release|Any CPU.Build.0 = Release|Any CPU + {FA0FB0BA-5A39-4F4E-8EC2-B806B58B74D4}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU + {FA0FB0BA-5A39-4F4E-8EC2-B806B58B74D4}.Release|Mixed Platforms.Build.0 = Release|Any CPU + {FA0FB0BA-5A39-4F4E-8EC2-B806B58B74D4}.Release|x86.ActiveCfg = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE From 601ee051de0cd0878cf4b61457799f43d40a0b0c Mon Sep 17 00:00:00 2001 From: Konstantin Date: Thu, 28 Nov 2013 20:43:48 +0100 Subject: [PATCH 07/32] Fixed the output folder --- .../WebsitePanel.Providers.DNS.MsDNS2012.csproj | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/WebsitePanel.Providers.DNS.MsDNS2012.csproj b/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/WebsitePanel.Providers.DNS.MsDNS2012.csproj index 0dcf61bc..3e204b0a 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/WebsitePanel.Providers.DNS.MsDNS2012.csproj +++ b/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/WebsitePanel.Providers.DNS.MsDNS2012.csproj @@ -17,7 +17,7 @@ true full false - bin\Debug\ + ..\WebsitePanel.Server\bin\Dns2012\ DEBUG;TRACE prompt 4 @@ -25,7 +25,7 @@ pdbonly true - bin\Release\ + ..\WebsitePanel.Server\bin\Dns2012\ TRACE prompt 4 From 147da8fde628e317b427505558662abe7f380f21 Mon Sep 17 00:00:00 2001 From: Konstantin Date: Thu, 28 Nov 2013 20:45:45 +0100 Subject: [PATCH 08/32] Updated web.config adding Dns2012 which requires .NET4 --- WebsitePanel/Sources/WebsitePanel.Server/Web.config | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/WebsitePanel/Sources/WebsitePanel.Server/Web.config b/WebsitePanel/Sources/WebsitePanel.Server/Web.config index 1b5facc3..d3cfc0ac 100644 --- a/WebsitePanel/Sources/WebsitePanel.Server/Web.config +++ b/WebsitePanel/Sources/WebsitePanel.Server/Web.config @@ -168,7 +168,7 @@ - + \ No newline at end of file From b4e891fb7eb4f66c2d69f202a9fef1da27e06891 Mon Sep 17 00:00:00 2001 From: Konstantin Date: Thu, 28 Nov 2013 22:01:20 +0100 Subject: [PATCH 09/32] Hopefully, updated the SQL database to include the new DNS 2012 provider --- WebsitePanel/Database/update_db.sql | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/WebsitePanel/Database/update_db.sql b/WebsitePanel/Database/update_db.sql index 60c539a0..8f746b3d 100644 --- a/WebsitePanel/Database/update_db.sql +++ b/WebsitePanel/Database/update_db.sql @@ -2607,3 +2607,12 @@ GO -- CRM UPDATE Providers SET EditorControl = 'CRM2011' Where ProviderID = 1201; + +-- DNS.2013 + +IF NOT EXISTS ( SELECT * FROM [dbo].[Providers] WHERE [ProviderID] = 410 ) +BEGIN + INSERT [dbo].[Providers] ([ProviderID], [GroupID], [ProviderName], [DisplayName], [ProviderType], [EditorControl], [DisableAutoDiscovery]) VALUES + (410, 7, N'MSDNS.2012', N'Microsoft DNS Server 2012+', N'WebsitePanel.Providers.DNS.MsDNS2012, WebsitePanel.Providers.DNS.MsDNS2012', N'MSDNS', NULL) +END +GO \ No newline at end of file From 1a278c34fe4772ad3c87db8ba683f15d0fa8686e Mon Sep 17 00:00:00 2001 From: robvde Date: Fri, 29 Nov 2013 14:35:10 +0400 Subject: [PATCH 10/32] Standard or organization user id generation was not consistent. Fixed to ensure consistency. --- .../ExchangeServerController.cs | 12 ++++++------ .../HostedSolution/OrganizationController.cs | 19 ++++++++++++++----- 2 files changed, 20 insertions(+), 11 deletions(-) diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/ExchangeServer/ExchangeServerController.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/ExchangeServer/ExchangeServerController.cs index e533a752..2070d35c 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/ExchangeServer/ExchangeServerController.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/ExchangeServer/ExchangeServerController.cs @@ -1235,7 +1235,7 @@ namespace WebsitePanel.EnterpriseServer DataProvider.DeleteExchangeAccount(itemId, accountId); } - +/* private static string BuildAccountName(string orgId, string name) { string accountName = name = name.Replace(" ", ""); @@ -1271,7 +1271,7 @@ namespace WebsitePanel.EnterpriseServer } } - +*/ #endregion @@ -3041,7 +3041,7 @@ namespace WebsitePanel.EnterpriseServer if (idx > -1) name = email.Substring(0, idx); - string accountName = BuildAccountName(org.OrganizationId, name); + string accountName = OrganizationController.BuildAccountNameEx(org, name); // add contact int exchangeServiceId = GetExchangeServiceID(org.PackageId); @@ -3375,7 +3375,7 @@ namespace WebsitePanel.EnterpriseServer int packageCheck = SecurityContext.CheckPackage(org.PackageId, DemandPackage.IsActive); if (packageCheck < 0) return packageCheck; - string accountName = OrganizationController.BuildAccountNameWithOrgId(org.OrganizationId, name, org.ServiceId); + string accountName = OrganizationController.BuildAccountNameEx(org, name); // add account // add contact @@ -4179,7 +4179,7 @@ namespace WebsitePanel.EnterpriseServer if (String.IsNullOrEmpty(name)) name = Utils.CleanIdentifier(folderName); - string accountName = BuildAccountName(org.OrganizationId, name); + string accountName = OrganizationController.BuildAccountNameEx(org, name); // add mailbox int exchangeServiceId = GetExchangeServiceID(org.PackageId); @@ -4324,7 +4324,7 @@ namespace WebsitePanel.EnterpriseServer if (EmailAddressExists(email)) return BusinessErrorCodes.ERROR_EXCHANGE_EMAIL_EXISTS; - string accountName = BuildAccountName(org.OrganizationId, name); + string accountName = OrganizationController.BuildAccountNameEx(org, name); int exchangeServiceId = GetExchangeServiceID(org.PackageId); ExchangeServer exchange = GetExchangeServer(exchangeServiceId, org.ServiceId); diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/HostedSolution/OrganizationController.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/HostedSolution/OrganizationController.cs index 0099c991..42f97417 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/HostedSolution/OrganizationController.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/HostedSolution/OrganizationController.cs @@ -397,7 +397,7 @@ namespace WebsitePanel.EnterpriseServer { foreach (AdditionalGroup additionalGroup in GetAdditionalGroups(settings.UserId)) { - string additionalGroupName = BuildAccountNameWithOrgId(org.OrganizationId, additionalGroup.GroupName.Replace(" ", ""), org.ServiceId); + string additionalGroupName = BuildAccountNameEx(org, additionalGroup.GroupName.Replace(" ", "")); if (orgProxy.CreateSecurityGroup(org.OrganizationId, additionalGroupName) == 0) { @@ -1372,7 +1372,7 @@ namespace WebsitePanel.EnterpriseServer return BusinessErrorCodes.ERROR_EXCHANGE_EMAIL_EXISTS; // load organization - Organization org = GetOrganization(itemId); + WebsitePanel.Providers.HostedSolution.Organization org = GetOrganization(itemId); if (org == null) { @@ -1397,7 +1397,7 @@ namespace WebsitePanel.EnterpriseServer Organizations orgProxy = GetOrganizationProxy(org.ServiceId); string upn = string.Format("{0}@{1}", name, domain); - string sAMAccountName = AppendOrgId(serviceSettings) ? BuildAccountNameWithOrgId(org.OrganizationId, name, org.ServiceId) : BuildAccountName(org.OrganizationId, name, org.ServiceId); + string sAMAccountName = BuildAccountNameEx(org, name); TaskManager.Write("accountName :" + sAMAccountName); TaskManager.Write("upn :" + upn); @@ -1435,6 +1435,15 @@ namespace WebsitePanel.EnterpriseServer return userId; } + + public static string BuildAccountNameEx(Organization org, string name) + { + StringDictionary serviceSettings = ServerController.GetServiceSettings(org.ServiceId); + + return AppendOrgId(serviceSettings) ? BuildAccountNameWithOrgId(org.OrganizationId, name, org.ServiceId) : BuildAccountName(org.OrganizationId, name, org.ServiceId); + } + + /// Checks should or not user name include organization id. /// The service settings. /// True - if organization id should be appended. @@ -2359,8 +2368,8 @@ namespace WebsitePanel.EnterpriseServer Organizations orgProxy = GetOrganizationProxy(org.ServiceId); - string groupName = BuildAccountNameWithOrgId(org.OrganizationId, displayName.Replace(" ", ""), org.ServiceId); - + string groupName = BuildAccountNameEx(org, displayName.Replace(" ", "")); + TaskManager.Write("accountName :" + groupName); if (orgProxy.CreateSecurityGroup(org.OrganizationId, groupName) == 0) From 966f924e119f174b5dae837158510260f33d1d7e Mon Sep 17 00:00:00 2001 From: robvde Date: Fri, 29 Nov 2013 15:43:15 +0400 Subject: [PATCH 11/32] PublicFolder Mailbox primary email address created wrongly. --- .../Exchange2013.cs | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.HostedSolution.Exchange2013/Exchange2013.cs b/WebsitePanel/Sources/WebsitePanel.Providers.HostedSolution.Exchange2013/Exchange2013.cs index 1c77bf52..5f34766f 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.HostedSolution.Exchange2013/Exchange2013.cs +++ b/WebsitePanel/Sources/WebsitePanel.Providers.HostedSolution.Exchange2013/Exchange2013.cs @@ -4330,7 +4330,7 @@ namespace WebsitePanel.Providers.HostedSolution string orgCanonicalName = ConvertADPathToCanonicalName(organizationDistinguishedName); //create organization public folder mailbox if required - CheckOrganizationPublicFolderMailbox(runSpace, orgCanonicalName, organizationId); + CheckOrganizationPublicFolderMailbox(runSpace, orgCanonicalName, organizationId, domain); //create organization root folder if required CheckOrganizationRootFolder(runSpace, organizationId, securityGroup, orgCanonicalName, organizationId); @@ -4360,7 +4360,7 @@ namespace WebsitePanel.Providers.HostedSolution ExchangeLog.LogEnd("CreatePublicFolderInternal"); } - private void CheckOrganizationPublicFolderMailbox(Runspace runSpace, string orgCanonicalName, string organizationId) + private void CheckOrganizationPublicFolderMailbox(Runspace runSpace, string orgCanonicalName, string organizationId, string domain) { ExchangeLog.LogStart("CheckOrganizationPublicFolderMailbox"); @@ -4370,7 +4370,7 @@ namespace WebsitePanel.Providers.HostedSolution ExchangeTransaction transaction = StartTransaction(); try { - string rootId = AddPublicFolderMailbox(runSpace, orgCanonicalName, GetPublicFolderMailboxName(organizationId)); + string rootId = AddPublicFolderMailbox(runSpace, orgCanonicalName, GetPublicFolderMailboxName(organizationId), domain); transaction.RegisterNewPublicFolderMailbox(orgCanonicalName + "/" + GetPublicFolderMailboxName(organizationId)); } catch @@ -4421,12 +4421,13 @@ namespace WebsitePanel.Providers.HostedSolution return id; } - private string AddPublicFolderMailbox(Runspace runSpace, string organizationDistinguishedName, string name) + private string AddPublicFolderMailbox(Runspace runSpace, string organizationDistinguishedName, string name, string domain) { ExchangeLog.LogStart("CreatePublicFolderMailbox"); Command cmd = new Command("New-Mailbox"); cmd.Parameters.Add("Name", name); cmd.Parameters.Add("PublicFolder"); + cmd.Parameters.Add("PrimarySmtpAddress", name.Replace(" ", "")+"@"+domain); cmd.Parameters.Add("OrganizationalUnit", organizationDistinguishedName); string database = GetDatabase(runSpace, PrimaryDomainController, MailboxDatabase); ExchangeLog.DebugInfo("database: " + database); From 4dcd48997262045008bca6b943b578065657bbd1 Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Fri, 29 Nov 2013 09:01:05 -0500 Subject: [PATCH 12/32] Added tag build-2.1.0.240 for changeset 33283adaf0ac From 1c116fb6f02314c80005f8f3b549b54726786929 Mon Sep 17 00:00:00 2001 From: Konstantin Date: Sat, 30 Nov 2013 16:11:14 +0100 Subject: [PATCH 13/32] Added copyright messages --- .../DnsCommands.cs | 30 ++++++++++++++++++- .../MsDNS.cs | 4 +-- .../PowerShellHelper.cs | 30 ++++++++++++++++++- .../RecordConverter.cs | 30 ++++++++++++++++++- .../RecordTypes.cs | 30 ++++++++++++++++++- 5 files changed, 117 insertions(+), 7 deletions(-) diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/DnsCommands.cs b/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/DnsCommands.cs index a82af726..b03d3f58 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/DnsCommands.cs +++ b/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/DnsCommands.cs @@ -1,4 +1,32 @@ -using System; +// Copyright (c) 2012 - 2013, Outercurve Foundation. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without modification, +// are permitted provided that the following conditions are met: +// +// - Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// - Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// - Neither the name of the Outercurve Foundation nor the names of its +// contributors may be used to endorse or promote products derived from this +// software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +using System; using System.Linq; using System.Management.Automation; using System.Management.Automation.Runspaces; diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/MsDNS.cs b/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/MsDNS.cs index 9dfa9f69..13b69fdb 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/MsDNS.cs +++ b/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/MsDNS.cs @@ -1,4 +1,4 @@ -// Copyright (c) 2012, Outercurve Foundation. +// Copyright (c) 2012 - 2013, Outercurve Foundation. // All rights reserved. // // Redistribution and use in source and binary forms, with or without modification, @@ -26,8 +26,6 @@ // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS // SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -// A lot of modifications made since 2012.. - using System; using System.Management; using System.Collections.Generic; diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/PowerShellHelper.cs b/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/PowerShellHelper.cs index 980e5ac7..72f5563e 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/PowerShellHelper.cs +++ b/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/PowerShellHelper.cs @@ -1,4 +1,32 @@ -using System; +// Copyright (c) 2012 - 2013, Outercurve Foundation. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without modification, +// are permitted provided that the following conditions are met: +// +// - Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// - Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// - Neither the name of the Outercurve Foundation nor the names of its +// contributors may be used to endorse or promote products derived from this +// software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Management.Automation; diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/RecordConverter.cs b/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/RecordConverter.cs index 3cf72bfb..31743ea0 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/RecordConverter.cs +++ b/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/RecordConverter.cs @@ -1,4 +1,32 @@ -using System; +// Copyright (c) 2012 - 2013, Outercurve Foundation. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without modification, +// are permitted provided that the following conditions are met: +// +// - Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// - Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// - Neither the name of the Outercurve Foundation nor the names of its +// contributors may be used to endorse or promote products derived from this +// software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +using System; using System.Linq; using System.Management.Automation; using Microsoft.Management.Infrastructure; diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/RecordTypes.cs b/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/RecordTypes.cs index cb3f9864..38efb4db 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/RecordTypes.cs +++ b/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/RecordTypes.cs @@ -1,4 +1,32 @@ -using System; +// Copyright (c) 2012 - 2013, Outercurve Foundation. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without modification, +// are permitted provided that the following conditions are met: +// +// - Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// - Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// - Neither the name of the Outercurve Foundation nor the names of its +// contributors may be used to endorse or promote products derived from this +// software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +using System; using System.Collections.Generic; using System.Globalization; using System.Linq; From 9a903d1e48805e7fcda088b538749dcc7042b21a Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Sat, 30 Nov 2013 10:34:52 -0500 Subject: [PATCH 14/32] Added tag build-2.1.0.241 for changeset a85c696508c5 From c4cad794e497f03c4b45b518888f697769891253 Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Sat, 30 Nov 2013 16:53:04 -0500 Subject: [PATCH 15/32] Added tag build-2.1.0.242 for changeset 06ade4c4f514 From 142d5f51e8ea4355695bd2e56a50b3daa8159259 Mon Sep 17 00:00:00 2001 From: vfedosevich Date: Tue, 3 Dec 2013 16:08:29 +0300 Subject: [PATCH 16/32] bug fixes --- .../EnterpriseStorageController.cs | 65 ++++++++++++++----- .../Packages/PackageController.cs | 53 +++++++-------- 2 files changed, 71 insertions(+), 47 deletions(-) diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/EnterpriseStorage/EnterpriseStorageController.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/EnterpriseStorage/EnterpriseStorageController.cs index 5f17b245..c4b90813 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/EnterpriseStorage/EnterpriseStorageController.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/EnterpriseStorage/EnterpriseStorageController.cs @@ -66,12 +66,12 @@ namespace WebsitePanel.EnterpriseServer public static ResultObject DeleteEnterpriseStorage(int packageId, int itemId) { - return DeleteEnterpriseStorageInternal(packageId,itemId); + return DeleteEnterpriseStorageInternal(packageId, itemId); } public static SystemFile[] GetFolders(int itemId) { - return GetFoldersInternal(itemId); + return GetFoldersInternal(itemId); } public static SystemFile GetFolder(int itemId, string folderName) @@ -102,7 +102,7 @@ namespace WebsitePanel.EnterpriseServer public static ResultObject DeleteFolder(int itemId, string folderName) { return DeleteFolderInternal(itemId, folderName); - } + } public static List SearchESAccounts(int itemId, string filterColumn, string filterValue, string sortColumn) { @@ -121,7 +121,7 @@ namespace WebsitePanel.EnterpriseServer public static ESPermission[] GetFolderPermission(int itemId, string folder) { - return ConvertToESPermission(itemId,GetFolderWebDavRulesInternal(itemId, folder)); + return ConvertToESPermission(itemId, GetFolderWebDavRulesInternal(itemId, folder)); } public static bool CheckFileServicesInstallation(int serviceId) @@ -144,7 +144,7 @@ namespace WebsitePanel.EnterpriseServer public static bool GetDirectoryBrowseEnabled(int itemId, string siteId) { - return GetDirectoryBrowseEnabledInternal(itemId, siteId); + return GetDirectoryBrowseEnabledInternal(itemId, siteId); } public static void SetDirectoryBrowseEnabled(int itemId, string siteId, bool enabled) @@ -164,10 +164,10 @@ namespace WebsitePanel.EnterpriseServer public static int DeleteWebDavDirectory(int packageId, string site, string vdirName) { return DeleteWebDavDirectoryInternal(packageId, site, vdirName); - } + } #endregion - + #endregion protected static bool CheckUsersDomainExistsInternal(int itemId) @@ -227,7 +227,7 @@ namespace WebsitePanel.EnterpriseServer string usersDomain = esSesstings["UsersDomain"]; WebServer web = GetWebServer(packageId); - + if (!web.VirtualDirectoryExists(usersDomain, org.OrganizationId)) { checkResult = false; @@ -347,7 +347,7 @@ namespace WebsitePanel.EnterpriseServer Organization org = OrganizationController.GetOrganization(itemId); if (org == null) { - return null; + return new SystemFile[0]; } EnterpriseStorage es = GetEnterpriseStorage(GetEnterpriseStorageServiceID(org.PackageId)); @@ -418,6 +418,8 @@ namespace WebsitePanel.EnterpriseServer EnterpriseStorage es = GetEnterpriseStorage(GetEnterpriseStorageServiceID(org.PackageId)); es.CreateFolder(org.OrganizationId, folderName); + + UpdateESHardQuota(org.PackageId); } catch (Exception ex) { @@ -473,7 +475,7 @@ namespace WebsitePanel.EnterpriseServer return result; } - + protected static List SearchESAccountsInternal(int itemId, string filterColumn, string filterValue, string sortColumn) { // load organization @@ -547,7 +549,7 @@ namespace WebsitePanel.EnterpriseServer return result; } - + #region WebDav protected static int AddWebDavDirectoryInternal(int packageId, string site, string vdirName, string contentpath) @@ -750,7 +752,7 @@ namespace WebsitePanel.EnterpriseServer var account = ObjectUtils.FillObjectFromDataReader(DataProvider.GetExchangeAccountByAccountName(itemId, permission.Account)); - if (account.AccountType == ExchangeAccountType.SecurityGroup + if (account.AccountType == ExchangeAccountType.SecurityGroup || account.AccountType == ExchangeAccountType.DefaultSecurityGroup) { rule.Roles.Add(permission.Account); @@ -833,6 +835,33 @@ namespace WebsitePanel.EnterpriseServer } + private static void UpdateESHardQuota(int packageId) + { + int esServiceId = PackageController.GetPackageServiceId(packageId, ResourceGroups.EnterpriseStorage); + + if (esServiceId != 0) + { + + StringDictionary esSesstings = ServerController.GetServiceSettings(esServiceId); + + string usersHome = esSesstings["UsersHome"]; + string usersDomain = esSesstings["UsersDomain"]; + string locationDrive = esSesstings["LocationDrive"]; + + string homePath = string.Format("{0}:\\{1}", locationDrive, usersHome); + + int osId = PackageController.GetPackageServiceId(packageId, ResourceGroups.Os); + bool enableHardQuota = (esSesstings["enablehardquota"] != null) + ? bool.Parse(esSesstings["enablehardquota"]) + : false; + + if (enableHardQuota && osId != 0 && OperatingSystemController.CheckFileServicesInstallation(osId)) + { + FilesController.SetFolderQuota(packageId, usersHome, locationDrive, Quotas.ENTERPRISESTORAGE_DISKSTORAGESPACE); + } + } + } + /// /// Get webserver (IIS) installed on server connected with packageId /// @@ -842,15 +871,15 @@ namespace WebsitePanel.EnterpriseServer { try { - var group = ServerController.GetResourceGroupByName(ResourceGroups.Web); + var webGroup = ServerController.GetResourceGroupByName(ResourceGroups.Web); + var webProviders = ServerController.GetProvidersByGroupID(webGroup.GroupId); + var esServiceInfo = ServerController.GetServiceInfo(GetEnterpriseStorageServiceID(packageId)); - var webProviders = ServerController.GetProvidersByGroupID(group.GroupId); - - var package = PackageController.GetPackage(packageId); + var serverId = esServiceInfo.ServerId; foreach (var webProvider in webProviders) { - BoolResult result = ServerController.IsInstalled(package.ServerId, webProvider.ProviderId); + BoolResult result = ServerController.IsInstalled(serverId, webProvider.ProviderId); if (result.IsSuccess && result.Value) { @@ -867,7 +896,7 @@ namespace WebsitePanel.EnterpriseServer //foreach (string key in serviceSettings.Keys) // cnfg.ProviderSettings.Settings[key] = serviceSettings[key]; - ServiceProviderProxy.ServerInit(web, cnfg, package.ServerId); + ServiceProviderProxy.ServerInit(web, cnfg, serverId); return web; } diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/Packages/PackageController.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/Packages/PackageController.cs index f07a01bf..cda59b87 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/Packages/PackageController.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/Packages/PackageController.cs @@ -489,7 +489,7 @@ namespace WebsitePanel.EnterpriseServer ServerController.AddServiceDNSRecords(packageId, ResourceGroups.VPSForPC, domain, ""); } } - + if (createInstantAlias) ServerController.CreateDomainInstantAlias("", domainId); @@ -783,7 +783,6 @@ namespace WebsitePanel.EnterpriseServer // Update the Hard quota on home folder in case it was enabled and in case there was a change in disk space UpdatePackageHardQuota(package.PackageId); - UpdateESHardQuota(package.PackageId); DataProvider.DistributePackageServices(SecurityContext.User.UserId, package.PackageId); } @@ -981,7 +980,6 @@ namespace WebsitePanel.EnterpriseServer // Added By Haya UpdatePackageHardQuota(packageId); - UpdateESHardQuota(packageId); // save package item return AddPackageItem(homeFolder); @@ -996,7 +994,7 @@ namespace WebsitePanel.EnterpriseServer { DataProvider.UpdatePackageBandwidthUpdate(packageId, updateDate); } - + // This gets the system quota and updates the home folder with the value public static void UpdatePackageHardQuota(int packageId) { @@ -1021,32 +1019,32 @@ namespace WebsitePanel.EnterpriseServer } - public static void UpdateESHardQuota(int packageId) - { - int esServiceId = PackageController.GetPackageServiceId(packageId, ResourceGroups.EnterpriseStorage); + //public static void UpdateESHardQuota(int packageId) + //{ + // int esServiceId = PackageController.GetPackageServiceId(packageId, ResourceGroups.EnterpriseStorage); - if (esServiceId != 0) - { + // if (esServiceId != 0) + // { - StringDictionary esSesstings = ServerController.GetServiceSettings(esServiceId); + // StringDictionary esSesstings = ServerController.GetServiceSettings(esServiceId); - string usersHome = esSesstings["UsersHome"]; - string usersDomain = esSesstings["UsersDomain"]; - string locationDrive = esSesstings["LocationDrive"]; + // string usersHome = esSesstings["UsersHome"]; + // string usersDomain = esSesstings["UsersDomain"]; + // string locationDrive = esSesstings["LocationDrive"]; - string homePath = string.Format("{0}:\\{1}", locationDrive, usersHome); + // string homePath = string.Format("{0}:\\{1}", locationDrive, usersHome); - int osId = PackageController.GetPackageServiceId(packageId, ResourceGroups.Os); - bool enableHardQuota = (esSesstings["enablehardquota"] != null) - ? bool.Parse(esSesstings["enablehardquota"]) - : false; + // int osId = PackageController.GetPackageServiceId(packageId, ResourceGroups.Os); + // bool enableHardQuota = (esSesstings["enablehardquota"] != null) + // ? bool.Parse(esSesstings["enablehardquota"]) + // : false; - if (enableHardQuota && osId != 0 && OperatingSystemController.CheckFileServicesInstallation(osId)) - { - FilesController.SetFolderQuota(packageId, usersHome, locationDrive, Quotas.ENTERPRISESTORAGE_DISKSTORAGESPACE); - } - } - } + // if (enableHardQuota && osId != 0 && OperatingSystemController.CheckFileServicesInstallation(osId)) + // { + // FilesController.SetFolderQuota(packageId, usersHome, locationDrive, Quotas.ENTERPRISESTORAGE_DISKSTORAGESPACE); + // } + // } + //} #endregion @@ -1090,7 +1088,7 @@ namespace WebsitePanel.EnterpriseServer if (result.Result < 0) result.Result = SecurityContext.CheckAccount(DemandAccount.NotDemo | DemandAccount.IsActive | DemandAccount.IsResellerCSR); - + if (result.Result < 0) return result; int addonId = 0; @@ -1108,7 +1106,6 @@ namespace WebsitePanel.EnterpriseServer // Update the Hard quota on home folder in case it was enabled and in case there was a change in disk space UpdatePackageHardQuota(addon.PackageId); - UpdateESHardQuota(addon.PackageId); return result; } @@ -1138,7 +1135,6 @@ namespace WebsitePanel.EnterpriseServer // Update the Hard quota on home folder in case it was enabled and in case there was a change in disk space UpdatePackageHardQuota(addon.PackageId); - UpdateESHardQuota(addon.PackageId); return result; } @@ -1155,7 +1151,6 @@ namespace WebsitePanel.EnterpriseServer // Update the Hard quota on home folder in case it was enabled and in case there was a change in disk space UpdatePackageHardQuota(packageId); - UpdateESHardQuota(packageId); return 0; } @@ -2107,7 +2102,7 @@ namespace WebsitePanel.EnterpriseServer } items["Addons"] = addOns; - + // package contexts Hashtable cntxs = new Hashtable(); foreach (PackageInfo package in packages) From 50c3575dca47405f1c0f7e519cc9a864e37c392a Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Tue, 3 Dec 2013 16:07:43 -0500 Subject: [PATCH 17/32] Added tag build-2.1.0.243 for changeset e1934247db27 From ca41b9907be994a0614883c20f4fe7044fbf58d1 Mon Sep 17 00:00:00 2001 From: Konstantin Date: Wed, 4 Dec 2013 03:44:39 +0100 Subject: [PATCH 18/32] Bugfix: exception while removing records. --- .../WebsitePanel.Providers.DNS.MsDNS2012/DnsCommands.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/DnsCommands.cs b/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/DnsCommands.cs index b03d3f58..41a71eca 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/DnsCommands.cs +++ b/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/DnsCommands.cs @@ -55,7 +55,8 @@ namespace WebsitePanel.Providers.DNS /// Same command private static Command addParam( this Command cmd, string name ) { - cmd.Parameters.Add( name ); + // http://stackoverflow.com/a/10304080/126995 + cmd.Parameters.Add( name, true ); return cmd; } From e6c81e844d41f79c049e948638f34916ad6d1c5c Mon Sep 17 00:00:00 2001 From: Konstantin Date: Wed, 4 Dec 2013 16:30:58 +0100 Subject: [PATCH 19/32] bugfix: exception while adding a secondary DNS zone --- .../DnsCommands.cs | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/DnsCommands.cs b/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/DnsCommands.cs index 41a71eca..52e0e367 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/DnsCommands.cs +++ b/WebsitePanel/Sources/WebsitePanel.Providers.DNS.MsDNS2012/DnsCommands.cs @@ -188,17 +188,16 @@ namespace WebsitePanel.Providers.DNS Log.WriteEnd( "Add_DnsServerPrimaryZone" ); } + /// Call Add-DnsServerSecondaryZone cmdlet + /// + /// a name of a zone + /// an array of IP addresses of the master servers of the zone. You can use both IPv4 and IPv6. public static void Add_DnsServerSecondaryZone( this PowerShellHelper ps, string zoneName, string[] masterServers ) { - // Add-DnsServerSecondaryZone -Name zzz.com -ZoneFile zzz.com.dns + // Add-DnsServerSecondaryZone -Name zzz.com -ZoneFile zzz.com.dns -MasterServers ... var cmd = new Command( "Add-DnsServerSecondaryZone" ); cmd.addParam( "Name", zoneName ); cmd.addParam( "ZoneFile", zoneName + ".dns" ); - ps.RunPipeline( cmd ); - - // Set-DnsServerSecondaryZone -Name zzz.com -MasterServers ... - cmd = new Command( "Set-DnsServerSecondaryZone" ); - cmd.addParam( "Name", zoneName ); cmd.addParam( "MasterServers", masterServers ); ps.RunPipeline( cmd ); } From 43d2cebb88724fcba5ea5ebf0f58c07ac0cb1f2b Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Wed, 4 Dec 2013 11:49:48 -0500 Subject: [PATCH 20/32] Added tag build-2.1.0.244 for changeset 6f6e559d4ac1 From f6b2abc3b8256bd2b9a91efd8d5a09df52b8c468 Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Wed, 4 Dec 2013 17:32:02 -0500 Subject: [PATCH 21/32] Added tag build-2.1.0.245 for changeset d74fead26751 From 66ff448cb3a8a3084ecf32168a8db83d8297cdfe Mon Sep 17 00:00:00 2001 From: Webio Date: Thu, 5 Dec 2013 08:05:34 +0100 Subject: [PATCH 22/32] Support for MySQL Server 5.6 --- WebsitePanel/Database/install_db.sql | 2 + WebsitePanel/Database/update_db.sql | 9 ++ .../Lib/References/MySQL/MySql.Data.dll | Bin 377856 -> 437248 bytes .../MySqlServer56.cs | 83 ++++++++++++++++++ ...bsitePanel.Providers.Database.MySQL.csproj | 1 + 5 files changed, 95 insertions(+) create mode 100644 WebsitePanel/Sources/WebsitePanel.Providers.Database.MySQL/MySqlServer56.cs diff --git a/WebsitePanel/Database/install_db.sql b/WebsitePanel/Database/install_db.sql index d18ecb79..cee9338c 100644 --- a/WebsitePanel/Database/install_db.sql +++ b/WebsitePanel/Database/install_db.sql @@ -41859,6 +41859,8 @@ INSERT [dbo].[Providers] ([ProviderID], [GroupID], [ProviderName], [DisplayName] GO INSERT [dbo].[Providers] ([ProviderID], [GroupID], [ProviderName], [DisplayName], [ProviderType], [EditorControl], [DisableAutoDiscovery]) VALUES (301, 11, N'MySQL', N'MySQL Server 5.5', N'WebsitePanel.Providers.Database.MySqlServer55, WebsitePanel.Providers.Database.MySQL', N'MySQL', NULL) GO +INSERT [dbo].[Providers] ([ProviderId], [GroupId], [ProviderName], [DisplayName], [ProviderType], [EditorControl], [DisableAutoDiscovery]) VALUES (302, 11, N'MySQL', N'MySQL Server 5.6', N'WebsitePanel.Providers.Database.MySqlServer56, WebsitePanel.Providers.Database.MySQL', N'MySQL', NULL) +GO INSERT [dbo].[Providers] ([ProviderID], [GroupID], [ProviderName], [DisplayName], [ProviderType], [EditorControl], [DisableAutoDiscovery]) VALUES (400, 40, N'HyperVForPC', N'Microsoft Hyper-V For Private Cloud', N'WebsitePanel.Providers.VirtualizationForPC.HyperVForPC, WebsitePanel.Providers.VirtualizationForPC.HyperVForPC', N'HyperVForPrivateCloud', 1) GO INSERT [dbo].[Quotas] ([QuotaID], [GroupID], [QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota]) VALUES (2, 6, 1, N'MySQL4.Databases', N'Databases', 2, 1, 7, NULL) diff --git a/WebsitePanel/Database/update_db.sql b/WebsitePanel/Database/update_db.sql index 193b20b6..72254870 100644 --- a/WebsitePanel/Database/update_db.sql +++ b/WebsitePanel/Database/update_db.sql @@ -2740,3 +2740,12 @@ WHERE END GO +IF NOT EXISTS (SELECT * FROM [dbo].[Providers] WHERE [DisplayName] = 'MySQL Server 5.6') +BEGIN +INSERT [dbo].[Providers] ([ProviderId], [GroupId], [ProviderName], [DisplayName], [ProviderType], [EditorControl], [DisableAutoDiscovery]) VALUES(302, 11, N'MySQL', N'MySQL Server 5.6', N'WebsitePanel.Providers.Database.MySqlServer56, WebsitePanel.Providers.Database.MySQL', N'MySQL', NULL) +END +ELSE +BEGIN +UPDATE [dbo].[Providers] SET [DisableAutoDiscovery] = NULL WHERE [DisplayName] = 'MySQL Server 5.6' +END +GO \ No newline at end of file diff --git a/WebsitePanel/Lib/References/MySQL/MySql.Data.dll b/WebsitePanel/Lib/References/MySQL/MySql.Data.dll index 088ef1c0b702714d9a78210c8b85a6c9c471a006..c029eae743a1b8aff90774f2b717d3c54f2a173c 100644 GIT binary patch literal 437248 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 VnR?T#bj2+flK7v~{QnID{|{Yjf*Sw; literal 377856 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%0A&^5uNT>^y6=MUQQ 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 b&UO5=eDQYOqm=v3)1RgA=VkuCLEwJ?>~!%~ diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Database.MySQL/MySqlServer56.cs b/WebsitePanel/Sources/WebsitePanel.Providers.Database.MySQL/MySqlServer56.cs new file mode 100644 index 00000000..cbb5b13c --- /dev/null +++ b/WebsitePanel/Sources/WebsitePanel.Providers.Database.MySQL/MySqlServer56.cs @@ -0,0 +1,83 @@ +// Copyright (c) 2012, Outercurve Foundation. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without modification, +// are permitted provided that the following conditions are met: +// +// - Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// - Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// - Neither the name of the Outercurve Foundation nor the names of its +// contributors may be used to endorse or promote products derived from this +// software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +using System; +using System.Collections.Generic; +using System.Text; +using System.Text.RegularExpressions; +using System.Data; +using Microsoft.Win32; +//using MySql.Data.MySqlClient; +using System.IO; + +using WebsitePanel.Server.Utils; +using WebsitePanel.Providers.Utils; +using WebsitePanel.Providers; +using System.Reflection; + +namespace WebsitePanel.Providers.Database +{ + public class MySqlServer56 : MySqlServer + { + + public MySqlServer56() + { + + } + + public override bool IsInstalled() + { + string versionNumber = null; + + RegistryKey HKLM = Registry.LocalMachine; + + RegistryKey key = HKLM.OpenSubKey(@"SOFTWARE\MySQL AB\MySQL Server 5.6"); + + if (key != null) + { + versionNumber = (string)key.GetValue("Version"); + } + else + { + key = HKLM.OpenSubKey(@"SOFTWARE\Wow6432Node\MySQL AB\MySQL Server 5.6"); + if (key != null) + { + versionNumber = (string)key.GetValue("Version"); + } + else + { + return false; + } + } + + string[] split = versionNumber.Split(new char[] { '.' }); + + return split[0].Equals("5") & split[1].Equals("6"); + } + } +} diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Database.MySQL/WebsitePanel.Providers.Database.MySQL.csproj b/WebsitePanel/Sources/WebsitePanel.Providers.Database.MySQL/WebsitePanel.Providers.Database.MySQL.csproj index 4a691541..3750d9e5 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.Database.MySQL/WebsitePanel.Providers.Database.MySQL.csproj +++ b/WebsitePanel/Sources/WebsitePanel.Providers.Database.MySQL/WebsitePanel.Providers.Database.MySQL.csproj @@ -71,6 +71,7 @@ + From a7b1774122ec0a535ac630a52528e668fc3c0cb0 Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Fri, 6 Dec 2013 11:51:49 -0500 Subject: [PATCH 23/32] Added tag build-2.1.0.246 for changeset 2cda86f67608 From 703d734f2dea2a505e815ce2c87c817aa8078847 Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Fri, 6 Dec 2013 19:30:24 -0500 Subject: [PATCH 24/32] Try to remove Website Check in Enterprise Server as a temp check --- .../EnterpriseStorage/EnterpriseStorageController.cs | 7 ------- 1 file changed, 7 deletions(-) diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/EnterpriseStorage/EnterpriseStorageController.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/EnterpriseStorage/EnterpriseStorageController.cs index c4b90813..1e88d519 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/EnterpriseStorage/EnterpriseStorageController.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/EnterpriseStorage/EnterpriseStorageController.cs @@ -188,13 +188,6 @@ namespace WebsitePanel.EnterpriseServer if (web != null) { - var esServiceId = GetEnterpriseStorageServiceID(packageId); - - StringDictionary esSesstings = ServerController.GetServiceSettings(esServiceId); - - string usersDomain = esSesstings["UsersDomain"]; - - if (web.SiteExists(usersDomain)) return true; } From 12e0a49c4081ed703a439deee591832f0b9b5099 Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Fri, 6 Dec 2013 19:35:57 -0500 Subject: [PATCH 25/32] Added tag build-2.1.0.247 for changeset 5a1cd0d8e142 From b70c6ae26de984282a4cb95a77ef8c2f9d232c4a Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Fri, 6 Dec 2013 19:40:46 -0500 Subject: [PATCH 26/32] Revert Change --- .../EnterpriseStorage/EnterpriseStorageController.cs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/EnterpriseStorage/EnterpriseStorageController.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/EnterpriseStorage/EnterpriseStorageController.cs index 1e88d519..c4b90813 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/EnterpriseStorage/EnterpriseStorageController.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/EnterpriseStorage/EnterpriseStorageController.cs @@ -188,6 +188,13 @@ namespace WebsitePanel.EnterpriseServer if (web != null) { + var esServiceId = GetEnterpriseStorageServiceID(packageId); + + StringDictionary esSesstings = ServerController.GetServiceSettings(esServiceId); + + string usersDomain = esSesstings["UsersDomain"]; + + if (web.SiteExists(usersDomain)) return true; } From 8db072a0a5d4ad7d39253b6f0ad73e4988eedbcc Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Fri, 6 Dec 2013 19:48:13 -0500 Subject: [PATCH 27/32] Added tag build-2.1.0.248 for changeset 1b65fdfb2068 From 32188fcb494531fe68d2e4c5ad7b022719baa158 Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Fri, 6 Dec 2013 20:14:42 -0500 Subject: [PATCH 28/32] Try another change to ES Storage --- .../EnterpriseStorage/EnterpriseStorageController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/EnterpriseStorage/EnterpriseStorageController.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/EnterpriseStorage/EnterpriseStorageController.cs index c4b90813..7ead3a3a 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/EnterpriseStorage/EnterpriseStorageController.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/EnterpriseStorage/EnterpriseStorageController.cs @@ -198,7 +198,7 @@ namespace WebsitePanel.EnterpriseServer return true; } - return false; + return true; } protected static bool CheckEnterpriseStorageInitializationInternal(int packageId, int itemId) From 36f8ca80ae98c39eef4a955582c6a963b54ced91 Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Fri, 6 Dec 2013 20:20:23 -0500 Subject: [PATCH 29/32] Added tag build-2.1.0.249 for changeset a2f60d4bb3cd From 39ca25c2a61237d83dea67e7aa3d81c68ecd4e79 Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Fri, 6 Dec 2013 20:25:38 -0500 Subject: [PATCH 30/32] Revert Change --- .../EnterpriseStorage/EnterpriseStorageController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/EnterpriseStorage/EnterpriseStorageController.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/EnterpriseStorage/EnterpriseStorageController.cs index 7ead3a3a..c4b90813 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/EnterpriseStorage/EnterpriseStorageController.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/EnterpriseStorage/EnterpriseStorageController.cs @@ -198,7 +198,7 @@ namespace WebsitePanel.EnterpriseServer return true; } - return true; + return false; } protected static bool CheckEnterpriseStorageInitializationInternal(int packageId, int itemId) From 893c425bdbf93cb3426b148e38e39e756474256c Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Fri, 6 Dec 2013 20:31:20 -0500 Subject: [PATCH 31/32] Added tag build-2.1.0.250 for changeset 36a38022163e From a87b6e7112bfbf25a7244eea92235563e5e807ca Mon Sep 17 00:00:00 2001 From: Virtuworks Date: Sun, 8 Dec 2013 08:37:59 -0500 Subject: [PATCH 32/32] Added tag build-2.1.0.251 for changeset d3b5837bb210