mirror of
https://github.com/folbricht/routedns.git
synced 2026-01-05 17:20:09 -06:00
Avoid panic in QUIC error handling (#129)
* Add debugging for #127 * Fix panic
This commit is contained in:
@@ -301,11 +301,12 @@ func (s *quicSession) OpenStreamSync(ctx context.Context) (quic.Stream, error) {
|
||||
stream, err := s.Session.OpenStreamSync(ctx)
|
||||
if err != nil {
|
||||
_ = s.Session.CloseWithError(quic.ErrorCode(DOQNoError), "")
|
||||
|
||||
s.Session, err = quicDial(s.hostname, s.rAddr, s.lAddr, s.tlsConfig, s.config)
|
||||
var session quic.Session
|
||||
session, err = quicDial(s.hostname, s.rAddr, s.lAddr, s.tlsConfig, s.config)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
s.Session = session
|
||||
stream, err = s.Session.OpenStreamSync(ctx)
|
||||
}
|
||||
return stream, err
|
||||
@@ -317,10 +318,12 @@ func (s *quicSession) OpenStream() (quic.Stream, error) {
|
||||
stream, err := s.Session.OpenStream()
|
||||
if err != nil {
|
||||
_ = s.Session.CloseWithError(quic.ErrorCode(DOQNoError), "")
|
||||
s.Session, err = quicDial(s.hostname, s.rAddr, s.lAddr, s.tlsConfig, s.config)
|
||||
var session quic.Session
|
||||
session, err = quicDial(s.hostname, s.rAddr, s.lAddr, s.tlsConfig, s.config)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
s.Session = session
|
||||
stream, err = s.Session.OpenStream()
|
||||
}
|
||||
return stream, err
|
||||
|
||||
Reference in New Issue
Block a user