Skip to content

Commit c1b6fed

Browse files
Fixes regression in Integrated Security auth in Managed SNI
1 parent b48de5d commit c1b6fed

File tree

2 files changed

+11
-3
lines changed

2 files changed

+11
-3
lines changed

src/Microsoft.Data.SqlClient/netcore/src/Common/src/System/Net/Security/NegotiateStreamPal.Unix.cs

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -189,7 +189,14 @@ internal static int QueryMaxTokenSize(string package)
189189
// This value is not used on Unix
190190
return 0;
191191
}
192-
192+
193+
internal static SecurityStatusPal CompleteAuthToken(
194+
ref SafeDeleteContext securityContext,
195+
SecurityBuffer[] inSecurityBufferArray)
196+
{
197+
return new SecurityStatusPal(SecurityStatusPalErrorCode.OK);
198+
}
199+
193200
internal static SafeFreeCredentials AcquireDefaultCredential(string package, bool isServer)
194201
{
195202
return AcquireCredentialsHandle(package, isServer, new NetworkCredential(string.Empty, string.Empty, string.Empty));

src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SNI/SNIProxy.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,8 @@ internal void GenSspiClientContext(SspiClientContextStatus sspiClientContextStat
9696
inSecurityBufferArray = Array.Empty<SecurityBuffer>();
9797
}
9898

99-
int tokenSize = MaxTokenSize;
99+
int tokenSize = NegotiateStreamPal.QueryMaxTokenSize(securityPackage);
100+
100101
SecurityBuffer outSecurityBuffer = new SecurityBuffer(tokenSize, SecurityBufferType.SECBUFFER_TOKEN);
101102

102103
ContextFlagsPal requestedContextFlags = ContextFlagsPal.Connection
@@ -119,7 +120,7 @@ internal void GenSspiClientContext(SspiClientContextStatus sspiClientContextStat
119120
statusCode.ErrorCode == SecurityStatusPalErrorCode.CompAndContinue)
120121
{
121122
inSecurityBufferArray = new SecurityBuffer[] { outSecurityBuffer };
122-
statusCode = new SecurityStatusPal(SecurityStatusPalErrorCode.OK);
123+
statusCode = NegotiateStreamPal.CompleteAuthToken(ref securityContext, inSecurityBufferArray);
123124
outSecurityBuffer.token = null;
124125
}
125126

0 commit comments

Comments
 (0)