diff --git a/NuGet.config b/NuGet.config
index fc776cb3ab1eb7..7291356b2d7df0 100644
--- a/NuGet.config
+++ b/NuGet.config
@@ -9,7 +9,7 @@
-
+
- 5.0.0-2.26214.106
- 5.0.0-2.26214.106
- 5.0.0-2.26214.106
- 10.0.107
- 10.0.107
- 10.0.0-beta.26214.106
- 10.0.0-beta.26214.106
- 10.0.0-beta.26214.106
- 10.0.0-beta.26214.106
- 10.0.0-beta.26214.106
- 10.0.0-beta.26214.106
- 10.0.0-beta.26214.106
- 10.0.0-beta.26214.106
- 0.11.5-alpha.26214.106
- 10.0.0-beta.26214.106
- 10.0.0-beta.26214.106
- 10.0.0-beta.26214.106
- 10.0.0-beta.26214.106
- 10.0.0-beta.26214.106
- 10.0.0-beta.26214.106
- 10.0.0-beta.26214.106
- 10.0.0-beta.26214.106
- 2.9.3-beta.26214.106
- 2.9.3-beta.26214.106
- 10.0.0-beta.26214.106
- 5.0.0-2.26214.106
- 10.0.7
- 10.0.107-servicing.26214.106
- 10.0.7
- 10.0.7
- 7.0.2-rc.21506
- 7.0.2-rc.21506
- 7.0.2-rc.21506
- 7.0.2-rc.21506
- 10.0.7
- 2.0.7
- 10.0.7
- 10.0.7
- 10.0.7
+ 5.0.0-2.26229.109
+ 5.0.0-2.26229.109
+ 5.0.0-2.26229.109
+ 10.0.109
+ 10.0.109
+ 10.0.0-beta.26229.109
+ 10.0.0-beta.26229.109
+ 10.0.0-beta.26229.109
+ 10.0.0-beta.26229.109
+ 10.0.0-beta.26229.109
+ 10.0.0-beta.26229.109
+ 10.0.0-beta.26229.109
+ 10.0.0-beta.26229.109
+ 0.11.5-alpha.26229.109
+ 10.0.0-beta.26229.109
+ 10.0.0-beta.26229.109
+ 10.0.0-beta.26229.109
+ 10.0.0-beta.26229.109
+ 10.0.0-beta.26229.109
+ 10.0.0-beta.26229.109
+ 10.0.0-beta.26229.109
+ 10.0.0-beta.26229.109
+ 2.9.3-beta.26229.109
+ 2.9.3-beta.26229.109
+ 10.0.0-beta.26229.109
+ 5.0.0-2.26229.109
+ 10.0.9
+ 10.0.109-servicing.26229.109
+ 10.0.9
+ 10.0.9
+ 7.0.3-rc.23009
+ 7.0.3-rc.23009
+ 7.0.3-rc.23009
+ 7.0.3-rc.23009
+ 10.0.9
+ 2.0.9
+ 10.0.9
+ 10.0.9
+ 10.0.9
10.0.0-alpha.0.25479.2
diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml
index 6710faefebd921..87e695772ed51b 100644
--- a/eng/Version.Details.xml
+++ b/eng/Version.Details.xml
@@ -1,5 +1,5 @@
-
+
https://github.com/dotnet/icu
@@ -41,91 +41,91 @@
https://github.com/dotnet/llvm-project
2cfe42ea4a7fe364dcb197beca469af8edec0ad6
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
https://github.com/dotnet/runtime-assets
@@ -263,33 +263,33 @@
https://github.com/dotnet/llvm-project
2cfe42ea4a7fe364dcb197beca469af8edec0ad6
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
https://github.com/dotnet/xharness
@@ -303,9 +303,9 @@
https://github.com/dotnet/xharness
e5857fbbc3f1d39d2776af5a5e3235c9ff485afa
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
https://dev.azure.com/dnceng/internal/_git/dotnet-optimization
@@ -331,29 +331,29 @@
https://github.com/dotnet/runtime-assets
3910cd6230be3d4d283edd6a52bff27f549dd675
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
https://dev.azure.com/dnceng/internal/_git/dotnet-optimization
@@ -365,21 +365,21 @@
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
-
+
https://github.com/dotnet/dotnet
- 19557b9ae31e93f4f7a8ffbe89a66e04c25dbb91
+ dd8ced28bfd57694643337c5dcf1877d5159948b
https://github.com/dotnet/node
diff --git a/eng/Versions.props b/eng/Versions.props
index f80645ff4b8e43..009bf59296c023 100644
--- a/eng/Versions.props
+++ b/eng/Versions.props
@@ -4,7 +4,7 @@
10
0
- 7
+ 9
$(MajorVersion).$(MinorVersion).$(PatchVersion)
9.0.$([MSBuild]::Add($(PatchVersion),12))
@@ -120,7 +120,7 @@
4.5.4
2.0.0
- 17.10.0-beta1.24272.1
+ 17.12.0-beta1.24603.5
3.1.16
2.1.0
2.0.3
@@ -161,7 +161,7 @@
10.0.0-preview-20251006.1
- 2.4.16
+ 2.4.17
9.0.0-alpha.1.24167.3
$(MicrosoftDotNetApiCompatTaskPackageVersion)
diff --git a/global.json b/global.json
index 68b322d56174f7..d09da745f8c5d7 100644
--- a/global.json
+++ b/global.json
@@ -1,18 +1,18 @@
{
"sdk": {
- "version": "10.0.105",
+ "version": "10.0.107",
"allowPrerelease": true,
"rollForward": "major"
},
"tools": {
- "dotnet": "10.0.105"
+ "dotnet": "10.0.107"
},
"msbuild-sdks": {
- "Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.26214.106",
- "Microsoft.DotNet.Helix.Sdk": "10.0.0-beta.26214.106",
- "Microsoft.DotNet.SharedFramework.Sdk": "10.0.0-beta.26214.106",
+ "Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.26229.109",
+ "Microsoft.DotNet.Helix.Sdk": "10.0.0-beta.26229.109",
+ "Microsoft.DotNet.SharedFramework.Sdk": "10.0.0-beta.26229.109",
"Microsoft.Build.NoTargets": "3.7.0",
"Microsoft.Build.Traversal": "3.4.0",
- "Microsoft.NET.Sdk.IL": "10.0.7"
+ "Microsoft.NET.Sdk.IL": "10.0.9"
}
}
diff --git a/src/libraries/System.Net.Mail/src/System/Net/Mail/MailAddressParser.cs b/src/libraries/System.Net.Mail/src/System/Net/Mail/MailAddressParser.cs
index c3479598be7466..0770f80b72dbc7 100644
--- a/src/libraries/System.Net.Mail/src/System/Net/Mail/MailAddressParser.cs
+++ b/src/libraries/System.Net.Mail/src/System/Net/Mail/MailAddressParser.cs
@@ -69,6 +69,20 @@ private static bool TryParseAddress(string data, bool expectMultipleAddresses, r
Debug.Assert(!string.IsNullOrEmpty(data));
Debug.Assert(index >= 0 && index < data.Length, $"Index out of range: {index}, {data.Length}");
+ // Check for CR or LF characters which are not allowed in mail addresses.
+ // Only scan on the first call (index == data.Length - 1) to avoid repeated O(n) scans
+ // when parsing multiple addresses from the same string.
+ if (index == data.Length - 1 && MailBnfHelper.HasCROrLF(data))
+ {
+ if (throwExceptionIfFail)
+ {
+ throw new FormatException(SR.MailAddressInvalidFormat);
+ }
+
+ parseAddressInfo = default;
+ return false;
+ }
+
// Parsed components to be assembled as a MailAddress later
string? displayName;
diff --git a/src/libraries/System.Net.Mail/tests/Functional/SmtpClientSendMailTest.cs b/src/libraries/System.Net.Mail/tests/Functional/SmtpClientSendMailTest.cs
index 1f08beefa410af..78b9f60cde9aae 100644
--- a/src/libraries/System.Net.Mail/tests/Functional/SmtpClientSendMailTest.cs
+++ b/src/libraries/System.Net.Mail/tests/Functional/SmtpClientSendMailTest.cs
@@ -147,13 +147,9 @@ public async Task TestMultipleMailDelivery()
[Theory]
[MemberData(nameof(SendMail_MultiLineDomainLiterals_Data))]
- public async Task MultiLineDomainLiterals_Disabled_Throws(string from, string to)
+ public void MultiLineDomainLiterals_Disabled_Throws(string from, string to)
{
- Smtp.Credentials = new NetworkCredential("Foo", "Bar");
-
- using var msg = new MailMessage(@from, @to, "subject", "body");
-
- await SendMail(msg);
+ Assert.Throws(() => new MailMessage(@from, @to, "subject", "body"));
}
public static IEnumerable