mirror of
https://github.com/Azure/DotNetty.git
synced 2026-10-21 16:26:24 +08:00
f31c02e346
Motivation: TlsHandler Fix TlsHandler, optimize encryption / decryption wrt Write vs Flush semantics, optimize memory retention for sparse communication, adopt IByteBuffer.GetIoBuffers() in TlsHandler. Modifications: - TlsHandler is rewritten to use batch->copy->write approach instead of writing directly to SslStream in order to reduce overhead of framing / writing out everything separately. - TlsHandler uses IByteBuffer.GetIoBuffers intead of direct array access increasing compatibility for non-array-backed buffers. - TlsHandler and TlsHandler.MediationStream use Task semantics now when reading through SslStream. - Extra: upgraded to NBench 2.2, xUnit 2.1.0. - Extra: better portability for .NET Core support. Result: TlsHandler provides better framing and much better (x2+) performance (depends on application control of flushing). TlsHandler operates properly in edge cases when more than one frame is accepted at once and if decrypted frame size is more than 4 KB. TlsHandler holds only 256 byte buffer while waiting for more data to arrive off the wire. Extra: DotNetty is almost .NET Core compatible.
38 lines
1.1 KiB
Batchfile
38 lines
1.1 KiB
Batchfile
@echo off
|
|
|
|
pushd %~dp0
|
|
|
|
SETLOCAL
|
|
SET CACHED_NUGET=%LocalAppData%\NuGet\NuGet.exe
|
|
|
|
IF EXIST %CACHED_NUGET% goto copynuget
|
|
echo Downloading latest version of NuGet.exe...
|
|
IF NOT EXIST %LocalAppData%\NuGet md %LocalAppData%\NuGet
|
|
@powershell -NoProfile -ExecutionPolicy unrestricted -Command "$ProgressPreference = 'SilentlyContinue'; Invoke-WebRequest 'https://www.nuget.org/nuget.exe' -OutFile '%CACHED_NUGET%'"
|
|
|
|
:copynuget
|
|
IF EXIST .nuget\nuget.exe goto restore
|
|
md .nuget
|
|
copy %CACHED_NUGET% .nuget\nuget.exe > nul
|
|
|
|
:restore
|
|
|
|
.nuget\NuGet.exe update -self
|
|
|
|
.nuget\NuGet.exe install FAKE -OutputDirectory packages -ExcludeVersion -Version 4.25.4
|
|
|
|
.nuget\NuGet.exe install xunit.runner.console -OutputDirectory packages\FAKE -ExcludeVersion -Version 2.1.0
|
|
.nuget\NuGet.exe install NBench.Runner -OutputDirectory packages -ExcludeVersion -Version 0.2.2
|
|
|
|
if not exist packages\SourceLink.Fake\tools\SourceLink.fsx (
|
|
.nuget\nuget.exe install SourceLink.Fake -OutputDirectory packages -ExcludeVersion
|
|
)
|
|
rem cls
|
|
|
|
set encoding=utf-8
|
|
packages\FAKE\tools\FAKE.exe build.fsx %*
|
|
|
|
popd
|
|
|
|
|