Skip to content

Commit

Permalink
Improve code style.
Browse files Browse the repository at this point in the history
  • Loading branch information
bgrainger committed Jan 14, 2024
1 parent dcf6856 commit 71ef33a
Showing 1 changed file with 10 additions and 9 deletions.
19 changes: 10 additions & 9 deletions src/MySqlConnector/Core/ServerSession.cs
Original file line number Diff line number Diff line change
Expand Up @@ -422,13 +422,13 @@ public async Task DisposeAsync(IOBehavior ioBehavior, CancellationToken cancella
}
}

var connected = false;
if (cs.ConnectionProtocol == MySqlConnectionProtocol.Sockets)
connected = await OpenTcpSocketAsync(cs, loadBalancer ?? throw new ArgumentNullException(nameof(loadBalancer)), activity, ioBehavior, cancellationToken).ConfigureAwait(false);
else if (cs.ConnectionProtocol == MySqlConnectionProtocol.UnixSocket)
connected = await OpenUnixSocketAsync(cs, activity, ioBehavior, cancellationToken).ConfigureAwait(false);
else if (cs.ConnectionProtocol == MySqlConnectionProtocol.NamedPipe)
connected = await OpenNamedPipeAsync(cs, startingTimestamp, activity, ioBehavior, cancellationToken).ConfigureAwait(false);
var connected = cs.ConnectionProtocol switch
{
MySqlConnectionProtocol.Sockets => await OpenTcpSocketAsync(cs, loadBalancer ?? throw new ArgumentNullException(nameof(loadBalancer)), activity, ioBehavior, cancellationToken).ConfigureAwait(false),
MySqlConnectionProtocol.UnixSocket => await OpenUnixSocketAsync(cs, activity, ioBehavior, cancellationToken).ConfigureAwait(false),
MySqlConnectionProtocol.NamedPipe => await OpenNamedPipeAsync(cs, startingTimestamp, activity, ioBehavior, cancellationToken).ConfigureAwait(false),
_ => false,
};
if (!connected)
{
lock (m_lock)
Expand Down Expand Up @@ -686,12 +686,13 @@ private async Task<PayloadData> SwitchAuthenticationAsync(ConnectionSettings cs,
return await ReceiveReplyAsync(ioBehavior, cancellationToken).ConfigureAwait(false);

case "caching_sha2_password":
// see https://dev.mysql.com/doc/dev/mysql-server/latest/page_caching_sha2_authentication_exchanges.html
var scrambleBytes = AuthenticationUtility.CreateScrambleResponse(Utility.TrimZeroByte(switchRequest.Data.AsSpan()), password);
payload = new(scrambleBytes);
await SendReplyAsync(payload, ioBehavior, cancellationToken).ConfigureAwait(false);
payload = await ReceiveReplyAsync(ioBehavior, cancellationToken).ConfigureAwait(false);

// OK payload can be sent immediately (e.g., if password is empty( (short-circuiting the )
// OK payload can be sent immediately (e.g., if password is empty) bypassing even the fast authentication path
if (OkPayload.IsOk(payload.Span, SupportsDeprecateEof))
return payload;

Expand Down Expand Up @@ -814,7 +815,7 @@ private async Task<string> GetRsaPublicKeyAsync(string switchRequestName, Connec
{
// request the RSA public key
var payloadContent = switchRequestName == "caching_sha2_password" ? (byte) 0x02 : (byte) 0x01;
await SendReplyAsync(new PayloadData([ payloadContent ]), ioBehavior, cancellationToken).ConfigureAwait(false);
await SendReplyAsync(new PayloadData([payloadContent]), ioBehavior, cancellationToken).ConfigureAwait(false);
var payload = await ReceiveReplyAsync(ioBehavior, cancellationToken).ConfigureAwait(false);
var publicKeyPayload = AuthenticationMoreDataPayload.Create(payload.Span);
return Encoding.ASCII.GetString(publicKeyPayload.Data);
Expand Down

0 comments on commit 71ef33a

Please sign in to comment.