// 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 }