title: raise ValueError('Fileobj must implement read')
body: <p>I am getting the file size and uploading it to S3: </p>
  
  <pre><code>def transfer_file_from_ftp_to_s3(bucket_name, ftp_file_path, s3_file_path, ftp_username, ftp_password, chunk_size):
  ftp_connection = open_ftp_connection(FTP_HOST, int(FTP_PORT), ftp_username, ftp_password) 
  ftp_file = ftp_connection.file(ftp_file_path, 'r')
  s3_connection = boto3.client('s3')
  ftp_file_size = ftp_file._get_size()
  
  if ftp_file_size &lt;= int(chunk_size):
      #upload file in one go
      print('Transferring complete File from FTP to S3...')
      ftp_file_data = ftp_file.read()
      s3_connection.upload_fileobj(ftp_file_data, bucket_name, s3_file_path)
      print('Successfully Transferred file from FTP to S3!')
      ftp_file.close()
  </code></pre>
  
  <p>I got this error message below:</p>
  
  <pre><code>Transferring complete File from FTP to S3...
  Traceback (most recent call last):
  
    File "/Users/admin/anaconda2/lib/python2.7/site-packages/boto3/s3/inject.py", line 520, in upload_fileobj
      raise ValueError('Fileobj must implement read')
  
  ValueError: Fileobj must implement read
  </code></pre>
  
  <p>Can you give me some pointers? Thank you.</p>