Fix infinite loop during TLS handshake(Only .NET6) (#583)

Fix infinite loop caused by disconnection during TLS handshake, and the memory exploded instantly.
This commit is contained in:
kenlon 2022-09-01 00:23:17 +08:00 коммит произвёл GitHub
Родитель 18fbb0839e
Коммит 4a5b846054
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
1 изменённых файлов: 8 добавлений и 1 удалений

Просмотреть файл

@ -506,6 +506,13 @@ namespace DotNetty.Handlers.Tls
}
int read = currentReadFuture.Result;
if (read == 0)
{
//Stream closed
return;
}
AddBufferToOutput(outputBuffer, read, output);
}
@ -763,4 +770,4 @@ namespace DotNetty.Handlers.Tls
public static bool HasAny(this TlsHandlerState value, TlsHandlerState testValue) => (value & testValue) != 0;
}
}
}