diff --git a/src/Microsoft.Data.SqlClient/netcore/src/Common/src/System/Net/Security/NegotiateStreamPal.Unix.cs b/src/Microsoft.Data.SqlClient/netcore/src/Common/src/System/Net/Security/NegotiateStreamPal.Unix.cs index fa46535d05..5858b77b44 100644 --- a/src/Microsoft.Data.SqlClient/netcore/src/Common/src/System/Net/Security/NegotiateStreamPal.Unix.cs +++ b/src/Microsoft.Data.SqlClient/netcore/src/Common/src/System/Net/Security/NegotiateStreamPal.Unix.cs @@ -189,7 +189,14 @@ internal static int QueryMaxTokenSize(string package) // This value is not used on Unix return 0; } - + + internal static SecurityStatusPal CompleteAuthToken( + ref SafeDeleteContext securityContext, + SecurityBuffer[] inSecurityBufferArray) + { + return new SecurityStatusPal(SecurityStatusPalErrorCode.OK); + } + internal static SafeFreeCredentials AcquireDefaultCredential(string package, bool isServer) { return AcquireCredentialsHandle(package, isServer, new NetworkCredential(string.Empty, string.Empty, string.Empty)); diff --git a/src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SNI/SNIProxy.cs b/src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SNI/SNIProxy.cs index f25b8ac2d6..268d53ffd8 100644 --- a/src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SNI/SNIProxy.cs +++ b/src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SNI/SNIProxy.cs @@ -96,7 +96,8 @@ internal void GenSspiClientContext(SspiClientContextStatus sspiClientContextStat inSecurityBufferArray = Array.Empty(); } - int tokenSize = MaxTokenSize; + int tokenSize = NegotiateStreamPal.QueryMaxTokenSize(securityPackage); + SecurityBuffer outSecurityBuffer = new SecurityBuffer(tokenSize, SecurityBufferType.SECBUFFER_TOKEN); ContextFlagsPal requestedContextFlags = ContextFlagsPal.Connection @@ -119,7 +120,7 @@ internal void GenSspiClientContext(SspiClientContextStatus sspiClientContextStat statusCode.ErrorCode == SecurityStatusPalErrorCode.CompAndContinue) { inSecurityBufferArray = new SecurityBuffer[] { outSecurityBuffer }; - statusCode = new SecurityStatusPal(SecurityStatusPalErrorCode.OK); + statusCode = NegotiateStreamPal.CompleteAuthToken(ref securityContext, inSecurityBufferArray); outSecurityBuffer.token = null; }