Changeset 67 in code
- Timestamp:
- Feb 18, 2020, 4:26:17 PM (5 years ago)
- Location:
- trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/server.go
r65 r67 6 6 "net" 7 7 "sync" 8 "time" 8 9 9 10 "gopkg.in/irc.v3" 10 11 ) 12 13 // TODO: make configurable 14 var keepAlivePeriod = time.Minute 15 16 func setKeepAlive(c net.Conn) error { 17 tcpConn, ok := c.(*net.TCPConn) 18 if !ok { 19 return fmt.Errorf("cannot enable keep-alive on a non-TCP connection") 20 } 21 if err := tcpConn.SetKeepAlive(true); err != nil { 22 return err 23 } 24 return tcpConn.SetKeepAlivePeriod(keepAlivePeriod) 25 } 11 26 12 27 type Logger interface { … … 178 193 } 179 194 195 setKeepAlive(netConn) 196 180 197 dc := newDownstreamConn(s, netConn) 181 198 go func() { -
trunk/upstream.go
r66 r67 56 56 return nil, fmt.Errorf("failed to dial %q: %v", upstream.Addr, err) 57 57 } 58 59 setKeepAlive(netConn) 58 60 59 61 msgs := make(chan *irc.Message, 64)
Note:
See TracChangeset
for help on using the changeset viewer.