-
Notifications
You must be signed in to change notification settings - Fork 4.7k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Restructure NegotiateAuthentication implementation (#87930)
* Change NegotiateAuthentication implementation to use indirection through NegotiateAuthenticationPal to the actual implementation. The PAL implementation are merged from different sources to follow the same structure: - NTAuthentication.Managed.cs -> NegotiateAuthenticationPal.Managed.cs - NTAuthentication.Common.cs + NegotiateStreamPal.Windows.cs -> NegotiateAuthenticationPal.Windows.cs - NTAuthentication.Common.cs + NegotiateStreamPal.Unix.cs -> NegotiateAuthenticationPal.Unix.cs This split allows to delete ContextFlagsPal, SafeDeleteNegoContext, and SafeFreeNegoCredentials abstractions that were used in NegotiateStreamPal. * Unify impersonation level validation between Windows and Unix pllatforms * Split managed NTLM and managed SPNEGO implementations; add UseManagedNtlm switch on Unix platforms * Remove debug cruft * Fix couple of errors in managed SPNEGO * Remove debug print * Fix message sequence in managed NTLM; remove unused method * Fix fallbacks on macOS GSSAPI * Cleanup and fallbacks for missing NTLM, GSSAPI * Adjust tests to assume that NTLM is always available on Unix * Don't claim NTLM support on Browser * Revert "Don't claim NTLM support on Browser" This reverts commit 87d0c56. * Attempt to fix the browser tests * Revert "Attempt to fix the browser tests" This reverts commit 91d7ce2. * Browser test suppression * Respect UseManagedNtlm=false on platforms without NTLM GSSAPI provider * Update src/libraries/System.Net.Security/src/System/Net/NegotiateAuthenticationPal.Unix.cs * Revert all the fallback code paths, System.Net.Security.UseManagedNtlm has to be enabled explicitly; NativeAOT on Linux Bionic does that by default because it doesn't have GSSAPI and native shim
- Loading branch information
1 parent
f1d6099
commit f7ad726
Showing
25 changed files
with
3,006 additions
and
3,307 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
115 changes: 0 additions & 115 deletions
115
src/libraries/Common/src/System/Net/Security/Unix/SafeDeleteNegoContext.cs
This file was deleted.
Oops, something went wrong.
81 changes: 0 additions & 81 deletions
81
src/libraries/Common/src/System/Net/Security/Unix/SafeFreeNegoCredentials.cs
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
7 changes: 7 additions & 0 deletions
7
src/libraries/System.Net.Security/src/ILLink/ILLink.Substitutions.xml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
<linker> | ||
<assembly fullname="System.Net.Security"> | ||
<type fullname="System.Net.NegotiateAuthenticationPal"> | ||
<method signature="System.Boolean get_UseManagedNtlm()" feature="System.Net.Security.UseManagedNtlm" featurevalue="false" body="stub" value="false" /> | ||
</type> | ||
</assembly> | ||
</linker> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.