Closed hagna closed 2 years ago
Likely related: https://github.com/hashicorp/yamux/pull/51
Thanks. Commit c435ed1 does appear to fix it, and by that I mean this:
@@ -440,12 +440,14 @@ func (s *Stream) SetDeadline(t time.Time) error {
// SetReadDeadline sets the deadline for future Read calls.
func (s *Stream) SetReadDeadline(t time.Time) error {
s.readDeadline.Store(t)
+ asyncNotify(s.recvNotifyCh)
return nil
}
// SetWriteDeadline sets the deadline for future Write calls
func (s *Stream) SetWriteDeadline(t time.Time) error {
s.writeDeadline.Store(t)
+ asyncNotify(s.sendNotifyCh)
return nil
}
This minimal example hangs on go 1.10 when I add log.Printf to hijackLocked() (net/http/server.go:300). It hangs on abortPendingRead() (net/http/server.go:692) when I can get it to hang. What are some possible issues with hijacking?