code: func NewAgentListener() (net.Listener, error) {
  	dir, err := ioutil.TempDir("", agentTempDir)
  	if err != nil {
  		return nil, err
  	}
  	l, err := net.Listen("unix", path.Join(dir, agentListenFile))
  	if err != nil {
  		return nil, err
  	}
  	return l, nil
  }
docs: // NewAgentListener sets up a temporary Unix socket that can be communicated
  // to the session environment and used for forwarding connections.