// Package sockets provides helper functions to create and configure Unix or TCP sockets.packagesocketsimport("crypto/tls""net")// NewTCPSocket creates a TCP socket listener with the specified address and// the specified tls configuration. If TLSConfig is set, will encapsulate the// TCP listener inside a TLS one.funcNewTCPSocket(addrstring,tlsConfig*tls.Config)(net.Listener,error){l,err:=net.Listen("tcp",addr)iferr!=nil{returnnil,err}iftlsConfig!=nil{tlsConfig.NextProtos=[]string{"http/1.1"}l=tls.NewListener(l,tlsConfig)}returnl,nil}