This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: ftplib.sendcmd only accepts string
Type: behavior Stage:
Components: Library (Lib) Versions: Python 3.6
process
Status: open Resolution:
Dependencies: Superseder:
Assigned To: Nosy List: giampaolo.rodola, wozlaf
Priority: normal Keywords:

Created on 2015-10-27 14:39 by wozlaf, last changed 2022-04-11 14:58 by admin.

Messages (1)
msg253542 - (view) Author: wozlaf (wozlaf) Date: 2015-10-27 14:39
The FTP server (ProFTPD 1.3.5a) returns some file and folder names not properly encoded in UTF-8, when requesting with FTP command "MLSD" and "OPTS UTF8 ON".
To access I need to send them back to the server exactly as they came (bytes) with ftp.sendcmd(b"CWD" + path_bytes).

This results in an exception:
 File "C:\Python34\lib\ftplib.py", line 190, in putline
 line = line + CRLF
 TypeError: can't concat bytes to str

Sadly this makes ftplib only support sending of UTF-8 commands and file names. So I need to work around with my own version of "sendcmd" for now.

"ftplib.sendcmd()" should handle bytes and strings (UTF-8).
History
Date User Action Args
2022-04-11 14:58:23adminsetgithub: 69677
2016-01-14 18:39:24SilentGhostsetnosy: + giampaolo.rodola

versions: + Python 3.6, - Python 3.4
2015-10-27 14:39:48wozlafcreate