There is a fair amount of complex code inside SSLStream to handle the case of renegotiation, including
- What happens to partial data inflight
- What happens to data encrypted with the old key
- A lot of locking
But there is zero testing in the inner or outerloop which makes it possible that during refactoring someone could break it and no one would know until its released.
As there is no way to trigger a renegotiation from .net I would say a website on IIS with a client cert required for a certain path in an outerloop test should kick off a renegotiation?
/cc @stephentoub, @Priya91 and @geoffkizer
ref dotnet/corefx#24352
There is a fair amount of complex code inside SSLStream to handle the case of renegotiation, including
But there is zero testing in the inner or outerloop which makes it possible that during refactoring someone could break it and no one would know until its released.
As there is no way to trigger a renegotiation from .net I would say a website on IIS with a client cert required for a certain path in an outerloop test should kick off a renegotiation?
/cc @stephentoub, @Priya91 and @geoffkizer
ref dotnet/corefx#24352