-
Notifications
You must be signed in to change notification settings - Fork 5.3k
[release/8.0] Fix Windows implementation of NegotiateAuthenticationPal.GetMIC #98031
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Tagging subscribers to this area: @dotnet/ncl, @bartonjs, @vcsjones Issue DetailsFixes #97942. Customer Impact
The Regression
Regression was introduced in PR #86948 in .NET 8. We lacked sufficient testing which was rectified in #96712 in .NET 9 when public APIs were added to expose the internal method. This PR backports the bug fix that was merged as part of PR #96712. TestingTests were added in #96712 in RiskLow The error is well understood, and the fix was already done in
|
rzikm
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
|
please get approval by mail for this one |
|
Friendly reminder that Monday February 12th is the Code Complete deadline for the March Release. |
|
We don't want to backport the tests as well? |
The tests use new public API that was introduced in .NET 9. It makes it rather non-trivial to port them. |
|
Approved via email |
|
Ci is green |
|
Thanks for taking care of it! |
Partial backport of PR #96712.
Fixes #97942.
Customer Impact
The
NegotiateStreamAPI sends incorrectly wrapped data on Windows whenProtectionLevel.Signis used and NTLM is used as the underlying algorithm. Other platforms are not affected, other protection levels likeProtectionLevel.EncryptAndSignare not affected either.Regression
Regression was introduced with PR #86948 in .NET 8. We lacked sufficient testing which was rectified in #96712 in .NET 9 when public APIs were added to expose the internal method. This PR backports the bug fix that was merged as part of PR #96712.
Testing
Tests were added in #96712 in
mainbranch when the functionality was exposed as public API. The bug in the Windows implementation was uncovered by those tests and fixed. The customer who reported this issue in #97942 for .NET 8 has verified that the scenario is now fixed on .NET 9 nightly builds.Specific changes in this PR have also been tested against the repro provided in #97942.
Risk
Low
The error is well understood, and the fix was already done in
mainbranch last month. .NET 8 exposed this implementation detail only through theNegotiateStreamAPI in a specific combination of parameters.