1234567891011121314151617181920212223242526272829 |
- // Copyright (C) 2015 Audrius Butkevicius and Contributors.
- package main
- import (
- "errors"
- "net"
- )
- func setTCPOptions(conn net.Conn) error {
- tcpConn, ok := conn.(*net.TCPConn)
- if !ok {
- return errors.New("Not a TCP connection")
- }
- if err := tcpConn.SetLinger(0); err != nil {
- return err
- }
- if err := tcpConn.SetNoDelay(true); err != nil {
- return err
- }
- if err := tcpConn.SetKeepAlivePeriod(networkTimeout); err != nil {
- return err
- }
- if err := tcpConn.SetKeepAlive(true); err != nil {
- return err
- }
- return nil
- }
|