You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It would be also nice to distinguish name resolution errors and define QuicError.HostNotFound so we can have a unified name resolution error case in #76644.
throw SocketException for transport problem e.g. for cases like MsQuic AddressInUse, HostUnreachable and InvalidAddress. That generally comes either as user error, host limitation and network conditions. That also covers cases when target name cannot be resolved to address.
We will throw AuthenticationException for TLS and certificate related issues - preferably matching SslStream behavior.
We will throw QuicException for reasons related to Quic protocol or processing specific to Quic.
ArgumentException when supplied parameters or options provided by callback are not valid.
OperationCanceledException for cases when processing fail because of cancellation.
ObjectDisposedException for cases caused by disposing underlying object(s)
We shall document this in some way. Either reach consensus when dotnet/dotnet-api-docs#7840 is resolved, via remarks section or via examples.
While some work related to exceptions remains it is tracked by other issues. We reached agreement on strategy and that fulfills spirit to this issue IMHO
Activity
antonfirsov commentedon Feb 16, 2023
It would be also nice to distinguish name resolution errors and define
QuicError.HostNotFoundso we can have a unified name resolution error case in #76644.wfurt commentedon Jun 1, 2023
We agreed that we should:
SocketExceptionfor transport problem e.g. for cases like MsQuic AddressInUse, HostUnreachable and InvalidAddress. That generally comes either as user error, host limitation and network conditions. That also covers cases when target name cannot be resolved to address.AuthenticationExceptionfor TLS and certificate related issues - preferably matchingSslStreambehavior.QuicExceptionfor reasons related to Quic protocol or processing specific to Quic.ArgumentExceptionwhen supplied parameters or options provided by callback are not valid.OperationCanceledExceptionfor cases when processing fail because of cancellation.ObjectDisposedExceptionfor cases caused by disposing underlying object(s)We shall document this in some way. Either reach consensus when dotnet/dotnet-api-docs#7840 is resolved, via remarks section or via examples.
karelz commentedon Jul 18, 2023
@wfurt is there anything left here?
wfurt commentedon Jul 18, 2023
While some work related to exceptions remains it is tracked by other issues. We reached agreement on strategy and that fulfills spirit to this issue IMHO