diff --git a/CatchAllAgent.sln b/CatchAllAgent.sln index d3958ac..5f526f6 100644 --- a/CatchAllAgent.sln +++ b/CatchAllAgent.sln @@ -1,7 +1,7 @@  Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 2013 -VisualStudioVersion = 12.0.30110.0 +VisualStudioVersion = 12.0.40629.0 MinimumVisualStudioVersion = 10.0.40219.1 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{634B52DF-CFC7-412A-B268-B2949943541C}" ProjectSection(SolutionItems) = preProject @@ -28,25 +28,26 @@ Global Ex2013 CU1|Any CPU = Ex2013 CU1|Any CPU Ex2013 CU2|Any CPU = Ex2013 CU2|Any CPU Ex2013 CU3|Any CPU = Ex2013 CU3|Any CPU + Ex2013 SP1 CU10|Any CPU = Ex2013 SP1 CU10|Any CPU + Ex2013 SP1 CU11|Any CPU = Ex2013 SP1 CU11|Any CPU + Ex2013 SP1 CU12|Any CPU = Ex2013 SP1 CU12|Any CPU + Ex2013 SP1 CU13|Any CPU = Ex2013 SP1 CU13|Any CPU + Ex2013 SP1 CU15|Any CPU = Ex2013 SP1 CU15|Any CPU Ex2013 SP1 CU4|Any CPU = Ex2013 SP1 CU4|Any CPU Ex2013 SP1 CU5|Any CPU = Ex2013 SP1 CU5|Any CPU Ex2013 SP1 CU6|Any CPU = Ex2013 SP1 CU6|Any CPU Ex2013 SP1 CU7|Any CPU = Ex2013 SP1 CU7|Any CPU Ex2013 SP1 CU8|Any CPU = Ex2013 SP1 CU8|Any CPU Ex2013 SP1 CU9|Any CPU = Ex2013 SP1 CU9|Any CPU - Ex2013 SP1 CU10|Any CPU = Ex2013 SP1 CU10|Any CPU - Ex2013 SP1 CU11|Any CPU = Ex2013 SP1 CU11|Any CPU - Ex2013 SP1 CU12|Any CPU = Ex2013 SP1 CU12|Any CPU - Ex2013 SP1 CU13|Any CPU = Ex2013 SP1 CU13|Any CPU - Ex2013 SP1 CU14|Any CPU = Ex2013 SP1 CU15|Any CPU - Ex2013 SP1 CU15|Any CPU = Ex2013 SP1 CU15|Any CPU Ex2013|Any CPU = Ex2013|Any CPU - Ex2016 Preview|Any CPU = Ex2016 Preview|Any CPU - Ex2016 RTM|Any CPU = Ex2016 RTM|Any CPU Ex2016 CU1|Any CPU = Ex2016 CU1|Any CPU + Ex2016 CU19|Any CPU = Ex2016 CU19|Any CPU Ex2016 CU2|Any CPU = Ex2016 CU2|Any CPU Ex2016 CU3|Any CPU = Ex2016 CU3|Any CPU Ex2016 CU4|Any CPU = Ex2016 CU4|Any CPU + Ex2016 Preview|Any CPU = Ex2016 Preview|Any CPU + Ex2016 RTM|Any CPU = Ex2016 RTM|Any CPU + Ex2019 CU5|Any CPU = Ex2019 CU5|Any CPU Release|Any CPU = Release|Any CPU EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution @@ -73,6 +74,16 @@ Global {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 CU2|Any CPU.Build.0 = Ex2013 CU2|Any CPU {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 CU3|Any CPU.ActiveCfg = Ex2013 CU3|Any CPU {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 CU3|Any CPU.Build.0 = Ex2013 CU3|Any CPU + {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 SP1 CU10|Any CPU.ActiveCfg = Ex2013 SP1 CU10|Any CPU + {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 SP1 CU10|Any CPU.Build.0 = Ex2013 SP1 CU10|Any CPU + {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 SP1 CU11|Any CPU.ActiveCfg = Ex2013 SP1 CU11|Any CPU + {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 SP1 CU11|Any CPU.Build.0 = Ex2013 SP1 CU11|Any CPU + {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 SP1 CU12|Any CPU.ActiveCfg = Ex2013 SP1 CU12|Any CPU + {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 SP1 CU12|Any CPU.Build.0 = Ex2013 SP1 CU12|Any CPU + {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 SP1 CU13|Any CPU.ActiveCfg = Ex2013 SP1 CU13|Any CPU + {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 SP1 CU13|Any CPU.Build.0 = Ex2013 SP1 CU13|Any CPU + {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 SP1 CU15|Any CPU.ActiveCfg = Ex2013 SP1 CU15|Any CPU + {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 SP1 CU15|Any CPU.Build.0 = Ex2013 SP1 CU15|Any CPU {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 SP1 CU4|Any CPU.ActiveCfg = Ex2013 SP1 CU4|Any CPU {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 SP1 CU4|Any CPU.Build.0 = Ex2013 SP1 CU4|Any CPU {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 SP1 CU5|Any CPU.ActiveCfg = Ex2013 SP1 CU5|Any CPU @@ -85,32 +96,24 @@ Global {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 SP1 CU8|Any CPU.Build.0 = Ex2013 SP1 CU8|Any CPU {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 SP1 CU9|Any CPU.ActiveCfg = Ex2013 SP1 CU9|Any CPU {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 SP1 CU9|Any CPU.Build.0 = Ex2013 SP1 CU9|Any CPU - {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 SP1 CU10|Any CPU.ActiveCfg = Ex2013 SP1 CU10|Any CPU - {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 SP1 CU10|Any CPU.Build.0 = Ex2013 SP1 CU10|Any CPU - {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 SP1 CU11|Any CPU.ActiveCfg = Ex2013 SP1 CU11|Any CPU - {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 SP1 CU11|Any CPU.Build.0 = Ex2013 SP1 CU11|Any CPU - {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 SP1 CU12|Any CPU.ActiveCfg = Ex2013 SP1 CU12|Any CPU - {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 SP1 CU12|Any CPU.Build.0 = Ex2013 SP1 CU12|Any CPU - {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 SP1 CU13|Any CPU.ActiveCfg = Ex2013 SP1 CU13|Any CPU - {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 SP1 CU13|Any CPU.Build.0 = Ex2013 SP1 CU13|Any CPU - {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 SP1 CU14|Any CPU.ActiveCfg = Ex2013 SP1 CU14|Any CPU - {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 SP1 CU14|Any CPU.Build.0 = Ex2013 SP1 CU14|Any CPU - {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 SP1 CU15|Any CPU.ActiveCfg = Ex2013 SP1 CU15|Any CPU - {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013 SP1 CU15|Any CPU.Build.0 = Ex2013 SP1 CU15|Any CPU {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013|Any CPU.ActiveCfg = Ex2013|Any CPU {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2013|Any CPU.Build.0 = Ex2013|Any CPU - {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2016 Preview|Any CPU.ActiveCfg = Ex2016 Preview|Any CPU - {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2016 Preview|Any CPU.Build.0 = Ex2016 Preview|Any CPU - {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2016 RTM|Any CPU.ActiveCfg = Ex2016 RTM|Any CPU - {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2016 RTM|Any CPU.Build.0 = Ex2016 RTM|Any CPU {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2016 CU1|Any CPU.ActiveCfg = Ex2016 CU1|Any CPU {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2016 CU1|Any CPU.Build.0 = Ex2016 CU1|Any CPU + {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2016 CU19|Any CPU.ActiveCfg = Ex2016 CU19|Any CPU + {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2016 CU19|Any CPU.Build.0 = Ex2016 CU19|Any CPU {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2016 CU2|Any CPU.ActiveCfg = Ex2016 CU2|Any CPU {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2016 CU2|Any CPU.Build.0 = Ex2016 CU2|Any CPU {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2016 CU3|Any CPU.ActiveCfg = Ex2016 CU3|Any CPU {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2016 CU3|Any CPU.Build.0 = Ex2016 CU3|Any CPU {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2016 CU4|Any CPU.ActiveCfg = Ex2016 CU4|Any CPU {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2016 CU4|Any CPU.Build.0 = Ex2016 CU4|Any CPU + {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2016 Preview|Any CPU.ActiveCfg = Ex2016 Preview|Any CPU + {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2016 Preview|Any CPU.Build.0 = Ex2016 Preview|Any CPU + {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2016 RTM|Any CPU.ActiveCfg = Ex2016 RTM|Any CPU + {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2016 RTM|Any CPU.Build.0 = Ex2016 RTM|Any CPU + {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2019 CU5|Any CPU.ActiveCfg = Ex2019 CU5|Any CPU + {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Ex2019 CU5|Any CPU.Build.0 = Ex2019 CU5|Any CPU {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Release|Any CPU.ActiveCfg = Ex2016 Preview|Any CPU {8778ECD1-55C8-48D4-9E15-617A738E2FB7}.Release|Any CPU.Build.0 = Ex2016 Preview|Any CPU EndGlobalSection diff --git a/CatchAllAgent/CatchAllAgent.cs b/CatchAllAgent/CatchAllAgent.cs index 5a582b8..13403ae 100644 --- a/CatchAllAgent/CatchAllAgent.cs +++ b/CatchAllAgent/CatchAllAgent.cs @@ -44,7 +44,7 @@ public class CatchAllAgent : SmtpReceiveAgent /// The address book to be used for lookups. /// private AddressBook addressBook; -#if EX_2016_PREV || EX_2016_RTM || EX_2016_CU1 || EX_2016_CU2 || EX_2016_CU3 || EX_2016_CU4 +#if EX_2016_PREV || EX_2016_RTM || EX_2016_CU1 || EX_2016_CU2 || EX_2016_CU3 || EX_2016_CU4 || EX_2016_CU19 || EX_2019_CU5 private static SmtpResponse rejectResponse = SmtpResponse.Create("550", "5.1.1", "Recipient rejected"); #else private static SmtpResponse rejectResponse = new SmtpResponse("550", "5.1.1", "Recipient rejected"); diff --git a/CatchAllAgent/Exchange.CatchAll.csproj b/CatchAllAgent/Exchange.CatchAll.csproj index 8ccbee8..7d61e31 100644 --- a/CatchAllAgent/Exchange.CatchAll.csproj +++ b/CatchAllAgent/Exchange.CatchAll.csproj @@ -1,5 +1,5 @@  - + Debug AnyCPU @@ -16,10 +16,10 @@ v3.5 v3.5 v3.5 - v4.0 + v4.6.2 v4.5 - v4.5 - v4.5 + v4.5 + v4.5 512 @@ -32,6 +32,7 @@ TRACE;DEBUG;CODE_ANALYSIS prompt 4 + false false @@ -47,6 +48,7 @@ TRACE;DEBUG;CODE_ANALYSIS prompt 4 + false true @@ -56,6 +58,7 @@ AnyCPU prompt MinimumRecommendedRules.ruleset + false pdbonly @@ -64,6 +67,7 @@ TRACE;EX_2007_SP3 prompt 4 + false pdbonly @@ -72,6 +76,7 @@ TRACE;EX_2010 prompt 4 + false pdbonly @@ -80,6 +85,7 @@ TRACE;EX_2010_SP1 prompt 4 + false pdbonly @@ -88,6 +94,7 @@ TRACE;EX_2010_SP2 prompt 4 + false pdbonly @@ -96,6 +103,7 @@ TRACE;EX_2010_SP3 prompt 4 + false bin\Exchange 2013\ @@ -105,6 +113,7 @@ AnyCPU prompt MinimumRecommendedRules.ruleset + false bin\Exchange 2013 CU1\ @@ -114,6 +123,7 @@ AnyCPU prompt MinimumRecommendedRules.ruleset + false bin\Exchange 2013 CU2\ @@ -123,6 +133,7 @@ AnyCPU prompt MinimumRecommendedRules.ruleset + false bin\Exchange 2013 CU3\ @@ -132,6 +143,7 @@ AnyCPU prompt MinimumRecommendedRules.ruleset + false bin\Exchange 2013 SP1 CU4\ @@ -141,6 +153,7 @@ AnyCPU prompt MinimumRecommendedRules.ruleset + false bin\Exchange 2013 SP1 CU5\ @@ -150,6 +163,7 @@ AnyCPU prompt MinimumRecommendedRules.ruleset + false bin\Exchange 2013 SP1 CU6\ @@ -159,6 +173,7 @@ AnyCPU prompt MinimumRecommendedRules.ruleset + false bin\Exchange 2013 SP1 CU7\ @@ -168,6 +183,7 @@ AnyCPU prompt MinimumRecommendedRules.ruleset + false bin\Exchange 2013 SP1 CU8\ @@ -177,6 +193,7 @@ AnyCPU prompt MinimumRecommendedRules.ruleset + false bin\Exchange 2013 SP1 CU9\ @@ -186,6 +203,7 @@ AnyCPU prompt MinimumRecommendedRules.ruleset + false bin\Exchange 2013 SP1 CU10\ @@ -195,6 +213,7 @@ AnyCPU prompt MinimumRecommendedRules.ruleset + false bin\Exchange 2013 SP1 CU11\ @@ -204,6 +223,7 @@ AnyCPU prompt MinimumRecommendedRules.ruleset + false bin\Exchange 2013 SP1 CU12\ @@ -213,6 +233,7 @@ AnyCPU prompt MinimumRecommendedRules.ruleset + false bin\Exchange 2013 SP1 CU13\ @@ -222,6 +243,7 @@ AnyCPU prompt MinimumRecommendedRules.ruleset + false bin\Exchange 2013 SP1 CU14\ @@ -231,6 +253,7 @@ AnyCPU prompt MinimumRecommendedRules.ruleset + false bin\Exchange 2013 SP1 CU15\ @@ -240,6 +263,7 @@ AnyCPU prompt MinimumRecommendedRules.ruleset + false bin\Exchange 2016 Preview\ @@ -249,6 +273,7 @@ AnyCPU prompt MinimumRecommendedRules.ruleset + false bin\Exchange 2016 RTM\ @@ -258,6 +283,7 @@ AnyCPU prompt MinimumRecommendedRules.ruleset + false bin\Exchange 2016 CU1\ @@ -267,6 +293,7 @@ AnyCPU prompt MinimumRecommendedRules.ruleset + false bin\Exchange 2016 CU2\ @@ -276,6 +303,7 @@ AnyCPU prompt MinimumRecommendedRules.ruleset + false bin\Exchange 2016 CU3\ @@ -285,6 +313,7 @@ AnyCPU prompt MinimumRecommendedRules.ruleset + false bin\Exchange 2016 CU4\ @@ -294,16 +323,28 @@ AnyCPU prompt MinimumRecommendedRules.ruleset + false + + + bin\Exchange 2019 CU5\ + TRACE;EX_2019_CU5 + true + pdbonly + AnyCPU + prompt + MinimumRecommendedRules.ruleset + false + + + bin\Exchange 2016 CU19\ + TRACE;EX_2016_CU19 + true + pdbonly + AnyCPU + prompt + MinimumRecommendedRules.ruleset - - ..\Lib\Exchange 2010 SP3\Microsoft.Exchange.Data.Common.dll - False - - - ..\Lib\Exchange 2010 SP3\Microsoft.Exchange.Data.Transport.dll - False - ..\Lib\Exchange 2013\Microsoft.Exchange.Data.Common.dll @@ -481,13 +522,25 @@ ..\Lib\Exchange 2016 CU3\Microsoft.Exchange.Data.Transport.dll - + ..\Lib\Exchange 2016 CU3\Microsoft.Exchange.Data.Common.dll - + ..\Lib\Exchange 2016 CU3\Microsoft.Exchange.Data.Transport.dll + + ..\Lib\Exchange 2016 CU19\Microsoft.Exchange.Data.Common.dll + + + ..\Lib\Exchange 2019 CU5\Microsoft.Exchange.Data.Common.dll + + + ..\Lib\Exchange 2016 CU19\Microsoft.Exchange.Data.Transport.dll + + + ..\Lib\Exchange 2019 CU5\Microsoft.Exchange.Data.Transport.dll + False ..\Lib\mysql.data.dll diff --git a/CatchAllAgent/app.config b/CatchAllAgent/app.config index e3ad837..317ff8e 100644 --- a/CatchAllAgent/app.config +++ b/CatchAllAgent/app.config @@ -32,4 +32,4 @@ --> - + diff --git a/CatchAllAgent/bin/Exchange 2019 CU5/ExchangeCatchAll.dll b/CatchAllAgent/bin/Exchange 2019 CU5/ExchangeCatchAll.dll new file mode 100644 index 0000000..c7fdc6c Binary files /dev/null and b/CatchAllAgent/bin/Exchange 2019 CU5/ExchangeCatchAll.dll differ diff --git a/CatchAllAgent/bin/Exchange 2019 CU5/ExchangeCatchAll.dll.config b/CatchAllAgent/bin/Exchange 2019 CU5/ExchangeCatchAll.dll.config new file mode 100644 index 0000000..69ba43b --- /dev/null +++ b/CatchAllAgent/bin/Exchange 2019 CU5/ExchangeCatchAll.dll.config @@ -0,0 +1,35 @@ + + + +
+ +
+
+ + + + + + + + + + + + + + + + + + + diff --git a/CatchAllAgent/bin/Exchange 2019 CU5/ExchangeCatchAll.pdb b/CatchAllAgent/bin/Exchange 2019 CU5/ExchangeCatchAll.pdb new file mode 100644 index 0000000..cd7205a Binary files /dev/null and b/CatchAllAgent/bin/Exchange 2019 CU5/ExchangeCatchAll.pdb differ diff --git a/CatchAllAgent/bin/Exchange 2019 CU5/mysql.data.dll b/CatchAllAgent/bin/Exchange 2019 CU5/mysql.data.dll new file mode 100644 index 0000000..03fd84a Binary files /dev/null and b/CatchAllAgent/bin/Exchange 2019 CU5/mysql.data.dll differ diff --git a/install.ps1 b/install.ps1 index ea0b890..0bacd3b 100644 --- a/install.ps1 +++ b/install.ps1 @@ -27,6 +27,8 @@ write-host " *** Exchange CatchAll Install Script ***" -f "blue" # Exchange 2016 CU2 (15.1.466.34) # Exchange 2016 CU3 (15.1.544.27) # Exchange 2016 CU4 (15.1.669.32) +# Exchange 2016 CU19 (15.1.2176.2) +# Exchange 2019 CU5 (15.2.595.3) write-host "Detecting Exchange version ... " -f "cyan" $hostname = hostname $exchserver = Get-ExchangeServer -Identity $hostname @@ -87,6 +89,10 @@ if (($exchserver.admindisplayversion).major -eq 8 -and ($exchserver.admindisplay } elseif (($exchserver.admindisplayversion).major -eq 15 -and ($exchserver.admindisplayversion).minor -eq 1 -and ($exchserver.admindisplayversion).build -eq 669) { # same as CU3 $EXVER="Exchange 2016 CU3" +} elseif (($exchserver.admindisplayversion).major -eq 15 -and ($exchserver.admindisplayversion).minor -eq 1 -and ($exchserver.admindisplayversion).build -gt 2000) { + $EXVER="Exchange 2016 CU19" +} elseif (($exchserver.admindisplayversion).major -eq 15 -and ($exchserver.admindisplayversion).minor -eq 2 -and ($exchserver.admindisplayversion).build -gt 594) { + $EXVER="Exchange 2019 CU5" } else { throw "The exchange version is not yet supported: " + $exchserver.admindisplayversion }