-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
System.DirectoryServices.Protocols: Force using LDAP V3 for SASL binding #109450
base: main
Are you sure you want to change the base?
System.DirectoryServices.Protocols: Force using LDAP V3 for SASL binding #109450
Conversation
a9c3e8d
to
45c354d
Compare
45c354d
to
35100d4
Compare
@@ -127,6 +127,8 @@ private int BindSasl() | |||
Marshal.StructureToPtr(defaults, ptrToDefaults, false); | |||
try | |||
{ | |||
// Bump up the protocol version because ldap_sasl_interactive_bind requires LDAP V3 else it returns LDAP_NOT_SUPPORTED and this ends up throwing LdapException: The feature is not supported. | |||
SessionOptions.ProtocolVersion = 3; |
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.
For non-OSX, this must be working before the change above -- will this break V1\V2 users in those cases?
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.
Actually I don't have a Linux machine to test. I tried to setup Kerberos + OpenLDAP in Docker to test on Linux but I couldn't create a working environment.
Note: I used https://github.com/0xced/dotnet-ldap-experiment to test this fix since building the .NET runtime repository and working on it in Rider on macOS is always a challenge! |
Fixes #109449