code: func (ftp *FTP) AuthTLS(config *tls.Config) error {
  	if _, err := ftp.cmd("234", "AUTH TLS"); err != nil {
  		return err
  	}
  
  	// wrap tls on existing connection
  	ftp.tlsconfig = config
  
  	ftp.conn = tls.Client(ftp.conn, config)
  	ftp.writer = bufio.NewWriter(ftp.conn)
  	ftp.reader = bufio.NewReader(ftp.conn)
  
  	if _, err := ftp.cmd(StatusOK, "PBSZ 0"); err != nil {
  		return err
  	}
  
  	if _, err := ftp.cmd(StatusOK, "PROT P"); err != nil {
  		return err
  	}
  
  	return nil
  }
docs: // AuthTLS secures the ftp connection by using TLS